mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 20:43:39 +08:00
31 lines
667 B
Ruby
31 lines
667 B
Ruby
|
#!/usr/bin/env ruby
|
||
|
# frozen_string_literal: true
|
||
|
|
||
|
require "net/http"
|
||
|
require "json"
|
||
|
|
||
|
workflow_run_id = ARGV[0]
|
||
|
run_attempt = ARGV[1]
|
||
|
job_name = ARGV[2]
|
||
|
|
||
|
uri =
|
||
|
URI.parse(
|
||
|
"https://api.github.com/repos/discourse/discourse/actions/runs/#{workflow_run_id}/attempts/#{run_attempt}/jobs",
|
||
|
)
|
||
|
|
||
|
request = Net::HTTP::Get.new(uri)
|
||
|
request["Accept"] = "application/vnd.github+json"
|
||
|
request["X-Github-Api-Version"] = "2022-11-28"
|
||
|
|
||
|
response =
|
||
|
Net::HTTP.start(uri.host, uri.port, use_ssl: uri.is_a?(URI::HTTPS)) do |http|
|
||
|
http.request(request)
|
||
|
end
|
||
|
|
||
|
JSON.parse(response.body)["jobs"].each do |job|
|
||
|
if job["name"] == job_name
|
||
|
puts job["id"]
|
||
|
break
|
||
|
end
|
||
|
end
|