@cryptotaxi247 / infra / commits / c74c4bbb

Switch the version exporter to a more robust version

graham christensen committed Oct 31, 2018 at 12:29 UTC c74c4bbb30775ee57daf8ab18cd498ffd58da636
2 files changed +15 -8
delft/prometheus/node.nix
+3 -8
@@ -10,13 +10,8 @@
10
11 system.activationScripts.node-exporter-system-version = ''
12 mkdir -pm 0775 /var/lib/prometheus-node-exporter-text-files
13 - (
14 - cd /var/lib/prometheus-node-exporter-text-files
15 - (
16 - echo -n "system_version ";
17 - readlink /nix/var/nix/profiles/system | cut -d- -f2
18 - ) > system-version.prom.next
19 - mv system-version.prom.next system-version.prom
20 - )
13 +
14 + cd /var/lib/prometheus-node-exporter-text-files
15 + ${./system-version-exporter} | ${pkgs.moreutils}/bin/sponge system-version.prom
16 '';
17 }
delft/prometheus/system-version-exporter.sh new
+12
@@ -0,0 +1,12 @@
1 +#!/bin/sh
2 +
3 +set -euo pipefail
4 +
5 +readonly VERSION="$(cat /run/current-system/nixos-version)"
6 +readonly CURRENT_SYSTEM_DRV="$(readlink /run/current-system)"
7 +readonly CURRENT_SYSTEM_PROFILE="$(find /nix/var/nix/profiles -ilname "${CURRENT_SYSTEM_DRV}")"
8 +readonly DEPLOY_TIMESTAMP="$(stat -c '%y' "${CURRENT_SYSTEM_PROFILE}" | cut -c '-16')"
9 +readonly DEPLOY_SECONDS="$(stat -c '%Y' "${CURRENT_SYSTEM_PROFILE}")"
10 +
11 +echo "node_deployed{version=\"${VERSION}\",date=\"${DEPLOY_TIMESTAMP}\"} ${DEPLOY_SECONDS}"
12 +