Незакавыченная переменная в rm -rf внутри скрипта очистки
Скрипт очистки артефактов запускается на раннере:
#!/bin/bash
BUILD_DIR="$1"
rm -rf $BUILD_DIR/*
echo "каталог очищен"
В одном из джобов скрипт вызвали без аргумента: ./cleanup.sh. Скрипт выполняется от root.
Что именно сделает третья строка?
- Ничего: подстановка даст пустую строку, и `rm` завершится с ошибкой «missing operand»
- Развернётся в `rm -rf /*` и начнёт удалять содержимое корня файловой системы
- Bash подставит текущий каталог, и будет очищен рабочий каталог джоба
- Скрипт прервётся, потому что обращение к незаданному позиционному параметру — фатальная ошибка bash
