# TODO - Add APIResource && APIGroup to Metadata APIs version: 2 outputDir: rest_api apiMap: - name: Authorization APIs resources: - kind: LocalResourceAccessReview group: authorization.openshift.io version: v1 - kind: LocalSubjectAccessReview group: authorization.openshift.io version: v1 - kind: ResourceAccessReview group: authorization.openshift.io version: v1 - kind: SelfSubjectRulesReview group: authorization.openshift.io version: v1 - kind: SubjectAccessReview group: authorization.openshift.io version: v1 - kind: SubjectRulesReview group: authorization.openshift.io version: v1 - kind: SelfSubjectReview group: authentication.k8s.io version: v1 - kind: TokenRequest group: authentication.k8s.io version: v1 - kind: TokenReview group: authentication.k8s.io version: v1 - kind: LocalSubjectAccessReview group: authorization.k8s.io version: v1 - kind: SelfSubjectAccessReview group: authorization.k8s.io version: v1 - kind: SelfSubjectRulesReview group: authorization.k8s.io version: v1 - kind: SubjectAccessReview group: authorization.k8s.io version: v1 - name: Autoscale APIs resources: - kind: ClusterAutoscaler group: autoscaling.openshift.io version: v1 - kind: MachineAutoscaler group: autoscaling.openshift.io version: v1beta1 - kind: HorizontalPodAutoscaler group: autoscaling version: v2 - kind: Scale group: autoscaling version: v1 - name: Cluster APIs resources: # Not included in apis-4.17.0-rc.3 # - kind: Cluster # group: cluster.x-k8s.io # version: v1beta1 # - kind: ClusterClass # group: cluster.x-k8s.io # version: v1beta1 # - kind: ExtensionConfig # group: runtime.cluster.x-k8s.io # version: v1alpha1 # - kind: Machine # group: cluster.x-k8s.io # version: v1beta1 # - kind: MachineDeployment # group: cluster.x-k8s.io # version: v1beta1 # - kind: MachineHealthCheck # group: cluster.x-k8s.io # version: v1beta1 # - kind: MachinePool # group: cluster.x-k8s.io # version: v1beta1 # - kind: MachineSet # group: cluster.x-k8s.io # version: v1beta1 # - kind: ClusterResourceSet # group: addons.cluster.x-k8s.io # version: v1beta1 # - kind: ClusterResourceSetBinding # group: addons.cluster.x-k8s.io # version: v1beta1 # - kind: GCPCluster # group: infrastructure.cluster.x-k8s.io # version: v1beta1 # - kind: GCPClusterTemplate # group: infrastructure.cluster.x-k8s.io # version: v1beta1 # - kind: GCPMachine # group: infrastructure.cluster.x-k8s.io # version: v1beta1 # - kind: GCPMachineTemplate # group: infrastructure.cluster.x-k8s.io # version: v1beta1 # - kind: GCPManagedCluster # group: infrastructure.cluster.x-k8s.io # version: v1beta1 # - kind: GCPManagedControlPlane # group: infrastructure.cluster.x-k8s.io # version: v1beta1 # - kind: GCPManagedMachinePool # group: infrastructure.cluster.x-k8s.io # version: v1beta1 - kind: IPAddress group: ipam.cluster.x-k8s.io version: v1beta1 - kind: IPAddressClaim group: ipam.cluster.x-k8s.io version: v1beta1 - name: Config APIs resources: - kind: APIServer group: config.openshift.io version: v1 - kind: Authentication group: config.openshift.io version: v1 # - kind: Backup # group: config.openshift.io # version: v1alpha1 - kind: Build group: config.openshift.io version: v1 # - kind: ClusterImagePolicy # group: config.openshift.io # version: v1alpha1 - kind: ClusterOperator group: config.openshift.io version: v1 - kind: ClusterVersion group: config.openshift.io version: v1 - kind: Console group: config.openshift.io version: v1 - kind: DNS group: config.openshift.io version: v1 - kind: FeatureGate group: config.openshift.io version: v1 - kind: HelmChartRepository group: helm.openshift.io version: v1beta1 - kind: Image group: config.openshift.io version: v1 - kind: ImageDigestMirrorSet group: config.openshift.io version: v1 - kind: ImageContentPolicy group: config.openshift.io version: v1 - kind: ImageTagMirrorSet group: config.openshift.io version: v1 # - kind: InsightsDataGather # group: config.openshift.io # version: v1alpha1 - kind: Infrastructure group: config.openshift.io version: v1 - kind: Ingress group: config.openshift.io version: v1 - kind: Network group: config.openshift.io version: v1 - kind: Node group: config.openshift.io version: v1 - kind: OAuth group: config.openshift.io version: v1 - kind: OperatorHub group: config.openshift.io version: v1 - kind: Project group: config.openshift.io version: v1 - kind: ProjectHelmChartRepository group: helm.openshift.io version: v1beta1 - kind: Proxy group: config.openshift.io version: v1 - kind: Scheduler group: config.openshift.io version: v1 - name: Console APIs resources: - kind: ConsoleCLIDownload group: console.openshift.io version: v1 - kind: ConsoleExternalLogLink group: console.openshift.io version: v1 - kind: ConsoleLink group: console.openshift.io version: v1 - kind: ConsoleNotification group: console.openshift.io version: v1 - kind: ConsolePlugin group: console.openshift.io version: v1 - kind: ConsoleQuickStart group: console.openshift.io version: v1 - kind: ConsoleSample group: console.openshift.io version: v1 - kind: ConsoleYAMLSample group: console.openshift.io version: v1 - name: Extension APIs resources: - kind: APIService group: apiregistration.k8s.io version: v1 - kind: CustomResourceDefinition group: apiextensions.k8s.io version: v1 - kind: MutatingWebhookConfiguration group: admissionregistration.k8s.io version: v1 - kind: ValidatingAdmissionPolicy group: admissionregistration.k8s.io version: v1 - kind: ValidatingAdmissionPolicyBinding group: admissionregistration.k8s.io version: v1 - kind: ValidatingWebhookConfiguration group: admissionregistration.k8s.io version: v1 - name: Image APIs resources: - kind: Image group: image.openshift.io version: v1 - kind: ImageSignature group: image.openshift.io version: v1 - kind: ImageStreamImage group: image.openshift.io version: v1 - kind: ImageStreamImport group: image.openshift.io version: v1 - kind: ImageStreamLayers group: image.openshift.io version: v1 - kind: ImageStreamMapping group: image.openshift.io version: v1 - kind: ImageStream group: image.openshift.io version: v1 - kind: ImageStreamTag group: image.openshift.io version: v1 - kind: ImageTag group: image.openshift.io version: v1 - kind: SecretList group: image.openshift.io version: v1 - name: Machine APIs resources: - kind: ContainerRuntimeConfig group: machineconfiguration.openshift.io version: v1 - kind: ControllerConfig group: machineconfiguration.openshift.io version: v1 - kind: ControlPlaneMachineSet group: machine.openshift.io version: v1 - kind: KubeletConfig group: machineconfiguration.openshift.io version: v1 - kind: MachineConfig group: machineconfiguration.openshift.io version: v1 - kind: MachineConfigPool group: machineconfiguration.openshift.io version: v1 - kind: MachineHealthCheck group: machine.openshift.io version: v1beta1 - kind: Machine group: machine.openshift.io version: v1beta1 - kind: MachineSet group: machine.openshift.io version: v1beta1 # - kind: MachineConfigNode # group: machineconfiguration.openshift.io # version: v1alpha1 # - kind: MachineOSBuild # group: machineconfiguration.openshift.io # version: v1alpha1 # - kind: MachineOSConfig # group: machineconfiguration.openshift.io # version: v1alpha1 # - kind: PinnedImageSet # group: machineconfiguration.openshift.io # version: v1alpha1 - name: Metadata APIs resources: - kind: APIRequestCount group: apiserver.openshift.io version: v1 - kind: Binding version: v1 - kind: ComponentStatus version: v1 - kind: ConfigMap version: v1 - kind: ControllerRevision group: apps version: v1 - kind: Event group: events.k8s.io version: v1 - kind: Event version: v1 - kind: Lease group: coordination.k8s.io version: v1 - kind: Namespace version: v1 # - kind: SharedConfigMap # group: sharedresource.openshift.io # version: v1alpha1 - name: Monitoring APIs resources: - kind: Alertmanager group: monitoring.coreos.com version: v1 - kind: AlertmanagerConfig group: monitoring.coreos.com version: v1beta1 - kind: AlertRelabelConfig group: monitoring.openshift.io version: v1 - kind: AlertingRule group: monitoring.openshift.io version: v1 # - kind: DataGather # group: insights.openshift.io # version: v1alpha1 - kind: PodMonitor group: monitoring.coreos.com version: v1 - kind: Probe group: monitoring.coreos.com version: v1 - kind: Prometheus group: monitoring.coreos.com version: v1 - kind: PrometheusRule group: monitoring.coreos.com version: v1 - kind: ServiceMonitor group: monitoring.coreos.com version: v1 - kind: ThanosRuler group: monitoring.coreos.com version: v1 - kind: NodeMetrics group: metrics.k8s.io version: v1beta1 - kind: PodMetrics group: metrics.k8s.io version: v1beta1 - name: Network APIs resources: # OpenShift SDN # - kind: ClusterNetwork # group: network.openshift.io # version: v1 - kind: AdminNetworkPolicy group: policy.networking.k8s.io version: v1alpha1 - kind: AdminPolicyBasedExternalRoute group: k8s.ovn.org version: v1 - kind: BaselineAdminNetworkPolicy group: policy.networking.k8s.io version: v1alpha1 - kind: CloudPrivateIPConfig group: cloud.network.openshift.io version: v1 # - kind: DNSNameResolver # group: network.openshift.io # version: v1alpha1 - kind: EgressFirewall group: k8s.ovn.org version: v1 - kind: EgressIP group: k8s.ovn.org version: v1 - kind: EgressQoS group: k8s.ovn.org version: v1 - kind: EgressService group: k8s.ovn.org version: v1 - kind: Endpoints version: v1 - kind: EndpointSlice group: discovery.k8s.io version: v1 # OpenShift SDN # - kind: EgressNetworkPolicy # group: network.openshift.io # version: v1 - kind: EgressRouter group: network.operator.openshift.io version: v1 # OpenShift SDN # - kind: HostSubnet # group: network.openshift.io # version: v1 - kind: Ingress group: networking.k8s.io version: v1 - kind: IngressClass group: networking.k8s.io version: v1 # - kind: IPAMClaim # group: k8s.cni.cncf.io # version: v1alpha1 - kind: IPPool group: whereabouts.cni.cncf.io version: v1alpha1 # OpenShift SDN # - kind: NetNamespace # group: network.openshift.io # version: v1 - kind: MultiNetworkPolicy group: k8s.cni.cncf.io version: v1beta1 - kind: NetworkAttachmentDefinition group: k8s.cni.cncf.io version: v1 - kind: NetworkPolicy group: networking.k8s.io version: v1 - kind: OverlappingRangeIPReservation group: whereabouts.cni.cncf.io version: v1alpha1 - kind: PodNetworkConnectivityCheck group: controlplane.operator.openshift.io version: v1alpha1 - kind: Route group: route.openshift.io version: v1 - kind: Service version: v1 # - kind: UserDefinedNetwork # group: k8s.ovn.org # version: v1 - name: Node APIs resources: - kind: Node version: v1 - kind: PerformanceProfile group: performance.openshift.io version: v2 - kind: Profile group: tuned.openshift.io version: v1 - kind: RuntimeClass group: node.k8s.io version: v1 - kind: Tuned group: tuned.openshift.io version: v1 - name: OAuth APIs resources: - kind: OAuthAccessToken group: oauth.openshift.io version: v1 - kind: OAuthAuthorizeToken group: oauth.openshift.io version: v1 - kind: OAuthClientAuthorization group: oauth.openshift.io version: v1 - kind: OAuthClient group: oauth.openshift.io version: v1 # Not in OpenAPI spec JSON # - kind: TokenReview # group: oauth.openshift.io # version: v1 # plural: tokenreviews # namespaced: false - kind: UserOAuthAccessToken group: oauth.openshift.io version: v1 - name: Operator APIs resources: - kind: Authentication group: operator.openshift.io version: v1 - kind: CloudCredential group: operator.openshift.io version: v1 - kind: ClusterCSIDriver group: operator.openshift.io version: v1 - kind: Console group: operator.openshift.io version: v1 - kind: Config group: operator.openshift.io version: v1 - kind: Config group: imageregistry.operator.openshift.io version: v1 - kind: Config group: samples.operator.openshift.io version: v1 - kind: CSISnapshotController group: operator.openshift.io version: v1 - kind: DNS group: operator.openshift.io version: v1 - kind: DNSRecord group: ingress.operator.openshift.io version: v1 - kind: Etcd group: operator.openshift.io version: v1 # - kind: EtcdBackup # group: operator.openshift.io # version: v1alpha1 - kind: ImageContentSourcePolicy group: operator.openshift.io version: v1alpha1 - kind: ImagePruner group: imageregistry.operator.openshift.io version: v1 - kind: IngressController group: operator.openshift.io version: v1 - kind: InsightsOperator group: operator.openshift.io version: v1 - kind: KubeAPIServer group: operator.openshift.io version: v1 - kind: KubeControllerManager group: operator.openshift.io version: v1 - kind: KubeScheduler group: operator.openshift.io version: v1 - kind: KubeStorageVersionMigrator group: operator.openshift.io version: v1 - kind: MachineConfiguration group: operator.openshift.io version: v1 - kind: Network group: operator.openshift.io version: v1 - kind: OpenShiftAPIServer group: operator.openshift.io version: v1 - kind: OpenShiftControllerManager group: operator.openshift.io version: v1 - kind: OperatorPKI group: network.operator.openshift.io version: v1 - kind: ServiceCA group: operator.openshift.io version: v1 - kind: Storage group: operator.openshift.io version: v1 - name: OperatorHub APIs resources: - kind: CatalogSource group: operators.coreos.com version: v1alpha1 # - kind: ClusterCatalog # group: catalogd.operatorframework.io # version: v1alpha1 # - kind: ClusterExtension # group: olm.operatorframework.io # version: v1alpha1 - kind: ClusterServiceVersion group: operators.coreos.com version: v1alpha1 - kind: InstallPlan group: operators.coreos.com version: v1alpha1 # - kind: OLM # group: operator.openshift.io # version: v1alpha1 - kind: OLMConfig group: operators.coreos.com version: v1 - kind: Operator group: operators.coreos.com version: v1 - kind: OperatorCondition group: operators.coreos.com version: v2 - kind: OperatorGroup group: operators.coreos.com version: v1 - kind: PackageManifest group: packages.operators.coreos.com version: v1 - kind: Subscription group: operators.coreos.com version: v1alpha1 - name: Policy APIs resources: - kind: Eviction group: policy version: v1 - kind: PodDisruptionBudget group: policy version: v1 # https://bugzilla.redhat.com/show_bug.cgi?id=1875493 # - kind: PodSecurityPolicy # group: policy # version: v1beta1 # plural: podsecuritypolicies # namespaced: false - name: Project APIs resources: - kind: Project group: project.openshift.io version: v1 - kind: ProjectRequest group: project.openshift.io version: v1 - name: Provisioning APIs resources: - kind: BMCEventSubscription group: metal3.io version: v1alpha1 - kind: BareMetalHost group: metal3.io version: v1alpha1 - kind: DataImage group: metal3.io version: v1alpha1 - kind: FirmwareSchema group: metal3.io version: v1alpha1 - kind: HardwareData group: metal3.io version: v1alpha1 - kind: HostFirmwareComponents group: metal3.io version: v1alpha1 - kind: HostFirmwareSettings group: metal3.io version: v1alpha1 - kind: Metal3Remediation group: infrastructure.cluster.x-k8s.io version: v1beta1 - kind: Metal3RemediationTemplate group: infrastructure.cluster.x-k8s.io version: v1beta1 - kind: PreprovisioningImage group: metal3.io version: v1alpha1 - kind: Provisioning group: metal3.io version: v1alpha1 - name: RBAC APIs resources: - kind: ClusterRoleBinding group: rbac.authorization.k8s.io version: v1 - kind: ClusterRole group: rbac.authorization.k8s.io version: v1 - kind: RoleBinding group: rbac.authorization.k8s.io version: v1 - kind: Role group: rbac.authorization.k8s.io version: v1 - name: Role APIs resources: - kind: ClusterRoleBinding group: authorization.openshift.io version: v1 - kind: ClusterRole group: authorization.openshift.io version: v1 - kind: RoleBindingRestriction group: authorization.openshift.io version: v1 - kind: RoleBinding group: authorization.openshift.io version: v1 - kind: Role group: authorization.openshift.io version: v1 - name: Schedule and quota APIs resources: - kind: AppliedClusterResourceQuota group: quota.openshift.io version: v1 - kind: ClusterResourceQuota group: quota.openshift.io version: v1 - kind: FlowSchema group: flowcontrol.apiserver.k8s.io version: v1 - kind: LimitRange version: v1 - kind: PriorityClass group: scheduling.k8s.io version: v1 # - kind: PodSchedulingContext # group: resource.k8s.io # version: v1alpha2 - kind: PriorityLevelConfiguration group: flowcontrol.apiserver.k8s.io version: v1 - kind: ResourceQuota version: v1 # - kind: ResourceClaim # group: resource.k8s.io # version: v1alpha2 # - kind: ResourceClaimParameters # group: resource.k8s.io # version: v1alpha2 # - kind: ResourceClaimTemplate # group: resource.k8s.io # version: v1alpha2 # - kind: ResourceClass # group: resource.k8s.io # version: v1alpha2 # - kind: ResourceClassParameters # group: resource.k8s.io # version: v1alpha2 # - kind: ResourceSlice # group: resource.k8s.io # version: v1alpha2 - name: Security APIs resources: - kind: CertificateSigningRequest group: certificates.k8s.io version: v1 - kind: CredentialsRequest group: cloudcredential.openshift.io version: v1 - kind: PodSecurityPolicyReview group: security.openshift.io version: v1 - kind: PodSecurityPolicySelfSubjectReview group: security.openshift.io version: v1 - kind: PodSecurityPolicySubjectReview group: security.openshift.io version: v1 - kind: RangeAllocation group: security.openshift.io version: v1 # This is internal only, and must be ignored # - kind: RangeAllocation # group: security.internal.openshift.io # version: v1 # plural: rangeallocations # namespaced: false # - kind: SharedSecret # group: sharedresource.openshift.io # version: v1alpha1 - kind: Secret version: v1 - kind: SecurityContextConstraints group: security.openshift.io version: v1 - kind: ServiceAccount version: v1 - name: Storage APIs resources: - kind: CSIDriver group: storage.k8s.io version: v1 - kind: CSINode group: storage.k8s.io version: v1 - kind: CSIStorageCapacity group: storage.k8s.io version: v1 - kind: PersistentVolume version: v1 - kind: PersistentVolumeClaim version: v1 - kind: StorageClass group: storage.k8s.io version: v1 - kind: StorageState group: migration.k8s.io version: v1alpha1 - kind: StorageVersionMigration group: migration.k8s.io version: v1alpha1 - kind: VolumeAttachment group: storage.k8s.io version: v1 # - kind: VolumeGroupSnapshot # group: groupsnapshot.storage.k8s.io # version: v1alpha1 # - kind: VolumeGroupSnapshotClass # group: groupsnapshot.storage.k8s.io # version: v1alpha1 # - kind: VolumeGroupSnapshotContent # group: groupsnapshot.storage.k8s.io # version: v1alpha1 - kind: VolumeSnapshot group: snapshot.storage.k8s.io version: v1 - kind: VolumeSnapshotClass group: snapshot.storage.k8s.io version: v1 - kind: VolumeSnapshotContent group: snapshot.storage.k8s.io version: v1 - name: Template APIs resources: - kind: BrokerTemplateInstance group: template.openshift.io version: v1 - kind: PodTemplate version: v1 - kind: Template group: template.openshift.io version: v1 - kind: TemplateInstance group: template.openshift.io version: v1 - name: User and group APIs resources: - kind: Group group: user.openshift.io version: v1 - kind: Identity group: user.openshift.io version: v1 - kind: UserIdentityMapping group: user.openshift.io version: v1 - kind: User group: user.openshift.io version: v1 - name: Workloads APIs resources: - kind: BuildConfig group: build.openshift.io version: v1 - kind: Build group: build.openshift.io version: v1 - kind: BuildLog group: build.openshift.io version: v1 - kind: BuildRequest group: build.openshift.io version: v1 - kind: CronJob group: batch version: v1 - kind: DaemonSet group: apps version: v1 - kind: Deployment group: apps version: v1 - kind: DeploymentConfig group: apps.openshift.io version: v1 - kind: DeploymentConfigRollback group: apps.openshift.io version: v1 - kind: DeploymentLog group: apps.openshift.io version: v1 - kind: DeploymentRequest group: apps.openshift.io version: v1 - kind: Job group: batch version: v1 - kind: Pod version: v1 - kind: ReplicationController version: v1 - kind: ReplicaSet group: apps version: v1 - kind: StatefulSet group: apps version: v1 # TBD # - kind: NodeMetrics # group: metrics.k8s.io # version: v1beta1 # - kind: PodMetrics # group: metrics.k8s.io # version: v1beta1