Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate from self-hosted Peril to Danger on GitHub Actions #13366

Closed
loremattei opened this issue Feb 4, 2020 · 3 comments
Closed

Migrate from self-hosted Peril to Danger on GitHub Actions #13366

loremattei opened this issue Feb 4, 2020 · 3 comments
Labels
[Status] Stale Tooling Build, Release, and Validation Tools [Type] Enhancement

Comments

@loremattei
Copy link
Contributor

We've been using Peril to support PR reviews for a couple of years now and it has become a key part of our process.

Peril is basically a self-hosted version of Danger.

Since GitHub released Actions, the development of Peril has stalled and the authors and maintainers have focused on improving Danger and making it work flawlessly with GH Actions.

We currently host Peril on a free Heroku account and with the projects we've now hooked we're reaching its limits.

Given the above, it would be interesting for us to investigate the migration from Peril to Danger on GitHub Actions.
Our rules are Danger's rules and they are already stored in a shared repository, so it should be possible to run mixed environments and to migrate on a phased roll out.

@loremattei loremattei added Tooling Build, Release, and Validation Tools [Type] Enhancement labels Feb 4, 2020
mokagio added a commit to mokagio/WordPress-iOS that referenced this issue Feb 7, 2020
First step to implement wordpress-mobile#13366.

The idea is to start with something simple, that is commenting on issues that don't have a label, replicating this Peril config: https://github.com/mokagio/peril-settings/blob/7a7d11f69351d446b8e3a50d9e14a7fdf43a21e4/peril-settings.json#L17-L19.

With this into the main branch of the repo, opening, labeling, and un-labeling an issue should result in a workflow run.
@mokagio
Copy link
Contributor

mokagio commented Jun 25, 2020

Here's an update on the state of this. We decided to pause the migration effort, because of time and return of investment considerations.

Danger, whether the Ruby or the Javascript implementation, works great for PRs. We were able to replicate the centralized nature of the Peril configuration by defining project specific Dangerfiles that imported and run the granular checks they needed, see here.

Unfortunately, I wasn't able to replicate Peril's behavior for issues and status webhooks in the Danger + GitHub Actions setup.

We could adopt Danger only for PR checks and keep Peril for the other ones, but this would mean maintaining two setups instead of one, for no real gain. Danger even runs slower than Peril, because of the GitHub Actions CI boot time.

Moreover, Danger via GitHub Actions fails to run on PR coming from forks. This is a limitation that CircleCI has as well, meaning that if we were to migrate we'd already have in place the processes to take over a PR for a fork to run CI on it. Still, it's something that "just works" on Peril, adding another point against using Danger right now.

Given we have more impactful work to do right now, we decided to pause the migration project. I'll be keeping an eye on the Danger repos and revisit every 3 months or so.

I'll also set Danger via GitHub Actions up in one of our internal tools in Automattic, in order to keep the setup up to date, so that when the time comes, we'll have a quick start reference.

@stale
Copy link

stale bot commented Jul 21, 2021

This issue has been marked as stale because:

  • It has been inactive for the past year.
  • It isn't in a project or a milestone.
  • It hasn’t been labeled [Pri] Blocker, [Pri] High, or good first issue.

Please comment with an update if you believe this issue is still valid or if it can be closed. This issue will also be reviewed for validity and priority during regularly scheduled triage sessions.

@stale stale bot added the [Status] Stale label Jul 21, 2021
@jkmassel
Copy link
Contributor

jkmassel commented Jul 3, 2024

This was done a few months ago.

@jkmassel jkmassel closed this as completed Jul 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Status] Stale Tooling Build, Release, and Validation Tools [Type] Enhancement
Projects
None yet
Development

No branches or pull requests

3 participants