diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..792349a --- /dev/null +++ b/.drone.yml @@ -0,0 +1,40 @@ +--- +kind: pipeline +type: docker +name: deploy-develop-docs-site + +trigger: + branch: + - docs-deploy + +steps: + - name: build site + image: git.struchkov.dev/upagge/mkdocs-material-insiders:latest + environment: + SSH_DEPLOY_KEY: + from_secret: SSH_DEPLOY_KEY + SSH_DEPLOY_HOST: + from_secret: SSH_DEPLOY_HOST + SSH_DEPLOY_PORT: + from_secret: SSH_DEPLOY_PORT + SSH_DEPLOY_PATH: + from_secret: SSH_DEPLOY_PATH + SSH_DEPLOY_USER: + from_secret: SSH_DEPLOY_USER + commands: + - eval $(ssh-agent -s) + - mkdir -p ~/.ssh + - echo "$SSH_DEPLOY_KEY" >> ~/.ssh/id_rsa + - chmod 700 ~/.ssh + - chmod 600 ~/.ssh/id_rsa + - ssh-keyscan -p $SSH_DEPLOY_PORT $SSH_DEPLOY_HOST >> ~/.ssh/known_hosts + - chmod 644 ~/.ssh/known_hosts + - scp -r -P $SSH_DEPLOY_PORT ./gitlab-notification $SSH_DEPLOY_USER@$SSH_DEPLOY_HOST:$SSH_DEPLOY_PATH + +image_pull_secrets: + - DOCKER_AUTH +--- +kind: signature +hmac: e69cfd9c4c2c1a5c23907bc68bbe1cb2663194be5dd054492977f02f58e612d6 + +... diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..706944a --- /dev/null +++ b/.gitignore @@ -0,0 +1,78 @@ +*.class +*.log +*.ctxt +.mtj.tmp/ +*.jar +*.war +*.nar +*.ear +*.zip +*.tar.gz +*.rar +hs_err_pid* +replay_pid* +target/ +pom.xml.tag +pom.xml.releaseBackup +pom.xml.versionsBackup +pom.xml.next +release.properties +dependency-reduced-pom.xml +buildNumber.properties +.mvn/timing.properties +.mvn/wrapper/maven-wrapper.jar +.project +.classpath +.idea/ +cmake-build-*/ +*.iws +out/ +.idea_modules/ +atlassian-ide-plugin.xml +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties +*~ +.fuse_hidden* +.directory +.Trash-* +.nfs* +.gradle +**/build/ +!src/**/build/ +gradle-app.setting +!gradle-wrapper.jar +!gradle-wrapper.properties +.gradletasknamecache +Thumbs.db +Thumbs.db:encryptable +ehthumbs.db +ehthumbs_vista.db +*.stackdump +[Dd]esktop.ini +$RECYCLE.BIN/ +*.cab +*.msi +*.msix +*.msm +*.msp +*.lnk +.DS_Store +.AppleDouble +.LSOverride +Icon +._* +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk +/documentation/.cache/ diff --git a/documentation/site/404.html b/documentation/site/404.html new file mode 100644 index 0000000..945eab4 --- /dev/null +++ b/documentation/site/404.html @@ -0,0 +1,486 @@ + + + +
+ + + + + + + + + + + + + +Есть несколько способов запустить бота-помощника. Бот был спроектирован таким образом, чтобы работать локально на вашем ПК, но вы можете запустить его на сервере в режиме 24/4.
+Перед запуском необходимо создать бота в Telegram. Для этого перейдите в официального бота @GodFather и выполните команду /newbot
.
Первым делом вам предложат ввести имя для бота.
+Несмотря на то, какой вариант запуска вы виберете, необходимо будет указать следующие переменные среды:
+TELEGRAM_BOT_TOKEN
— токен, который вы получили при создании бота.TELEGRAM_BOT_USERNAME
— название, которое вы дали боту. Оканчивается на bot.GITLAB_PERSONAL_TOKEN
— токен, который вы получили в GitLabTELEGRAM_PERSON_ID
— ваш id в telegram, можно узнать тут.GITLAB_URL
— url на gitlab. Локальный или облачный.DATASOURCE_URL
— ссылка на базу данных Postgres, в следующем формате: jdbc:postgresql://localhost:5432/gitlab_botDATASOURCE_USERNAME
— пользователь БДDATASOURCE_PASSWORD
— пароль от БДКоманда для запуска выглядит следующим образом:
+docker run --name gitlab-notify \
+ --env TELEGRAM_BOT_TOKEN=value \
+ --env TELEGRAM_BOT_USERNAME=value \
+ --env GITLAB_PERSONAL_TOKEN=value \
+ --env TELEGRAM_PERSON_ID=value \
+ --env GITLAB_URL=value \
+ --env DATASOURCE_URL=jdbc:postgresql://localhost:5432/gitlab_bot \
+ --env DATASOURCE_USERNAME=postgres \
+ --env DATASOURCE_PASSWORD=value \
+ --network="host" upagge/gitlab-telegram-notify:latest
+
Скачать актуальный jar-файл всегда можно на странице релизов GitHub.
+java -DTELEGRAM_BOT_USERNAME=value \
+ -DTELEGRAM_BOT_TOKEN=value \
+ -DTELEGRAM_PERSON_ID=value \
+ -DDATASOURCE_URL=value \
+ -DDATASOURCE_PASSWORD=value \
+ -DDATASOURCE_USERNAME=value \
+ -DGITLAB_PERSONAL_TOKEN=value \
+ -DGITLAB_URL=value \
+ -jar gitlab-notification.jar
+
Персональный помощник для взаимодействия с GitLab. Получайте уведомления о событиях в GitLab: новые MR, где вы ревьювер, конфликты в ваших MR, уведомления о новых сообщениях в тредах, где вы являетесь участником, и многое другое.
+Мое решение сфокусировано на приватности и прозрачности. Код и используемые зависимости полностью открыты и доступны для изучения и самостоятельной сборки.
+Для работы бота токен доступа устанавливается в переменные среды и никуда не передается, кроме запросов в GitLab.
+Некоторые уведомления могут содержать чуствительную информацию. Например, уведомления о новых сообщениях в тредах. Возможно вы не захотите раскрывать столько информации о ваших репозиториях Телеграму, ведь через него идет получение уведомлений. Специально для таких случаев предусмотрены уровни конфиденциальности разных типов уведомлений.
+Возьмем для примера уведомление о новом сообщении в треде. При минимальном уровне конфиденциальности вы получите уведомление с текстом коментария и сможете сразу ответить на него в телеграм, а при максимальном уровне конфиденциальности будет сообщаться только о факте нового комментария, без содержания. Все это настраивается при первом запуске.
+ + + + + + + + + + + +\u041f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a \u0434\u043b\u044f \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 GitLab. \u041f\u043e\u043b\u0443\u0447\u0430\u0439\u0442\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u043e \u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0445 \u0432 GitLab: \u043d\u043e\u0432\u044b\u0435 MR, \u0433\u0434\u0435 \u0432\u044b \u0440\u0435\u0432\u044c\u044e\u0432\u0435\u0440, \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u044b \u0432 \u0432\u0430\u0448\u0438\u0445 MR, \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u043e \u043d\u043e\u0432\u044b\u0445 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0445 \u0432 \u0442\u0440\u0435\u0434\u0430\u0445, \u0433\u0434\u0435 \u0432\u044b \u044f\u0432\u043b\u044f\u0435\u0442\u0435\u0441\u044c \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u043c, \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435.
"},{"location":"#privacy","title":"Privacy","text":"\u041c\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0441\u0444\u043e\u043a\u0443\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u043d\u0430 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u043e\u0441\u0442\u0438 \u0438 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u0438. \u041a\u043e\u0434 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0442\u043a\u0440\u044b\u0442\u044b \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0434\u043b\u044f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u0438 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0438.
\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u043e\u0442\u0430 \u0442\u043e\u043a\u0435\u043d \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0441\u0440\u0435\u0434\u044b \u0438 \u043d\u0438\u043a\u0443\u0434\u0430 \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f, \u043a\u0440\u043e\u043c\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 GitLab.
\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u043c\u043e\u0433\u0443\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0447\u0443\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u043e \u043d\u043e\u0432\u044b\u0445 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0445 \u0432 \u0442\u0440\u0435\u0434\u0430\u0445. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0432\u044b \u043d\u0435 \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435 \u0440\u0430\u0441\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0432\u0430\u0448\u0438\u0445 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445 \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u0443, \u0432\u0435\u0434\u044c \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0433\u043e \u0438\u0434\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439. \u0421\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u0443\u0440\u043e\u0432\u043d\u0438 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0437\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0432 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439.
\u0412\u043e\u0437\u044c\u043c\u0435\u043c \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0435 \u043e \u043d\u043e\u0432\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438 \u0432 \u0442\u0440\u0435\u0434\u0435. \u041f\u0440\u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u043c \u0443\u0440\u043e\u0432\u043d\u0435 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0435 \u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u043c \u043a\u043e\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0438 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0440\u0430\u0437\u0443 \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u043d\u0435\u0433\u043e \u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c, \u0430 \u043f\u0440\u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u043c \u0443\u0440\u043e\u0432\u043d\u0435 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0430\u0442\u044c\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e \u0444\u0430\u043a\u0442\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f, \u0431\u0435\u0437 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f. \u0412\u0441\u0435 \u044d\u0442\u043e \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435.
"},{"location":"changelog/","title":"ChangeLog","text":""},{"location":"changelog/#v200","title":"v.2.0.0","text":""},{"location":"changelog/#v100","title":"v.1.0.0","text":""},{"location":"getting-started/configuration/","title":"\u0417\u0430\u043f\u0443\u0441\u043a","text":"\u0415\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0431\u043e\u0442\u0430-\u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u0430. \u0411\u043e\u0442 \u0431\u044b\u043b \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u043d\u0430 \u0432\u0430\u0448\u0435\u043c \u041f\u041a, \u043d\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 24/4.
"},{"location":"getting-started/configuration/#telegram","title":"\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0431\u043e\u0442\u0430 \u0432 Telegram","text":"\u041f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0431\u043e\u0442\u0430 \u0432 Telegram. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u043e\u0442\u0430 @GodFather \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 /newbot
.
\u041f\u0435\u0440\u0432\u044b\u043c \u0434\u0435\u043b\u043e\u043c \u0432\u0430\u043c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0430\u0442 \u0432\u0432\u0435\u0441\u0442\u0438 \u0438\u043c\u044f \u0434\u043b\u044f \u0431\u043e\u0442\u0430.
"},{"location":"getting-started/configuration/#_1","title":"\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f","text":"\u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0442\u043e, \u043a\u0430\u043a\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u044b \u0432\u0438\u0431\u0435\u0440\u0435\u0442\u0435, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0431\u0443\u0434\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0441\u0440\u0435\u0434\u044b:
TELEGRAM_BOT_TOKEN
\u2014 \u0442\u043e\u043a\u0435\u043d, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0431\u043e\u0442\u0430.TELEGRAM_BOT_USERNAME
\u2014 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u044b \u0434\u0430\u043b\u0438 \u0431\u043e\u0442\u0443. \u041e\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 bot.GITLAB_PERSONAL_TOKEN
\u2014 \u0442\u043e\u043a\u0435\u043d, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0432 GitLabTELEGRAM_PERSON_ID
\u2014 \u0432\u0430\u0448 id \u0432 telegram, \u043c\u043e\u0436\u043d\u043e \u0443\u0437\u043d\u0430\u0442\u044c \u0442\u0443\u0442.GITLAB_URL
\u2014 url \u043d\u0430 gitlab. \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u043b\u0438 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0439.DATASOURCE_URL
\u2014 \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 Postgres, \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435: jdbc:postgresql://localhost:5432/gitlab_botDATASOURCE_USERNAME
\u2014 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0411\u0414DATASOURCE_PASSWORD
\u2014 \u043f\u0430\u0440\u043e\u043b\u044c \u043e\u0442 \u0411\u0414\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:
docker run --name gitlab-notify \\\n--env TELEGRAM_BOT_TOKEN=value \\\n--env TELEGRAM_BOT_USERNAME=value \\\n--env GITLAB_PERSONAL_TOKEN=value \\\n--env TELEGRAM_PERSON_ID=value \\\n--env GITLAB_URL=value \\\n--env DATASOURCE_URL=jdbc:postgresql://localhost:5432/gitlab_bot \\\n--env DATASOURCE_USERNAME=postgres \\\n--env DATASOURCE_PASSWORD=value \\\n--network=\"host\" upagge/gitlab-telegram-notify:latest\n
"},{"location":"getting-started/configuration/#idea","title":"\u0417\u0430\u043f\u0443\u0441\u043a \u0432 IDEA","text":""},{"location":"getting-started/configuration/#jar","title":"\u0417\u0430\u043f\u0443\u0441\u043a JAR \u0440\u0435\u043b\u0438\u0437\u0430","text":"\u0421\u043a\u0430\u0447\u0430\u0442\u044c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 jar-\u0444\u0430\u0439\u043b \u0432\u0441\u0435\u0433\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0440\u0435\u043b\u0438\u0437\u043e\u0432 GitHub.
java -DTELEGRAM_BOT_USERNAME=value \\\n-DTELEGRAM_BOT_TOKEN=value \\\n-DTELEGRAM_PERSON_ID=value \\\n-DDATASOURCE_URL=value \\\n-DDATASOURCE_PASSWORD=value \\\n-DDATASOURCE_USERNAME=value \\\n-DGITLAB_PERSONAL_TOKEN=value \\\n-DGITLAB_URL=value \\\n-jar gitlab-notification.jar
"},{"location":"getting-started/features/","title":"\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438","text":""},{"location":"getting-started/features/#_1","title":"\u0423\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f","text":""},{"location":"getting-started/features/#mr","title":"\u041d\u043e\u0432\u044b\u0439 MR","text":""},{"location":"getting-started/features/#mr_1","title":"\u041a\u043e\u043d\u0444\u043b\u0438\u043a\u0442 \u0432 MR","text":""},{"location":"getting-started/features/#mr_2","title":"\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 MR","text":""},{"location":"getting-started/features/#mr_3","title":"\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 MR","text":""},{"location":"getting-started/features/#mr_4","title":"\u041d\u043e\u0432\u044b\u0439 \u0442\u0440\u0435\u0434 \u0432 MR","text":""},{"location":"getting-started/features/#_2","title":"\u0423\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435 \u0432 \u0442\u0440\u0435\u0434\u0435","text":""},{"location":"getting-started/features/#_3","title":"\u041e\u0442\u0432\u0435\u0442 \u0432 \u0434\u0438\u0441\u043a\u0443\u0441\u0438\u0438","text":""},{"location":"getting-started/features/#gitlab","title":"\u0412\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441 GitLab","text":""},{"location":"getting-started/features/#_4","title":"\u041e\u0442\u0432\u0435\u0442 \u0432 \u0442\u0440\u0435\u0434\u0435","text":""},{"location":"guides/","title":"Hello Mutiny!","text":"Once you made Mutiny available to your classpath, you can start writing code. Let's start with this simple program:
"},{"location":"guides/#test","title":"Test","text":""},{"location":"guides/#test-2","title":"Test 2","text":""},{"location":"guides/#test-4","title":"Test 4","text":""}]} \ No newline at end of file diff --git a/documentation/site/sitemap.xml b/documentation/site/sitemap.xml new file mode 100644 index 0000000..2be3d4f --- /dev/null +++ b/documentation/site/sitemap.xml @@ -0,0 +1,33 @@ + +