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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
#!/usr/bin/python3
import os
import argparse
import asyncio
import joblib
async def main(args):
queue = joblib.JobQueue()
await queue.connect(host=args.host,
port=args.port,
user=args.user,
password=args.password,
database=args.database)
await queue.setup()
if args.cleanup:
await queue.cleanup()
if args.player:
payload = {
"region": args.region,
"params": {
"filter[createdAt-start]": "2017-02-01T00:00:00Z",
"filter[playerNames]": args.player
}
}
await queue.request(jobtype="grab",
payload=payload,
priority=args.priority)
parser = argparse.ArgumentParser(description="Request a Vainsocial update.")
parser.add_argument("-n", "--player",
help="Player name",
type=str)
parser.add_argument("-c", "--cleanup",
help="Reset all unfinished jobs",
action="store_true")
parser.add_argument("-r", "--region",
help="Specify a region",
type=str,
choices=["na", "eu", "sg"],
default="na")
parser.add_argument("-p", "--priority",
help="Set the priority",
type=int,
default=0)
parser.add_argument("--host",
help="Database host",
type=str,
default=os.environ.get("POSTGRESQL_HOST") or "localhost")
parser.add_argument("--port",
help="Database port",
type=int,
default=os.environ.get("POSTGRESQL_PORT") or 5432)
parser.add_argument("--user",
help="Database user",
type=str,
default=os.environ.get("POSTGRESQL_USER") or "vainsocial")
parser.add_argument("--password",
help="Database password",
type=str,
default=os.environ.get("POSTGRESQL_PASSWORD") or "")
parser.add_argument("--database",
help="Database name",
type=str,
default=os.environ.get("POSTGRESQL_DB") or "vainraw")
args = parser.parse_args()
loop = asyncio.get_event_loop()
loop.run_until_complete(main(args))
|