Рубрики
Uncategorized

Как создать приложения GitHub для веселья и прибыли

Привет там, Github Developer! Таким образом, вы принимаете свой код на GitHub, и вы видели такие комментарии: … Помечено JavaScript, Github, Devops.

Привет там, Github Developer! Таким образом, вы принимаете свой код на GitHub, и вы видели такие комментарии:

Зависимость и тысячи ботов, как это, как называются Приложения GitHub . Сегодня я научу вам сделать приложение GitHub и как перечислять его для покупки в Github Marketplace. Приложения GitHub были в течение нескольких лет, но стоят еще одного взгляда, так как платформа GitHub расширяется и улучшает.

О Github Apps.

Приложения GitHub — отличный способ программно взаимодействовать с GitHub:

  • Гибкие, первый класс актеров на Github
  • Безопасная, мелкозернистая модель разрешений
  • Масштабируемая, выделенная скорость пределов
  • Встроенные окна

Вам может понадобиться приложение GitHub для:

GitHub Apps заменяют AAuth Apps , используются для постройки Действия GitHub и работайте на github.com и Github Enterprise одинаково. Некоторые API являются эксклюзивными для приложений GitHub — например, Проверяет и Содержание вложений Отказ

Приложение GitHub может быть запрограммировано на действие как сам , Как (Scoped) «Установка» или как один из его пользователей , если разрешено.

Также Приложения GitHub подходят вместе с действиями GitHub как арахисовое масло и желе, что рад. Так что давайте построим один! Сегодня я построю Простейшая вещь возможна , бот, который одобряет запрос на тягу, если «🤖» находится в заголовке.

Что будет Вы построить 👀?

Промонт, помощник помощника

Знать JavaScript? Здорово. Phbot — это Trusty Node.js Framework для создания приложений GitHub, и мы будем использовать его для проще следующих шагов:

  1. Создайте приложение Регистрируя набор разрешений, события веб -ook и метаданных
  2. Установите приложение как можно меньше или столько репозиторий, сколько вы хотите
  3. Используйте приложение сделать запросы на API GitHub

Создать приложение

В терминале с установленным Node.js введите NPX Create-Phrobot-App Pr-Bot и следовать подсказкам, выбирая Basic-JS как шаблон. CD PR-BOT Когда установка сделана.

Откройте app.yml В вашем любимом текстовом редакторе. Это однократное использование Second Spec или «Манифест» — конечно, настройки приложений могут быть изменены позже в https://github.com/settings/apps Отказ

Безотчетное default_events.pull_request и изменить default_permissions.pull_requests к Напишите Отказ Когда вы закончите, это должно выглядеть так:

default_events:
  - pull_request
default_permissions:
  metadata: read
  pull_requests: write
description: A silly pull request bot!
public: true

Теперь добавьте логику приложения в index.js Отказ Добавьте этот блок чуть ниже строки, app.log.info («yay, приложение было загружено!») :

app.on(
  ["pull_request.opened", "pull_request.edited", "pull_request.reopened"],
  async (context) => {

    if (context.payload.pull_request.title.indexOf('🤖') > -1) {
      await context.octokit.pulls.createReview({
        ...context.pullRequest(),
        event: 'APPROVE'
      })
    }
  }
);

context.octokit дает нам доступ к аутентифицированному Octokit/rest.js клиент Сделать API GitHub API с легкостью. (PSST: проверить другую официальную и 3-е вечеринку Октокитные библиотеки Даже если вы не используете Phost!)

Вернуться в свой терминал, запустите NPM запустить начало И затем нажмите «Зарегистрировать приложение GitHub» в http://localhost: 3000 :

Следуйте инструкциям, чтобы закончить создание приложения. Обратите внимание, что .env Файл появился с некоторыми секретами только вы, как разработчик приложения, а именно App_id С Private_key и Webhook_secret Отказ

Установите приложение

Следуйте инструкциям для установки приложения на всех или выберите репозитории. Это позволяет приложению «увидеть и отвечать» на ресурсы, которые вы настроили ранее ( pull_requests ), но только в этих репозиториях.

Используйте приложение

В одном из этих репозиториев открыть запрос на тягу. pull_request. WebHook был получен, но нет «🤖» был в названии, так что PR-BOT Остался тихо! Теперь добавьте «🤖» в заголовке и обратите внимание на одобрение!

Но вы не собираетесь использовать свою собственную машину в течение длительного времени 😉. Приложения Phbot — это просто Node.js приложения, поэтому они могут быть развернут на все условия, которые вы ожидаете.

Нет проблем, без проблем

До сих пор мы использовали Pто-проба в качестве помощника в хелперных рамках Создать , Установить и использовать Приложение для расширения нашего опыта на Github! Знаете ли вы, вы можете легко следовать этим шаблон даже без просмотра?

Создать приложение

Перейти к https://github.com/settings/apps/new и заполнить поля, с Создание приложения GitHub — Github Docs как ваше руководство. Теперь вы можете оценить сложность, который решает проба, используя Приложение манифест потока за кулисами.

Установите приложение

Посетите страницу вашего приложения на https://github.com/apps/yourAppname Чтобы начать процесс установки, как и раньше.

Используйте приложение

Теперь у вас должен быть Частный ключ , ID приложения (найден в верхней части страницы настроек приложения, https://github.com/settings/apps/yourappname ) и ID установки (через API или в URL-адреса Post-install, как HTTPS://github.com/settings/installations/1234567 ). Вы можете использовать их для формирования запросов API, либо вручную через один из Октокитные библиотеки или даже как действие Отказ

Проверьте это видео для прохождения пример, используя Go на Github Enterprise Server:

YouTube

Листинг в Github Marketplace

Github Marketplace Является ли одна остановка для Распределение вашего приложения с сообществом GitHub И даже позволяя разработчикам заплатить вам за это. Посмотреть Требования к листингу приложения — GitHub Docs Для получения инструкций!

Упаковка

Сегодня мы Создан, установлен и используется Простое приложение GitHub и подчеркивало несколько отличных функций о приложениях GitHub:

  • Гибкая, мощная модель интеграции для создания богатых опытов и программного доступа к GitHub
  • Можно обнаружить, куплен и продаваться на Github Marketplace
  • Полностью поддерживается GitHub и широко используется интеграторами и разработчиками

Счастливый развивающийся! Увидимся!

Дополнительные ресурсы:

Оригинал: «https://dev.to/github/building-github-apps-for-fun-and-profit-4mid»