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
+