Skip to content
Snippets Groups Projects
Commit 072a7534 authored by skorpy's avatar skorpy :construction_worker:
Browse files

prepare new batman versions

parent e0d5c095
Branches
No related tags found
1 merge request!365Batman15
Pipeline #
---
batctl_pkgs:
pkg.installed:
- pkgs:
- git
- libnl-3-dev
- libnl-genl-3-dev
- checkinstall
batctl:
cmd.script:
- name: salt://batman_adv/files/mkbatctl.j2
- template: jinja
- shell: /bin/bash
- unless: "[ \"$(batctl -v | awk '{ print $2 }')\" = \"{{ pillar.batctl.version }}\" ]"
- require:
- pkg: batctl_pkgs
PACKAGE_NAME=batman-adv
PACKAGE_VERSION={{ pillar.batman_adv.version }}
DEST_MODULE_LOCATION=/extra
BUILT_MODULE_NAME=batman-adv
BUILT_MODULE_LOCATION=build/net/batman-adv/
MAKE="make KERNELPATH=${kernel_source_dir}"
CLEAN="make KERNELPATH=${kernel_source_dir} clean"
AUTOINSTALL="yes"
#!/bin/bash
PACKAGE="batctl"
REMOTE="git://git.open-mesh.org/batctl.git"
TAG="{{ pillar.batctl.commit }}"
TARGET_VERSION="{{ pillar.batctl.version }}"
BUILD_ROOT="/usr/src/batctl"
check() {
REQUIRED=0
local CURRENT_VERSION=$(batctl -v | awk '{ print $2 }')
/usr/bin/dpkg --compare-versions "$CURRENT_VERSION" "eq" "$TARGET_VERSION"
local CODE=$?
if [ $CODE -ne 0 ]; then
echo "[-] batctl version changed (${CURRENT_VERSION} to ${TARGET_VERSION})."
REQUIRED=1
fi
exit $REQUIRED
}
prepare() {
rm -rf $BUILD_ROOT
git clone "$REMOTE" "$BUILD_ROOT"
cd $BUILD_ROOT
git checkout "$TAG"
}
build() {
cd $BUILD_ROOT
make -j$(nproc)
}
install() {
cd $BUILD_ROOT
checkinstall -y --nodoc --pkgname "${PACKAGE}" --pkgversion "${TARGET_VERSION}" --fstrans=no
}
if [ "$1" = "check" ]; then
check
else
prepare
build
install
fi
include:
- batman_adv.kmod
- batman_adv.batctl
- network.batman-adv
- network.domains-batman
---
{%- if pillar.batman_adv.get('commit', False) %}
include:
- kernel
# build kmod from git when commit is given
batman-adv_pkgs:
pkg.installed:
- pkgs:
- git
- dkms
- build-essential
- pkg-config
batman-adv_git:
git.latest:
- name: git://git.open-mesh.org/batman-adv.git
- target: /usr/src/batman-adv-{{ pillar.batman_adv.version }}
- rev: {{ pillar.batman_adv.commit }}
- require:
- pkg: batman-adv_pkgs
/usr/src/batman-adv-{{ pillar.batman_adv.version }}/dkms.conf:
file.managed:
- source: salt://batman_adv/files/dkms.conf.j2
- template: jinja
- require:
- git: batman-adv_git
batman-adv_dkms_add:
cmd.run:
- onchanges:
- git: batman-adv_git
- require:
- pkg: packages_kernel
- pkg: batman-adv_pkgs
- file: /usr/src/batman-adv-{{ pillar.batman_adv.version }}/dkms.conf
- name: dkms add -m batman-adv -v {{ pillar.batman_adv.version }}
batman-adv_dkms_build:
cmd.run:
- onchanges:
- cmd: batman-adv_dkms_add
- name: dkms build -m batman-adv -v {{ pillar.batman_adv.version }}
batman-adv_dkms_install:
cmd.run:
- onchanges:
- cmd: batman-adv_dkms_build
- name: dkms install -m batman-adv -v {{ pillar.batman_adv.version }}
{%- else %}
# else remove kmod and return to intree version
batman-adv_dkms_remove:
cmd.run:
- name: dkms remove batman_adv --all
{%- endif %}
# either way, make sure the module is loaded on boot
batman_adv:
kmod.present:
- persist: True
include:
- batman
#
# runtime settings
#
......
......@@ -157,3 +157,22 @@ base:
- bird.ospf
- kernel
- kernel.sysctl
'gw*.batman15.aixit.off.de.ffffm.net':
- bird
- bird.bgp
- bird.ospf
- fastd
- kea-dhcp
- batman_adv
- mesh-announce
- kernel
- kernel.sysctl
- network
'yanic.batman15.aixit.off.de.ffffm.net':
- yanic
- batman_adv
- nginx
- letsencrypt
- kernel
- kernel.sysctl
- network
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment