Beispiel #1
0
from version import Version
from jsonfile import JsonFile

URL = "https://registry.hub.docker.com/v2/repositories/library/alpine/tags"
skip = ["3.9", "3.9.6", "edge", "latest"]

if TYPE_CHECKING:
    from .version import Version
    from .jsonfile import JsonFile

alpine_base_config = JsonFile("./containerfiles/alpine/base/config.json")
alpine_s6_base_config = JsonFile("./containerfiles/alpine-s6/base/config.json")
alpine_node_config = JsonFile("./containerfiles/alpine/node/config.json")
alpine_python_config = JsonFile("./containerfiles/alpine/python/config.json")

current = Version(alpine_base_config.read()["args"]["BUILD_FROM_TAG"])

request = requests.get(URL).json()
tags = sorted(
    [
        x["name"]
        for x in request["results"]
        if x["name"][0].isdigit() and x["name"] not in skip and "." in x["name"]
    ]
)

upstream = Version(tags.pop())

if current == upstream:
    print(f"Nothing to do, both current and upstream is {current}")
    exit(0)
Beispiel #2
0
if TYPE_CHECKING:
    from .version import Version
    from .jsonfile import JsonFile

install_node_version = JsonFile("./include/install/node/versions.json")
alpine_node_config = JsonFile("./containerfiles/alpine/node/config.json")
alpine_s6_node_config = JsonFile("./containerfiles/alpine-s6/node/config.json")
debian_node_config = JsonFile("./containerfiles/debian/node/config.json")
debian_s6_node_config = JsonFile("./containerfiles/debian-s6/node/config.json")
devcontainer_node_config = JsonFile("./containerfiles/devcontainer/node/config.json")
devcontainer_frontend_config = JsonFile(
    "./containerfiles/devcontainer/frontend/config.json"
)

current = Version(install_node_version.read()["node"])

request = requests.get(URL).text
upstream = Version(request.split(" Current")[0].split("Download ")[-1])

if current == upstream:
    print(f"Nothing to do, both current and upstream is {current}")
    exit(0)


install_node_version.update("node", upstream.string)

alpine_node_config.update("tags", upstream.tags)
alpine_s6_node_config.update("tags", upstream.tags)
alpine_s6_node_config.update("args.BUILD_FROM_TAG", upstream.string)
Beispiel #3
0
"""Update yarn."""
from typing import TYPE_CHECKING
import requests

from version import Version
from jsonfile import JsonFile
from github import github_release

if TYPE_CHECKING:
    from .version import Version
    from .jsonfile import JsonFile

install_yarn_version = JsonFile("./include/install/node/versions.json")

current = Version(install_yarn_version.read()["yarn"])
upstream = Version(github_release("yarnpkg/yarn"))

if current == upstream:
    print(f"Nothing to do, both current and upstream is {current}")
    exit(0)

install_yarn_version.update("yarn", upstream.string)

with open("./commit", "w") as commit:
    commit.write(f"Update Yarn from {current.string} to {upstream.string}")

with open("./labels", "w") as labels:
    labels.write("node,debian/node,alpine/node")
Beispiel #4
0
"""Update ghcli."""
from typing import TYPE_CHECKING
import requests

from version import Version
from jsonfile import JsonFile
from github import github_release

if TYPE_CHECKING:
    from .version import Version
    from .jsonfile import JsonFile

install_ghcli_version = JsonFile("./include/install/ghcli/versions.json")

current = Version(install_ghcli_version.read()["ghcli"])
upstream = Version(github_release("cli/cli"))

if current == upstream:
    print(f"Nothing to do, both current and upstream is {current}")
    exit(0)

install_ghcli_version.update("ghcli", upstream.string)

with open("./commit", "w") as commit:
    commit.write(
        f"Update GitHub CLI from {current.string} to {upstream.string}")

with open("./labels", "w") as labels:
    labels.write("devcontainer")
Beispiel #5
0
    from .version import Version
    from .jsonfile import JsonFile

install_python_version = JsonFile("./include/install/python/versions.json")
alpine_python_config = JsonFile("./containerfiles/alpine/python/config.json")
alpine_s6_python_config = JsonFile(
    "./containerfiles/alpine-s6/python/config.json")
debian_python_config = JsonFile("./containerfiles/debian/python/config.json")
debian_s6_python_config = JsonFile(
    "./containerfiles/debian-s6/python/config.json")
devcontainer_integration = JsonFile(
    "./containerfiles/devcontainer/integration/config.json")
devcontainer_python = JsonFile(
    "./containerfiles/devcontainer/python/config.json")

current = Version(install_python_version.read()["python"])

request = requests.get(URL).text
upstream = Version(request.split(">Download Python ")[2].split("<")[0])

if current == upstream:
    print(f"Nothing to do, both current and upstream is {current}")
    exit(0)

install_python_version.update("python", upstream.string)
alpine_python_config.update("tags", upstream.tags)
alpine_s6_python_config.update("tags", upstream.tags)
alpine_s6_python_config.update("args.BUILD_FROM_TAG", upstream.string)
debian_python_config.update("tags", upstream.tags)
debian_s6_python_config.update("tags", upstream.tags)
debian_s6_python_config.update("args.BUILD_FROM_TAG", upstream.string)
Beispiel #6
0
"""Update s6."""
from typing import TYPE_CHECKING
import requests

from version import Version
from jsonfile import JsonFile
from github import github_release

if TYPE_CHECKING:
    from .version import Version
    from .jsonfile import JsonFile

install_s6_version = JsonFile("./include/install/s6/versions.json")

current = Version(install_s6_version.read()["s6"])
upstream = Version(github_release("just-containers/s6-overlay"))

if current == upstream:
    print(f"Nothing to do, both current and upstream is {current}")
    exit(0)

install_s6_version.update("s6", upstream.string)

with open("./commit", "w") as commit:
    commit.write(f"Update S6 from {current.string} to {upstream.string}")

with open("./labels", "w") as labels:
    labels.write("S6")
Beispiel #7
0
from jsonfile import JsonFile

URL = "https://registry.hub.docker.com/v1/repositories/library/debian/tags"
skip = ["3.9", "3.9.6", "edge", "latest"]

if TYPE_CHECKING:
    from .version import Version
    from .jsonfile import JsonFile

debian_base_config = JsonFile("./containerfiles/debian/base/config.json")
debian_s6_base_config = JsonFile("./containerfiles/debian-s6/base/config.json")
debian_node_config = JsonFile("./containerfiles/debian/node/config.json")
debian_python_config = JsonFile("./containerfiles/debian/python/config.json")

current = Version(
    debian_base_config.read()["args"]["BUILD_FROM_TAG"].split("-")[0])

request = requests.get(URL).json()
tags = [
    x["name"] for x in request
    if x["name"][0].isdigit() and x["name"] not in skip and "." in x["name"]
    and "-slim" in x["name"] and int(x["name"].split(".")[0]) >= 10
]

upstream = Version(tags.pop().split("-")[0])

if current == upstream:
    print(f"Nothing to do, both current and upstream is {current}")
    exit(0)

debian_base_config.update("args.BUILD_FROM_TAG", f"{upstream.string}-slim")