1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/env ruby

require "json"

(1..).each do |page|
  puts "page #{page}"
  watching = JSON.load(<<~`CMD`)
    curl \
      -u kejadlen:#{ENV.fetch("PAT")} \
      -H "Accept: application/vnd.github.v3+json" \
      https://api.github.com/user/subscriptions?per_page=100\\&page=#{page}
    CMD
  exit if watching.empty?

  repos = watching
    .map {|x| x.fetch("full_name") }
    .grep(/pivotal-legacy/)

  repos.each do |repo|
    puts "unwatching #{repo}"
    cmd = <<~`CMD`
      curl \
        -u kejadlen:#{ENV.fetch("PAT")} \
        -X DELETE \
        -H "Accept: application/vnd.github.v3+json" \
        https://api.github.com/repos/#{repo}/subscription
    CMD
  end
end