Page MenuHomeDevCentral

D3674.diff
No OneTemporary

D3674.diff

diff --git a/roles/paas-docker/init.sls b/pillar/paas/docker/docker-002/reports.sls
copy from roles/paas-docker/init.sls
copy to pillar/paas/docker/docker-002/reports.sls
--- a/roles/paas-docker/init.sls
+++ b/pillar/paas/docker/docker-002/reports.sls
@@ -2,23 +2,16 @@
# Salt — Provision Docker engine
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Project: Nasqueron
-# Created: 2018-09-13
# License: Trivial work, not eligible to copyright
+# Service: Nasqueron Reports
# -------------------------------------------------------------
-{% from "map.jinja" import dirs with context %}
+docker_images:
+ - nasqueron/reports
-include:
- - .kernel
- - .salt
- - .docker
- - .containers
- - .systemd-unit
- - .wwwroot-502
- - .wwwroot-content
- - .nginx
- - .monitoring
- - .wrappers
-{% if salt['node.has']('flags:install_docker_devel_tools') %}
- - .devel
-{% endif %}
+nasqueron_reports:
+ reports_dir: /var/wwwroot-content/docker-002.nasqueron.org/reports
+
+ jobs:
+ - report: devcentral-tokens-language-models
+ schedule: daily
diff --git a/roles/paas-docker/init.sls b/roles/paas-docker/init.sls
--- a/roles/paas-docker/init.sls
+++ b/roles/paas-docker/init.sls
@@ -14,6 +14,7 @@
- .docker
- .containers
- .systemd-unit
+ - .systemd-timers
- .wwwroot-502
- .wwwroot-content
- .nginx
diff --git a/roles/paas-docker/systemd-timers/files/report.service b/roles/paas-docker/systemd-timers/files/report.service
new file mode 100644
--- /dev/null
+++ b/roles/paas-docker/systemd-timers/files/report.service
@@ -0,0 +1,23 @@
+# -------------------------------------------------------------
+# PaaS Docker :: Systemd timers
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+# Project: Nasqueron
+# License: Trivial work, not eligible to copyright
+# Source file: roles/paas-docker/systemd-timers/files/report.service
+# Report: {{ report }}
+# -------------------------------------------------------------
+#
+# <auto-generated>
+# This file is managed by our rOPS SaltStack repository.
+#
+# Changes to this file may cause incorrect behavior
+# and will be lost if the state is redeployed.
+# </auto-generated>
+
+[Unit]
+Description=Nasqueron Reports :: {{ report }}
+
+[Service]
+Type=oneshot
+WorkingDirectory={{ reports_dir }}
+ExecStart=/bin/sh -c 'run-report {{ report }} > {{ reports_dir }}/{{ report }}.txt'
diff --git a/roles/paas-docker/systemd-timers/files/report.timer b/roles/paas-docker/systemd-timers/files/report.timer
new file mode 100644
--- /dev/null
+++ b/roles/paas-docker/systemd-timers/files/report.timer
@@ -0,0 +1,25 @@
+# -------------------------------------------------------------
+# PaaS Docker :: Systemd timers
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+# Project: Nasqueron
+# License: Trivial work, not eligible to copyright
+# Source file: roles/paas-docker/systemd-timers/files/report.timer
+# Report: {{ report }}
+# -------------------------------------------------------------
+#
+# <auto-generated>
+# This file is managed by our rOPS SaltStack repository.
+#
+# Changes to this file may cause incorrect behavior
+# and will be lost if the state is redeployed.
+# </auto-generated>
+
+[Unit]
+Description=Nasqueron Reports :: {{ report }}
+
+[Timer]
+OnCalendar={{ schedule }}
+Persistent=true
+
+[Install]
+WantedBy=timers.target
diff --git a/roles/paas-docker/systemd-timers/init.sls b/roles/paas-docker/systemd-timers/init.sls
new file mode 100644
--- /dev/null
+++ b/roles/paas-docker/systemd-timers/init.sls
@@ -0,0 +1,43 @@
+# -------------------------------------------------------------
+# Salt — Provision Docker engine
+# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+# Project: Nasqueron
+# License: Trivial work, not eligible to copyright
+# Service: Nasqueron Reports
+# -------------------------------------------------------------
+
+{% set reports_dir = pillar["nasqueron_reports"]["reports_dir"] %}
+
+reports_dir:
+ file.directory:
+ - name: {{ reports_dir }}
+ - user: root
+ - group: root
+ - mode: 755
+ - makedirs: true
+
+{% for job in pillar["nasqueron_reports"]["jobs"] %}
+systemd_service_{{ job.report }}:
+ file.managed:
+ - name: /etc/systemd/system/report-{{ job.report }}.service
+ - source: salt://roles/paas-docker/systemd-timers/files/report.service
+ - template: jinja
+ - context:
+ reports_dir: {{ reports_dir }}
+ report: {{ job.report }}
+
+systemd_timer_{{ job.report }}:
+ file.managed:
+ - name: /etc/systemd/system/report-{{ job.report }}.timer
+ - source: salt://roles/paas-docker/systemd-timers/files/report.timer
+ - template: jinja
+ - context:
+ report: {{ job.report }}
+ schedule: {{ job.schedule }}
+
+systemd_timer_{{ job.report }}_enabled:
+ service.enabled:
+ - name: report-{{ job.report }}.timer
+ - require:
+ - file: systemd_timer_{{ job.report }}
+{% endfor %}

File Metadata

Mime Type
text/plain
Expires
Mon, Sep 15, 11:04 (21 h, 18 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2986390
Default Alt Text
D3674.diff (5 KB)

Event Timeline