Пожалуйста, проверьте digdag.io и docs.digdag.io для установки и руководства пользователя.
Документация REST API доступна по адресу docs.digdag.io/api.
Список примечаний к выпускам находится здесь.
Установка Node.js с помощью nodebrew:
$ curl -L git.io/nodebrew | perl - setup
$ echo 'export PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.bashrc
$ source ~/.bashrc
$ nodebrew install-binary v12.x
$ nodebrew use v12.x
Установка Node.js с помощью Homebrew на macOS:
$ brew install node
$ ./gradlew check
Отчет о покрытии тестами генерируется в digdag-*/build/reports/jacoco/test/html/index.html
.
Отчет Findbugs генерируется в digdag-*/build/reports/findbugs/main.html
.
$ CI_ACCEPTANCE_TEST=true ./gradlew digdag-tests:test --info --tests acceptance.BuiltInVariablesIT
Чтобы выполнить тесты в подпроекте digdag-tests локально, полезной является опция tests
, предоставляемая Gradle.
Переменная окружения CI_ACCEPTANCE_TEST=true
необходима для запуска digdag-tests.
По умолчанию тест использует виртуальную память H2 базы данных. Для использования PostgreSQL установите следующие переменные окружения:``` $ export DIGDAG_TEST_POSTGRESQL="$(cat config/test_postgresql.properties)"
### Создание исполняемых файлов CLI
$ ./gradlew cli $ ./gradlew cli -PwithoutUi # сборка без встроенной графического интерфейса пользователя
(Если команда завершается ошибкой во время сборки UI из-за ошибок от команды `node`, вы можете попробовать добавить аргумент `-PwithoutUi` для исключения UI из пакета).
Это создает исполняемый файл в `pkg/`, например `pkg/digdag-$VERSION.jar`.
### Разработка digdag-ui
Сервер разработки Node.js полезен тем, что автоматически перезапускает изменения в исходном коде digdag-ui.
Во-первых, добавьте следующие строки в ~/.config/digdag/config и запустите сервер digdag:
server.http.headers.access-control-allow-origin = http://localhost:9000 server.http.headers.access-control-allow-headers = origin, content-type, accept, authorization, x-td-account-override, x-xsrf-token, cookie server.http.headers.access-control-allow-credentials = true server.http.headers.access-control-allow-methods = GET, POST, PUT, DELETE, OPTIONS, HEAD server.http.headers.access-control-max-age = 1209600
Затем запустите сервер разработки digdag-ui:
$ cd digdag-ui/ $ npm install $ npm run dev # запускает dev сервер на http://localhost:9000/
### Обновление документации REST API
Выполните эту команду, чтобы обновить файл документации REST API в digdag-docs/src/api/swagger.yaml.
./gradlew swaggerYaml # выгрузка файла swagger.yaml
Используйте опцию `--enable-swagger`, чтобы проверить текущий REST API Digdag.
$ ./gradlew cli $ ./pkg/digdag-<текущая версия>.jar server --memory --enable-swagger # Запуск сервера с опцией --enable-swagger $ docker run -dp 8080:8080 swaggerapi/swagger-ui # Запуск Swagger-UI в отдельной консоли $ open http://localhost:8080/?url=http://localhost:65432/api/swagger.json # Открытие api/swagger.json в Swagger-UI
Документы находятся в директории `digdag-docs/src`. Они создаются с помощью Sphinx.
Веб-сайт хостится на [www.digdag.io](http://www.digdag.io) с использованием GitHub Pages. Страницы создаются с помощью шага развертывания в `circle.yml` и автоматически пушатся в [ветке gh-pages репозитория digdag-docs](https://github.com/treasure-data/digdag-docs/tree/gh-pages).
Чтобы создать страницы и проверить их локально, выполните следующее руководство.
Создайте виртуальное окружение Python и установите зависимые библиотеки Python, включая Sphinx.
```sh
$ python3 -m venv .venv
$ source .venv/bin/activate
(.venv)$ pip install -r digdag-docs/requirements.txt -c digdag-docs/constraints.txt
После установки библиотек Python, вы можете создать страницы, выполнив следующую команду:
(.venv)$ ./gradlew site
Это может не всегда обновлять все необходимые файлы (Sphinx плохо управляет зависимостями обновлений). В этом случае, сначала выполните ./gradlew clean
. Создает index.html
в digdag-docs/build/html/index.html
.
Дигдейг использует процессор аннотаций Java org.immutables:value
. Соединение процессора аннотаций Java с системой сборки Gradle в IntelliJ IDEA иногда вызывает проблемы. В случае Дигдейга вы можете столкнуться с ошибками компиляции, такими как невозможно найти символ: класс ImmutableRestWorkflowDefinitionCollection
.
Поэтому мы рекомендуем следующее, чтобы избежать этих ошибок компиляции при разработке Дигдейга в среде разработки:1. Есть важная конфигурационная опция, которую следует активировать, чтобы полностью интегрировать IntelliJ со существующей конфигурацией сборки Gradle: опцию «Delegating IDE build/run actions to gradle» следует активировать.
Это для коммиттеров только.
Вам нужна учетная запись в Sonatype OSSRH, и её следует настроить в вашем файле ~/.gradle/gradle.properties
.
ossrhUsername=(ваш логин Sonatype OSSRH)
ossrhPassword=(ваш пароль Sonatype OSSRH)
Вам нужны ваши подписи PGP для выпуска артефактов в Maven Central, и вам следует настроить Gradle для использования вашего ключа для подписи.
Настройте это в вашем файле ~/.gradle/gradle.properties
.
signing.gnupg.executable=gpg
signing.gnupg.useLegacyGpg=false
signing.gnupg.keyName=(последние 8 символов вашего ключа Id)
signing.gnupg.passphrase=(пароль, используемый для защиты вашего приватного ключа)
git pull upstream master --tags
../gradlew setVersion -Pto=<версия>
.releases/release-<версия>.rst
. Он должен содержать хотя бы версию (первая строка) и дату выпуска (последняя строка)../gradlew clean cli site check releaseCheck
.git checkout -b release_v<версия>
и сделайте коммит../gradlew clean cli site check releaseCheck
../gradlew release
.git tag -a v<версия>
и отправьте его git push upstream v<версия>
.pkg/digdag-<версия>.jar
в выпуск.digdag selfupdate
и подтвердите версию. Если основной версии была увеличена, также обновите version =
и release =
в digdag-docs/src/conf.py.Если вы эксперт, пропустите шаги с 5. до 7. и сразу обновите главную ветку.Вы также должны выполнить следующие шаги после выпуска новой версии.
./gradlew setVersion -Pto=<следующая версия>-SNAPSHOT
../gradlew releaseSnapshot
Примечание Поддержка выпуска снапшотов в настоящее время недоступна.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )