есть несколько окружений, но когда пытаюсь создать переменную которая существует, но с другим environment_scope, то она заменяется новой переменной с новым environment_scope. Для начала использую проверку с помощью GET существует ли она, но вы/снил, что она не работает по докам, поэтому далее мой скрипт думая, что она существует делает PUT, т.е. UPDATE и обновляет другую переменную, у которой такое же имя, но другой environment_scope!
Смотрю доку
https://docs.gitlab.com/ee/api/project_level_variables.html#the-filter-parameter
Делаю, например так
curl -XGET -H "PRIVATE-TOKEN: $GITLAB_API_RW_PRIVATE_TOKEN" "https://gitlab.com/api/v4/projects/12345/variables/KUBECONFIG?filter[environment_scope]=dev"
получаю ошибку
curl: (3) bad range in URL position 73:
https://gitlab.com/api/v4/projects/12345/variables/KUBECONFIG?filter[environment_scope]=dev
^
Делаю
curl -XGET -H "PRIVATE-TOKEN: $GITLAB_API_RW_PRIVATE_TOKEN" "https://gitlab.com/api/v4/projects/12345/variables/KUBECONFIG?filter[dev]
Получаю переменную с совершенно другим environment_scope=staging (dev вообще не существует) Как раз вот тут мой скрипт отрабатывал неверно, т.е отвечал ок, хотя переменной в нужном environment_scope=dev вообще не существовало.
Допустим я могу реализовать GET с помощью jq фильтров и далее уже создавать переменную с помощью POST, который хотя бы работает, но это же косяк, у всех так или я что-то не так делаю?
тыц
а оно так умеет?
Как ТАК-то, не понял вас?
как ты хочешь - создать переменную через апи в энве
Это как бы достаточно базовый функционал любого продукта с api и уж Gitlab'а и подавно. Умеет конечно. Но вот какая-то странность с environment_scope
а попробуй урл так изменить filter\[environment_scope\]=dev
Работает! С меня пиво! 👍🏻🚀😁
ох уж этот курл и экраны )
Обсуждают сегодня