From 0a831d27fd7592b8caecd417e80dda2af2e78265 Mon Sep 17 00:00:00 2001
From: Sergey Yakubov <sergey.yakubov@desy.de>
Date: Tue, 14 Jan 2020 17:26:18 +0100
Subject: [PATCH] update deploy files for asap3 nodes

---
 deploy/CMakeLists.txt                         |  2 +-
 deploy/asapo_services/asap3.tfvars            | 12 +++++-----
 deploy/asapo_services/copy_asap3.sh.in        |  7 ++++--
 .../scripts/asapo-brokers.nmd.tpl             |  4 ++--
 .../scripts/asapo-logging.nmd.tpl             |  4 ++--
 .../scripts/asapo-mongo.nmd.tpl               |  4 ++--
 .../scripts/asapo-perfmetrics.nmd.tpl         |  4 ++--
 .../scripts/asapo-receivers.nmd.tpl           |  4 ++--
 .../scripts/asapo-services.nmd.tpl            |  4 ++--
 deploy/nomad_consul_package/CMakeLists.txt    | 20 ++++++++++++++---
 .../Packages/CMakeLists.txt                   |  6 ++---
 deploy/nomad_consul_package/Packages/postinst |  3 ---
 deploy/nomad_consul_package/make_package      | 22 +++++++++++++++++++
 .../usr/lib/systemd/system/consul.service     |  3 +--
 .../usr/lib/systemd/system/nomad.service      |  2 +-
 15 files changed, 66 insertions(+), 35 deletions(-)
 delete mode 100755 deploy/nomad_consul_package/Packages/postinst
 create mode 100755 deploy/nomad_consul_package/make_package

diff --git a/deploy/CMakeLists.txt b/deploy/CMakeLists.txt
index ced90947d..071ae9b20 100644
--- a/deploy/CMakeLists.txt
+++ b/deploy/CMakeLists.txt
@@ -1,5 +1,5 @@
 if(DEFINED ENV{INSTALLPATH_NOMAD_JOBS})
-    SET (NOMAD_INSTALL $ENV{INSTALLPATH_NOMAD_JOBS}/nomad_jobs)
+    SET (NOMAD_INSTALL $ENV{INSTALLPATH_NOMAD_JOBS})
 else()
     SET (NOMAD_INSTALL ${CMAKE_INSTALL_PREFIX}/nomad_jobs)
 endif()
diff --git a/deploy/asapo_services/asap3.tfvars b/deploy/asapo_services/asap3.tfvars
index 42982885b..0b32c995f 100644
--- a/deploy/asapo_services/asap3.tfvars
+++ b/deploy/asapo_services/asap3.tfvars
@@ -1,12 +1,10 @@
-consul_dns_port = 53
-
 elk_logs = true
 
-service_dir="/bldocuments/support/asapo"
-data_dir="/bldocuments/support/asapo/data"
-mongo_dir="/bldocuments/support/asapo/mongodb"
-asapo_user="994:989"
-job_scripts_dir="/bldocuments/support/asapo/config/nomad_jobs/terraform_scripts"
+service_dir="/gpfs/asapo/shared/service_dir"
+data_dir="/beamline"
+mongo_dir="/gpfs/asapo/shared/service_dir/mongodb"
+asapo_user="35841:1000"
+job_scripts_dir="/gpfs/asapo/shared/terraform"
 
 receiver_total_memory_size = 35000
 receiver_dataserver_cache_size = 30 #gb
diff --git a/deploy/asapo_services/copy_asap3.sh.in b/deploy/asapo_services/copy_asap3.sh.in
index 5bea7f394..59bd40ce2 100755
--- a/deploy/asapo_services/copy_asap3.sh.in
+++ b/deploy/asapo_services/copy_asap3.sh.in
@@ -1,4 +1,7 @@
 #!/usr/bin/env bash
 
-scp scripts/* psana002:@NOMAD_INSTALL@/terraform_scripts/
-scp asap3.tfvars psana002:@NOMAD_INSTALL@/terraform_scripts/
+scp scripts/* asap3-utl01:@NOMAD_INSTALL@/terraform/
+scp asap3.tfvars asap3-utl01:@NOMAD_INSTALL@/terraform/
+ssh asap3-utl01 chown asapo: -R @NOMAD_INSTALL@/terraform/
+ssh asap3-utl01 rm @NOMAD_INSTALL@/terraform/auth_secret.key
+ssh asap3-utl01 ln -s @NOMAD_INSTALL@/access/secret.key @NOMAD_INSTALL@/terraform/auth_secret.key
diff --git a/deploy/asapo_services/scripts/asapo-brokers.nmd.tpl b/deploy/asapo_services/scripts/asapo-brokers.nmd.tpl
index 8074880c0..e96dc1a95 100644
--- a/deploy/asapo_services/scripts/asapo-brokers.nmd.tpl
+++ b/deploy/asapo_services/scripts/asapo-brokers.nmd.tpl
@@ -1,8 +1,8 @@
 job "asapo-brokers" {
   datacenters = ["dc1"]
   affinity {
-    attribute = "$${meta.asapo_service}"
-    value     = "false"
+    attribute = "$${meta.node_group}"
+    value     = "blprx"
     weight    = 100
   }
 
diff --git a/deploy/asapo_services/scripts/asapo-logging.nmd.tpl b/deploy/asapo_services/scripts/asapo-logging.nmd.tpl
index 1f0af9df6..3252f8677 100644
--- a/deploy/asapo_services/scripts/asapo-logging.nmd.tpl
+++ b/deploy/asapo_services/scripts/asapo-logging.nmd.tpl
@@ -1,8 +1,8 @@
 job "asapo-logging" {
   datacenters = ["dc1"]
   affinity {
-    attribute = "$${meta.asapo_service}"
-    value     = "true"
+    attribute = "$${meta.node_group}"
+    value     = "utl"
     weight    = 100
   }
 
diff --git a/deploy/asapo_services/scripts/asapo-mongo.nmd.tpl b/deploy/asapo_services/scripts/asapo-mongo.nmd.tpl
index 4ed27586b..cc6389d8b 100644
--- a/deploy/asapo_services/scripts/asapo-mongo.nmd.tpl
+++ b/deploy/asapo_services/scripts/asapo-mongo.nmd.tpl
@@ -1,8 +1,8 @@
 job "asapo-mongo" {
   datacenters = ["dc1"]
   affinity {
-    attribute = "$${meta.asapo_service}"
-    value     = "false"
+    attribute = "$${meta.node_group}"
+    value     = "blprx"
     weight    = 100
   }
   update {
diff --git a/deploy/asapo_services/scripts/asapo-perfmetrics.nmd.tpl b/deploy/asapo_services/scripts/asapo-perfmetrics.nmd.tpl
index 21d815c06..6033581d8 100644
--- a/deploy/asapo_services/scripts/asapo-perfmetrics.nmd.tpl
+++ b/deploy/asapo_services/scripts/asapo-perfmetrics.nmd.tpl
@@ -1,8 +1,8 @@
 job "asapo-perfmetrics" {
   datacenters = ["dc1"]
   affinity {
-    attribute = "$${meta.asapo_service}"
-    value     = "true"
+    attribute = "$${meta.node_group}"
+    value     = "utl"
     weight    = 100
   }
 
diff --git a/deploy/asapo_services/scripts/asapo-receivers.nmd.tpl b/deploy/asapo_services/scripts/asapo-receivers.nmd.tpl
index 2a2035ea5..969ef4652 100644
--- a/deploy/asapo_services/scripts/asapo-receivers.nmd.tpl
+++ b/deploy/asapo_services/scripts/asapo-receivers.nmd.tpl
@@ -1,8 +1,8 @@
 job "asapo-receivers" {
   datacenters = ["dc1"]
   affinity {
-    attribute = "$${meta.asapo_service}"
-    value     = "false"
+    attribute = "$${meta.node_group}"
+    value     = "blprx"
     weight    = 100
   }
 
diff --git a/deploy/asapo_services/scripts/asapo-services.nmd.tpl b/deploy/asapo_services/scripts/asapo-services.nmd.tpl
index 98b12180b..4dc5ceafd 100644
--- a/deploy/asapo_services/scripts/asapo-services.nmd.tpl
+++ b/deploy/asapo_services/scripts/asapo-services.nmd.tpl
@@ -1,8 +1,8 @@
 job "asapo-services" {
   datacenters = ["dc1"]
   affinity {
-    attribute = "$${meta.asapo_service}"
-    value     = "true"
+    attribute = "$${meta.node_group}"
+    value     = "utl"
     weight    = 100
   }
 
diff --git a/deploy/nomad_consul_package/CMakeLists.txt b/deploy/nomad_consul_package/CMakeLists.txt
index 3ae6016ea..7df2068d7 100644
--- a/deploy/nomad_consul_package/CMakeLists.txt
+++ b/deploy/nomad_consul_package/CMakeLists.txt
@@ -7,7 +7,7 @@ add_subdirectory (Packages)
 INCLUDE(ExternalProject)
 ExternalProject_Add(
         consul
-        URL https://releases.hashicorp.com/consul/1.2.0/consul_1.2.0_linux_amd64.zip
+        URL https://releases.hashicorp.com/consul/1.6.2/consul_1.6.2_linux_amd64.zip
         PATCH_COMMAND ""
         CONFIGURE_COMMAND ""
         CMAKE_COMMAND ""
@@ -18,7 +18,7 @@ ExternalProject_Add(
 
 ExternalProject_Add(
         nomad
-        URL https://releases.hashicorp.com/nomad/0.8.4/nomad_0.8.4_linux_amd64.zip
+        URL https://releases.hashicorp.com/nomad/0.10.2/nomad_0.10.2_linux_amd64.zip
         PATCH_COMMAND ""
         CONFIGURE_COMMAND ""
         CMAKE_COMMAND ""
@@ -27,16 +27,30 @@ ExternalProject_Add(
         INSTALL_COMMAND ""
 )
 
+ExternalProject_Add(
+        terraform
+        URL https://releases.hashicorp.com/terraform/0.12.19/terraform_0.12.19_linux_amd64.zip
+        PATCH_COMMAND ""
+        CONFIGURE_COMMAND ""
+        CMAKE_COMMAND ""
+        BUILD_IN_SOURCE 1
+        BUILD_COMMAND ""
+        INSTALL_COMMAND ""
+)
 
 ExternalProject_Get_Property(consul SOURCE_DIR)
 set (CONSUL_SOURCE_DIR ${SOURCE_DIR})
 ExternalProject_Get_Property(nomad SOURCE_DIR)
 set (NOMAD_SOURCE_DIR ${SOURCE_DIR})
+ExternalProject_Get_Property(terraform SOURCE_DIR)
+set (TERRAFORM_SOURCE_DIR ${SOURCE_DIR})
+
+
 
 install(PROGRAMS ${CONSUL_SOURCE_DIR}/consul DESTINATION bin)
 install(PROGRAMS ${NOMAD_SOURCE_DIR}/nomad DESTINATION bin)
 
-install(PROGRAMS ${NOMAD_SOURCE_DIR}/nomad DESTINATION bin)
+install(PROGRAMS ${TERRAFORM_SOURCE_DIR}/terraform DESTINATION bin)
 
 install(DIRECTORY ${CMAKE_SOURCE_DIR}/usr/lib/systemd/system/
         DESTINATION  /usr/lib/systemd/system)
\ No newline at end of file
diff --git a/deploy/nomad_consul_package/Packages/CMakeLists.txt b/deploy/nomad_consul_package/Packages/CMakeLists.txt
index fe7829db5..63a6580b0 100644
--- a/deploy/nomad_consul_package/Packages/CMakeLists.txt
+++ b/deploy/nomad_consul_package/Packages/CMakeLists.txt
@@ -1,6 +1,6 @@
 # create debian package
 
-SET(CPACK_BINARY_DEB ON)
+SET(CPACK_BINARY_DEB OFF)
 SET(CPACK_BINARY_RPM ON)
 
 #SET (CPACK_DEBIAN_PACKAGE_MAINTAINER "Sergey Yakubov (sergey.yakubov@desy.de)")
@@ -14,7 +14,7 @@ SET(CPACK_PACKAGE_NAME "asapo-ha")
 SET(CPACK_PACKAGE_VENDOR "DESY")
 SET(CPACK_PACKAGE_VERSION_MAJOR "1")
 SET(CPACK_PACKAGE_VERSION_MINOR "2")
-SET(CPACK_PACKAGE_VERSION_PATCH "3")
+SET(CPACK_PACKAGE_VERSION_PATCH "6")
 
 SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Nomad and Consul for Asapo Debian package")
 
@@ -22,8 +22,6 @@ SET(CPACK_BINARY_STGZ OFF)
 SET(CPACK_BINARY_TBZ2 OFF)
 SET(CPACK_BINARY_TGZ OFF)
 SET(CPACK_BINARY_TZ OFF)
-SET(CPACK_RPM_PRE_INSTALL_SCRIPT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/postinst")
-set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "${CMAKE_CURRENT_SOURCE_DIR}/postinst")
 
 INCLUDE(CPack)
 
diff --git a/deploy/nomad_consul_package/Packages/postinst b/deploy/nomad_consul_package/Packages/postinst
deleted file mode 100755
index 54d8d8ac7..000000000
--- a/deploy/nomad_consul_package/Packages/postinst
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/usr/bin/env bash
-
-useradd -r -s /bin/false asapo || true
diff --git a/deploy/nomad_consul_package/make_package b/deploy/nomad_consul_package/make_package
new file mode 100755
index 000000000..8634ca6f6
--- /dev/null
+++ b/deploy/nomad_consul_package/make_package
@@ -0,0 +1,22 @@
+rm *.rpm
+cmake .
+cmake .
+make package
+rm *.cmake
+rm -rf CMakeFiles
+rm -rf *_CPack_*
+rm Makefile
+rm CMakeCache.txt
+rm install*.txt
+rm -rf consul-prefix nomad-prefix terraform-prefix
+
+cd Packages
+rm *.cmake
+rm -rf CMakeFiles
+rm -rf *_CPack_*
+rm Makefile
+rm CMakeCache.txt
+rm install*.txt
+
+cd -
+
diff --git a/deploy/nomad_consul_package/usr/lib/systemd/system/consul.service b/deploy/nomad_consul_package/usr/lib/systemd/system/consul.service
index 4c0b1e24d..a1b1d9d62 100644
--- a/deploy/nomad_consul_package/usr/lib/systemd/system/consul.service
+++ b/deploy/nomad_consul_package/usr/lib/systemd/system/consul.service
@@ -6,13 +6,12 @@ Documentation=https://consul.io/docs/
 
 [Service]
 User=asapo
-Group=asapo
+Group=it
 Environment=GOMAXPROCS=4
 Restart=on-failure
 ExecStart=/usr/bin/consul agent -config-dir=/etc/consul.d
 ExecReload=/bin/kill -HUP $MAINPID
 KillSignal=SIGINT
-AmbientCapabilities=CAP_NET_BIND_SERVICE
 
 [Install]
 WantedBy=multi-user.target
diff --git a/deploy/nomad_consul_package/usr/lib/systemd/system/nomad.service b/deploy/nomad_consul_package/usr/lib/systemd/system/nomad.service
index 624f44152..9fb226015 100644
--- a/deploy/nomad_consul_package/usr/lib/systemd/system/nomad.service
+++ b/deploy/nomad_consul_package/usr/lib/systemd/system/nomad.service
@@ -7,7 +7,7 @@ After=consul.service
 
 [Service]
 User=asapo
-Group=asapo
+Group=it
 Environment=GOMAXPROCS=4
 Restart=on-failure
 ExecStart=/usr/bin/nomad agent -config=/etc/nomad.d
-- 
GitLab