| ... | ... |
@@ -157,6 +157,28 @@ function use_library_from_git {
|
| 157 | 157 |
return $enabled |
| 158 | 158 |
} |
| 159 | 159 |
|
| 160 |
+# determine if a package was installed from git |
|
| 161 |
+function lib_installed_from_git {
|
|
| 162 |
+ local name=$1 |
|
| 163 |
+ pip freeze 2>/dev/null | grep -- "$name" | grep -q -- '-e git' |
|
| 164 |
+} |
|
| 165 |
+ |
|
| 166 |
+# check that everything that's in LIBS_FROM_GIT was actually installed |
|
| 167 |
+# correctly, this helps double check issues with library fat fingering. |
|
| 168 |
+function check_libs_from_git {
|
|
| 169 |
+ local lib="" |
|
| 170 |
+ local not_installed="" |
|
| 171 |
+ for lib in $(echo ${LIBS_FROM_GIT} | tr "," " "); do
|
|
| 172 |
+ if ! lib_installed_from_git "$lib"; then |
|
| 173 |
+ not_installed+=" $lib" |
|
| 174 |
+ fi |
|
| 175 |
+ done |
|
| 176 |
+ # if anything is not installed, say what it is. |
|
| 177 |
+ if [[ -n "$not_installed" ]]; then |
|
| 178 |
+ die $LINENO "The following LIBS_FROM_GIT were not installed correct: $not_installed" |
|
| 179 |
+ fi |
|
| 180 |
+} |
|
| 181 |
+ |
|
| 160 | 182 |
# setup a library by name. If we are trying to use the library from |
| 161 | 183 |
# git, we'll do a git based install, otherwise we'll punt and the |
| 162 | 184 |
# library should be installed by a requirements pull from another |
| ... | ... |
@@ -1373,9 +1373,16 @@ if [[ -x $TOP_DIR/local.sh ]]; then |
| 1373 | 1373 |
$TOP_DIR/local.sh |
| 1374 | 1374 |
fi |
| 1375 | 1375 |
|
| 1376 |
+# Sanity checks |
|
| 1377 |
+# ============= |
|
| 1378 |
+ |
|
| 1376 | 1379 |
# Check the status of running services |
| 1377 | 1380 |
service_check |
| 1378 | 1381 |
|
| 1382 |
+# ensure that all the libraries we think we installed from git, |
|
| 1383 |
+# actually were. |
|
| 1384 |
+check_libs_from_git |
|
| 1385 |
+ |
|
| 1379 | 1386 |
|
| 1380 | 1387 |
# Bash completion |
| 1381 | 1388 |
# =============== |