39 lines
1010 B
Python
39 lines
1010 B
Python
import os
|
|
import time
|
|
import getpass
|
|
|
|
username = input("Username for git.nyeki.dev: ")
|
|
password = getpass.getpass("Password for git.nyeki.dev: ")
|
|
|
|
latest_version = input("Latest version (empty for latest): ")
|
|
|
|
if not latest_version.strip():
|
|
latest_version = "latest"
|
|
else:
|
|
latest_version = "v" + latest_version.strip()
|
|
|
|
print(f"Updating to tag {latest_version}...")
|
|
|
|
os.system(f"git pull https://{username}:{password}@git.nyeki.dev/payphone/payphone")
|
|
os.system(
|
|
f"microk8s kubectl set image sts/bot bot=registry.nyeki.dev/payphone/payphone/shard:{latest_version}"
|
|
)
|
|
os.system(
|
|
f"""
|
|
microk8s kubectl set image pod/tasks \
|
|
connect=registry.nyeki.dev/payphone/payphone/tasks:{latest_version}
|
|
"""
|
|
)
|
|
|
|
print("Waiting 15 seconds to run migrations...")
|
|
|
|
time.sleep(15)
|
|
|
|
shards = input("How many shards are there deployed?: ")
|
|
|
|
os.system(f"microk8s kubectl exec bot-{int(shards) - 1} -- uv run aerich upgrade")
|
|
|
|
print("Done!")
|
|
|
|
# expire=registry.nyeki.dev/payphone/payphone/shard:v{latest_version}
|