Skip to content

Commit

Permalink
test
Browse files Browse the repository at this point in the history
  • Loading branch information
lmiccini committed Jun 27, 2024
1 parent b2883ad commit dc6ac30
Show file tree
Hide file tree
Showing 25 changed files with 2,884 additions and 0 deletions.
13 changes: 13 additions & 0 deletions PROJECT
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,19 @@ resources:
defaulting: true
validation: true
webhookVersion: v1
- api:
crdVersion: v1
namespaced: true
controller: true
domain: openstack.org
group: instanceha
kind: InstanceHA
path: github.com/openstack-k8s-operators/infra-operator/apis/instanceha/v1beta1
version: v1beta1
webhooks:
defaulting: true
validation: true
webhookVersion: v1
- api:
crdVersion: v1
namespaced: true
Expand Down
173 changes: 173 additions & 0 deletions apis/bases/instanceha.openstack.org_instancehas.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.11.1
creationTimestamp: null
name: instancehas.instanceha.openstack.org
spec:
group: instanceha.openstack.org
names:
kind: InstanceHA
listKind: InstanceHAList
plural: instancehas
singular: instanceha
scope: Namespaced
versions:
- additionalPrinterColumns:
- description: Status
jsonPath: .status.conditions[0].status
name: Status
type: string
- description: Message
jsonPath: .status.conditions[0].message
name: Message
type: string
name: v1beta1
schema:
openAPIV3Schema:
description: InstanceHA is the Schema for the instancehas API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: InstanceHASpec defines the desired state of InstanceHA
properties:
caBundleSecretName:
description: CaBundleSecretName - holding the CA certs in a pre-created
bundle file
type: string
containerImage:
default: quay.io/podified-antelope-centos9/openstack-openstackclient:current-podified
description: ContainerImage for the the InstanceHA container (will
be set to environmental default if empty)
type: string
fencingSecret:
default: fencing-secret
description: FencingSecret is the name of the Secret containing the
fencing details
type: string
instanceHAConfigMap:
default: instanceha-config
description: InstanceHAConfigMap is the name of the ConfigMap containing
the InstanceHA config file
type: string
instanceHAKdumpPort:
default: 7410
format: int32
type: integer
networkAttachments:
description: NetworkAttachments is a list of NetworkAttachment resource
names to expose the services to the given network
items:
type: string
type: array
nodeSelector:
additionalProperties:
type: string
description: NodeSelector to target subset of worker nodes running
control plane services (currently only applies to KeystoneAPI and
PlacementAPI)
type: object
openStackCloud:
default: default
description: OpenStackClould is the name of the Cloud to use as per
clouds.yaml (will be set to "default" if empty)
type: string
openStackConfigMap:
default: openstack-config
description: OpenStackConfigMap is the name of the ConfigMap containing
the clouds.yaml
type: string
openStackConfigSecret:
default: openstack-config-secret
description: OpenStackConfigSecret is the name of the Secret containing
the secure.yaml
type: string
required:
- containerImage
- fencingSecret
- instanceHAConfigMap
- instanceHAKdumpPort
- openStackCloud
- openStackConfigMap
- openStackConfigSecret
type: object
status:
description: InstanceHAStatus defines the observed state of InstanceHA
properties:
conditions:
description: Conditions
items:
description: Condition defines an observation of a API resource
operational state.
properties:
lastTransitionTime:
description: Last time the condition transitioned from one status
to another. This should be when the underlying condition changed.
If that is not known, then using the time when the API field
changed is acceptable.
format: date-time
type: string
message:
description: A human readable message indicating details about
the transition.
type: string
reason:
description: The reason for the condition's last transition
in CamelCase.
type: string
severity:
description: Severity provides a classification of Reason code,
so the current situation is immediately understandable and
could act accordingly. It is meant for situations where Status=False
and it should be indicated if it is just informational, warning
(next reconciliation might fix it) or an error (e.g. DB create
issue and no actions to automatically resolve the issue can/should
be done). For conditions where Status=Unknown or Status=True
the Severity should be SeverityNone.
type: string
status:
description: Status of the condition, one of True, False, Unknown.
type: string
type:
description: Type of condition in CamelCase.
type: string
required:
- lastTransitionTime
- status
- type
type: object
type: array
networkAttachments:
additionalProperties:
items:
type: string
type: array
description: NetworkAttachments status of the deployment pods
type: object
observedGeneration:
description: ObservedGeneration - the most recent generation observed
for this object.
format: int64
type: integer
podName:
description: PodName
type: string
type: object
type: object
served: true
storage: true
subresources:
status: {}
36 changes: 36 additions & 0 deletions apis/instanceha/v1beta1/groupversion_info.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
/*
Copyright 2024.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

// Package v1beta1 contains API Schema definitions for the instanceha v1beta1 API group
// +kubebuilder:object:generate=true
// +groupName=instanceha.openstack.org
package v1beta1

import (
"k8s.io/apimachinery/pkg/runtime/schema"
"sigs.k8s.io/controller-runtime/pkg/scheme"
)

var (
// GroupVersion is group version used to register these objects
GroupVersion = schema.GroupVersion{Group: "instanceha.openstack.org", Version: "v1beta1"}

// SchemeBuilder is used to add go types to the GroupVersionKind scheme
SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

// AddToScheme adds the types in this group-version to the given scheme.
AddToScheme = SchemeBuilder.AddToScheme
)
53 changes: 53 additions & 0 deletions apis/instanceha/v1beta1/instanceha_conditions.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
/*
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package v1beta1

import (
condition "github.com/openstack-k8s-operators/lib-common/modules/common/condition"
)

// InstanceHA Condition Types used by API objects.
const (
// InstanceHAReadyCondition Status=True condition which indicates if InstanceHA is configured and operational
InstanceHAReadyCondition condition.Type = "InstanceHAReady"
)

// InstanceHA Reasons used by API objects.
const ()

// Common Messages used by API objects.
const (
// InstanceHAReadyInitMessage
InstanceHAReadyInitMessage = "Instance HA not started, waiting on keystone API"

// InstanceHAKeystoneWaitingMessage
InstanceHAKeystoneWaitingMessage = "Instance HA keystone API not yet ready"

// InstanceHAConfigMapWaitingMessage
InstanceHAConfigMapWaitingMessage = "Instance HA waiting for configmap"

// InstanceHASecretWaitingMessage
InstanceHASecretWaitingMessage = "Instance HA waiting for secret"

// InstanceHAInputReady
InstanceHAInputReady = "Instance HA input ready"

// InstanceHAReadyMessage
InstanceHAReadyMessage = "Instance HA created"

// InstanceHAReadyErrorMessage
InstanceHAReadyErrorMessage = "Instance HA error occured %s"
)
Loading

0 comments on commit dc6ac30

Please sign in to comment.