Page Menu
Home
DevCentral
Search
Configure Global Search
Log In
Files
F12242552
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
9 KB
Referenced Files
None
Subscribers
None
View Options
diff --git a/map.jinja b/map.jinja
index 53dfaff..16d2aa9 100644
--- a/map.jinja
+++ b/map.jinja
@@ -1,217 +1,226 @@
{% set dirs = salt['grains.filter_by']({
'Debian': {
'etc': '/etc',
'bin': '/usr/bin',
'home': '/home',
'include': '/usr/include',
'lib': '/usr/lib',
'man': '/usr/share/man',
'sbin': '/usr/sbin',
'share': '/usr/share',
},
'FreeBSD' : {
'etc': '/usr/local/etc',
'bin': '/usr/local/bin',
'home': '/usr/home',
'include': '/usr/local/include',
'lib': '/usr/local/lib',
'man': '/usr/local/man',
'sbin': '/usr/local/sbin',
'share': '/usr/local/share',
},
}, default='Debian') %}
{% set services = salt['grains.filter_by']({
'Debian': {
'manager': 'systemd',
'firewall': 'iptables',
},
'RedHat': {
'manager': 'systemd',
'firewall': 'firewalld',
},
'FreeBSD' : {
'manager': 'rc',
'firewall': 'pf',
},
}, default='Debian') %}
{% set shells = salt['grains.filter_by']({
'Debian': {
'bash': '/bin/bash',
'fish': '/usr/bin/fish',
'nologin': '/usr/sbin/nologin',
'tcsh': '/usr/bin/tcsh',
'zsh': '/bin/zsh',
},
'FreeBSD' : {
'bash': '/usr/local/bin/bash',
'fish': '/usr/local/bin/fish',
'nologin': '/sbin/nologin',
'tcsh': '/bin/tcsh',
'zsh': '/usr/local/bin/zsh',
},
'Arch': {
'bash': '/bin/bash',
'fish': '/usr/bin/fish',
'nologin': '/sbin/nologin',
'tcsh': '/usr/bin/tcsh',
'zsh': '/bin/zsh',
},
}, default='Debian') %}
{% set paths = salt['grains.filter_by']({
'FreeBSD': {
'sshd': '/usr/sbin/sshd',
'sftp': '/usr/libexec/sftp-server',
},
'Debian': {
'sshd': '/usr/sbin/sshd',
'sftp': '/usr/lib/openssh/sftp-server',
},
'RedHat': {
'sshd': '/sbin/sshd',
'sftp': '/usr/libexec/openssh/sftp-server',
},
'Arch': {
'sshd': '/usr/sbin/sshd',
'sftp': '/usr/lib/ssh/sftp-server',
},
}, default='FreeBSD') %}
{% set packages_prefixes = salt['grains.filter_by']({
'Debian': {
'pecl': 'php-',
'php': 'php7.4-',
'python2': '',
'python3': 'python3-',
'rubygem': '',
},
'RedHat': {
'pecl': 'php-pecl-',
'python2': 'python-',
'python3': 'python3-',
'rubygem': 'rubygem-',
},
'FreeBSD' : {
'pecl': 'php74-pecl-',
'php': 'php74-',
'python2': 'py27-',
'python3': 'py37-',
'rubygem': 'rubygem-',
},
}, default='Debian') %}
{% set packages = salt['grains.filter_by']({
'Debian' : {
'ag': 'silversearcher-ag',
'aspell-fr': 'aspell-fr',
'aspell-en': 'aspell-en',
'boost': 'libboost-all-dev',
'certbot': 'certbot',
'composer': 'composer',
'cppunit': 'libcppunit-dev',
'exiftool': 'libimage-exiftool-perl',
'gpg': 'gpg',
'imagemagick': 'imagemagick',
'jpeg-turbo' : 'libjpeg-turbo',
'librabbitmq': 'librabbitmq-dev',
'lua': 'lua5.1',
'mariadb': 'mariadb-server',
'netcat': 'netcat-openbsd',
'node': 'nodejs',
'pear': 'php-pear',
'phpcs': 'php-codesniffer',
'phpunit': 'phpunit',
'postgresql': 'postgresql-13',
'sphinx': 'python3-sphinx',
'tcl': 'tcl8.6-dev',
'tcltls': 'tcl-tls',
'tdom': 'tdom',
'varnish': 'varnish',
'verbiste': 'verbiste',
'youtube-dl': 'youtube-dl',
'yubico-pam': 'libpam-yubico',
},
'RedHat': {
'ag': 'the_silver_searcher',
'aspell-fr': 'aspell-fr',
'certbot': 'python3-certbot',
'cppunit': 'cppunit-devel',
'exiftool': 'perl-Image-ExifTool',
'jpeg-turbo' : 'libjpeg-turbo',
'librabbitmq': 'librabbitmq',
'lua': 'lua',
'mariadb': 'mariadb-server',
'netcat': 'nmap-ncat',
'node': 'nodejs',
'pear': 'php-pear',
'phpcs': 'php-pear-PHP-CodeSniffer',
'sphinx': 'python3-sphinx',
'tcl': 'tcl',
'tcltls': 'tcltls',
'varnish': 'varnish',
'youtube-dl': 'youtube-dl',
'yubico-pam': 'pam_yubico',
},
'Arch': {
'ag': 'the_silver_searcher',
'aspell-fr': 'aspell-fr',
'certbot': 'certbot',
'cppunit': 'cppunit',
'mariadb': 'mariadb',
'sphinx': 'python-sphinx',
'tcltls': 'tcltls',
'varnish': 'varnish',
'youtube-dl': 'youtube-dl',
'yubico-pam': 'yubico-pam',
},
'FreeBSD' : {
'ag': 'the_silver_searcher',
'aspell-fr': 'fr-aspell',
'aspell-en': 'en-aspell',
'boost': 'boost-all',
'certbot': 'py37-certbot',
'composer': 'php-composer',
'cppunit': 'cppunit',
'exiftool': 'p5-Image-ExifTool-devel',
'gpg': 'gnupg',
'imagemagick': 'ImageMagick6-nox11',
'jpeg-turbo' : 'jpeg-turbo',
'librabbitmq': 'rabbitmq-c-devel',
'lua': 'lua51',
'mariadb': 'mariadb102-server',
'node': 'node',
'pear': 'pear',
'phpcs': 'pear-PHP_CodeSniffer',
'phpunit': 'phpunit8-php74',
'postgresql': 'postgresql14-server',
'sphinx': 'py36-sphinx',
'tcl': 'tcl86',
'tcltls': 'tcltls',
'tdom': 'tDOM',
'varnish': 'varnish5',
'verbiste': 'fr-verbiste',
'youtube-dl': 'youtube_dl',
'yubico-pam': 'pam_yubico',
},
}, default='Debian') %}
+{% set utilities = salt['grains.filter_by']({
+ 'FreeBSD': {
+ 'gmake': 'gmake',
+ },
+ 'Debian': {
+ 'gmake': 'make',
+ },
+}, default='Debian') %}
+
{# -------------------------------------------------------------
Capabilities of OS and distributions
:: MOTD-printed-at-login
Login mechanism, through PAM or dotfiles,
prints the MOTD when a session is opened.
When at False, OpenSSH will take care of it.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #}
{% set capabilities = salt['grains.filter_by']({
'Debian': {
'MOTD-printed-at-login': True,
},
'FreeBSD' : {
'MOTD-printed-at-login': False,
},
}, default='Debian') %}
diff --git a/roles/shellserver/odderon/code.sls b/roles/shellserver/odderon/code.sls
index d9d1825..2e0008e 100644
--- a/roles/shellserver/odderon/code.sls
+++ b/roles/shellserver/odderon/code.sls
@@ -1,30 +1,35 @@
# -------------------------------------------------------------
# Salt — Deploy Odderon (darkbot)
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Project: Nasqueron
# Created: 2017-01-25
# License: Trivial work, not eligible to copyright
# -------------------------------------------------------------
+{% from "map.jinja" import utilities with context %}
+
darkbot_repo:
file.directory:
- name: /opt/darkbot
- user: odderon
- group: nasqueron-irc
- dir_mode: 755
git.latest:
- name: https://devcentral.nasqueron.org/source/darkbot.git
- branch: production
- target: /opt/darkbot
- user: odderon
- unless: test -f /opt/odderon/LOCKED
darkbot_build:
cmd.script:
- - source: salt://roles/shellserver/odderon/files/build.sh
+ - source: salt://roles/shellserver/odderon/files/build.sh.jinja
- args: "--with-sleep=0 --with-add=0 --with-del=0 --with-random=0"
+ - template: jinja
+ - context:
+ gmake: {{ utilities.gmake }}
- cwd: /opt/darkbot
- runas: odderon
- - require:
+ - onchanges:
- git: darkbot_repo
- unless: test -f /opt/odderon/LOCKED
diff --git a/roles/shellserver/odderon/files/build.sh b/roles/shellserver/odderon/files/build.sh.jinja
similarity index 97%
rename from roles/shellserver/odderon/files/build.sh
rename to roles/shellserver/odderon/files/build.sh.jinja
index 2d2da8a..1a2cd95 100644
--- a/roles/shellserver/odderon/files/build.sh
+++ b/roles/shellserver/odderon/files/build.sh.jinja
@@ -1,25 +1,25 @@
#!/bin/sh
# -------------------------------------------------------------
# Salt — Deploy Odderon (darkbot)
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Project: Nasqueron
# Created: 2017-01-25
# Authors: David Seikel, Dereckson
# License: Trivial work, not eligible to copyright
# Source file: roles/shellserver/odderon/files/build.sh
# -------------------------------------------------------------
#
# <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>
PREFIX=/opt/odderon
test ! -r build/configure && sh bootstrap.sh
cd build || exit 2
sh configure -C --prefix=$PREFIX "$@"
-make
+{{ gmake }} clean all
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sun, Oct 12, 09:22 (10 h, 56 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3065653
Default Alt Text
(9 KB)
Attached To
Mode
rOPS Nasqueron Operations
Attached
Detach File
Event Timeline
Log In to Comment