Commit Graph
7 Commits
Author SHA1 Message Date
Marshall Bowers 1c9b75366a Proxy Danger requests through a proxy service (#10395)
This PR updates Danger to proxy its requests to GitHub through a proxy
service.

## Motivation

Currently Danger is not able to run on PRs opened from forks of Zed.

This is due to GitHub Actions' security policies. Forks are not able to
see any of the repository secrets, and the built-in
`secrets.GITHUB_TOKEN` has its permissions
[restricted](https://docs.github.com/en/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)
to only reads when running on forks.

I asked around on the Danger repo, and some big projects
(DefinitelyTyped) are working around this by using a publicly-listed
(although slightly obfuscated) token:
https://github.com/danger/danger-js/issues/918#issuecomment-2048629487.

While this approach is _probably_ okay given the limited scope and
permissions of the GitHub token, I would still prefer a solution that
avoids disclosing the token at all.

## Explanation

I ended up writing a small proxy service, [Danger
Proxy](https://github.com/maxdeviant/danger-proxy), that can be used to
provide Danger with the ability to make authenticated GitHub requests,
but without disclosing the token.

From the README:

> Danger Proxy will:
>
> - Proxy all requests to `/github/*` to the GitHub API. The provided
GitHub API token will be used for authentication.
> - Restrict requests to the list of repositories specified in the
`ALLOWED_REPOS` environment variable.
> - Restrict requests to the subset of the GitHub API that Danger
requires.

I have an instance of this service deployed to
[danger-proxy.fly.dev](https://danger-proxy.fly.dev/).

Release Notes:

- N/A
2024-04-11 00:01:20 -04:00
Marshall Bowers ba65ac8f12 Revert "Update GITHUB_TOKEN environment variable for Danger (#10365)"
Danger doesn't appear to work with PRs from forks: https://github.com/danger/danger-js/issues/918

Will need to research this some more.

This reverts commit 8546ddf8df.
2024-04-10 13:29:54 -04:00
Marshall Bowers 8546ddf8df Update GITHUB_TOKEN environment variable for Danger (#10365)
This PR updates the `GITHUB_TOKEN` environment variable that we use for
Danger so that it should (hopefully) be able to run for PRs of external
contributors.

Followed the instructions outlined
[here](https://danger.systems/js/guides/getting_started#setting-up-danger-to-run-on-your-ci).

Danger comments will now by left by the @zed-industries-bot:

<img width="951" alt="Screenshot 2024-04-10 at 1 07 15 PM"
src="https://github.com/zed-industries/zed/assets/1486634/d28cd537-9626-47df-8878-75a778824ef4">

Release Notes:

- N/A
2024-04-10 13:09:27 -04:00
Marshall Bowers 916a3b6af1 Format YAML files (#7887)
This PR formats the YAML files in the repo with Prettier.

Release Notes:

- N/A
2024-02-15 22:04:57 -05:00
Kirill Bulatov 20fb9e11a9 Bump action runners versions 2024-02-09 15:25:16 +02:00
Kirill Bulatov 11d2930906 Upgrade GH actions to reduce CI warnings (#7403)
Deals with one of the warnings GH shows on our actions run:

https://github.com/zed-industries/zed/actions/runs/7790218555
<img width="1383" alt="image"
src="https://github.com/zed-industries/zed/assets/2690773/e523ec7c-bf43-4b0d-8c36-8540aef6fae9">

bufbuild/* actions seem to have no new major versions so there's nothing
new to upgrade to.

Release Notes:

- N/A
2024-02-05 22:26:56 +02:00
Marshall Bowers 5fcf91cc27 Setup Danger (#6994)
This PR sets up [Danger](https://danger.systems/js/) to help us codify
some of our PR rules.

As an initial rule, Danger will check to ensure that every PR has a
`Release Notes` section:

<img width="943" alt="Screenshot 2024-01-29 at 11 50 12 AM"
src="https://github.com/zed-industries/zed/assets/1486634/4d56e759-e72f-4bc0-8e74-42c55e2e6888">

Release Notes:

- N/A
2024-01-29 11:58:24 -05:00