summaryrefslogtreecommitdiff
path: root/destroy-user-db
blob: fdf917b5f637f104e1b3a74c5a058240c9686578 (plain)
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/usr/bin/ruby

require_relative "lib/leap"

def main()
  parse_opts
  server   = LEAP::Server.new
  users_db = LEAP::Users.new(server)
  record   = users_db.find_by_login($username)
  if record.nil?
    puts "Username #{$username} does not exist."
    exit 1
  end
  dbname   = "user-#{record.id}"
  begin
    server.database(dbname).delete!
    puts "Deleted DB #{dbname}"
    exit 0
  rescue RestClient::ResourceNotFound
    puts "DB does not exist: #{dbname}"
    exit 1
  end
end

def parse_opts()
  $username = nil
  while cmd = ARGV.shift
    case cmd
      when "--username"
        $username = ARGV.shift
      else
        usage
    end
  end
  unless $username
    usage
  end
end

def usage()
  puts "#{$0} COMMAND"
  puts "Commands:"
  puts "  --username USERNAME - destroy the user db corresponding to USERNAME."
  exit(1)
end

main()