| {% from 'virtual-mcp-trusty/underlay.yaml' import HOSTNAME_CFG01 with context %} |
| {% from 'virtual-mcp-trusty/underlay.yaml' import LAB_CONFIG_NAME with context %} |
| {% from 'virtual-mcp-trusty/underlay.yaml' import DOMAIN_NAME with context %} |
| |
| {% set SALT_MODELS_REPOSITORY = os_env('SALT_MODELS_REPOSITORY','https://gerrit.mcp.mirantis.com/salt-models/mcp-virtual-lab') %} |
| # Other salt model repository parameters see in shared-salt.yaml |
| {% set OVERRIDES = os_env('OVERRIDES', 'override_example: true') %} |
| {% set SALT_VERSION = os_env('SALT_VERSION', '2017.7') %} |
| {% set OVERRIDES_FILENAME = os_env('OVERRIDES_FILENAME', '/srv/salt/reclass/classes/cluster/overrides.yml') %} |
| |
| {% import 'shared-salt.yaml' as SHARED with context %} |
| |
| {{ SHARED.MACRO_INSTALL_SALT_MASTER() }} |
| |
| {{ SHARED.MACRO_CLONE_RECLASS_MODELS() }} |
| |
| {{ SHARED.MACRO_CONFIGURE_RECLASS(FORMULA_SERVICES='"linux" "reclass" "salt" "openssh" "ntp" "git" "nginx" "collectd" "sensu" "heka" "sphinx" "keystone" "mysql" "grafana" "haproxy" "rsyslog" "horizon" "prometheus" "telegraf" "elasticsearch" "fluentd" "docker" "kibana" "logrotate"') }} |
| |
| {{ SHARED.MACRO_INSTALL_SALT_MINIONS() }} |
| |
| {{ SHARED.MACRO_RUN_SALT_MASTER_UNDERLAY_STATES() }} |
| |
| {%- if OVERRIDES != '' %} |
| {%- for param in OVERRIDES.splitlines() %} |
| {%- set key, value = param.replace(' ','').split(':', 1) %} |
| - description: Override cluster parameters |
| cmd: | |
| salt-call reclass.cluster_meta_set name='{{ key }}' value='{{ value }}' file_name='{{OVERRIDES_FILENAME}}' |
| node_name: {{ HOSTNAME_CFG01 }} |
| retry: {count: 1, delay: 1} |
| skip_fail: false |
| {%- endfor %} |
| |
| - description: Refresh pillar |
| cmd: salt '*' saltutil.refresh_pillar |
| node_name: {{ HOSTNAME_CFG01 }} |
| retry: {count: 1, delay: 1} |
| skip_fail: false |
| {%- endif %} |
| |
| {{ SHARED.MACRO_GENERATE_INVENTORY() }} |
| |
| {{ SHARED.MACRO_BOOTSTRAP_ALL_MINIONS() }} |
| |
| - description: WR run linux state to fix hosts |
| cmd: salt "cfg*" state.sls linux |
| node_name: {{ HOSTNAME_CFG01 }} |
| retry: {count: 1, delay: 10} |
| skip_fail: true |
| |
| - description: Install linux-image-extra package on controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@cinder:controller' cmd.run 'apt -y install linux-image-extra-$(uname -r)' |
| node_name: {{ HOSTNAME_CFG01 }} |
| retry: {count: 1, delay: 10} |
| skip_fail: false |
| |
| {{SHARED.MACRO_CHECK_SALT_VERSION_SERVICES_ON_CFG()}} |
| |
| {{SHARED.MACRO_CHECK_SALT_VERSION_ON_NODES()}} |
| |
| # WORKAROUND PROD-21071 |
| - description: Set correct pin for openstack repository |
| cmd: | |
| salt --hard-crash --state-output=mixed --state-verbose=False '*' cmd.run "sed -i -e 's/Pin: release l=mitaka/Pin: release l=trusty\/openstack\/mitaka testing/g' /etc/apt/preferences.d/mirantis_openstack" |
| node_name: {{ HOSTNAME_CFG01 }} |
| retry: {count: 1, delay: 5} |
| skip_fail: false |
| |
| # WORKAROUND PROD-22827 |
| - description: Set Pin-Priority up to 1200 for openstack repository |
| cmd: | |
| salt --hard-crash --state-output=mixed --state-verbose=False '*' cmd.run "sed -i -e 's/Pin-Priority: 1100/Pin-Priority: 1200/g' /etc/apt/preferences.d/mirantis_openstack" |
| node_name: {{ HOSTNAME_CFG01 }} |
| retry: {count: 1, delay: 5} |
| skip_fail: false |