Difference between revisions of "Serve.cfg:problem:post pull cmd"

From EjudgeWiki
 
(...)
 
Line 1: Line 1:
 
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Конфигурационные файлы]]/[[serve.cfg]]/[[serve.cfg:problem|Конфигурационные параметры задач]]/<tt>[[serve.cfg:problem:post_pull_cmd|post_pull_cmd]]</tt>
 
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Конфигурационные файлы]]/[[serve.cfg]]/[[serve.cfg:problem|Конфигурационные параметры задач]]/<tt>[[serve.cfg:problem:post_pull_cmd|post_pull_cmd]]</tt>
 +
 +
Данная конфигурационная переменная позволяет задать команду,
 +
которая будет выполняться после клонирования репозитория в режиме
 +
[[Интеграция с github/gitlab|интеграции с системами контроля версий]].
 +
 +
Если указан относительный путь, он отсчитывается относительно
 +
каталога задачи.
 +
 +
Скрипту постобработки передаются два аргумента командной строки: полный
 +
путь к каталогу задачи и язык программирования, который был задан
 +
участником в форме настройки интеграции. Скрипт запускается
 +
из каталога <code>source</code> (то есть текущий рабочий каталог
 +
у скрипта будет <code>source</code>). Скрипт запускается
 +
компонентом [[ej-jobs]] с теми же самыми правами, с которыми
 +
работает [[ej-jobs]]. Исполнение не контейнеризируется.
 +
 +
Скрипт постобработки может модифицировать содержимое каталога,
 +
например, удалив из него какие-то файлы, или наоборот,
 +
скопировав в него какие-то файлы (например, скрипт сборки).
 +
Скрипт должен завершиться с кодом 0, а в противном случае
 +
сборка проекта завершается с ошибкой.
 +
 +
Значение конфигурационной переменной наследуется из абстрактных задач.
 +
 +
Пример.
 +
 +
[problem]
 +
# ...
 +
enable_vcs
 +
post_pull_cmd = "post_pull.sh"
 +
 +
Поддерживается начиная с версии [[изменения в версии 3.10.0|3.10.0]].

Latest revision as of 08:55, 24 December 2022

Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Конфигурационные параметры задач/post_pull_cmd

Данная конфигурационная переменная позволяет задать команду, которая будет выполняться после клонирования репозитория в режиме интеграции с системами контроля версий.

Если указан относительный путь, он отсчитывается относительно каталога задачи.

Скрипту постобработки передаются два аргумента командной строки: полный путь к каталогу задачи и язык программирования, который был задан участником в форме настройки интеграции. Скрипт запускается из каталога source (то есть текущий рабочий каталог у скрипта будет source). Скрипт запускается компонентом ej-jobs с теми же самыми правами, с которыми работает ej-jobs. Исполнение не контейнеризируется.

Скрипт постобработки может модифицировать содержимое каталога, например, удалив из него какие-то файлы, или наоборот, скопировав в него какие-то файлы (например, скрипт сборки). Скрипт должен завершиться с кодом 0, а в противном случае сборка проекта завершается с ошибкой.

Значение конфигурационной переменной наследуется из абстрактных задач.

Пример.

[problem]
# ...
enable_vcs
post_pull_cmd = "post_pull.sh"

Поддерживается начиная с версии 3.10.0.