Skip to content

Commit 69c8f18

Browse files
Merge pull request #486 from jamepark4/compute_pre_commit_virtual
Add nova03gamma DT Create a pre-commit virtualized DT style job that could potentially replace equivalent compute component job. Reviewed-by: Andrew Bays <andrew.bays@gmail.com> Reviewed-by: jamepark4 <jparker@redhat.com> Reviewed-by: John Fulton <johfulto@redhat.com>
2 parents 538d3f7 + 9a7bd68 commit 69c8f18

26 files changed

Lines changed: 1153 additions & 0 deletions

automation/vars/nova03gamma.yaml

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
---
2+
vas:
3+
nova03gamma:
4+
stages:
5+
- pre_stage_run:
6+
- name: Apply cinder-lvm label on master-0
7+
type: cr
8+
definition:
9+
metadata:
10+
labels:
11+
openstack.org/cinder-lvm: ""
12+
kind: Node
13+
resource_name: master-0
14+
state: patched
15+
name: nncp-configuration
16+
path: examples/dt/nova/nova03gamma/networking/nncp/
17+
wait_conditions:
18+
- >-
19+
oc -n openstack wait nncp
20+
-l osp/nncm-config-type=standard
21+
--for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured
22+
--timeout=60s
23+
values:
24+
- name: network-values
25+
src_file: values.yaml
26+
build_output: nncp.yaml
27+
28+
- name: network-configuration
29+
path: examples/dt/nova/nova03gamma/networking
30+
wait_conditions:
31+
- >-
32+
oc -n metallb-system wait pod
33+
-l app=metallb -l component=speaker
34+
--for condition=Ready
35+
--timeout=5m
36+
values:
37+
- name: network-values
38+
src_file: nncp/values.yaml
39+
build_output: network.yaml
40+
41+
- name: control-plane
42+
path: examples/dt/nova/nova03gamma/
43+
wait_conditions:
44+
- >-
45+
oc -n openstack wait osctlplane controlplane --for condition=Ready
46+
--timeout=600s
47+
values:
48+
- name: network-values
49+
src_file: networking/nncp/values.yaml
50+
- name: service-values
51+
src_file: service-values.yaml
52+
build_output: control-plane.yaml
53+
54+
- name: edpm-nodeset
55+
path: examples/dt/nova/nova03gamma/edpm/nodeset
56+
wait_conditions:
57+
- >-
58+
oc -n openstack wait
59+
osdpns openstack-edpm --for condition=SetupReady
60+
--timeout=60m
61+
values:
62+
- name: edpm-nodeset-values
63+
src_file: values.yaml
64+
build_output: nodeset.yaml
65+
66+
- name: edpm-deployment
67+
path: examples/dt/nova/nova03gamma/edpm/deployment
68+
wait_conditions:
69+
- >-
70+
oc -n openstack wait
71+
osdpns openstack-edpm --for condition=Ready
72+
--timeout=60m
73+
values:
74+
- name: edpm-deployment-values
75+
src_file: values.yaml
76+
build_output: deployment.yaml

dt/nova/nova03gamma/README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Deployed Topology - Nova/nova03gamma
2+
3+
If you are looking for information on how to deploy the nova03gamma based DT,
4+
then please see the [README](../../../examples/dt/nova/nova03gamma/README.md)
5+
in the examples directory.
6+
7+
This directory ,`dt/nova/nova03gamma/`, exists so that the
8+
[kustomization.yaml](../../../examples/dt/nova/nova03gamma/edpm/nodeset/kustomization.yaml)
9+
in the examples directory of nova03gamma topology, reference it by path as a
10+
component. Its contents are likely uninteresting unless you want to understand
11+
how kustomize was implemented in this repository.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1alpha1
3+
kind: Component
4+
5+
transformers:
6+
# Set namespace to OpenStack on all namespaced objects without a namespace
7+
- |-
8+
apiVersion: builtin
9+
kind: NamespaceTransformer
10+
metadata:
11+
name: _ignored_
12+
namespace: openstack
13+
setRoleBindingSubjects: none
14+
unsetOnly: true
15+
fieldSpecs:
16+
- path: metadata/name
17+
kind: Namespace
18+
create: true
19+
20+
components:
21+
- ../../../../../lib/dataplane/deployment
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1alpha1
3+
kind: Component
4+
5+
transformers:
6+
# Set namespace to OpenStack on all namespaced objects without a namespace
7+
- |-
8+
apiVersion: builtin
9+
kind: NamespaceTransformer
10+
metadata:
11+
name: _ignored_
12+
namespace: openstack
13+
setRoleBindingSubjects: none
14+
unsetOnly: true
15+
fieldSpecs:
16+
- path: metadata/name
17+
kind: Namespace
18+
create: true
19+
20+
components:
21+
- ../../../../../lib/dataplane/nodeset
22+
23+
resources:
24+
- nova_pinning.yaml
25+
26+
replacements:
27+
# Nova compute CPU pinning customization
28+
- source:
29+
kind: ConfigMap
30+
name: edpm-nodeset-values
31+
fieldPath: data.nova.compute.conf
32+
targets:
33+
- select:
34+
kind: ConfigMap
35+
name: cpu-pinning-nova
36+
fieldPaths:
37+
- data.25-cpu-pinning-nova\.conf
38+
options:
39+
create: true
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
apiVersion: v1
3+
kind: ConfigMap
4+
metadata:
5+
name: cpu-pinning-nova
6+
data:
7+
25-cpu-pinning-nova.conf: _replaced_
8+
---
9+
apiVersion: dataplane.openstack.org/v1beta1
10+
kind: OpenStackDataPlaneService
11+
metadata:
12+
name: nova-custom
13+
spec:
14+
label: dataplane-deployment-nova-custom
15+
edpmServiceType: nova
16+
dataSources:
17+
- configMapRef:
18+
name: cpu-pinning-nova
19+
- secretRef:
20+
name: nova-cell1-compute-config
21+
- secretRef:
22+
name: nova-migration-ssh-key
23+
playbook: osp.edpm.nova
24+
tlsCerts:
25+
default:
26+
contents:
27+
- dnsnames
28+
- ips
29+
networks:
30+
- ctlplane
31+
issuer: osp-rootca-issuer-internal
32+
caCerts: combined-ca-bundle
Lines changed: 176 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,176 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1alpha1
3+
kind: Component
4+
5+
transformers:
6+
# Set namespace to OpenStack on all namespaced objects without a namespace
7+
- |-
8+
apiVersion: builtin
9+
kind: NamespaceTransformer
10+
metadata:
11+
name: _ignored_
12+
namespace: openstack
13+
setRoleBindingSubjects: none
14+
unsetOnly: true
15+
fieldSpecs:
16+
- path: metadata/name
17+
kind: Namespace
18+
create: true
19+
20+
components:
21+
- ../../../lib/networking/metallb
22+
- ../../../lib/networking/netconfig
23+
- ../../../lib/networking/nad
24+
- ../../../lib/control-plane
25+
26+
replacements:
27+
# Control plane customization
28+
- source:
29+
kind: ConfigMap
30+
name: service-values
31+
fieldPath: data.cinderVolumes.lvm-iscsi.replicas
32+
targets:
33+
- select:
34+
kind: OpenStackControlPlane
35+
fieldPaths:
36+
- spec.cinder.template.cinderVolumes.lvm-iscsi.replicas
37+
options:
38+
create: true
39+
40+
- source:
41+
kind: ConfigMap
42+
name: service-values
43+
fieldPath: data.cinderVolumes.lvm-iscsi.nodeSelector.openstack\.org/cinder-lvm
44+
targets:
45+
- select:
46+
kind: OpenStackControlPlane
47+
fieldPaths:
48+
- spec.cinder.template.cinderVolumes.lvm-iscsi.nodeSelector.openstack\.org/cinder-lvm
49+
options:
50+
create: true
51+
52+
- source:
53+
kind: ConfigMap
54+
name: service-values
55+
fieldPath: data.cinderVolumes.lvm-iscsi.customServiceConfig
56+
targets:
57+
- select:
58+
kind: OpenStackControlPlane
59+
fieldPaths:
60+
- spec.cinder.template.cinderVolumes.lvm-iscsi.customServiceConfig
61+
options:
62+
create: true
63+
64+
- source:
65+
kind: ConfigMap
66+
name: service-values
67+
fieldPath: data.cinderBackup.customServiceConfig
68+
targets:
69+
- select:
70+
kind: OpenStackControlPlane
71+
fieldPaths:
72+
- spec.cinder.template.cinderBackup.customServiceConfig
73+
options:
74+
create: true
75+
76+
- source:
77+
kind: ConfigMap
78+
name: service-values
79+
fieldPath: data.cinderBackup.replicas
80+
targets:
81+
- select:
82+
kind: OpenStackControlPlane
83+
fieldPaths:
84+
- spec.cinder.template.cinderBackup.replicas
85+
options:
86+
create: true
87+
88+
- source:
89+
kind: ConfigMap
90+
name: service-values
91+
fieldPath: data.glance.customServiceConfig
92+
targets:
93+
- select:
94+
kind: OpenStackControlPlane
95+
fieldPaths:
96+
- spec.glance.template.customServiceConfig
97+
options:
98+
create: true
99+
- source:
100+
kind: ConfigMap
101+
name: service-values
102+
fieldPath: data.glance.default.replicas
103+
targets:
104+
- select:
105+
kind: OpenStackControlPlane
106+
fieldPaths:
107+
- spec.glance.template.glanceAPIs.default.replicas
108+
options:
109+
create: true
110+
- source:
111+
kind: ConfigMap
112+
name: service-values
113+
fieldPath: data.nova.cell0Conductor.customServiceConfig
114+
targets:
115+
- select:
116+
kind: OpenStackControlPlane
117+
fieldPaths:
118+
- spec.nova.template.cellTemplates.cell0.conductorServiceTemplate.customServiceConfig
119+
options:
120+
create: true
121+
- source:
122+
kind: ConfigMap
123+
name: service-values
124+
fieldPath: data.nova.cell1Conductor.customServiceConfig
125+
targets:
126+
- select:
127+
kind: OpenStackControlPlane
128+
fieldPaths:
129+
- spec.nova.template.cellTemplates.cell1.conductorServiceTemplate.customServiceConfig
130+
options:
131+
create: true
132+
- source:
133+
kind: ConfigMap
134+
name: service-values
135+
fieldPath: data.swift.enabled
136+
targets:
137+
- select:
138+
kind: OpenStackControlPlane
139+
fieldPaths:
140+
- spec.swift.enabled
141+
options:
142+
create: true
143+
144+
- source:
145+
kind: ConfigMap
146+
name: service-values
147+
fieldPath: data.nova.apiServiceTemplate.customServiceConfig
148+
targets:
149+
- select:
150+
kind: OpenStackControlPlane
151+
fieldPaths:
152+
- spec.nova.template.apiServiceTemplate.customServiceConfig
153+
options:
154+
create: true
155+
- source:
156+
kind: ConfigMap
157+
name: service-values
158+
fieldPath: data.nova.schedulerServiceTemplate.customServiceConfig
159+
targets:
160+
- select:
161+
kind: OpenStackControlPlane
162+
fieldPaths:
163+
- spec.nova.template.schedulerServiceTemplate.customServiceConfig
164+
options:
165+
create: true
166+
- source:
167+
kind: ConfigMap
168+
name: service-values
169+
fieldPath: data.swift.enabled
170+
targets:
171+
- select:
172+
kind: OpenStackControlPlane
173+
fieldPaths:
174+
- spec.swift.enabled
175+
options:
176+
create: true

dt/nova/nova03gamma/namespace.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
apiVersion: builtin
3+
kind: NamespaceTransformer
4+
metadata:
5+
name: _ignored_
6+
namespace: openstack
7+
setRoleBindingSubjects: none
8+
unsetOnly: true
9+
fieldSpecs:
10+
- path: metadata/name
11+
kind: Namespace
12+
create: true
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1alpha1
3+
kind: Component
4+
5+
transformers:
6+
# Set namespace to OpenStack on all namespaced objects without a namespace
7+
- |-
8+
apiVersion: builtin
9+
kind: NamespaceTransformer
10+
metadata:
11+
name: _ignored_
12+
namespace: openstack
13+
setRoleBindingSubjects: none
14+
unsetOnly: true
15+
fieldSpecs:
16+
- path: metadata/name
17+
kind: Namespace
18+
create: true
19+
20+
components:
21+
- ../../../../lib/networking/metallb
22+
- ../../../../lib/networking/netconfig
23+
- ../../../../lib/networking/nad
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
control-plane.yaml

0 commit comments

Comments
 (0)