Skip to content
This repository has been archived by the owner on Dec 15, 2022. It is now read-only.

Finalize config for API group/kind calculation #25

Merged
merged 5 commits into from
Jan 4, 2022

Conversation

turkenh
Copy link
Collaborator

@turkenh turkenh commented Dec 17, 2021

Description of your changes

This PR updates configuration for all resources to finalize group/kind calculation.

I have:

  • Read and followed Crossplane's contribution process.
  • Run make reviewable test to ensure this PR is ready for review.
Click to see final resource grouping
oslogin:
	SSHPublicKey
notebooks:
	Environment
	Instance
	InstanceIAMBinding
	InstanceIAMMember
	InstanceIAMPolicy
	Location
datalossprevention:
	DeidentifyTemplate
	InspectTemplate
	JobTrigger
	StoredInfoType
container:
	Cluster
	NodePool
	Registry
secretmanager:
	Secret
	SecretIAMBinding
	SecretIAMMember
	SecretIAMPolicy
	SecretVersion
firestore:
	Document
	Index
datastore:
	Index
pubsub:
	LiteReservation
	LiteSubscription
	LiteTopic
	Schema
	Subscription
	SubscriptionIAMBinding
	SubscriptionIAMMember
	SubscriptionIAMPolicy
	Topic
	TopicIAMBinding
	TopicIAMMember
	TopicIAMPolicy
iap:
	AppEngineServiceIAMBinding
	AppEngineServiceIAMMember
	AppEngineServiceIAMPolicy
	AppEngineVersionIAMBinding
	AppEngineVersionIAMMember
	AppEngineVersionIAMPolicy
	Brand
	Client
	TunnelIAMBinding
	TunnelIAMMember
	TunnelIAMPolicy
	TunnelInstanceIAMBinding
	TunnelInstanceIAMMember
	TunnelInstanceIAMPolicy
	WebBackendServiceIAMBinding
	WebBackendServiceIAMMember
	WebBackendServiceIAMPolicy
	WebIAMBinding
	WebIAMMember
	WebIAMPolicy
	WebTypeAppEngineIAMBinding
	WebTypeAppEngineIAMMember
	WebTypeAppEngineIAMPolicy
	WebTypeComputeIAMBinding
	WebTypeComputeIAMMember
	WebTypeComputeIAMPolicy
tpu:
	Node
servicenetworking:
	Connection
cloudiot:
	Device
	Registry
workflows:
	Workflow
vpcaccess:
	Connector
cloudplatform:
	BillingSubaccount
	Folder
	FolderIAMAuditConfig
	FolderIAMBinding
	FolderIAMMember
	FolderIAMPolicy
	FolderOrganizationPolicy
	OrganizationIAMAuditConfig
	OrganizationIAMBinding
	OrganizationIAMCustomRole
	OrganizationIAMMember
	OrganizationIAMPolicy
	OrganizationPolicy
	Project
	ProjectDefaultServiceAccounts
	ProjectIAMAuditConfig
	ProjectIAMBinding
	ProjectIAMCustomRole
	ProjectIAMMember
	ProjectIAMPolicy
	ProjectOrganizationPolicy
	ProjectService
	ProjectUsageExportBucket
	ServiceAccount
	ServiceAccountIAMBinding
	ServiceAccountIAMMember
	ServiceAccountIAMPolicy
	ServiceAccountKey
	ServiceNetworkingPeeredDNSDomain
identityplatform:
	DefaultSupportedIdPConfig
	InboundSAMLConfig
	OAuthIdPConfig
	Tenant
	TenantDefaultSupportedIdPConfig
	TenantInboundSAMLConfig
	TenantOAuthIdPConfig
dialogflowcx:
	Agent
	EntityType
	Environment
	Flow
	Intent
	Page
	Version
vertexai:
	Dataset
dataflow:
	Job
gkehub:
	Membership
tags:
	TagBinding
	TagKey
	TagKeyIAMBinding
	TagKeyIAMMember
	TagKeyIAMPolicy
	TagValue
	TagValueIAMBinding
	TagValueIAMMember
	TagValueIAMPolicy
accessapproval:
	FolderSettings
	OrganizationSettings
	ProjectSettings
memcache:
	Instance
assuredworkloads:
	Workload
appengine:
	Application
	ApplicationURLDispatchRules
	DomainMapping
	FirewallRule
	FlexibleAppVersion
	ServiceNetworkSettings
	ServiceSplitTraffic
	StandardAppVersion
storage:
	Bucket
	BucketAccessControl
	BucketACL
	BucketIAMBinding
	BucketIAMMember
	BucketIAMPolicy
	BucketObject
	DefaultObjectAccessControl
	DefaultObjectACL
	HMACKey
	Notification
	ObjectAccessControl
	ObjectACL
privateca:
	CAPool
	CAPoolIAMBinding
	CAPoolIAMMember
	CAPoolIAMPolicy
	Certificate
	CertificateAuthority
	CertificateTemplate
dns:
	ManagedZone
	Policy
	RecordSet
cloudrun:
	DomainMapping
	Service
	ServiceIAMBinding
	ServiceIAMMember
	ServiceIAMPolicy
storagetransfer:
	Job
mlengine:
	Model
kms:
	CryptoKey
	CryptoKeyIAMBinding
	CryptoKeyIAMMember
	CryptoKeyIAMPolicy
	KeyRing
	KeyRingIAMBinding
	KeyRingIAMMember
	KeyRingIAMPolicy
	KeyRingImportJob
	SecretCiphertext
cloudtasks:
	Queue
networkmanagement:
	ConnectivityTest
billing:
	AccountIAMBinding
	AccountIAMMember
	AccountIAMPolicy
	Budget
compute:
	Address
	AttachedDisk
	Autoscaler
	BackendBucket
	BackendBucketSignedURLKey
	BackendService
	BackendServiceSignedURLKey
	Disk
	DiskIAMBinding
	DiskIAMMember
	DiskIAMPolicy
	DiskResourcePolicyAttachment
	ExternalVPNGateway
	Firewall
	FirewallPolicy
	FirewallPolicyAssociation
	FirewallPolicyRule
	ForwardingRule
	GlobalAddress
	GlobalForwardingRule
	GlobalNetworkEndpoint
	GlobalNetworkEndpointGroup
	HaVPNGateway
	HealthCheck
	HTTPHealthCheck
	HTTPSHealthCheck
	Image
	ImageIAMBinding
	ImageIAMMember
	ImageIAMPolicy
	Instance
	InstanceFromTemplate
	InstanceGroup
	InstanceGroupManager
	InstanceGroupNamedPort
	InstanceIAMBinding
	InstanceIAMMember
	InstanceIAMPolicy
	InstanceTemplate
	InterconnectAttachment
	ManagedSSLCertificate
	Network
	NetworkEndpoint
	NetworkEndpointGroup
	NetworkPeering
	NetworkPeeringRoutesConfig
	NodeGroup
	NodeTemplate
	PacketMirroring
	PerInstanceConfig
	ProjectDefaultNetworkTier
	ProjectMetadata
	ProjectMetadataItem
	RegionAutoscaler
	RegionBackendService
	RegionDisk
	RegionDiskIAMBinding
	RegionDiskIAMMember
	RegionDiskIAMPolicy
	RegionDiskResourcePolicyAttachment
	RegionHealthCheck
	RegionInstanceGroupManager
	RegionNetworkEndpointGroup
	RegionPerInstanceConfig
	RegionSSLCertificate
	RegionTargetHTTPProxy
	RegionTargetHTTPSProxy
	RegionURLMap
	Reservation
	ResourcePolicy
	Route
	Router
	RouterInterface
	RouterNAT
	RouterPeer
	SecurityPolicy
	ServiceAttachment
	SharedVPCHostProject
	SharedVPCServiceProject
	Snapshot
	SSLCertificate
	SSLPolicy
	Subnetwork
	SubnetworkIAMBinding
	SubnetworkIAMMember
	SubnetworkIAMPolicy
	TargetGRPCProxy
	TargetHTTPProxy
	TargetHTTPSProxy
	TargetInstance
	TargetPool
	TargetSSLProxy
	TargetTCPProxy
	URLMap
	VPNGateway
	VPNTunnel
datacatalog:
	Entry
	EntryGroup
	EntryGroupIAMBinding
	EntryGroupIAMMember
	EntryGroupIAMPolicy
	Tag
	TagTemplate
	TagTemplateIAMBinding
	TagTemplateIAMMember
	TagTemplateIAMPolicy
logging:
	BillingAccountBucketConfig
	BillingAccountExclusion
	BillingAccountSink
	FolderBucketConfig
	FolderExclusion
	FolderSink
	Metric
	OrganizationBucketConfig
	OrganizationExclusion
	OrganizationSink
	ProjectBucketConfig
	ProjectExclusion
	ProjectSink
dataproc:
	AutoscalingPolicy
	Cluster
	ClusterIAMBinding
	ClusterIAMMember
	ClusterIAMPolicy
	Job
	JobIAMBinding
	JobIAMMember
	JobIAMPolicy
	WorkflowTemplate
cloudfunctions:
	Function
	FunctionIAMBinding
	FunctionIAMMember
	FunctionIAMPolicy
eventarc:
	Trigger
accesscontextmanager:
	AccessLevel
	AccessLevelCondition
	AccessPolicy
	GCPUserAccessBinding
	ServicePerimeter
	ServicePerimeterResource
sql:
	Database
	DatabaseInstance
	SourceRepresentationInstance
	SSLCert
	User
apigee:
	Envgroup
	EnvgroupAttachment
	Environment
	Instance
	InstanceAttachment
	Organization
filestore:
	Instance
scc:
	NotificationConfig
	Source
networkservices:
	EdgeCacheKeyset
	EdgeCacheOrigin
	EdgeCacheService
healthcare:
	ConsentStore
	ConsentStoreIAMBinding
	ConsentStoreIAMMember
	ConsentStoreIAMPolicy
	Dataset
	DatasetIAMBinding
	DatasetIAMMember
	DatasetIAMPolicy
	DICOMStore
	DICOMStoreIAMBinding
	DICOMStoreIAMMember
	DICOMStoreIAMPolicy
	FHIRStore
	FHIRStoreIAMBinding
	FHIRStoreIAMMember
	FHIRStoreIAMPolicy
	HL7V2Store
	HL7V2StoreIAMBinding
	HL7V2StoreIAMMember
	HL7V2StoreIAMPolicy
cloudbuild:
	Trigger
osconfig:
	PatchDeployment
endpoints:
	Service
	ServiceIAMBinding
	ServiceIAMMember
	ServiceIAMPolicy
activedirectory:
	Domain
	DomainTrust
resourcemanager:
	Lien
redis:
	Instance
spanner:
	Database
	DatabaseIAMBinding
	DatabaseIAMMember
	DatabaseIAMPolicy
	Instance
	InstanceIAMBinding
	InstanceIAMMember
	InstanceIAMPolicy
essentialcontacts:
	Contact
binaryauthorization:
	Attestor
	AttestorIAMBinding
	AttestorIAMMember
	AttestorIAMPolicy
	Policy
cloudscheduler:
	Job
orgpolicy:
	Policy
gameservices:
	GameServerCluster
	GameServerConfig
	GameServerDeployment
	GameServerDeploymentRollout
	Realm
bigtable:
	AppProfile
	GarbageCollectionPolicy
	Instance
	InstanceIAMBinding
	InstanceIAMMember
	InstanceIAMPolicy
	Table
	TableIAMBinding
	TableIAMMember
	TableIAMPolicy
containeranalysis:
	Note
	Occurrence
dialogflow:
	Agent
	EntityType
	Fulfillment
	Intent
composer:
	Environment
deploymentmanager:
	Deployment
sourcerepo:
	Repository
	RepositoryIAMBinding
	RepositoryIAMMember
	RepositoryIAMPolicy
cloudasset:
	FolderFeed
	OrganizationFeed
	ProjectFeed
monitoring:
	AlertPolicy
	CustomService
	Dashboard
	Group
	MetricDescriptor
	NotificationChannel
	SLO
	UptimeCheckConfig
bigquery:
	DataTransferConfig
	Dataset
	DatasetAccess
	DatasetIAMBinding
	DatasetIAMMember
	DatasetIAMPolicy
	Job
	Reservation
	Routine
	Table
	TableIAMBinding
	TableIAMMember
	TableIAMPolicy
cloudidentity:
	Group
	GroupMembership

How has this code been tested

N/A

@turkenh turkenh force-pushed the finalize-kinds-and-groups branch from a037367 to 39c2f44 Compare December 17, 2021 19:51
@turkenh turkenh changed the title Update config for groups until DataProc Final config for group kind assignment Dec 27, 2021
@turkenh turkenh changed the title Final config for group kind assignment Finalize config for group kind calculation Dec 27, 2021
@turkenh turkenh changed the title Finalize config for group kind calculation Finalize config for API group/kind calculation Dec 27, 2021
@turkenh turkenh marked this pull request as ready for review December 27, 2021 10:55
@turkenh turkenh force-pushed the finalize-kinds-and-groups branch from 838517f to 88f6dad Compare December 27, 2021 12:50
@turkenh turkenh closed this Jan 3, 2022
@turkenh turkenh reopened this Jan 3, 2022
@turkenh turkenh force-pushed the finalize-kinds-and-groups branch from 88f6dad to e31890f Compare January 3, 2022 12:25
@turkenh turkenh force-pushed the finalize-kinds-and-groups branch from e31890f to 161001f Compare January 3, 2022 13:29
Copy link
Member

@muvaf muvaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because of the regex, it's a bit hard to follow what's going to end up having what value. Would you mind adding the full set group and kind list in PR description for easier review? Something like the following would really help.

image

p.AddResourceConfigurator("google_identity_platform_oauth_idp_config", func(r *config.Resource) {
r.Kind = "OAuthIdPConfig"
})
p.AddResourceConfigurator("google_identity_platform_tenant_default_supported_idp_config", func(r *config.Resource) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can add idp as IdP in acronym list if that's how it appears. FWIW, we can call AddAcronym in this repo as well since the list is global.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, added them (IdP and OAuth) as GCP specific acronyms for now. We can consider migration them to terrajet later.

@turkenh
Copy link
Collaborator Author

turkenh commented Jan 3, 2022

Because of the regex, it's a bit hard to follow what's going to end up having what value. Would you mind adding the full set group and kind list in PR description for easier review? Something like the following would really help.

image

@muvaf done!

Copy link
Member

@muvaf muvaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for the list @turkenh !

@turkenh turkenh merged commit 9cfad6c into crossplane-contrib:main Jan 4, 2022
@turkenh turkenh deleted the finalize-kinds-and-groups branch January 4, 2022 07:45
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants