Вступить в клуб →
средняявопросLinux и Bash

Скрипт продолжает деплой, хотя curl в конвейере упал

Шаг пайплайна выполняет такой скрипт:

#!/bin/bash
set -e

curl -sf https://registry.internal/api/version | tee version.txt
echo "версия получена, продолжаем деплой"

Внутренний реестр вернул 500, curl -sf завершился с кодом 22 и ничего не вывел.

Что произойдёт со скриптом?

  • Скрипт прервётся на строке с curl: `set -e` останавливает выполнение при любой неуспешной команде в строке
  • Скрипт продолжится, потому что `set -e` не действует на команды с ключом `-s`
  • Скрипт прервётся на `echo`, так как файл `version.txt` окажется пустым
  • Скрипт продолжится: кодом возврата конвейера считается код последней команды, а `tee` отработал успешно

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела