DEVOPS_PROBLEMS_LIB Telegram 711
Необходимо проходить по списку URL'ов и проверять их доступность. Условия:
Список URL'ов находится в файле /urls.txt;
Доступный URL - значит код ответа не 5XX или 4XX;
Проверка должна быть оформлена в виде функции bash, которая должна вызываться внутри скрипта;
Функция должна принимать в качестве входного параметра путь к файлу с URL'ами;
При любом ответе недоступности от сервиса - прерывать дальнейшую проверку. Временное ограничение 20 мин.

Скрипт проверки. Запускать ./script.sh <путь до файла с URLs>

#!/usr/bin/env bash

set -xueo pipefail

FILE_URLS=${1:-}
if [[ -z "${FILE_URLS}" ]]; then
echo "File with URLs list do not defined."
exit 1
fi

function checkUrls() {
local URLS=$1
for URL in $(cat $URLS); do
STATUS=curl -LI "${URL}" -o /dev/null -w '%{http_code}' -s
if [[ "${STATUS}" == "500" ]] || [[ "${STATUS}" == "400" ]]; then
echo "URL ${URL} unavailable!"
exit 1
else
echo "URL ${URL} available."
fi
done
}

checkUrls "${FILE_URLS}"



tgoop.com/devops_problems_lib/711
Create:
Last Update:

Необходимо проходить по списку URL'ов и проверять их доступность. Условия:
Список URL'ов находится в файле /urls.txt;
Доступный URL - значит код ответа не 5XX или 4XX;
Проверка должна быть оформлена в виде функции bash, которая должна вызываться внутри скрипта;
Функция должна принимать в качестве входного параметра путь к файлу с URL'ами;
При любом ответе недоступности от сервиса - прерывать дальнейшую проверку. Временное ограничение 20 мин.

Скрипт проверки. Запускать ./script.sh <путь до файла с URLs>

#!/usr/bin/env bash

set -xueo pipefail

FILE_URLS=${1:-}
if [[ -z "${FILE_URLS}" ]]; then
echo "File with URLs list do not defined."
exit 1
fi

function checkUrls() {
local URLS=$1
for URL in $(cat $URLS); do
STATUS=curl -LI "${URL}" -o /dev/null -w '%{http_code}' -s
if [[ "${STATUS}" == "500" ]] || [[ "${STATUS}" == "400" ]]; then
echo "URL ${URL} unavailable!"
exit 1
else
echo "URL ${URL} available."
fi
done
}

checkUrls "${FILE_URLS}"

BY Библиотека задач по DevOps | тесты, код, задания


Share with your friend now:
tgoop.com/devops_problems_lib/711

View MORE
Open in Telegram


Telegram News

Date: |

Channel login must contain 5-32 characters Some Telegram Channels content management tips Choose quality over quantity. Remember that one high-quality post is better than five short publications of questionable value. End-to-end encryption is an important feature in messaging, as it's the first step in protecting users from surveillance. How to Create a Private or Public Channel on Telegram?
from us


Telegram Библиотека задач по DevOps | тесты, код, задания
FROM American