9706: Add postinst script to Go packages that have systemd unit files, so (on Debian...
[arvados.git] / build / run-library.sh
index 32cf2057f19d3608ab530b68dbf5d4e46053a016..9140ac1611bd05041bd99314015468497bc8cb5c 100755 (executable)
@@ -100,7 +100,16 @@ package_go_binary() {
 
     cd $WORKSPACE/packages/$TARGET
     go get "git.curoverse.com/arvados.git/$src_path"
-    fpm_build "$GOPATH/bin/$basename=/usr/bin/$prog" "$prog" 'Curoverse, Inc.' dir "$version" "--url=https://arvados.org" "--license=GNU Affero General Public License, version 3.0" "--description=$description" "$WORKSPACE/$license_file=/usr/share/doc/$prog/$license_file"
+
+    declare -a switches=()
+    systemd_unit="$WORKSPACE/${src_path}/${prog}.service"
+    if [[ -e "${systemd_unit}" ]]; then
+        switches+=("${systemd_unit}=/lib/systemd/system/${prog}.service")
+        switches+=(--after-install "$WORKSPACE/build/go-package-scripts/postinst")
+    fi
+    switches+=("$WORKSPACE/$license_file=/usr/share/doc/$prog/$license_file")
+
+    fpm_build "$GOPATH/bin/$basename=/usr/bin/$prog" "$prog" 'Curoverse, Inc.' dir "$version" "--url=https://arvados.org" "--license=GNU Affero General Public License, version 3.0" "--description=$description" "${switches[@]}"
 }
 
 default_iteration() {