blob: 9658b9869ff5c9ec0cfb1a79b4f5b35db4157904 [file] [log] [blame]
Oleksandr Kozachenkob0093492023-09-06 21:43:47 +02001# Copyright (c) 2023 VEXXHOST, Inc.
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may
4# not use this file except in compliance with the License. You may obtain
5# a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations
13# under the License.
14
15dependency:
16 name: galaxy
17driver:
18 name: docker
19platforms:
20 - name: ${MOLECULE_SCENARIO_NAME}
21 image: geerlingguy/docker-${MOLECULE_DISTRO:-ubuntu2004}-ansible:latest
22 command: ${MOLECULE_DOCKER_COMMAND:-""}
23 privileged: true
24 cgroupns_mode: host
25 pre_build_image: true
26 purge_networks: true
27 dns_servers:
28 - 1.1.1.1
29 docker_networks:
30 - name: mgmt
31 ipam_config:
32 - subnet: 10.96.240.0/24
33 gateway: 10.96.240.1
34 - name: public
35 ipam_config:
36 - subnet: 10.96.250.0/24
37 gateway: 10.96.250.1
38 networks:
39 - name: mgmt
40 - name: public
41 published_ports:
42 - 80:80
43 - 443:443
44 security_opts:
45 - apparmor=unconfined
46 volumes:
47 - /dev:/dev
48 - /lib/modules:/lib/modules:ro
49 - /sys/fs/cgroup:/sys/fs/cgroup:rw
50 - /usr/src:/usr/src:ro
51 groups:
52 - controllers
53 - cephs
54 - computes
55provisioner:
56 name: ansible
57 config_options:
58 connection:
59 pipelining: true
60 tags:
61 skip: >-
62 sysctl,
63 ethtool
64 inventory:
65 group_vars:
66 all:
67 # Ceph
68 ceph_fsid: ${MOLECULE_CEPH_FSID:-"d1f9e453-f13a-4d30-9ab1-e5ae1d87b67f"}
69 ceph_conf_overrides:
70 - section: global
71 option: osd crush chooseleaf type
72 value: 0
73 - section: mon
74 option: auth allow insecure global id reclaim
75 value: false
76 # Kubernetes
77 kubernetes_keepalived_interface: eth0
78 kubernetes_keepalived_vrid: 42
79 kubernetes_keepalived_vip: 10.96.240.10
80 kubernetes_hostname: 10.96.240.10
81 # CNI
82 cilium_helm_values:
83 operator:
84 replicas: 1
85 # CSI
86 csi_driver: ${MOLECULE_CSI_DRIVER:-"local-path-provisioner"}
87 ceph_csi_rbd_helm_values:
88 provisioner:
89 replicaCount: 1
90 # Certificates
91 cluster_issuer_type: self-signed
92 # Ingress
93 ingress_nginx_helm_values:
94 controller:
95 config:
96 worker-processes: 2
97 # Percona XtraDB Cluster
98 percona_xtradb_cluster_spec:
99 allowUnsafeConfigurations: true
100 pxc:
101 size: 1
102 haproxy:
103 size: 1
104 # Common
105 domain_name: "{{ (lookup('env', 'HOST_IP') | default(ansible_default_ipv4.address, true)).replace('.', '-') }}.nip.io"
106 openstack_helm_endpoints_region_name: RegionOne
107 # Keycloak
108 keycloak_host: "keycloak.{{ domain_name }}"
109 keycloak_database_password: secrete123
110 keycloak_admin_password: secrete123
111 # Monitoring
112 grafana_keycloak_client_secret: secrete123
113 kube_prometheus_stack_grafana_host: "grafana.{{ domain_name }}"
114 kube_prometheus_stack_grafana_admin_password: secrete123
115 # Memcached
116 openstack_helm_endpoints_memcached_secret_key: secrete123
117 # RabbitMQ
118 rabbitmq_spec:
119 resources:
120 requests:
121 cpu: 250m
122 memory: 256Mi
123 # Keystone
124 openstack_helm_endpoints_keystone_api_host: "identity.{{ domain_name }}"
125 openstack_helm_endpoints_keystone_admin_password: secrete123
126 openstack_helm_endpoints_keystone_mariadb_password: secrete123
127 openstack_helm_endpoints_keystone_rabbitmq_password: secrete123
128 keystone_keycloak_client_secret: secrete123
129 keystone_oidc_crypto_passphrase: secrete123
130 keystone_helm_values:
131 pod:
132 replicas:
133 api: 1
134 # Horizon
135 openstack_helm_endpoints_horizon_api_host: "dashboard.{{ domain_name }}"
136 openstack_helm_endpoints_horizon_mariadb_password: secrete123
137 horizon_helm_values:
138 pod:
139 replicas:
140 server: 1
Rico Linb07029f2023-10-18 21:26:01 +0800141 cinder_helm_values:
142 conf:
143 cinder:
144 DEFAULT:
145 osapi_volume_workers: 2
Oleksandr Kozachenkob0093492023-09-06 21:43:47 +0200146 cephs:
147 ceph_osd_devices:
148 - "/dev/ceph-{{ inventory_hostname_short }}-osd0/data"
149 - "/dev/ceph-{{ inventory_hostname_short }}-osd1/data"
150 - "/dev/ceph-{{ inventory_hostname_short }}-osd2/data"
151 # options:
152 # inventory: "${MOLECULE_EPHEMERAL_DIRECTORY}/workspace"
153 # inventory:
154 # links:
155 # host_vars: "${MOLECULE_SCENARIO_DIRECTORY}/host_vars"
156 # group_vars: "${MOLECULE_SCENARIO_DIRECTORY}/group_vars"
157verifier:
158 name: ansible