Skip to content

Commit 604618f

Browse files
committed
Add scenario 'entry-scale-ironic-flat-network'
1 parent a815751 commit 604618f

File tree

16 files changed

+339
-2
lines changed

16 files changed

+339
-2
lines changed

jenkins/ci.suse.de/templates/cloud-ardana-pipeline-template.yaml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@
155155
- standard
156156
- std-lmm
157157
- std-split
158+
- entry-scale-ironic-flat-network
158159
description: >-
159160
The name of one of the available scenarios that can be used to generate input models.
160161
If this parameter is set, the following parameters may also be set to different values, to control
@@ -268,7 +269,7 @@
268269
description: |
269270
The number of SLES compute nodes in the generated input model.
270271
271-
Input model generator scenarios using this parameter: all
272+
Input model generator scenarios using this parameter: all except entry-scale-ironic-flat-network.
272273
273274
NOTE: this parameter is used to generate input models. See the 'scenario_name' parameter about
274275
using one of the available input model generator scenarios.
@@ -286,6 +287,19 @@
286287
NOTE: this parameter is used to generate input models. See the 'scenario_name' parameter about
287288
using one of the available input model generator scenarios.
288289
290+
- validating-string:
291+
name: ironic_compute
292+
default: '0'
293+
regex: '[0-9]+'
294+
msg: The entered value failed validation
295+
description: |
296+
The number of Ironic compute nodes in the generated input model.
297+
298+
Input model generator scenarios using this parameter: entry-scale-ironic-flat-network
299+
300+
NOTE: this parameter is used to generate input models. See the 'scenario_name' parameter about
301+
using one of the available input model generator scenarios.
302+
289303
- string:
290304
name: disabled_services
291305
default: '{disabled_services|}'
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#
2+
# (c) Copyright 2018 SUSE LLC
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
5+
# not use this file except in compliance with the License. You may obtain
6+
# a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13+
# License for the specific language governing permissions and limitations
14+
# under the License.
15+
#
16+
---
17+
18+
vrrp_offset: 6
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
#
2+
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
3+
# (c) Copyright 2017-2018 SUSE LLC
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
6+
# not use this file except in compliance with the License. You may obtain
7+
# a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
14+
# License for the specific language governing permissions and limitations
15+
# under the License.
16+
#
17+
---
18+
product:
19+
version: 2
20+
21+
# This example is based on using a flat provider guest network as the
22+
# cleaning network for ironic nodes to use.
23+
#
24+
# This network must be created by neutron.
25+
26+
configuration-data:
27+
- name: IRONIC-CONFIG-CP1
28+
services:
29+
- ironic
30+
data:
31+
# Set enable_node_cleaning to false to disable node cleaning by Ironic.
32+
cleaning_network: guest-network
33+
enable_node_cleaning: true
34+
# Set enable_oneview to true to enable oneview for ironic.
35+
enable_oneview: false
36+
# Provide encrypted oneview password encryption can be done
37+
# using ardanaencrypt.py or using openssl and export the key
38+
# as environement variable 'ARDANA_USER_PASSWORD_ENCRYPT_KEY'
39+
oneview_manager_url:
40+
oneview_username:
41+
oneview_encrypted_password:
42+
oneview_allow_insecure_connections:
43+
tls_cacert_file:
44+
# Set enable_agent_drivers to false if swift is disabled
45+
enable_agent_drivers: true
46+
# Enable boot from volume, by setting the enabled_storage_interfaces to
47+
# 'cinder' in Ironic config file
48+
boot_from_volume_enabled: false
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
#
2+
# (c) Copyright 2018 SUSE LLC
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
5+
# not use this file except in compliance with the License. You may obtain
6+
# a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13+
# License for the specific language governing permissions and limitations
14+
# under the License.
15+
#
16+
---
17+
18+
controllers: 3
19+
sles_computes: 0
20+
rhel_computes: 0
21+
22+
scenario:
23+
name: entry-scale-ironic-flat-network
24+
cloud_name: entry-scale
25+
description: >
26+
entry scale cloud that uses the Ironic service to provision physical machines through the Compute services API
27+
{{ clm_model }} CLM node and {{ ironic_compute }} IRONIC-COMPUTE node
28+
audit_enabled: True
29+
ses_enabled: "{{ ses_enabled | default(False) }}"
30+
use_cinder_volume_disk: True
31+
use_glance_cache_disk: False
32+
availability_zones: "{{ availability_zones }}"
33+
34+
service_template: ironic
35+
network_template: ironic
36+
interface_template: ironic
37+
disk_template: ironic
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
#
2+
# (c) Copyright 2018 SUSE LLC
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
5+
# not use this file except in compliance with the License. You may obtain
6+
# a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13+
# License for the specific language governing permissions and limitations
14+
# under the License.
15+
#
16+
---
17+
18+
disk_models:
19+
volume_groups:
20+
- name: ardana-vg
21+
disk_components:
22+
- OS
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
#
2+
# (c) Copyright 2018 SUSE LLC
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
5+
# not use this file except in compliance with the License. You may obtain
6+
# a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13+
# License for the specific language governing permissions and limitations
14+
# under the License.
15+
#
16+
---
17+
18+
interface_models:
19+
- name: CLM
20+
service_groups:
21+
- clm
22+
network_interfaces:
23+
- network_groups:
24+
- MANAGEMENT
25+
forced_network_groups:
26+
- EXTERNAL-API
27+
28+
- name: CONTROLLER
29+
service_groups:
30+
- controller
31+
network_interfaces:
32+
- network_groups:
33+
- EXTERNAL-API
34+
- GUEST
35+
- MANAGEMENT
36+
37+
- name: IRONIC-COMPUTE
38+
service_groups:
39+
- ironic-compute
40+
network_interfaces:
41+
- network_groups:
42+
- GUEST
43+
- MANAGEMENT
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
#
2+
# (c) Copyright 2018 SUSE LLC
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
5+
# not use this file except in compliance with the License. You may obtain
6+
# a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13+
# License for the specific language governing permissions and limitations
14+
# under the License.
15+
#
16+
---
17+
18+
network_groups:
19+
- name: MANAGEMENT
20+
hostname_suffix: mgmt
21+
tagged_vlan: false
22+
component_endpoints:
23+
- MANAGEMENT
24+
- INTERNAL-API
25+
26+
- name: EXTERNAL-API
27+
hostname_suffix: extapi
28+
tagged_vlan: true
29+
component_endpoints:
30+
- EXTERNAL-API
31+
routes:
32+
- default
33+
34+
- name: GUEST
35+
hostname_suffix: guest
36+
tagged_vlan: true
37+
component_endpoints:
38+
- NEUTRON-EXT
39+
40+
- name: ILO
41+
hostname_suffix: ilo
42+
component_endpoints: []
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
#
2+
# (c) Copyright 2018 SUSE LLC
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License"); you may
5+
# not use this file except in compliance with the License. You may obtain
6+
# a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13+
# License for the specific language governing permissions and limitations
14+
# under the License.
15+
#
16+
#
17+
# Standard scenario service template with standalone CLM node: all services enabled
18+
# and variable number of controller, SLES compute and RHEL compute nodes.
19+
#
20+
# Template parameters:
21+
# controllers: number of controller nodes (default: 3)
22+
# ironic_compute: number of ironic compute nodes (default: 1)
23+
#
24+
---
25+
26+
service_groups:
27+
- name: clm
28+
type: cluster
29+
prefix: c0
30+
heat_flavor_id: "{{ vcloud_flavor_name_prefix }}-compute"
31+
member_count: '{{ (clm_model == "standalone") | ternary(1, 0) }}'
32+
service_components:
33+
- CLM
34+
- name: controller
35+
type: cluster
36+
prefix: c1
37+
heat_flavor_id: "{{ vcloud_flavor_name_prefix }}-controller"
38+
member_count: '{{ controllers|default(3) }}'
39+
service_components:
40+
- '{{ (clm_model == "integrated") | ternary("CLM", '') }}'
41+
- CORE
42+
- LMM
43+
- DBMQ
44+
- SWPAC
45+
- NEUTRON
46+
- SWOBJ
47+
- IRONIC
48+
- name: ironic-compute
49+
type: resource
50+
prefix: ir-comp
51+
heat_flavor_id: "{{ vcloud_flavor_name_prefix }}-compute"
52+
member_count: '{{ ironic_computes|default(1) }}'
53+
min_count: 1
54+
service_components:
55+
- IRONIC-COMPUTE

scripts/jenkins/cloud/ansible/deploy-cloud.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,32 @@
3939

4040
tasks:
4141
- block:
42+
- name: Remove versioned features from input model when not enabled
43+
replace:
44+
path: "{{ input_model_path }}/data/control_plane.yml"
45+
regexp: '(.*{{ item }}.*)'
46+
replace: '#\1'
47+
when: not versioned_features[item].enabled
48+
delegate_to: localhost
49+
loop:
50+
- manila
51+
- freezer
52+
- heat-api-cloudwatch
53+
- nova-console-auth
54+
55+
- name: Remove designate and octavia features from input model when scenario is ironic
56+
replace:
57+
path: "{{ input_model_path }}/data/control_plane.yml"
58+
regexp: '(.*{{ item }}.*)'
59+
replace: '#\1'
60+
when: scenario_name == "entry-scale-ironic-flat-network"
61+
delegate_to: localhost
62+
loop:
63+
- designate
64+
- octavia
65+
- bind
66+
67+
4268
- name: Ardana log stream at
4369
debug:
4470
msg: "http://{{ ansible_host }}:9091/"

scripts/jenkins/cloud/ansible/group_vars/all/all.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,3 +119,4 @@ rc_channels:
119119
engcloud-ci-slot19: "cloud-ci-monitoring"
120120
engcloud-ci-slot20: "cloud-ci-monitoring"
121121
engcloud-ci-slot21: "cloud-ci-monitoring"
122+
qe006: "cloud-qe-hlm006"

0 commit comments

Comments
 (0)