Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
94 changes: 94 additions & 0 deletions automation/vars/nova05epsilon.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
---
vas:
nova05epsilon:
stages:
- path: examples/dt/nova/nova05epsilon/networking/nncp
wait_conditions:
- >-
oc -n openstack wait nncp
-l osp/nncm-config-type=standard
--for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured
--timeout=60s
values:
- name: network-values
src_file: values.yaml
build_output: nncp.yaml

- path: examples/dt/nova/nova05epsilon/networking
wait_conditions:
- >-
oc -n metallb-system wait pod
-l app=metallb -l component=speaker
--for condition=Ready
--timeout=5m
values:
- name: network-values
src_file: nncp/values.yaml
build_output: network.yaml

- path: examples/dt/nova/nova05epsilon
wait_conditions:
- >-
oc -n openstack wait osctlplane controlplane --for condition=Ready
--timeout=600s
values:
- name: network-values
src_file: networking/nncp/values.yaml
- name: service-values
src_file: service-values.yaml
build_output: control-plane.yaml

- path: examples/dt/nova/nova05epsilon/edpm/nodeset
wait_conditions:
- >-
oc -n openstack wait
osdpns openstack-edpm --for condition=SetupReady
--timeout=60m
values:
- name: edpm-nodeset-values
src_file: values.yaml
build_output: nodeset.yaml

- path: examples/dt/nova/nova05epsilon/edpm/deployment
wait_conditions:
- >-
oc -n openstack wait
osdpd edpm-deployment --for condition=Ready
--timeout=90m
values:
- name: edpm-deployment-values
src_file: values.yaml
build_output: deployment.yaml

- path: examples/dt/nova/nova05epsilon/edpm-post-driver/deployment
wait_conditions:
- >-
oc -n openstack wait
osdpd edpm-deployment-post-driver --for condition=Ready
--timeout=20m
values:
- name: edpm-deployment-post-driver
src_file: values.yaml
build_output: post-driver-deployment.yaml

- path: examples/dt/nova/nova05epsilon/edpm-deploy-provider/dataplaneservice
wait_conditions:
- >-
oc -n default wait
ns openstack --for jsonpath='{.status.phase}'=Active
--timeout=5m
values:
- name: edpm-provider-values
src_file: values.yaml
build_output: provider-dataplaneservice.yaml

- path: examples/dt/nova/nova05epsilon/edpm-deploy-provider/deployment
wait_conditions:
- >-
oc -n openstack wait
osdpd edpm-deployment-provider --for condition=Ready
--timeout=20m
values:
- name: edpm-deploy-provider-values
src_file: values.yaml
build_output: provider-deployment.yaml
12 changes: 12 additions & 0 deletions dt/nova/nova05epsilon/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Deployed Topology - Nova/nova05epsilon

If you are looking for information on how to deploy the nova05epsilon based DT, then
please see the
[README](../../../examples/dt/nova/nova05epsilon/README.md) in the examples
directory.

This directory ,`dt/nova/nova05epsilon/`, exists so that the
[kustomization.yaml](../../../examples/dt/nova/nova05epsilon/edpm/nodeset/kustomization.yaml)
in the examples directory of nova05epsilon topology, reference it by path as a
component. It's contents are likely uninteresting unless you want to understand
how kustomize was implemented in this repository.
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
# Set namespace to OpenStack on all namespaced objects without a namespace
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true

components:
- ../../../../../lib/dataplane/deployment
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
# Set namespace to OpenStack on all namespaced objects without a namespace
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true

resources:
- nova_provider.yaml

replacements:
# Nova provider yaml configuration
- source:
kind: ConfigMap
name: edpm-provider-values
fieldPath: data.nova.compute.provider
targets:
- select:
kind: ConfigMap
name: compute-provider
fieldPaths:
- data.provider\.yaml
options:
create: true
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
apiVersion: v1
kind: ConfigMap
metadata:
name: compute-provider
data:
provider.yaml: _replaced_
---
apiVersion: dataplane.openstack.org/v1beta1
kind: OpenStackDataPlaneService
metadata:
name: compute-provider
spec:
label: dataplane-deployment-compute-provider
edpmServiceType: nova
dataSources:
- configMapRef:
name: compute-provider
- configMapRef:
name: cpu-pinning-nova
- configMapRef:
name: gpu-nova
- secretRef:
name: nova-cell1-compute-config
- secretRef:
name: nova-migration-ssh-key
playbook: osp.edpm.nova
tlsCerts:
default:
contents:
- dnsnames
- ips
networks:
- ctlplane
issuer: osp-rootca-issuer-internal
caCerts: combined-ca-bundle
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
# Set namespace to OpenStack on all namespaced objects without a namespace
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true

components:
- ../../../../../lib/dataplane/deployment
21 changes: 21 additions & 0 deletions dt/nova/nova05epsilon/edpm/deployment/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
# Set namespace to OpenStack on all namespaced objects without a namespace
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true

components:
- ../../../../../lib/dataplane/deployment
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
apiVersion: v1
data:
NodeRootPassword: _replaced_
kind: Secret
metadata:
name: baremetalset-password-secret
namespace: openstack
type: Opaque
91 changes: 91 additions & 0 deletions dt/nova/nova05epsilon/edpm/nodeset/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
# Set namespace to OpenStack on all namespaced objects without a namespace
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true

components:
- ../../../../../lib/dataplane/nodeset

resources:
- baremetalset-password-secret.yaml
- nova_gpu.yaml

replacements:
- source:
kind: ConfigMap
name: edpm-nodeset-values
fieldPath: data.root_password
targets:
- select:
kind: Secret
name: baremetalset-password-secret
fieldPaths:
- data.NodeRootPassword
options:
create: true

# Nova compute CPU pinning customization
- source:
kind: ConfigMap
name: edpm-nodeset-values
fieldPath: data.nova.compute.conf
targets:
- select:
kind: ConfigMap
name: cpu-pinning-nova
fieldPaths:
- data.25-cpu-pinning-nova\.conf
options:
create: true
# Nova compute PCI passthrough customization
- source:
kind: ConfigMap
name: edpm-nodeset-values
fieldPath: data.nova.pci.conf
targets:
- select:
kind: ConfigMap
name: gpu-nova
fieldPaths:
- data.03-gpu-nova\.conf
options:
create: true
- source:
kind: ConfigMap
name: edpm-nodeset-values
fieldPath: data.preProvisioned
targets:
- select:
kind: OpenStackDataPlaneNodeSet
name: openstack-edpm
fieldPaths:
- spec.preProvisioned
options:
create: true
- source:
kind: ConfigMap
name: edpm-nodeset-values
fieldPath: data.baremetalSetTemplate
targets:
- select:
kind: OpenStackDataPlaneNodeSet
name: openstack-edpm
fieldPaths:
- spec.baremetalSetTemplate
options:
create: true

Loading