Использование Curl с заданием Gitlab дает неверную ошибку yaml

Итак, у меня есть следующая команда завитка, чтобы добраться до конечной точки, но я получаю ошибку :script config should be a string or a nested array of strings up to 10 levels deep.

Это моя команда завитка:

 script:
    - curl -X GET --header 'Accept: application/json' 'https://main-demo-services.nr.dflop-swf-prod.bee.ds.local/services/dataUser/namebreak/recache/status/'

Я не думаю, что речь идет о команде curl. Это немного сложно увидеть, но может ли отступ отступить на один пробел? Yaml очень ограничителен. Обычно я ожидаю, что тире будет либо под s (2 пробела), либо под r (4 пробела).

mpolitze 24.02.2024 22:46
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
0
1
51
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

У меня была эта проблема сегодня. Это связано с тем, что двоеточие (:) в команде Curl оценивается как пара ключ-значение.

Для этого есть несколько исправлений. Самый простой вариант, который я нашел, — это обернуть команду Curl одним апострофом ('):

script:
    - 'curl -X GET --header 'Accept: application/json' 'https://main-demo-services.nr.dflop-swf-prod.bee.ds.local/services/dataUser/namebreak/recache/status/''

Другое решение — абстрагировать команду curl с помощью eval:

variables:
    CURL_COMMAND: `curl -X GET --header 'Accept: application/json' 'https://main-demo-services.nr.dflop-swf-prod.bee.ds.local/services/dataUser/namebreak/recache/status/'`
script:
    - eval $CURL_COMMAND

Другие вопросы по теме