Перейти к основному содержимому

Команды бинаря пайплайна

Каждая программа с pipeline.Main открывает четыре одинаковых имени команд. Бинарь знает собственные params и manifest; graphenectl остаётся generic клиентом оператора.

КомандаНазначениеНужен сервер
planзаписать и показать оптимистический план выполнениянет
pushсобрать текущий бинарь, отправить image и опубликовать manifestда
runсделать push при изменении и запустить этот пайплайнда
devзарезервированная локальная петля; сейчас возвращает ошибку

plan

go run . plan [-o text|json|mermaid]

Записывающий проход находит безусловные декларации и actions. Он не выполняет работу и не вычисляет ветки, зависящие от runtime-значений. JSON подходит для инструментов, Mermaid — для просмотра схемы.

push

go run . push [--context <name>]

Self-build нацелен на Linux/amd64, использует выбранный connection context и не требует локального Docker-демона. Тег image следует digest бинаря; неизменённый контент переиспользуется. Затем команда публикует ссылку на image и типизированный manifest в записи пайплайна.

run

go run . run [--context <name>] [--params <json>] [--label k=v] [--watch]

Экспортируемые поля структуры Params становятся флагами с именами из JSON tags. Строки, bool, целые, float и time.Duration получают нативные флаги; составное значение принимает JSON. --params заменяет поля одним raw-объектом.

$ go run . run --folderId f1 --keep 30m --watch
$ go run . run --params '{"folderId":"f1","keep":"30m"}'

--watch печатает смены статуса, на успехе выводит типизированный результат и повторяет outcome рана кодом процесса. Для подробной диагностики используйте graphenectl run watch.

Разрешение подключения общее с graphenectl; см. Контексты. --dev принимается только для явного сообщения, что embedded development loop не реализована.