blob: d8f7fb733b8084d70012912dc12b25ed48bd58ea [file] [log] [blame]
{% 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 %}
# vkhlyunev: sometimes we have to verify fixes to mitaka openstack based on
# ubuntu trusty OS deployment. Last discovered deploy-able configuration is based on
# mcp-virtual-lab/salt-formulas/reclass-system parameters/commits/tags listed below
# SALT_MODELS_COMMIT = 'fa85f84'
# SALT_MODELS_SYSTEM_TAG = '2018.8.0'
# REPOSITORY_SUITE = '2018.8.0'
# OVERRIDES = 'openstack_log_appender: true
# linux_system_repo_mk_openstack_version: testing'
{{ 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 %}
{%- endif %}
# vkhlyunev: fa85f84 model commit contains sphinx on cfg01 node
# which is not required for mitaka-trusty testing. Unfortunately we can not fix
# it in model itself due to constantly updating models according to development
# of main release.
- description: Apply sphinx workaround - delete system.sphinx class
cmd: sed -i -e '/system.sphinx/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml
node_name: {{ HOSTNAME_CFG01 }}
skip_fail: False
- description: Apply sphinx workaround - delete nginx section
cmd: sed -i -e '/ nginx:/,+8d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml
node_name: {{ HOSTNAME_CFG01 }}
skip_fail: False
- description: Refresh pillar
cmd: salt '*' saltutil.refresh_pillar
node_name: {{ HOSTNAME_CFG01 }}
retry: {count: 1, delay: 1}
skip_fail: false
{{ 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