From 107a0b64360fd41c4097daa0419aa77bf9a536f1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Diemer?= <stephane.diemer@ubicast.eu>
Date: Thu, 15 Jun 2017 11:28:55 +0200
Subject: [PATCH] Changed CM setup to skip install if package is not available
 (refs #21802).

---
 6.CampusManager/1.Install_CampusManager/0_setup.sh | 14 +++++++++-----
 .../2.Configure_apt_cacher_ng/0_setup.py           |  8 ++++----
 global-conf.sh                                     |  5 ++++-
 3 files changed, 17 insertions(+), 10 deletions(-)

diff --git a/6.CampusManager/1.Install_CampusManager/0_setup.sh b/6.CampusManager/1.Install_CampusManager/0_setup.sh
index 04217e6c..100d90dd 100755
--- a/6.CampusManager/1.Install_CampusManager/0_setup.sh
+++ b/6.CampusManager/1.Install_CampusManager/0_setup.sh
@@ -1,8 +1,12 @@
 #!/bin/bash
 source /root/envsetup/global-conf.sh
 
-# install cm
-apt-get install -y campus-manager
-# configure nginx
-sed -i "s@server_name skyreach;@server_name ${CM_SERVER_NAME};@" /etc/nginx/sites-available/skyreach.conf
-service nginx restart
+if ( apt-cache madison campus-manager | grep "campus-manager | " ); then
+	# install cm
+	apt-get install -y campus-manager
+	# configure nginx
+	sed -i "s@server_name skyreach;@server_name ${CM_SERVER_NAME};@" /etc/nginx/sites-available/skyreach.conf
+	service nginx restart
+else
+	echo "${YELLOW}The campus-manager package is not available in APT repositories, install skipped.${NC}"
+fi
diff --git a/6.CampusManager/2.Configure_apt_cacher_ng/0_setup.py b/6.CampusManager/2.Configure_apt_cacher_ng/0_setup.py
index 7c9125c9..07a3b156 100755
--- a/6.CampusManager/2.Configure_apt_cacher_ng/0_setup.py
+++ b/6.CampusManager/2.Configure_apt_cacher_ng/0_setup.py
@@ -22,9 +22,9 @@ def setup(interactive=True):
             utils.log('File "%s" updated.' % path)
         else:
             utils.log('File "%s" already up to date.' % path)
+        cmds = [
+            'service apt-cacher-ng restart',
+        ]
+        utils.run_commands(cmds)
     else:
         utils.log('The configuration file "%s" does not exist, nothing to do.' % path)
-    cmds = [
-        'service apt-cacher-ng restart',
-    ]
-    utils.run_commands(cmds)
diff --git a/global-conf.sh b/global-conf.sh
index 25e0b873..fb182cab 100644
--- a/global-conf.sh
+++ b/global-conf.sh
@@ -7,9 +7,12 @@
 
 # -- Constants --
 CYAN='\033[0;36m'
+PURPLE='\033[0;35m'
+BLUE='\033[0;34m'
+YELLOW='\033[0;32m'
 GREEN='\033[0;32m'
 RED='\033[0;31m'
-NC='\033[0m'
+NC='\033[0;0m'
 
 # -- System --
 # Skyreach in which system looks for packages
-- 
GitLab