36 lines
982 B
Python
36 lines
982 B
Python
import os
|
|
import toml
|
|
|
|
def get_release_version():
|
|
"""
|
|
Reads the version from the Cargo.toml file.
|
|
"""
|
|
|
|
cargo_toml_path = os.path.join(os.path.dirname(__file__), 'Cargo.toml')
|
|
|
|
with open(cargo_toml_path, 'r', encoding="UTF-8") as f:
|
|
cargo_toml = toml.load(f)
|
|
|
|
return cargo_toml['package']['version']
|
|
|
|
version = get_release_version()
|
|
|
|
input(f"The current version is v{version}. Is this properly bumped? (Enter/Ctrl+C)")
|
|
|
|
SCRIPT = f"""
|
|
docker build -t registry.nyeki.dev/nyeki/api:latest .
|
|
docker push registry.nyeki.dev/nyeki/api:latest
|
|
docker tag registry.nyeki.dev/nyeki/api:latest registry.nyeki.dev/nyeki/api:v{version}
|
|
docker push registry.nyeki.dev/nyeki/api:v{version}
|
|
|
|
git add .
|
|
git commit -m "Release version v{version}"
|
|
git tag -a v{version} -m "Release version v{version}"
|
|
git push origin main
|
|
git push origin v{version}
|
|
"""
|
|
|
|
os.system(SCRIPT)
|
|
|
|
print(f"v{version} was released. Congratulations!")
|