From 340c686b03f92468c8c1c151ca8452e2baad7018 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=2ES?= Date: Tue, 5 Dec 2017 18:03:40 +0100 Subject: [PATCH 1/8] Implement EvoQA#3332. Check for SQL backup. --- evocheck.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/evocheck.sh b/evocheck.sh index 929a45b..590b248 100755 --- a/evocheck.sh +++ b/evocheck.sh @@ -581,6 +581,18 @@ if [ -e /etc/debian_version ]; then fi fi + if [ "$IS_SQL_BACKUP" = 1 ]; then + if (is_installed mysql-server || is_installed mariadb-server); then + # You could change the default path in /etc/evocheck.cf + SQL_BACKUP_PATH=${SQL_BACKUP_PATH:-"/home/backup/mysql.bak.gz"} + if [ -f "$SQL_BACKUP_PATH" ]; then + if [ $(stat -c "%Y" $SQL_BACKUP_PATH) -lt $(date +"%s" -d "now - 2 day") ]; then + echo 'IS_SQL_BACKUP FAILED!' + fi + fi + fi + fi + if [ "$IS_MARIADBSYSTEMDUNIT" = 1 ]; then if is_debianversion stretch && is_installed mariadb-server; then (systemctl -q is-active mariadb.service && test -f /etc/systemd/system/mariadb.service.d/evolinux.conf) || echo 'IS_MARIADBSYSTEMDUNIT FAILED!' From f527e92ce48a8cf55fe8e7df1d619d0a8baecf08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=2ES?= Date: Wed, 6 Dec 2017 10:06:03 +0100 Subject: [PATCH 2/8] Only check if file exist --- evocheck.sh | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/evocheck.sh b/evocheck.sh index 590b248..84f49ef 100755 --- a/evocheck.sh +++ b/evocheck.sh @@ -585,11 +585,7 @@ if [ -e /etc/debian_version ]; then if (is_installed mysql-server || is_installed mariadb-server); then # You could change the default path in /etc/evocheck.cf SQL_BACKUP_PATH=${SQL_BACKUP_PATH:-"/home/backup/mysql.bak.gz"} - if [ -f "$SQL_BACKUP_PATH" ]; then - if [ $(stat -c "%Y" $SQL_BACKUP_PATH) -lt $(date +"%s" -d "now - 2 day") ]; then - echo 'IS_SQL_BACKUP FAILED!' - fi - fi + test -f "$SQL_BACKUP_PATH" || echo 'IS_SQL_BACKUP FAILED!' fi fi From 6c37875d1fb8479ffb1ac3d1f31b0dab0541a942 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=2ES?= Date: Wed, 6 Dec 2017 10:14:17 +0100 Subject: [PATCH 3/8] Add LDAP_BACKUP check --- evocheck.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/evocheck.sh b/evocheck.sh index 84f49ef..eaba098 100755 --- a/evocheck.sh +++ b/evocheck.sh @@ -589,6 +589,14 @@ if [ -e /etc/debian_version ]; then fi fi + if [ "$IS_LDAP_BACKUP" = 1 ]; then + if is_installed slapd; then + # You could change the default path in /etc/evocheck.cf + LDAP_BACKUP_PATH=${LDAP_BACKUP_PATH:-"/home/backup/ldap.bak"} + test -f "$LDAP_BACKUP_PATH" || echo 'IS_LDAP_BACKUP FAILED!' + fi + fi + if [ "$IS_MARIADBSYSTEMDUNIT" = 1 ]; then if is_debianversion stretch && is_installed mariadb-server; then (systemctl -q is-active mariadb.service && test -f /etc/systemd/system/mariadb.service.d/evolinux.conf) || echo 'IS_MARIADBSYSTEMDUNIT FAILED!' From 227249f411eec9e21abff1110643497ec219d788 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=2ES?= Date: Wed, 6 Dec 2017 10:28:39 +0100 Subject: [PATCH 4/8] Add POSTGRES_BACKUP check --- evocheck.sh | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/evocheck.sh b/evocheck.sh index eaba098..a729fcc 100755 --- a/evocheck.sh +++ b/evocheck.sh @@ -90,6 +90,8 @@ IS_MYSQLMUNIN=1 IS_PHPEVOLINUXCONF=1 IS_SQUIDLOGROTATE=1 IS_SQUIDEVOLINUXCONF=1 +IS_SQL_BACKUP=1 +IS_POSTGRES_BACKUP=1 #Proper to OpenBSD IS_SOFTDEP=1 @@ -582,13 +584,22 @@ if [ -e /etc/debian_version ]; then fi if [ "$IS_SQL_BACKUP" = 1 ]; then - if (is_installed mysql-server || is_installed mariadb-server); then + if (is_installed "mysql-server" || is_installed "mariadb-server"); then # You could change the default path in /etc/evocheck.cf SQL_BACKUP_PATH=${SQL_BACKUP_PATH:-"/home/backup/mysql.bak.gz"} test -f "$SQL_BACKUP_PATH" || echo 'IS_SQL_BACKUP FAILED!' fi fi + if [ "$IS_POSTGRES_BACKUP" = 1 ]; then + if is_installed "postgresql-9*"; then + # If you use something like barman, you should deactivate this check + # You could change the default path in /etc/evocheck.cf + POSTGRES_BACKUP_PATH=${POSTGRES_BACKUP_PATH:-"/home/backup/pg.dump.bak"} + test -f "$POSTGRES_BACKUP_PATH" || echo 'IS_POSTGRES_BACKUP FAILED!' + fi + fi + if [ "$IS_LDAP_BACKUP" = 1 ]; then if is_installed slapd; then # You could change the default path in /etc/evocheck.cf From 35f0cc3c86f19b95cfff4288a22cf61af3927b5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=2ES?= Date: Wed, 6 Dec 2017 10:42:16 +0100 Subject: [PATCH 5/8] Add MONGO_BACKUP check --- evocheck.sh | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/evocheck.sh b/evocheck.sh index a729fcc..48c3220 100755 --- a/evocheck.sh +++ b/evocheck.sh @@ -92,6 +92,7 @@ IS_SQUIDLOGROTATE=1 IS_SQUIDEVOLINUXCONF=1 IS_SQL_BACKUP=1 IS_POSTGRES_BACKUP=1 +IS_MONGO_BACKUP=1 #Proper to OpenBSD IS_SOFTDEP=1 @@ -600,6 +601,25 @@ if [ -e /etc/debian_version ]; then fi fi + if [ "$IS_MONGO_BACKUP" = 1 ]; then + if is_installed "mongodb-org-server"; then + # You could change the default path in /etc/evocheck.cf + MONGO_BACKUP_PATH=${MONGO_BACKUP_PATH:-"/home/backup/mongodump"} + if [ -d "$MONGO_BACKUP_PATH" ]; then + for file in ${MONGO_BACKUP_PATH}/*/*.{json,bson}; do + # Skip indexes file. + if ! [[ "$file" =~ indexes ]]; then + if [ -f $file ] && [ $(stat -c "%Y" $file) -lt $(date +"%s" -d "now - 2 day") ]; then + echo 'IS_MONGO_BACKUP FAILED!' + fi + fi + done + else + echo 'IS_MONGO_BACKUP FAILED!' + fi + fi + fi + if [ "$IS_LDAP_BACKUP" = 1 ]; then if is_installed slapd; then # You could change the default path in /etc/evocheck.cf From 824e0fcf55b8536d66af90199186cd946bdb9e86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=2ES?= Date: Wed, 6 Dec 2017 10:46:08 +0100 Subject: [PATCH 6/8] Missing IS_LDAP_BACKUP=1 --- evocheck.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/evocheck.sh b/evocheck.sh index 48c3220..dc2c773 100755 --- a/evocheck.sh +++ b/evocheck.sh @@ -92,6 +92,7 @@ IS_SQUIDLOGROTATE=1 IS_SQUIDEVOLINUXCONF=1 IS_SQL_BACKUP=1 IS_POSTGRES_BACKUP=1 +IS_LDAP_BACKUP=1 IS_MONGO_BACKUP=1 #Proper to OpenBSD From 09c4e5f5b2c9f485cc1b7d9ee1278e78cb61c3e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=2ES?= Date: Wed, 6 Dec 2017 10:49:52 +0100 Subject: [PATCH 7/8] Add REDIS_BACKUP check --- evocheck.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/evocheck.sh b/evocheck.sh index dc2c773..238a829 100755 --- a/evocheck.sh +++ b/evocheck.sh @@ -93,6 +93,7 @@ IS_SQUIDEVOLINUXCONF=1 IS_SQL_BACKUP=1 IS_POSTGRES_BACKUP=1 IS_LDAP_BACKUP=1 +IS_REDIS_BACKUP=1 IS_MONGO_BACKUP=1 #Proper to OpenBSD @@ -629,6 +630,14 @@ if [ -e /etc/debian_version ]; then fi fi + if [ "$IS_REDIS_BACKUP" = 1 ]; then + if is_installed redis-server; then + # You could change the default path in /etc/evocheck.cf + REDIS_BACKUP_PATH=${REDIS_BACKUP_PATH:-"/home/backup/dump.rdb"} + test -f "$REDIS_BACKUP_PATH" || echo 'IS_REDIS_BACKUP FAILED!' + fi + fi + if [ "$IS_MARIADBSYSTEMDUNIT" = 1 ]; then if is_debianversion stretch && is_installed mariadb-server; then (systemctl -q is-active mariadb.service && test -f /etc/systemd/system/mariadb.service.d/evolinux.conf) || echo 'IS_MARIADBSYSTEMDUNIT FAILED!' From 99451d54a8e0c58a79500f2acbadfeef3db7dbf1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=2ES?= Date: Wed, 6 Dec 2017 11:05:02 +0100 Subject: [PATCH 8/8] Add ELASTIC_BACKUP check --- evocheck.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/evocheck.sh b/evocheck.sh index 238a829..e67b90d 100755 --- a/evocheck.sh +++ b/evocheck.sh @@ -94,6 +94,7 @@ IS_SQL_BACKUP=1 IS_POSTGRES_BACKUP=1 IS_LDAP_BACKUP=1 IS_REDIS_BACKUP=1 +IS_ELASTIC_BACKUP=1 IS_MONGO_BACKUP=1 #Proper to OpenBSD @@ -638,6 +639,14 @@ if [ -e /etc/debian_version ]; then fi fi + if [ "$IS_ELASTIC_BACKUP" = 1 ]; then + if is_installed elasticsearch; then + # You could change the default path in /etc/evocheck.cf + ELASTIC_BACKUP_PATH=${ELASTIC_BACKUP_PATH:-"/home/backup/elasticsearch"} + test -d "$ELASTIC_BACKUP_PATH" || echo 'IS_ELASTIC_BACKUP FAILED!' + fi + fi + if [ "$IS_MARIADBSYSTEMDUNIT" = 1 ]; then if is_debianversion stretch && is_installed mariadb-server; then (systemctl -q is-active mariadb.service && test -f /etc/systemd/system/mariadb.service.d/evolinux.conf) || echo 'IS_MARIADBSYSTEMDUNIT FAILED!'