prometheus-formula/prometheus/archive/alternatives/install.sls

78 lines
3.1 KiB
Plaintext
Raw Normal View History

# -*- coding: utf-8 -*-
# vim: ft=sls
{#- Get the `tplroot` from `tpldir` #}
{%- set tplroot = tpldir.split('/')[0] %}
{%- from tplroot ~ "/map.jinja" import prometheus as p with context %}
{%- from tplroot ~ "/libtofs.jinja" import files_switch with context %}
{%- set sls_archive_install = tplroot ~ '.archive.install' %}
2019-06-19 01:23:45 +02:00
{%- if grains.kernel|lower in ('linux',) and p.linux.altpriority|int > 0 %}
include:
- {{ sls_archive_install }}
2019-06-20 02:36:58 +02:00
{%- for name in p.wanted %}
{%- set bundle = name + '-%s.%s-%s'|format(p.pkg[name]['archive_version'], p.kernel, p.arch) %}
2019-06-20 02:36:58 +02:00
prometheus-archive-alternatives-install-{{ name }}-home-cmd-run:
cmd.run:
- onlyif: {{ grains.os_family in ('Suse',) }}
2019-06-20 02:36:58 +02:00
- name: update-alternatives --install {{ p.dir.basedir }}/{{ bundle }} prometheus-{{ name }}-home {{ p.dir.basedir }}/{{ bundle }} {{p.linux.altpriority}}
- watch:
2019-06-20 02:36:58 +02:00
- archive: prometheus-archive-install-{{ name }}-archive-extracted
- require:
- sls: {{ sls_archive_install }}
2019-06-19 01:23:45 +02:00
2019-06-20 02:36:58 +02:00
prometheus-archive-alternatives-install-{{ name }}-home-alternatives-install:
alternatives.install:
2019-06-20 02:36:58 +02:00
- name: prometheus-{{ name }}-home
- link: {{ p.dir.basedir }}/{{ name }}
- path: {{ p.dir.basedir }}/{{ bundle }}
- priority: {{ p.linux.altpriority }}
- order: 10
- watch:
2019-06-20 02:36:58 +02:00
- archive: prometheus-archive-install-{{ name }}-archive-extracted
- require:
- sls: {{ sls_archive_install }}
- onlyif: {{ grains.os_family not in ('Suse',) }}
2019-06-20 02:36:58 +02:00
prometheus-archive-alternatives-install-{{ name }}-home-alternatives-set:
alternatives.set:
2019-06-20 02:36:58 +02:00
- name: prometheus-{{ name }}-home
- path: {{ p.dir.basedir }}/{{ bundle }}
- require:
2019-06-20 02:36:58 +02:00
- cmd: prometheus-archive-alternatives-install-{{ name }}-home-cmd-run
- alternatives: prometheus-archive-alternatives-install-{{ name }}-home-alternatives-install
- onlyif: {{ grains.os_family not in ('Suse',) }}
2019-06-20 02:36:58 +02:00
{% for b in p.pkg[name]['binaries'] %}
2019-06-19 01:23:45 +02:00
2019-06-20 02:36:58 +02:00
prometheus-archive-alternatives-install-{{ name }}-alternatives-install-{{ b }}:
cmd.run:
- onlyif: {{ grains.os_family in ('Suse',) }}
2019-06-20 02:36:58 +02:00
- name: update-alternatives --install /usr/local/bin/{{ b }} prometheus-{{ name }}-{{ b }} {{ p.dir.basedir }}/{{ bundle }}/{{ b }} {{ p.linux.altpriority }}
- require:
2019-06-20 02:36:58 +02:00
- cmd: prometheus-archive-alternatives-install-{{ name }}-home-cmd-run
alternatives.install:
2019-06-20 02:36:58 +02:00
- name: prometheus-{{ name }}-{{ b }}
- link: /usr/local/bin/{{ b }}
- path: {{ p.dir.basedir }}/{{ bundle }}/{{ b }}
- priority: {{ p.linux.altpriority }}
- order: 10
- require:
2019-06-20 02:36:58 +02:00
- alternatives: prometheus-archive-alternatives-install-{{ name }}-home-alternatives-install
- onlyif: {{ grains.os_family not in ('Suse',) }}
2019-06-20 02:36:58 +02:00
prometheus-archive-alternatives-install-{{ name }}-alternatives-set-{{ b }}:
alternatives.set:
2019-06-20 02:36:58 +02:00
- name: prometheus-{{ name }}-{{ b }}
- path: {{ p.dir.basedir }}/{{ bundle }}/{{ b }}
- require:
2019-06-20 02:36:58 +02:00
- alternatives: prometheus-archive-alternatives-install-{{ name }}-alternatives-install-{{ b }}
- onlyif: {{ grains.os_family not in ('Suse',) }}
2019-06-19 01:23:45 +02:00
2019-06-20 02:36:58 +02:00
{% endfor %}
{% endfor %}
2019-06-19 01:23:45 +02:00
{%- endif %}