diff options
author | vkalintiris <vasilis@netdata.cloud> | 2024-01-17 11:19:40 +0200 |
---|---|---|
committer | vkalintiris <vasilis@netdata.cloud> | 2024-01-17 11:19:40 +0200 |
commit | 71eae1b4e26020486fed0f0e1e4e52f6be6f5121 (patch) | |
tree | e9d3b55e436a1a61d28a1de149bc4f36db496578 | |
parent | cbd20eda31f82c14959b407e55971d6c82cd1a5b (diff) |
Bump
-rw-r--r--[-rwxr-xr-x] | packaging/dag/images.py | 2 | ||||
-rwxr-xr-x | packaging/dag/main.py | 32 |
2 files changed, 27 insertions, 7 deletions
diff --git a/packaging/dag/images.py b/packaging/dag/images.py index 824b7cd43a..df7a62ca51 100755..100644 --- a/packaging/dag/images.py +++ b/packaging/dag/images.py @@ -1091,7 +1091,7 @@ def build_debian_11(client, platform): return ctr -def build_debian_12(client, platform): +def build_debian_12(client, platform) -> dagger.Container: ctr = client.container(platform=platform).from_("debian:bookworm") pkgs = [pkg for pkg in _DEBIAN_COMMON_PACKAGES] diff --git a/packaging/dag/main.py b/packaging/dag/main.py index 387632082b..077ed9aba9 100755 --- a/packaging/dag/main.py +++ b/packaging/dag/main.py @@ -5,6 +5,7 @@ import click import os from pathlib import Path import sys +import time import anyio @@ -52,7 +53,7 @@ def netdata_installer(enable_ml=True, enable_ebpf=False, enable_go=False): return cmd -def build_image_for_platform(client, image_name, platform: dagger.Platform, ctr : dagger.Container): +def build_image_for_platform(client: dagger.Client, image_name, platform: dagger.Platform, ctr : dagger.Container) -> dagger.Container: repo_path = str(Path(__file__).parent.parent.parent) exclude_dirs = exclude=["build", "fluent-bit/build"] @@ -72,11 +73,21 @@ def build_image_for_platform(client, image_name, platform: dagger.Platform, ctr shell_cmd = "/opt/netdata/usr/sbin/netdata -W buildinfo | tee /opt/netdata/buildinfo.log" buildinfo_task = build_task.with_exec(["sh", "-c", shell_cmd]) - build_dir = buildinfo_task.directory('/opt/netdata') - artifact_dir = os.path.join(Path.home(), f'ci/{tag}') - output_task = build_dir.export(artifact_dir) + # build_dir = buildinfo_task.directory('/opt/netdata') + # artifact_dir = os.path.join(Path.home(), f'ci/{tag}') + # output_task = build_dir.export(artifact_dir) - return output_task + return buildinfo_task + + +def build_service(ctr: dagger.Container) -> dagger.Container: + ctr = ( + ctr.with_exec(["/opt/netdata/usr/sbin/netdata", "-D", "-i", "0.0.0.0"]) + .with_exposed_port(19999) + ) + + return ctr + def run_async(func): """ @@ -97,7 +108,16 @@ async def main(): async with dagger.Connection(config) as client: ctr = oci_images.build_debian_12(client, platform) ctr = build_image_for_platform(client, "debian_12", platform, ctr) - await ctr + ctr = build_service(ctr) + + tunnel = await client.host().tunnel(ctr.as_service(), native=True).start() + + # get HTTP service address + endpoint = tunnel.endpoint() + print(f"GVD >>> The endpoint is: {endpoint=} <<<") + await endpoint + time.sleep(600) + # await oci_images.static_build(client, repo_path) if __name__ == '__main__': |