Files
payphone/scripts/deploy.py
T

34 lines
884 B
Python

import os
import time
import getpass
username = input("Username for git.nyeki.dev: ")
password = getpass.getpass("Password for git.nyeki.dev: ")
latest_tag = input("Latest tag (empty for latest): ") or "latest"
print(f"Updating to tag {latest_tag}...")
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_tag}"
)
os.system(
f"""
microk8s kubectl set image pod/tasks \
connect=registry.nyeki.dev/payphone/payphone/tasks:{latest_tag}
"""
)
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}