From 7d6d584b91e9356f8657e33d2be12cab2bf67431 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Thu, 31 Oct 2019 17:58:23 +0100 Subject: [PATCH 01/10] WIP: Setting subtask budget --- apps/core/resources/images/base.Dockerfile | 4 ++-- apps/wasm/environment.py | 2 +- apps/wasm/resources/images/Dockerfile | 2 +- golem/docker/job.py | 2 +- golem/task/taskcomputer.py | 1 + requirements.txt | 2 +- 6 files changed, 7 insertions(+), 6 deletions(-) diff --git a/apps/core/resources/images/base.Dockerfile b/apps/core/resources/images/base.Dockerfile index 8f2beb2561..a4ad58eecb 100644 --- a/apps/core/resources/images/base.Dockerfile +++ b/apps/core/resources/images/base.Dockerfile @@ -1,8 +1,8 @@ # Dockerfile for a base image for computing tasks in Golem. # Installs python and sets up directories for Golem tasks. -FROM golang:1.12.7 as stats-builder -RUN git clone --depth 1 --branch 0.1 https://github.com/golemfactory/docker-cgroups-stats.git /build +FROM golang:1.13.3 as stats-builder +RUN git clone --depth 1 --branch budget-control https://github.com/golemfactory/docker-cgroups-stats.git /build WORKDIR /build RUN go build -o docker-cgroups-stats main.go diff --git a/apps/wasm/environment.py b/apps/wasm/environment.py index 77d5dd764a..286f35ca1e 100644 --- a/apps/wasm/environment.py +++ b/apps/wasm/environment.py @@ -3,6 +3,6 @@ class WasmTaskEnvironment(DockerEnvironment): DOCKER_IMAGE = "golemfactory/wasm" - DOCKER_TAG = "0.5.3" + DOCKER_TAG = "0.5.4-dev" ENV_ID = "WASM" SHORT_DESCRIPTION = "WASM Sandbox" diff --git a/apps/wasm/resources/images/Dockerfile b/apps/wasm/resources/images/Dockerfile index 616fc2b061..b18dc86b65 100644 --- a/apps/wasm/resources/images/Dockerfile +++ b/apps/wasm/resources/images/Dockerfile @@ -12,7 +12,7 @@ ENV CXX=clang++-6.0 RUN cargo install --path . --root /usr RUN cargo clean -FROM golemfactory/base:1.7 +FROM golemfactory/base:1.8-dev WORKDIR / COPY --from=builder /usr/bin/wasm-sandbox / COPY scripts/ /golem/scripts/ diff --git a/golem/docker/job.py b/golem/docker/job.py index ac1db62741..29f079bbd8 100644 --- a/golem/docker/job.py +++ b/golem/docker/job.py @@ -157,7 +157,7 @@ def _prepare(self): self.resources_dir, self.output_dir, self.stats_dir) def _build_stats_entrypoint(self) -> str: - return f'docker-cgroups-stats -o {self.STATS_DIR}/{self.STATS_FILE} ' \ + return f'docker-cgroups-stats -b 1 -o {self.STATS_DIR}/{self.STATS_FILE} ' \ + self.entrypoint def _cleanup(self): diff --git a/golem/task/taskcomputer.py b/golem/task/taskcomputer.py index 70f4c81386..1e1b5804a6 100644 --- a/golem/task/taskcomputer.py +++ b/golem/task/taskcomputer.py @@ -657,6 +657,7 @@ def start_computation(self) -> None: # pylint: disable=too-many-locals return deadline = min(task_header.deadline, subtask_deadline) + subtask_budget = task_header.subtask_budget # TODO stuff task_timeout = deadline_to_timeout(deadline) unique_str = str(uuid.uuid4()) diff --git a/requirements.txt b/requirements.txt index 2ce3ee47c6..83aa5ba1b7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -38,7 +38,7 @@ eth-utils==1.0.3 ethereum==1.6.1 eventlet==0.24.1 fs==2.4.4 -Golem-Messages==3.13.0 +Golem-Messages==3.14.0 Golem-Smart-Contracts-Interface==1.10.3 golem_task_api==0.21.0 greenlet==0.4.15 From 694fe3f15ab201ea770b899bbf40fd7c1458d17a Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Mon, 4 Nov 2019 16:53:43 +0100 Subject: [PATCH 02/10] Added passing budget to docker-cgroups-stats --- golem/docker/job.py | 7 +++++-- golem/docker/task_thread.py | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/golem/docker/job.py b/golem/docker/job.py index 29f079bbd8..3ce5e151b2 100644 --- a/golem/docker/job.py +++ b/golem/docker/job.py @@ -72,6 +72,7 @@ def __init__(self, work_dir: str, output_dir: str, stats_dir: str, + cpu_budget: int, volumes: Optional[Iterable[str]] = None, environment: Optional[dict] = None, host_config: Optional[Dict] = None, @@ -123,6 +124,8 @@ def __init__(self, self.logging_thread = None self.stop_logging_thread = False + self.cpu_budget = cpu_budget + def _prepare(self): self.work_dir_mod = self._host_dir_chmod(self.work_dir, "rw") self.resources_dir_mod = self._host_dir_chmod(self.resources_dir, "rw") @@ -157,8 +160,8 @@ def _prepare(self): self.resources_dir, self.output_dir, self.stats_dir) def _build_stats_entrypoint(self) -> str: - return f'docker-cgroups-stats -b 1 -o {self.STATS_DIR}/{self.STATS_FILE} ' \ - + self.entrypoint + return f'docker-cgroups-stats -b {self.cpu_budget} ' \ + f'-o {self.STATS_DIR}/{self.STATS_FILE} ' + self.entrypoint def _cleanup(self): if self.container: diff --git a/golem/docker/task_thread.py b/golem/docker/task_thread.py index 7e2c42220b..44f280ea6a 100644 --- a/golem/docker/task_thread.py +++ b/golem/docker/task_thread.py @@ -75,6 +75,7 @@ def __init__(self, # pylint: disable=too-many-arguments extra_data: Dict, dir_mapping: DockerDirMapping, timeout: int, + cpu_budget: int, check_mem: bool = False) -> None: if not docker_images: @@ -98,6 +99,7 @@ def __init__(self, # pylint: disable=too-many-arguments self.job: Optional[DockerJob] = None self.check_mem = check_mem self.dir_mapping = dir_mapping + self.cpu_budget = cpu_budget # pylint:disable=too-many-arguments @staticmethod @@ -199,7 +201,8 @@ def _run_docker_job(self) -> Optional[int]: stats_dir=str(self.dir_mapping.stats), volumes=volumes, environment=environment, - host_config=host_config + host_config=host_config, + cpu_budget=self.cpu_budget ) with DockerJob(**params) as job, MemoryChecker(self.check_mem) as mc: From 870c3ee452007051d6341b20e86682d5dcbc1129 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Mon, 4 Nov 2019 18:10:31 +0100 Subject: [PATCH 03/10] Renamed CPU budget to limit in computation internals --- golem/docker/job.py | 6 +++--- golem/docker/task_thread.py | 6 +++--- golem/task/taskcomputer.py | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/golem/docker/job.py b/golem/docker/job.py index 3ce5e151b2..2dd78ebfb3 100644 --- a/golem/docker/job.py +++ b/golem/docker/job.py @@ -72,7 +72,7 @@ def __init__(self, work_dir: str, output_dir: str, stats_dir: str, - cpu_budget: int, + cpu_limit: int, volumes: Optional[Iterable[str]] = None, environment: Optional[dict] = None, host_config: Optional[Dict] = None, @@ -124,7 +124,7 @@ def __init__(self, self.logging_thread = None self.stop_logging_thread = False - self.cpu_budget = cpu_budget + self.cpu_limit = cpu_limit def _prepare(self): self.work_dir_mod = self._host_dir_chmod(self.work_dir, "rw") @@ -160,7 +160,7 @@ def _prepare(self): self.resources_dir, self.output_dir, self.stats_dir) def _build_stats_entrypoint(self) -> str: - return f'docker-cgroups-stats -b {self.cpu_budget} ' \ + return f'docker-cgroups-stats -l {self.cpu_limit} ' \ f'-o {self.STATS_DIR}/{self.STATS_FILE} ' + self.entrypoint def _cleanup(self): diff --git a/golem/docker/task_thread.py b/golem/docker/task_thread.py index 44f280ea6a..c9062acaeb 100644 --- a/golem/docker/task_thread.py +++ b/golem/docker/task_thread.py @@ -75,7 +75,7 @@ def __init__(self, # pylint: disable=too-many-arguments extra_data: Dict, dir_mapping: DockerDirMapping, timeout: int, - cpu_budget: int, + cpu_limit: int, check_mem: bool = False) -> None: if not docker_images: @@ -99,7 +99,7 @@ def __init__(self, # pylint: disable=too-many-arguments self.job: Optional[DockerJob] = None self.check_mem = check_mem self.dir_mapping = dir_mapping - self.cpu_budget = cpu_budget + self.cpu_limit = cpu_limit # pylint:disable=too-many-arguments @staticmethod @@ -202,7 +202,7 @@ def _run_docker_job(self) -> Optional[int]: volumes=volumes, environment=environment, host_config=host_config, - cpu_budget=self.cpu_budget + cpu_limit=self.cpu_limit ) with DockerJob(**params) as job, MemoryChecker(self.check_mem) as mc: diff --git a/golem/task/taskcomputer.py b/golem/task/taskcomputer.py index 1e1b5804a6..d94e7688cc 100644 --- a/golem/task/taskcomputer.py +++ b/golem/task/taskcomputer.py @@ -657,7 +657,7 @@ def start_computation(self) -> None: # pylint: disable=too-many-locals return deadline = min(task_header.deadline, subtask_deadline) - subtask_budget = task_header.subtask_budget # TODO stuff + cpu_limit = task_header.subtask_budget task_timeout = deadline_to_timeout(deadline) unique_str = str(uuid.uuid4()) @@ -680,7 +680,7 @@ def start_computation(self) -> None: # pylint: disable=too-many-locals dir_mapping = DockerTaskThread.generate_dir_mapping(resource_dir, temp_dir) tt = DockerTaskThread(docker_images, extra_data, - dir_mapping, task_timeout) + dir_mapping, task_timeout, cpu_limit) elif self.support_direct_computation: tt = PyTaskThread(extra_data, resource_dir, temp_dir, task_timeout) From 3161dbbf11d67cfd2b4bb5c84251ca94ae443866 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Tue, 5 Nov 2019 11:04:16 +0100 Subject: [PATCH 04/10] Updated golem-messages in frozen requirements --- requirements_to-freeze.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements_to-freeze.txt b/requirements_to-freeze.txt index b928324f26..58ff91422c 100644 --- a/requirements_to-freeze.txt +++ b/requirements_to-freeze.txt @@ -18,7 +18,7 @@ docker==3.5.0 enforce==0.3.4 eth-utils==1.0.3 ethereum==1.6.1 -Golem-Messages==3.13.0 +Golem-Messages==3.14.0 Golem-Smart-Contracts-Interface==1.10.3 golem_task_api==0.21.0 html2text==2018.1.9 From 07403a698c6205f00dd551ecab7f4301c73939d3 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Tue, 5 Nov 2019 17:09:13 +0100 Subject: [PATCH 05/10] Updated Docker image tags --- apps/core/resources/images/base.Dockerfile | 2 +- apps/wasm/environment.py | 2 +- apps/wasm/resources/images/Dockerfile | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/core/resources/images/base.Dockerfile b/apps/core/resources/images/base.Dockerfile index a4ad58eecb..f7b19e3eb0 100644 --- a/apps/core/resources/images/base.Dockerfile +++ b/apps/core/resources/images/base.Dockerfile @@ -2,7 +2,7 @@ # Installs python and sets up directories for Golem tasks. FROM golang:1.13.3 as stats-builder -RUN git clone --depth 1 --branch budget-control https://github.com/golemfactory/docker-cgroups-stats.git /build +RUN git clone --depth 1 --branch 0.2.0 https://github.com/golemfactory/docker-cgroups-stats.git /build WORKDIR /build RUN go build -o docker-cgroups-stats main.go diff --git a/apps/wasm/environment.py b/apps/wasm/environment.py index 286f35ca1e..3dad54f237 100644 --- a/apps/wasm/environment.py +++ b/apps/wasm/environment.py @@ -3,6 +3,6 @@ class WasmTaskEnvironment(DockerEnvironment): DOCKER_IMAGE = "golemfactory/wasm" - DOCKER_TAG = "0.5.4-dev" + DOCKER_TAG = "0.5.4" ENV_ID = "WASM" SHORT_DESCRIPTION = "WASM Sandbox" diff --git a/apps/wasm/resources/images/Dockerfile b/apps/wasm/resources/images/Dockerfile index b18dc86b65..6fd0091d89 100644 --- a/apps/wasm/resources/images/Dockerfile +++ b/apps/wasm/resources/images/Dockerfile @@ -12,7 +12,7 @@ ENV CXX=clang++-6.0 RUN cargo install --path . --root /usr RUN cargo clean -FROM golemfactory/base:1.8-dev +FROM golemfactory/base:1.8 WORKDIR / COPY --from=builder /usr/bin/wasm-sandbox / COPY scripts/ /golem/scripts/ From f120f6872733dd26f61cb285c26895df1866bdc6 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Wed, 6 Nov 2019 11:36:47 +0100 Subject: [PATCH 06/10] Changed cpu_limit to be optional --- golem/docker/job.py | 5 +++-- golem/docker/task_thread.py | 2 +- golem/task/localcomputer.py | 9 +++++---- golem/testutils_app_integration.py | 11 +++++++---- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/golem/docker/job.py b/golem/docker/job.py index 2dd78ebfb3..ea392ab67e 100644 --- a/golem/docker/job.py +++ b/golem/docker/job.py @@ -72,7 +72,7 @@ def __init__(self, work_dir: str, output_dir: str, stats_dir: str, - cpu_limit: int, + cpu_limit: Optional[int], volumes: Optional[Iterable[str]] = None, environment: Optional[dict] = None, host_config: Optional[Dict] = None, @@ -160,7 +160,8 @@ def _prepare(self): self.resources_dir, self.output_dir, self.stats_dir) def _build_stats_entrypoint(self) -> str: - return f'docker-cgroups-stats -l {self.cpu_limit} ' \ + limit = f'-l {self.cpu_limit} ' if self.cpu_limit else '' + return f'docker-cgroups-stats {limit}' \ f'-o {self.STATS_DIR}/{self.STATS_FILE} ' + self.entrypoint def _cleanup(self): diff --git a/golem/docker/task_thread.py b/golem/docker/task_thread.py index c9062acaeb..baf3b2ae3f 100644 --- a/golem/docker/task_thread.py +++ b/golem/docker/task_thread.py @@ -75,7 +75,7 @@ def __init__(self, # pylint: disable=too-many-arguments extra_data: Dict, dir_mapping: DockerDirMapping, timeout: int, - cpu_limit: int, + cpu_limit: Optional[int], check_mem: bool = False) -> None: if not docker_images: diff --git a/golem/task/localcomputer.py b/golem/task/localcomputer.py index dc859f4d70..464aabedb1 100644 --- a/golem/task/localcomputer.py +++ b/golem/task/localcomputer.py @@ -184,11 +184,12 @@ def _get_task_thread(self, ctd: ComputeTaskDef) -> DockerTaskThread: temporary=self.tmp_dir, ) return DockerTaskThread( - ctd['docker_images'], - ctd['extra_data'], - dir_mapping, - 0, + docker_images=ctd['docker_images'], + extra_data=ctd['extra_data'], + dir_mapping=dir_mapping, + timeout=0, check_mem=self.check_mem, + cpu_limit=None ) diff --git a/golem/testutils_app_integration.py b/golem/testutils_app_integration.py index d8b334be42..d399f39ea3 100644 --- a/golem/testutils_app_integration.py +++ b/golem/testutils_app_integration.py @@ -242,10 +242,13 @@ def _run_test_job(self, task, root_dir, params): env = task.ENVIRONMENT_CLASS image = DockerImage(repository=env.DOCKER_IMAGE, tag=env.DOCKER_TAG) - dtt = DockerTaskThread(docker_images=[image], - extra_data=params, - dir_mapping=dir_mapping, - timeout=task.task_definition.subtask_timeout) + dtt = DockerTaskThread( + docker_images=[image], + extra_data=params, + dir_mapping=dir_mapping, + timeout=task.task_definition.subtask_timeout, + cpu_limit=None + ) logger.info("Running docker image {} on mock provider".format(image)) From f6f3e04aa146b2e2818e8451457d79130be6d4e1 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Wed, 6 Nov 2019 11:37:05 +0100 Subject: [PATCH 07/10] Added unit tests for building stats entrypoint --- tests/golem/docker/test_docker_job.py | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/tests/golem/docker/test_docker_job.py b/tests/golem/docker/test_docker_job.py index 908180c367..7aa9ea3bbe 100644 --- a/tests/golem/docker/test_docker_job.py +++ b/tests/golem/docker/test_docker_job.py @@ -61,7 +61,7 @@ def testDockerJobInit(self): DockerJob(None, "scr", [], '/var/lib/resources/', '/var/lib/work', '/var/lib/out') job = DockerJob(self.image, self.TEST_SCRIPT, None, self.resources_dir, - self.work_dir, self.output_dir, self.stats_dir) + self.work_dir, self.output_dir, self.stats_dir, None) self.assertEqual(job.image, self.image) parameters = {'OUTPUT_DIR': '/golem/output', @@ -93,7 +93,7 @@ def tearDown(self): if self.test_dir: shutil.rmtree(self.test_dir) - def _create_test_job(self, script=TEST_SCRIPT, params=None): + def _create_test_job(self, script=TEST_SCRIPT, params=None, cpu_limit=None): self.test_job = DockerJob( image=self.image, entrypoint=f'python3 {script}', @@ -121,7 +121,8 @@ def _create_test_job(self, script=TEST_SCRIPT, params=None): "mode": "rw" } } - }) + }, + cpu_limit=cpu_limit) return self.test_job @@ -279,6 +280,24 @@ def test_logs_stderr(self): print(line) self.assertTrue(line.find("python3: can't open file") != -1) + def test_stats_entrypoint_no_limit(self): + with self._create_test_job(script='/non/existent') as job: + stats_entrypoint = job._build_stats_entrypoint() + self.assertEqual( + stats_entrypoint, + 'docker-cgroups-stats ' + '-o /golem/stats/stats.json python3 /non/existent' + ) + + def test_stats_entrypoint_with_limit(self): + with self._create_test_job(script='/non/existent', cpu_limit=1) as job: + stats_entrypoint = job._build_stats_entrypoint() + self.assertEqual( + stats_entrypoint, + 'docker-cgroups-stats ' + '-l 1 -o /golem/stats/stats.json python3 /non/existent' + ) + def test_wait_timeout(self): src = "import time\ntime.sleep(10)\n" with open(path.join(self.resources_dir, "custom.py"), "w") as f: From 706cdff9cbab4fc18ee58f397460d1809b0d8e98 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Wed, 6 Nov 2019 11:41:43 +0100 Subject: [PATCH 08/10] Removed changes to base Dockerfile --- apps/core/resources/images/base.Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/core/resources/images/base.Dockerfile b/apps/core/resources/images/base.Dockerfile index f7b19e3eb0..8f2beb2561 100644 --- a/apps/core/resources/images/base.Dockerfile +++ b/apps/core/resources/images/base.Dockerfile @@ -1,8 +1,8 @@ # Dockerfile for a base image for computing tasks in Golem. # Installs python and sets up directories for Golem tasks. -FROM golang:1.13.3 as stats-builder -RUN git clone --depth 1 --branch 0.2.0 https://github.com/golemfactory/docker-cgroups-stats.git /build +FROM golang:1.12.7 as stats-builder +RUN git clone --depth 1 --branch 0.1 https://github.com/golemfactory/docker-cgroups-stats.git /build WORKDIR /build RUN go build -o docker-cgroups-stats main.go From b9d4b5cb753de62cde5e0f3679d94a62f93f15e6 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Wed, 6 Nov 2019 11:56:13 +0100 Subject: [PATCH 09/10] Added default value to cpu_limit --- golem/docker/job.py | 2 +- golem/docker/task_thread.py | 2 +- golem/task/localcomputer.py | 1 - golem/testutils_app_integration.py | 4 +--- tests/golem/docker/test_docker_job.py | 2 +- 5 files changed, 4 insertions(+), 7 deletions(-) diff --git a/golem/docker/job.py b/golem/docker/job.py index ea392ab67e..677f0cac3d 100644 --- a/golem/docker/job.py +++ b/golem/docker/job.py @@ -72,7 +72,7 @@ def __init__(self, work_dir: str, output_dir: str, stats_dir: str, - cpu_limit: Optional[int], + cpu_limit: Optional[int] = None, volumes: Optional[Iterable[str]] = None, environment: Optional[dict] = None, host_config: Optional[Dict] = None, diff --git a/golem/docker/task_thread.py b/golem/docker/task_thread.py index baf3b2ae3f..3e75390aaf 100644 --- a/golem/docker/task_thread.py +++ b/golem/docker/task_thread.py @@ -75,7 +75,7 @@ def __init__(self, # pylint: disable=too-many-arguments extra_data: Dict, dir_mapping: DockerDirMapping, timeout: int, - cpu_limit: Optional[int], + cpu_limit: Optional[int] = None, check_mem: bool = False) -> None: if not docker_images: diff --git a/golem/task/localcomputer.py b/golem/task/localcomputer.py index 464aabedb1..b0a68037c9 100644 --- a/golem/task/localcomputer.py +++ b/golem/task/localcomputer.py @@ -189,7 +189,6 @@ def _get_task_thread(self, ctd: ComputeTaskDef) -> DockerTaskThread: dir_mapping=dir_mapping, timeout=0, check_mem=self.check_mem, - cpu_limit=None ) diff --git a/golem/testutils_app_integration.py b/golem/testutils_app_integration.py index d399f39ea3..4c0fabb667 100644 --- a/golem/testutils_app_integration.py +++ b/golem/testutils_app_integration.py @@ -246,9 +246,7 @@ def _run_test_job(self, task, root_dir, params): docker_images=[image], extra_data=params, dir_mapping=dir_mapping, - timeout=task.task_definition.subtask_timeout, - cpu_limit=None - ) + timeout=task.task_definition.subtask_timeout) logger.info("Running docker image {} on mock provider".format(image)) diff --git a/tests/golem/docker/test_docker_job.py b/tests/golem/docker/test_docker_job.py index 7aa9ea3bbe..ca25c7cd88 100644 --- a/tests/golem/docker/test_docker_job.py +++ b/tests/golem/docker/test_docker_job.py @@ -61,7 +61,7 @@ def testDockerJobInit(self): DockerJob(None, "scr", [], '/var/lib/resources/', '/var/lib/work', '/var/lib/out') job = DockerJob(self.image, self.TEST_SCRIPT, None, self.resources_dir, - self.work_dir, self.output_dir, self.stats_dir, None) + self.work_dir, self.output_dir, self.stats_dir) self.assertEqual(job.image, self.image) parameters = {'OUTPUT_DIR': '/golem/output', From ac0d5499a66472940bc5c622005e6204b0d2c0f3 Mon Sep 17 00:00:00 2001 From: Kuba Mazurek Date: Wed, 6 Nov 2019 11:58:02 +0100 Subject: [PATCH 10/10] Removed changes to wasm environment --- apps/wasm/environment.py | 2 +- apps/wasm/resources/images/Dockerfile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/wasm/environment.py b/apps/wasm/environment.py index 3dad54f237..77d5dd764a 100644 --- a/apps/wasm/environment.py +++ b/apps/wasm/environment.py @@ -3,6 +3,6 @@ class WasmTaskEnvironment(DockerEnvironment): DOCKER_IMAGE = "golemfactory/wasm" - DOCKER_TAG = "0.5.4" + DOCKER_TAG = "0.5.3" ENV_ID = "WASM" SHORT_DESCRIPTION = "WASM Sandbox" diff --git a/apps/wasm/resources/images/Dockerfile b/apps/wasm/resources/images/Dockerfile index 6fd0091d89..616fc2b061 100644 --- a/apps/wasm/resources/images/Dockerfile +++ b/apps/wasm/resources/images/Dockerfile @@ -12,7 +12,7 @@ ENV CXX=clang++-6.0 RUN cargo install --path . --root /usr RUN cargo clean -FROM golemfactory/base:1.8 +FROM golemfactory/base:1.7 WORKDIR / COPY --from=builder /usr/bin/wasm-sandbox / COPY scripts/ /golem/scripts/