mirror of
https://github.com/jupyter/docker-stacks.git
synced 2025-10-17 23:12:56 +00:00
[FAST_BUILD] Test unset in run-hooks (#2022)
This commit is contained in:
6
tests/docker-stacks-foundation/run-hooks-unset/a.sh
Normal file
6
tests/docker-stacks-foundation/run-hooks-unset/a.sh
Normal file
@@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
# Copyright (c) Jupyter Development Team.
|
||||
# Distributed under the terms of the Modified BSD License.
|
||||
|
||||
export MY_VAR=123
|
||||
echo "Inside a.sh MY_VAR variable has ${MY_VAR} value"
|
7
tests/docker-stacks-foundation/run-hooks-unset/b.sh
Normal file
7
tests/docker-stacks-foundation/run-hooks-unset/b.sh
Normal file
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
# Copyright (c) Jupyter Development Team.
|
||||
# Distributed under the terms of the Modified BSD License.
|
||||
|
||||
echo "Inside b.sh MY_VAR variable has ${MY_VAR} value"
|
||||
echo "Unsetting MY_VAR"
|
||||
unset MY_VAR
|
5
tests/docker-stacks-foundation/run-hooks-unset/c.sh
Normal file
5
tests/docker-stacks-foundation/run-hooks-unset/c.sh
Normal file
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
# Copyright (c) Jupyter Development Team.
|
||||
# Distributed under the terms of the Modified BSD License.
|
||||
|
||||
echo "Inside c.sh MY_VAR variable has ${MY_VAR} value"
|
@@ -127,3 +127,25 @@ def test_run_hooks_with_failures(container: TrackedContainer) -> None:
|
||||
)
|
||||
|
||||
assert "OTHER_VAR=456" in logs
|
||||
|
||||
|
||||
def test_run_hooks_unset(container: TrackedContainer) -> None:
|
||||
host_data_dir = THIS_DIR / "run-hooks-unset"
|
||||
cont_data_dir = "/home/jovyan/data"
|
||||
# https://forums.docker.com/t/all-files-appear-as-executable-in-file-paths-using-bind-mount/99921
|
||||
# Unfortunately, Docker treats all files in mounter dir as executable files
|
||||
# So we make a copy of mounted dir inside a container
|
||||
command = (
|
||||
"cp -r /home/jovyan/data/ /home/jovyan/data-copy/ &&"
|
||||
"source /usr/local/bin/run-hooks.sh /home/jovyan/data-copy/"
|
||||
)
|
||||
logs = container.run_and_wait(
|
||||
timeout=5,
|
||||
volumes={str(host_data_dir): {"bind": cont_data_dir, "mode": "ro"}},
|
||||
tty=True,
|
||||
command=["bash", "-c", command],
|
||||
)
|
||||
assert "Inside a.sh MY_VAR variable has 123 value" in logs
|
||||
assert "Inside b.sh MY_VAR variable has 123 value" in logs
|
||||
assert "Unsetting MY_VAR" in logs
|
||||
assert "Inside c.sh MY_VAR variable has value" in logs
|
||||
|
Reference in New Issue
Block a user