0

GitHub アプリを作成し、プライベート リポジトリにインストールしました。
プル リクエストを検出し、自動的にコメントを追加し、着信 PR のテストを実行します。

PR が同じリポジトリからのものである場合は正常に機能します
が、PR が別のプライベート フォーク リポジトリからのものである場合は機能しません。(許可の問題のためだと思います)

以下のサンプル コードは、GitHub のコード (zip ファイル) を複製する方法です。

String template = "https://api.github.com/repos/%s/%s/zipball/refs/heads/%s";
String path = String.format(template, "USER", "REPOSITORY", "BRANCH");

HttpRequest request = HttpRequest.newBuilder()
        .uri(URI.create(path))
        .header("Authorization", "Bearer " + TOKEN)
        .header("Accept", "application/vnd.github.v3+json")
        .build();

// returns a redirect link to download the zipped code
HttpResponse<String> response = HttpClient.newHttpClient()
        .send(request, BodyHandlers.ofString());
    • 元のリポジトリ / フォークされたリポジトリは両方ともプライベートです
    • 私の GitHub アプリは元のリポジトリにのみインストールされます
    • 私の GitHub アプリは、元のリポジトリで開かれたプル リクエストを検出します
    • 私の GitHub アプリは、プル リクエストのソース ファイルをダウンロードしようとします。
      • プル リクエストのソースが Fork からのものである場合に失敗する
4

1 に答える 1