From 0064b9020d63f8fa4c81ef40105b7b43d6135c4a Mon Sep 17 00:00:00 2001 From: Pete Savage Date: Mon, 18 Sep 2023 11:56:05 +0100 Subject: [PATCH] Fixed doc generation (#864) --- build/build_api_docs.sh | 2 +- .../crd/bases/cloud.redhat.com_clowdapps.yaml | 10 +- .../cloud.redhat.com_clowdenvironments.yaml | 9 +- .../modules/ROOT/pages/api_reference.adoc | 251 +++++++++++++++--- docs/config.yaml | 7 + 5 files changed, 236 insertions(+), 43 deletions(-) create mode 100644 docs/config.yaml diff --git a/build/build_api_docs.sh b/build/build_api_docs.sh index c0625738e..15ab3b221 100755 --- a/build/build_api_docs.sh +++ b/build/build_api_docs.sh @@ -20,6 +20,6 @@ if ! command -v asciidoctor; then exit 1 fi -docs/build/crd-ref-docs/crd-ref-docs --source-path=./apis --config=docs/build/crd-ref-docs/config.yaml \ +docs/build/crd-ref-docs/crd-ref-docs --source-path=./apis --config=docs/config.yaml \ --renderer=asciidoctor --templates-dir=docs/build/crd-ref-docs/templates/asciidoctor \ --output-path=docs/antora/modules/ROOT/pages/api_reference.adoc diff --git a/config/crd/bases/cloud.redhat.com_clowdapps.yaml b/config/crd/bases/cloud.redhat.com_clowdapps.yaml index 2bdda46da..b951059df 100644 --- a/config/crd/bases/cloud.redhat.com_clowdapps.yaml +++ b/config/crd/bases/cloud.redhat.com_clowdapps.yaml @@ -1064,7 +1064,7 @@ spec: in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field - is immutable." + is immutable. It can only be set for containers." items: description: ResourceClaim references one entry in PodSpec.ResourceClaims. @@ -1794,7 +1794,8 @@ spec: that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation - feature gate. \n This field is immutable." + feature gate. \n This field is immutable. + It can only be set for containers." items: description: ResourceClaim references one entry in PodSpec.ResourceClaims. @@ -3643,7 +3644,7 @@ spec: in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. \n This field - is immutable." + is immutable. It can only be set for containers." items: description: ResourceClaim references one entry in PodSpec.ResourceClaims. @@ -4373,7 +4374,8 @@ spec: that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation - feature gate. \n This field is immutable." + feature gate. \n This field is immutable. + It can only be set for containers." items: description: ResourceClaim references one entry in PodSpec.ResourceClaims. diff --git a/config/crd/bases/cloud.redhat.com_clowdenvironments.yaml b/config/crd/bases/cloud.redhat.com_clowdenvironments.yaml index 1d8fbe1a5..190ffc9b4 100644 --- a/config/crd/bases/cloud.redhat.com_clowdenvironments.yaml +++ b/config/crd/bases/cloud.redhat.com_clowdenvironments.yaml @@ -522,7 +522,8 @@ spec: defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation feature gate. - \n This field is immutable." + \n This field is immutable. It can only be set for + containers." items: description: ResourceClaim references one entry in PodSpec.ResourceClaims. @@ -589,7 +590,8 @@ spec: defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation - feature gate. \n This field is immutable." + feature gate. \n This field is immutable. + It can only be set for containers." items: description: ResourceClaim references one entry in PodSpec.ResourceClaims. @@ -765,7 +767,8 @@ spec: description: "Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. \n This is an alpha field and requires enabling the DynamicResourceAllocation - feature gate. \n This field is immutable." + feature gate. \n This field is immutable. It can only be set + for containers." items: description: ResourceClaim references one entry in PodSpec.ResourceClaims. properties: diff --git a/docs/antora/modules/ROOT/pages/api_reference.adoc b/docs/antora/modules/ROOT/pages/api_reference.adoc index be52317dd..f331d71d4 100644 --- a/docs/antora/modules/ROOT/pages/api_reference.adoc +++ b/docs/antora/modules/ROOT/pages/api_reference.adoc @@ -41,6 +41,18 @@ AppInfo details information about a specific app. |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-appprotocol"] +==== AppProtocol (string) + +AppProtocol is used to define an appProtocol for Istio + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-privatewebservice[$$PrivateWebService$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-appresourcestatus"] ==== AppResourceStatus @@ -96,10 +108,22 @@ AutoScalerConfig configures the Clowder provider controlling the creation of Aut [cols="25a,75a", options="header"] |=== | Field | Description -| *`mode`* __AutoScalerMode__ | Enable the autoscaler feature +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-autoscalermode[$$AutoScalerMode$$]__ | Enable the autoscaler feature |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-autoscalermode"] +==== AutoScalerMode (string) + +AutoScaler mode enabled or disabled the autoscaler. The key "keda" is deprecated but preserved for backwards compatibility + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-autoscalerconfig[$$AutoScalerConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-autoscalersimple"] ==== AutoScalerSimple @@ -134,7 +158,7 @@ ClowdApp is the Schema for the clowdapps API | Field | Description | *`apiVersion`* __string__ | `cloud.redhat.com/v1alpha1` | *`kind`* __string__ | `ClowdApp` -| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta[$$ObjectMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. +| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#objectmeta-v1-meta[$$ObjectMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. | *`spec`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-clowdappspec[$$ClowdAppSpec$$]__ | A ClowdApp specification. |=== @@ -152,7 +176,7 @@ ClowdAppList contains a list of ClowdApp | Field | Description | *`apiVersion`* __string__ | `cloud.redhat.com/v1alpha1` | *`kind`* __string__ | `ClowdAppList` -| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta[$$ListMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. +| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#listmeta-v1-meta[$$ListMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. | *`items`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-clowdapp[$$ClowdApp$$] array__ | A list of ClowdApp Resources. |=== @@ -204,7 +228,7 @@ ClowdEnvironment is the Schema for the clowdenvironments API | Field | Description | *`apiVersion`* __string__ | `cloud.redhat.com/v1alpha1` | *`kind`* __string__ | `ClowdEnvironment` -| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta[$$ObjectMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. +| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#objectmeta-v1-meta[$$ObjectMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. | *`spec`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-clowdenvironmentspec[$$ClowdEnvironmentSpec$$]__ | A ClowdEnvironmentSpec object. |=== @@ -222,7 +246,7 @@ ClowdEnvironmentList contains a list of ClowdEnvironment | Field | Description | *`apiVersion`* __string__ | `cloud.redhat.com/v1alpha1` | *`kind`* __string__ | `ClowdEnvironmentList` -| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta[$$ListMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. +| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#listmeta-v1-meta[$$ListMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. | *`items`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-clowdenvironment[$$ClowdEnvironment$$] array__ | A list of ClowdEnvironment objects. |=== @@ -243,7 +267,7 @@ ClowdEnvironmentSpec defines the desired state of ClowdEnvironment. | Field | Description | *`targetNamespace`* __string__ | TargetNamespace describes the namespace where any generated environmental resources should end up, this is particularly important in (*_local_*) mode. | *`providers`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-providersconfig[$$ProvidersConfig$$]__ | A ProvidersConfig object, detailing the setup and configuration of all the providers used in this ClowdEnvironment. -| *`resourceDefaults`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#resourcerequirements-v1-core[$$ResourceRequirements$$]__ | Defines the default resource requirements in standard k8s format in the event that they omitted from a PodSpec inside a ClowdApp. +| *`resourceDefaults`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#resourcerequirements-v1-core[$$ResourceRequirements$$]__ | Defines the default resource requirements in standard k8s format in the event that they omitted from a PodSpec inside a ClowdApp. | *`serviceConfig`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-serviceconfig[$$ServiceConfig$$]__ | | *`disabled`* __boolean__ | Disabled turns off reconciliation for this ClowdEnv |=== @@ -266,7 +290,7 @@ ClowdJobInvocation is the Schema for the jobinvocations API | Field | Description | *`apiVersion`* __string__ | `cloud.redhat.com/v1alpha1` | *`kind`* __string__ | `ClowdJobInvocation` -| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta[$$ObjectMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. +| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#objectmeta-v1-meta[$$ObjectMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. | *`spec`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-clowdjobinvocationspec[$$ClowdJobInvocationSpec$$]__ | |=== @@ -284,7 +308,7 @@ ClowdJobInvocationList contains a list of ClowdJobInvocation | Field | Description | *`apiVersion`* __string__ | `cloud.redhat.com/v1alpha1` | *`kind`* __string__ | `ClowdJobInvocationList` -| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#listmeta-v1-meta[$$ListMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. +| *`metadata`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#listmeta-v1-meta[$$ListMeta$$]__ | Refer to Kubernetes API documentation for fields of `metadata`. | *`items`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-clowdjobinvocation[$$ClowdJobInvocation$$] array__ | |=== @@ -312,6 +336,18 @@ ClowdJobInvocationSpec defines the desired state of ClowdJobInvocation +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-configaccessmode"] +==== ConfigAccessMode (string) + +Describes what amount of app config is mounted to the pod + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-testingconfig[$$TestingConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-cyndispec"] ==== CyndiSpec @@ -344,12 +380,24 @@ DatabaseConfig configures the Clowder provider controlling the creation of Datab [cols="25a,75a", options="header"] |=== | Field | Description -| *`mode`* __DatabaseMode__ | The mode of operation of the Clowder Database Provider. Valid options are: (*_app-interface_*) where the provider will pass through database credentials found in the secret defined by the database name in the ClowdApp, and (*_local_*) where the provider will spin up a local instance of the database. +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-databasemode[$$DatabaseMode$$]__ | The mode of operation of the Clowder Database Provider. Valid options are: (*_app-interface_*) where the provider will pass through database credentials found in the secret defined by the database name in the ClowdApp, and (*_local_*) where the provider will spin up a local instance of the database. | *`caBundleURL`* __string__ | Indicates where Clowder will fetch the database CA certificate bundle from. Currently only used in (*_app-interface_*) mode. If none is specified, the AWS RDS combined CA bundle is used. | *`pvc`* __boolean__ | If using the (*_local_*) mode and PVC is set to true, this instructs the local Database instance to use a PVC instead of emptyDir for its volumes. |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-databasemode"] +==== DatabaseMode (string) + +DatabaseMode details the mode of operation of the Clowder Database Provider + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-databaseconfig[$$DatabaseConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-databasespec"] ==== DatabaseSpec @@ -387,10 +435,10 @@ Deployment defines a service running inside a ClowdApp and will output a deploym | *`name`* __string__ | Name defines the identifier of a Pod inside the ClowdApp. This name will be used along side the name of the ClowdApp itself to form a - pattern which will be used for all other created resources and also for some labels. It must be unique within a ClowdApp. | *`minReplicas`* __integer__ | Deprecated: Use Replicas instead If Replicas is not set and MinReplicas is set, then MinReplicas will be used | *`replicas`* __integer__ | Defines the desired replica count for the pod -| *`web`* __WebDeprecated__ | If set to true, creates a service on the webPort defined in the ClowdEnvironment resource, along with the relevant liveness and readiness probes. +| *`web`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-webdeprecated[$$WebDeprecated$$]__ | If set to true, creates a service on the webPort defined in the ClowdEnvironment resource, along with the relevant liveness and readiness probes. | *`webServices`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-webservices[$$WebServices$$]__ | | *`podSpec`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-podspec[$$PodSpec$$]__ | PodSpec defines a container running inside a ClowdApp. -| *`k8sAccessLevel`* __K8sAccessLevel__ | K8sAccessLevel defines the level of access for this deployment +| *`k8sAccessLevel`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-k8saccesslevel[$$K8sAccessLevel$$]__ | K8sAccessLevel defines the level of access for this deployment | *`autoScaler`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-autoscaler[$$AutoScaler$$]__ | AutoScaler defines the configuration for the Keda auto scaler | *`autoScalerSimple`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-autoscalersimple[$$AutoScalerSimple$$]__ | | *`deploymentStrategy`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-deploymentstrategy[$$DeploymentStrategy$$]__ | DeploymentStrategy allows the deployment strategy to be set only if the deployment has no public service enabled @@ -465,7 +513,7 @@ DeploymentInfo defailts information about a specific deployment. [cols="25a,75a", options="header"] |=== | Field | Description -| *`privateStrategy`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#deploymentstrategytype-v1-apps[$$DeploymentStrategyType$$]__ | PrivateStrategy allows a deployment that only uses a private port to set the deployment strategy one of Recreate or Rolling, default for a private service is Recreate. This is to enable a quicker roll out for services that do not have public facing endpoints. +| *`privateStrategy`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#deploymentstrategytype-v1-apps[$$DeploymentStrategyType$$]__ | PrivateStrategy allows a deployment that only uses a private port to set the deployment strategy one of Recreate or Rolling, default for a private service is Recreate. This is to enable a quicker roll out for services that do not have public facing endpoints. |=== @@ -502,7 +550,7 @@ FeatureFlagsConfig configures the Clowder provider controlling the creation of F [cols="25a,75a", options="header"] |=== | Field | Description -| *`mode`* __FeatureFlagsMode__ | The mode of operation of the Clowder FeatureFlag Provider. Valid options are: (*_app-interface_*) where the provider will pass through credentials to the app configuration, and (*_local_*) where a local Unleash instance will be created. +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-featureflagsmode[$$FeatureFlagsMode$$]__ | The mode of operation of the Clowder FeatureFlag Provider. Valid options are: (*_app-interface_*) where the provider will pass through credentials to the app configuration, and (*_local_*) where a local Unleash instance will be created. | *`pvc`* __boolean__ | If using the (*_local_*) mode and PVC is set to true, this instructs the local Database instance to use a PVC instead of emptyDir for its volumes. | *`credentialRef`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-namespacedname[$$NamespacedName$$]__ | Defines the secret containing the client access token, only used for (*_app-interface_*) mode. | *`hostname`* __string__ | Defines the hostname for (*_app-interface_*) mode @@ -510,6 +558,18 @@ FeatureFlagsConfig configures the Clowder provider controlling the creation of F |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-featureflagsmode"] +==== FeatureFlagsMode (string) + +FeatureFlagsMode details the mode of operation of the Clowder FeatureFlags Provider + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-featureflagsconfig[$$FeatureFlagsConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-inmemorydbconfig"] ==== InMemoryDBConfig @@ -523,11 +583,23 @@ InMemoryDBConfig configures the Clowder provider controlling the creation of InM [cols="25a,75a", options="header"] |=== | Field | Description -| *`mode`* __InMemoryMode__ | The mode of operation of the Clowder InMemory Provider. Valid options are: (*_redis_*) where a local Minio instance will be created, and (*_elasticache_*) which will search the namespace of the ClowdApp for a secret called 'elasticache' +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-inmemorymode[$$InMemoryMode$$]__ | The mode of operation of the Clowder InMemory Provider. Valid options are: (*_redis_*) where a local Minio instance will be created, and (*_elasticache_*) which will search the namespace of the ClowdApp for a secret called 'elasticache' | *`pvc`* __boolean__ | If using the (*_local_*) mode and PVC is set to true, this instructs the local Database instance to use a PVC instead of emptyDir for its volumes. |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-inmemorymode"] +==== InMemoryMode (string) + +InMemoryMode details the mode of operation of the Clowder InMemoryDB Provider + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-inmemorydbconfig[$$InMemoryDBConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-initcontainer"] ==== InitContainer @@ -546,7 +618,7 @@ InitContainer is a struct defining a k8s init container. This will be deployed a | *`command`* __string array__ | A list of commands to run inside the parent Pod. | *`args`* __string array__ | A list of args to be passed to the init container. | *`inheritEnv`* __boolean__ | If true, inheirts the environment variables from the parent pod. specification -| *`env`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#envvar-v1-core[$$EnvVar$$] array__ | A list of environment variables used only by the initContainer. +| *`env`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#envvar-v1-core[$$EnvVar$$] array__ | A list of environment variables used only by the initContainer. |=== @@ -564,7 +636,7 @@ InitContainer is a struct defining a k8s init container. This will be deployed a |=== | Field | Description | *`imageBase`* __string__ | -| *`resources`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#resourcerequirements-v1-core[$$ResourceRequirements$$]__ | A pass-through of a resource requirements in k8s ResourceRequirements format. If omitted, the default resource requirements from the ClowdEnvironment will be used. +| *`resources`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#resourcerequirements-v1-core[$$ResourceRequirements$$]__ | A pass-through of a resource requirements in k8s ResourceRequirements format. If omitted, the default resource requirements from the ClowdEnvironment will be used. | *`vaultSecretRef`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-namespacedname[$$NamespacedName$$]__ | Defines the secret reference for loading vault credentials into the IQE job | *`ui`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-iqeuiconfig[$$IqeUIConfig$$]__ | Defines configurations related to UI testing containers |=== @@ -586,7 +658,7 @@ InitContainer is a struct defining a k8s init container. This will be deployed a | *`imageTag`* __string__ | Image tag to use for IQE container. By default, Clowder will set the image tag to be baseImage:name-of-iqe-plugin, where baseImage is defined in the ClowdEnvironment. Only the tag can be overridden here. | *`plugins`* __string__ | A comma,separated,list indicating IQE plugin(s) to run tests for. By default, Clowder will use the plugin name given on the ClowdApp's spec.testing.iqePlugin field. Use this field if you wish you override the plugin list. | *`ui`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-iqeuispec[$$IqeUISpec$$]__ | Defines configuration for a selenium container (optional) -| *`env`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#envvar-v1-core[$$EnvVar$$]__ | Specifies environment variables to set on the IQE container +| *`env`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#envvar-v1-core[$$EnvVar$$]__ | Specifies environment variables to set on the IQE container | *`debug`* __boolean__ | Changes entrypoint to invoke 'iqe container-debug' so that container starts but does not run tests, allowing 'rsh' to be invoked | *`marker`* __string__ | (DEPRECATED, using 'env' now preferred) sets IQE_MARKER_EXPRESSION env var on the IQE container | *`dynaconfEnvName`* __string__ | (DEPRECATED, using 'env' now preferred) sets ENV_FOR_DYNACONF env var on the IQE container @@ -652,7 +724,7 @@ InitContainer is a struct defining a k8s init container. This will be deployed a | Field | Description | *`imageBase`* __string__ | Defines the image used for selenium containers in this environment | *`defaultImageTag`* __string__ | Defines the default image tag used for selenium containers in this environment -| *`resources`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#resourcerequirements-v1-core[$$ResourceRequirements$$]__ | Defines the resource requests/limits set on selenium containers +| *`resources`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#resourcerequirements-v1-core[$$ResourceRequirements$$]__ | Defines the resource requests/limits set on selenium containers |=== @@ -693,8 +765,8 @@ Job defines a ClowdJob A Job struct will deploy as a CronJob if `schedule` is se | *`parallelism`* __integer__ | Defines the parallelism of the job | *`completions`* __integer__ | Defines the completions of the job | *`podSpec`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-podspec[$$PodSpec$$]__ | PodSpec defines a container running inside the CronJob. -| *`restartPolicy`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#restartpolicy-v1-core[$$RestartPolicy$$]__ | Defines the restart policy for the CronJob, defaults to never -| *`concurrencyPolicy`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#concurrencypolicy-v1-batch[$$ConcurrencyPolicy$$]__ | Defines the concurrency policy for the CronJob, defaults to Allow Only applies to Cronjobs +| *`restartPolicy`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#restartpolicy-v1-core[$$RestartPolicy$$]__ | Defines the restart policy for the CronJob, defaults to never +| *`concurrencyPolicy`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#concurrencypolicy-v1-batch[$$ConcurrencyPolicy$$]__ | Defines the concurrency policy for the CronJob, defaults to Allow Only applies to Cronjobs | *`suspend`* __boolean__ | This flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false. Only applies to Cronjobs | *`successfulJobsHistoryLimit`* __integer__ | The number of successful finished jobs to retain. Value must be non-negative integer. Defaults to 3. Only applies to Cronjobs | *`failedJobsHistoryLimit`* __integer__ | The number of failed finished jobs to retain. Value must be non-negative integer. Defaults to 1. Only applies to Cronjobs @@ -703,6 +775,18 @@ Job defines a ClowdJob A Job struct will deploy as a CronJob if `schedule` is se |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-jobconditionstate"] +==== JobConditionState (string) + + + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-clowdjobinvocationstatus[$$ClowdJobInvocationStatus$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-jobtestingspec"] ==== JobTestingSpec @@ -720,6 +804,19 @@ Job defines a ClowdJob A Job struct will deploy as a CronJob if `schedule` is se |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-k8saccesslevel"] +==== K8sAccessLevel (string) + +K8sAccessLevel defines the access level for the deployment, one of 'default', 'view' or 'edit' + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-deployment[$$Deployment$$] +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-testingconfig[$$TestingConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-kafkaclusterconfig"] ==== KafkaClusterConfig @@ -759,7 +856,7 @@ KafkaConfig configures the Clowder provider controlling the creation of Kafka in [cols="25a,75a", options="header"] |=== | Field | Description -| *`mode`* __KafkaMode__ | The mode of operation of the Clowder Kafka Provider. Valid options are: (*_operator_*) which provisions Strimzi resources and will configure KafkaTopic CRs and place them in the Kafka cluster's namespace described in the configuration, (*_app-interface_*) which simply passes the topic names through to the App's cdappconfig.json and expects app-interface to have created the relevant topics, and (*_local_*) where a small instance of Kafka is created in the desired cluster namespace and configured to auto-create topics. +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-kafkamode[$$KafkaMode$$]__ | The mode of operation of the Clowder Kafka Provider. Valid options are: (*_operator_*) which provisions Strimzi resources and will configure KafkaTopic CRs and place them in the Kafka cluster's namespace described in the configuration, (*_app-interface_*) which simply passes the topic names through to the App's cdappconfig.json and expects app-interface to have created the relevant topics, and (*_local_*) where a small instance of Kafka is created in the desired cluster namespace and configured to auto-create topics. | *`enableLegacyStrimzi`* __boolean__ | EnableLegacyStrimzi disables TLS + user auth | *`pvc`* __boolean__ | If using the (*_local_*) or (*_operator_*) mode and PVC is set to true, this sets the provisioned Kafka instance to use a PVC instead of emptyDir for its volumes. | *`cluster`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-kafkaclusterconfig[$$KafkaClusterConfig$$]__ | Defines options related to the Kafka cluster for this environment. Ignored for (*_local_*) mode. @@ -796,6 +893,18 @@ KafkaConnectClusterConfig defines options related to the Kafka Connect cluster m |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-kafkamode"] +==== KafkaMode (string) + +KafkaMode details the mode of operation of the Clowder Kafka Provider + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-kafkaconfig[$$KafkaConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-kafkatopicspec"] ==== KafkaTopicSpec @@ -829,10 +938,22 @@ LoggingConfig configures the Clowder provider controlling the creation of Loggin [cols="25a,75a", options="header"] |=== | Field | Description -| *`mode`* __LoggingMode__ | The mode of operation of the Clowder Logging Provider. Valid options are: (*_app-interface_*) where the provider will pass through cloudwatch credentials to the app configuration, and (*_none_*) where no logging will be configured. +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-loggingmode[$$LoggingMode$$]__ | The mode of operation of the Clowder Logging Provider. Valid options are: (*_app-interface_*) where the provider will pass through cloudwatch credentials to the app configuration, and (*_none_*) where no logging will be configured. |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-loggingmode"] +==== LoggingMode (string) + +LoggingMode details the mode of operation of the Clowder Logging Provider + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-loggingconfig[$$LoggingConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-metricsconfig"] ==== MetricsConfig @@ -848,11 +969,23 @@ MetricsConfig configures the Clowder provider controlling the creation of metric | Field | Description | *`port`* __integer__ | The port that metrics services inside ClowdApp pods should be served on. | *`path`* __string__ | A prefix path that pods will be instructed to use when setting up their metrics server. -| *`mode`* __MetricsMode__ | The mode of operation of the Metrics provider. The allowed modes are (*_none_*), which disables metrics service generation, or (*_operator_*) where services and probes are generated. (*_app-interface_*) where services and probes are generated for app-interface. +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-metricsmode[$$MetricsMode$$]__ | The mode of operation of the Metrics provider. The allowed modes are (*_none_*), which disables metrics service generation, or (*_operator_*) where services and probes are generated. (*_app-interface_*) where services and probes are generated for app-interface. | *`prometheus`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-prometheusconfig[$$PrometheusConfig$$]__ | Prometheus specific configuration |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-metricsmode"] +==== MetricsMode (string) + +MetricsMode details the mode of operation of the Clowder Metrics Provider + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-metricsconfig[$$MetricsConfig$$] +**** + + + @@ -891,12 +1024,24 @@ ObjectStoreConfig configures the Clowder provider controlling the creation of Ob [cols="25a,75a", options="header"] |=== | Field | Description -| *`mode`* __ObjectStoreMode__ | The mode of operation of the Clowder ObjectStore Provider. Valid options are: (*_app-interface_*) where the provider will pass through Amazon S3 credentials to the app configuration, and (*_minio_*) where a local Minio instance will be created. +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-objectstoremode[$$ObjectStoreMode$$]__ | The mode of operation of the Clowder ObjectStore Provider. Valid options are: (*_app-interface_*) where the provider will pass through Amazon S3 credentials to the app configuration, and (*_minio_*) where a local Minio instance will be created. | *`suffix`* __string__ | Currently unused. | *`pvc`* __boolean__ | If using the (*_local_*) mode and PVC is set to true, this instructs the local Database instance to use a PVC instead of emptyDir for its volumes. |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-objectstoremode"] +==== ObjectStoreMode (string) + +ObjectStoreMode details the mode of operation of the Clowder ObjectStore Provider + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-objectstoreconfig[$$ObjectStoreConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-podspec"] ==== PodSpec @@ -917,12 +1062,12 @@ PodSpec defines a container running inside a ClowdApp. | *`command`* __string array__ | The command that will be invoked inside the pod at startup. | *`args`* __string array__ | A list of args to be passed to the pod container. -| *`env`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#envvar-v1-core[$$EnvVar$$] array__ | A list of environment variables in k8s defined format. -| *`resources`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#resourcerequirements-v1-core[$$ResourceRequirements$$]__ | A pass-through of a resource requirements in k8s ResourceRequirements format. If omitted, the default resource requirements from the ClowdEnvironment will be used. -| *`livenessProbe`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#probe-v1-core[$$Probe$$]__ | A pass-through of a Liveness Probe specification in standard k8s format. If omitted, a standard probe will be setup point to the webPort defined in the ClowdEnvironment and a path of /healthz. Ignored if Web is set to false. -| *`readinessProbe`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#probe-v1-core[$$Probe$$]__ | A pass-through of a Readiness Probe specification in standard k8s format. If omitted, a standard probe will be setup point to the webPort defined in the ClowdEnvironment and a path of /healthz. Ignored if Web is set to false. -| *`volumes`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#volume-v1-core[$$Volume$$] array__ | A pass-through of a list of Volumes in standa k8s format. -| *`volumeMounts`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#volumemount-v1-core[$$VolumeMount$$] array__ | A pass-through of a list of VolumesMounts in standa k8s format. +| *`env`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#envvar-v1-core[$$EnvVar$$] array__ | A list of environment variables in k8s defined format. +| *`resources`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#resourcerequirements-v1-core[$$ResourceRequirements$$]__ | A pass-through of a resource requirements in k8s ResourceRequirements format. If omitted, the default resource requirements from the ClowdEnvironment will be used. +| *`livenessProbe`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#probe-v1-core[$$Probe$$]__ | A pass-through of a Liveness Probe specification in standard k8s format. If omitted, a standard probe will be setup point to the webPort defined in the ClowdEnvironment and a path of /healthz. Ignored if Web is set to false. +| *`readinessProbe`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#probe-v1-core[$$Probe$$]__ | A pass-through of a Readiness Probe specification in standard k8s format. If omitted, a standard probe will be setup point to the webPort defined in the ClowdEnvironment and a path of /healthz. Ignored if Web is set to false. +| *`volumes`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#volume-v1-core[$$Volume$$] array__ | A pass-through of a list of Volumes in standa k8s format. +| *`volumeMounts`* __link:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#volumemount-v1-core[$$VolumeMount$$] array__ | A pass-through of a list of VolumesMounts in standa k8s format. | *`sidecars`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-sidecar[$$Sidecar$$] array__ | Lists the expected side cars, will be validated in the validating webhook | *`machinePool`* __string__ | MachinePool allows the pod to be scheduled to a particular machine pool. |=== @@ -959,7 +1104,7 @@ PrivateWebService is the definition of the private web service. There can be onl |=== | Field | Description | *`enabled`* __boolean__ | Enabled describes if Clowder should enable the private service and provide the configuration in the cdappconfig. -| *`appProtocol`* __AppProtocol__ | AppProtocol determines the protocol to be used for the private port, (defaults to http) +| *`appProtocol`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-appprotocol[$$AppProtocol$$]__ | AppProtocol determines the protocol to be used for the private port, (defaults to http) |=== @@ -1077,10 +1222,22 @@ ServiceMeshConfig determines if this env should be part of a service mesh and, i [cols="25a,75a", options="header"] |=== | Field | Description -| *`mode`* __ServiceMeshMode__ | +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-servicemeshmode[$$ServiceMeshMode$$]__ | |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-servicemeshmode"] +==== ServiceMeshMode (string) + +ServiceMeshMode just determines if we enable or disable the service mesh + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-servicemeshconfig[$$ServiceMeshConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-sidecar"] ==== Sidecar @@ -1185,8 +1342,8 @@ SimpleAutoScalerReplicas defines the minimum and maximum replica counts for the |=== | Field | Description | *`iqe`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-iqeconfig[$$IqeConfig$$]__ | Defines the environment for iqe/smoke testing -| *`k8sAccessLevel`* __K8sAccessLevel__ | The mode of operation of the testing Pod. Valid options are: 'default', 'view' or 'edit' -| *`configAccess`* __ConfigAccessMode__ | The mode of operation for access to outside app configs. Valid options are: (*_none_*) -- no app config is mounted to the pod (*_app_*) -- only the ClowdApp's config is mounted to the pod (*_environment_*) -- the config for all apps in the env are mounted +| *`k8sAccessLevel`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-k8saccesslevel[$$K8sAccessLevel$$]__ | The mode of operation of the testing Pod. Valid options are: 'default', 'view' or 'edit' +| *`configAccess`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-configaccessmode[$$ConfigAccessMode$$]__ | The mode of operation for access to outside app configs. Valid options are: (*_none_*) -- no app config is mounted to the pod (*_app_*) -- only the ClowdApp's config is mounted to the pod (*_environment_*) -- the config for all apps in the env are mounted |=== @@ -1241,7 +1398,7 @@ WebConfig configures the Clowder provider controlling the creation of web servic | *`privatePort`* __integer__ | The private port that web services inside a ClowdApp should be served on. | *`aiuthPort`* __integer__ | The auth port that the web local mode will use with the AuthSidecar | *`apiPrefix`* __string__ | An api prefix path that pods will be instructed to use when setting up their web server. -| *`mode`* __WebMode__ | The mode of operation of the Web provider. The allowed modes are (*_none_*/*_operator_*), and (*_local_*) which deploys keycloak and BOP. +| *`mode`* __xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-webmode[$$WebMode$$]__ | The mode of operation of the Web provider. The allowed modes are (*_none_*/*_operator_*), and (*_local_*) which deploys keycloak and BOP. | *`bopURL`* __string__ | The URL of BOP - only used in (*_none_*/*_operator_*) mode. | *`ingressClass`* __string__ | Ingress Class Name used only in (*_local_*) mode. | *`keycloakVersion`* __string__ | Optional keycloak version override -- used only in (*_local_*) mode -- if not set, a hard-coded default is used. @@ -1250,6 +1407,18 @@ WebConfig configures the Clowder provider controlling the creation of web servic |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-webdeprecated"] +==== WebDeprecated (boolean) + +WebDeprecated defines a boolean flag to help distinguish from the newer WebServices + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-deployment[$$Deployment$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-webimages"] ==== WebImages @@ -1270,6 +1439,18 @@ WebImages defines optional container image overrides for the web provider compon |=== +[id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-webmode"] +==== WebMode (string) + +WebMode details the mode of operation of the Clowder Web Provider + +.Appears In: +**** +- xref:{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-webconfig[$$WebConfig$$] +**** + + + [id="{anchor_prefix}-github-com-redhatinsights-clowder-apis-cloud-redhat-com-v1alpha1-webservices"] ==== WebServices diff --git a/docs/config.yaml b/docs/config.yaml new file mode 100644 index 000000000..a50019eb7 --- /dev/null +++ b/docs/config.yaml @@ -0,0 +1,7 @@ +processor: + ignoreFields: + - "status$" + - "TypeMeta$" + +render: + kubernetesVersion: 1.26