48 lines
1.1 KiB
Python
48 lines
1.1 KiB
Python
import os
|
|
import sys
|
|
import getpass
|
|
|
|
try:
|
|
import requests
|
|
|
|
except ImportError:
|
|
print(
|
|
"You need to install `requests` to use this file. Run `pip install requests` and try "
|
|
"again."
|
|
)
|
|
sys.exit()
|
|
|
|
username = input("Username for git.nyeki.dev: ")
|
|
password = getpass.getpass("Password for git.nyeki.dev: ")
|
|
|
|
tags = requests.get(
|
|
"https://git.nyeki.dev/v2/payphone/payphone-shard/tags/list",
|
|
auth=(username, password),
|
|
).json()["tags"]
|
|
|
|
latest_version = 1
|
|
|
|
for tag in tags:
|
|
tag: str
|
|
|
|
if tag[1:].isdecimal():
|
|
version = int(tag[1:])
|
|
|
|
if version > latest_version:
|
|
latest_version = version
|
|
|
|
print(f"Updating to tag v{version}...")
|
|
|
|
os.system(f"git pull https://{username}:{password}@git.nyeki.dev/payphone/payphone")
|
|
os.system(
|
|
f"microk8s kubectl set image sts/bot bot=git.nyeki.dev/payphone/payphone-shard:v{version}"
|
|
)
|
|
os.system(
|
|
f"""
|
|
microk8s kubectl set image deploy/tasks \
|
|
flush=git.nyeki.dev/payphone/payphone-shard:v{version} \
|
|
delete-accounts=git.nyeki.dev/payphone/payphone-shard:v{version} \
|
|
hangup-inactive-calls=git.nyeki.dev/payphone/payphone-shard:v{version}
|
|
"""
|
|
)
|