Skip to content

Commit faa95bd

Browse files
Provide required headers for prepareGuestHoleServers
1 parent d815f70 commit faa95bd

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

app/build.gradle

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -514,10 +514,16 @@ tasks.register("generateReleaseNotesForPublishing") {
514514
tasks.register("prepareGuestHoleServers") {
515515
doLast {
516516
def guestHoleUrl = System.getenv("GUEST_HOLE_URL")
517-
if (guestHoleUrl == null)
518-
throw new GradleException("GUEST_HOLE_URL needs to be set for prepareGuestHoleServers")
519-
520-
def allServers = new JsonSlurper().parse(new URL(guestHoleUrl))["LogicalServers"]
517+
def guestHoleHeaders = System.getenv("GUEST_HOLE_HEADERS")
518+
if (guestHoleUrl == null || guestHoleHeaders == null)
519+
throw new GradleException("GUEST_HOLE_URL and GUEST_HOLE_HEADERS need to be set for prepareGuestHoleServers")
520+
521+
def connection = new URL(guestHoleUrl).openConnection()
522+
for (header in new JsonSlurper().parseText(guestHoleHeaders))
523+
connection.setRequestProperty(header.key, header.value)
524+
if (connection.getResponseCode() != 200)
525+
throw new GradleException("Failed to fetch guest hole servers: ${connection.getResponseCode()} ${connection.getResponseMessage()}")
526+
def allServers = new JsonSlurper().parse(connection.getInputStream())["LogicalServers"]
521527
def candidateServers = allServers.stream().filter { s ->
522528
def country = s["ExitCountry"]
523529
def secureCore = (s["Features"] & 1) == 1

0 commit comments

Comments
 (0)