aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/salt-formulas/salt-formula-tacker/tacker/server.sls
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-08-18 03:46:13 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-08-29 01:27:28 +0200
commitab18375a629010525ac15bc11ce2d4e4cf393fe9 (patch)
tree38dc93fe27b88db9ebe489e4c685b06e4b80561e /mcp/salt-formulas/salt-formula-tacker/tacker/server.sls
parentcfa1c0d67ee23edcbc25d9620754159645981dd8 (diff)
[docker] Switch to containerized Salt Master
* Refactor OPNFV salt-formulas mechanism to resemble upstream git structure: - git submodules: add new submodule for each formula we patch; - create salt-formula-x directories for OPNFV formulas; - move mcp/metadata/service contents to their each formula subdir; - use `make patches-import` for patches previously handled by patch.sh; - retire patch.sh * states: add virtual_init: - mostly based on old salt.sh, which is now obsolete; - exclude salt-master service restart (it would kill the container); * scenarios: cleanup (rm cfg01 virtual node def), adopt virtual_init; * reclass: align our model with prebuilt container's Salt config: - drop linux:network pillar data (handled by Docker); - stop applying linux.system state on cfg01; - align salt user homedir; - drop salt-formula packages (preprovisioned); * minor plumbing in deploy.sh and lib.sh; JIRA: FUEL-383 Change-Id: I28708a9b399d3f19012212c71966ebda9d6fc0ac Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'mcp/salt-formulas/salt-formula-tacker/tacker/server.sls')
-rw-r--r--mcp/salt-formulas/salt-formula-tacker/tacker/server.sls56
1 files changed, 56 insertions, 0 deletions
diff --git a/mcp/salt-formulas/salt-formula-tacker/tacker/server.sls b/mcp/salt-formulas/salt-formula-tacker/tacker/server.sls
new file mode 100644
index 000000000..eb3468a11
--- /dev/null
+++ b/mcp/salt-formulas/salt-formula-tacker/tacker/server.sls
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2018 Mirantis Inc. and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+{%- from "tacker/map.jinja" import server with context %}
+{%- if server.enabled %}
+
+include:
+- git
+
+{{ server.git.source }}:
+ git.latest:
+ - target: {{ server.git.target }}
+ - rev: {{ server.git.branch }}
+ - depth: 1
+
+tacker_packages:
+ pkg.installed:
+ - names: {{ server.pkgs }}
+
+tacker_install:
+ cmd.run:
+ - name: python setup.py install
+ - cwd: {{ server.git.target }}
+ - creates: /usr/local/bin/tacker-server
+ - require:
+ - git: {{ server.git.source }}
+
+/usr/local/etc/tacker/tacker.conf:
+ file.managed:
+ - source: salt://tacker/files/tacker.conf
+ - template: jinja
+ - makedirs: true
+ - require:
+ - cmd: tacker_install
+
+tacker_db_manage:
+ cmd.run:
+ - name: /usr/local/bin/tacker-db-manage --config-file /usr/local/etc/tacker/tacker.conf upgrade head
+ - require:
+ - file: /usr/local/etc/tacker/tacker.conf
+
+/lib/systemd/system/tacker.service:
+ file.managed:
+ - source: salt://tacker/files/tacker.systemd
+
+tacker:
+ service.running:
+ - enable: true
+ - watch:
+ - file: /usr/local/etc/tacker/tacker.conf
+
+{%- endif %}