我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

此版本的 GitHub Enterprise 将停止服务 此版本的 GitHub Enterprise 已停止服务 2020-08-20. 即使针对重大安全问题,也不会发布补丁。 要获得更好的性能、改进的安全性和新功能,请升级到 GitHub Enterprise 的最新版本。 如需升级方面的帮助,请联系 GitHub Enterprise 支持

文章版本: Enterprise Server 2.18

Replacing GitHub Services

If you're still relying on the deprecated GitHub Services, learn how to migrate your service hooks to webhooks.

本文内容

We have deprecated GitHub Services in favor of integrating with webhooks. This guide helps you transition to webhooks from GitHub Services. For more information on this announcement, see the blog post.

As an alternative to the email service, you can now start using email notifications for pushes to your repository. See "About email notifications for pushes to your repository" to learn how to configure commit email notifications.

Deprecation timeline

  • October 1, 2018: GitHub discontinued allowing users to install services. We removed GitHub Services from the GitHub.com user interface.
  • January 29, 2019: As an alternative to the email service, you can now start using email notifications for pushes to your repository. See "About email notifications for pushes to your repository" to learn how to configure commit email notifications.
  • January 31, 2019: GitHub will stop delivering installed services' events on GitHub.com.

GitHub Services background

GitHub Services (sometimes referred to as Service Hooks) is the legacy method of integrating where GitHub hosted a portion of our integrator’s services via the github-services repository. Actions performed on GitHub trigger these services, and you can use these services to trigger actions outside of GitHub.

Finding repositories that use GitHub Services

We provide a command-line script that helps you identify which repositories on your appliance use GitHub Services. For more information, see ghe-legacy-github-services-report.

GitHub Services vs. webhooks

The key differences between GitHub Services and webhooks:

  • Configuration: GitHub Services have service-specific configuration options, while webhooks are simply configured by specifying a URL and a set of events.
  • Custom logic: GitHub Services can have custom logic to respond with multiple actions as part of processing a single event, while webhooks have no custom logic.
  • Types of requests: GitHub Services can make HTTP and non-HTTP requests, while webhooks can make HTTP requests only.

Replacing Services with webhooks

To replace GitHub Services with Webhooks:

  1. Identify the relevant webhook events you’ll need to subscribe to from this list.

  2. Change your configuration depending on how you currently use GitHub Services:

    • GitHub Apps: Update your app's permissions and subscribed events to configure your app to receive the relevant webhook events.
    • OAuth Apps: Request either the repo_hook and/or org_hook scope(s) to manage the relevant events on behalf of users.
    • GitHub Service providers: Request that users manually configure a webhook with the relevant events sent to you, or take this opportunity to build an app to manage this functionality. For more information, see "About apps."
  3. Move additional configuration from outside of GitHub. Some GitHub Services require additional, custom configuration on the configuration page within GitHub. If your service does this, you will need to move this functionality into your application or rely on GitHub or OAuth Apps where applicable.

Supporting GitHub Enterprise Server

  • GitHub Enterprise Server 2.17: GitHub Enterprise Server release 2.17 and higher will discontinue allowing admins to install services. Admins will continue to be able to modify existing service hooks and receive service hooks in GitHub Enterprise Server release 2.17 through 2.19. As an alternative to the email service, you will be able to use email notifications for pushes to your repository in GitHub Enterprise Server 2.17 and higher. See this blog post to learn more.
  • GitHub Enterprise Server 2.20: GitHub Enterprise Server release 2.20 and higher will stop delivering all installed services' events.

The GitHub Enterprise Server 2.17 release will be the first release that does not allow admins to install GitHub Services. We will only support existing GitHub Services until the GitHub Enterprise Server 2.20 release. We will also accept any critical patches for your GitHub Service running on GitHub Enterprise Server until October 1, 2019.

Migrating with our help

Please contact us with any questions.

As a high-level overview, the process of migration typically involves:

问问别人

找不到要找的内容?

联系我们