diff --git a/addons/devcontainer.json b/addons/devcontainer.json index 787a1f5..a09af40 100644 --- a/addons/devcontainer.json +++ b/addons/devcontainer.json @@ -4,6 +4,8 @@ "appPort": ["7123:8123", "7357:4357"], "postStartCommand": "bash devcontainer_bootstrap", "runArgs": ["-e", "GIT_EDITOR=code --wait", "--privileged"], + "workspaceFolder": "/mnt/supervisor/addons/local/${localWorkspaceFolderBasename}", + "workspaceMount": "source=${localWorkspaceFolder},target=${containerWorkspaceFolder},type=bind,consistency=cached", "containerEnv": { "WORKSPACE_DIRECTORY": "${containerWorkspaceFolder}" }, diff --git a/addons/rootfs/usr/bin/devcontainer_bootstrap b/addons/rootfs/usr/bin/devcontainer_bootstrap index 0e828fe..63af31a 100644 --- a/addons/rootfs/usr/bin/devcontainer_bootstrap +++ b/addons/rootfs/usr/bin/devcontainer_bootstrap @@ -4,4 +4,12 @@ set -e bash /usr/bin/supervisor_bootstrap -exit 0 \ No newline at end of file +workspace_mount="/mnt/supervisor/addons/local/$(basename "${WORKSPACE_DIRECTORY:?}")" +if ! mountpoint -q "${workspace_mount}"; then + echo "WARNING: Mounting ${WORKSPACE_DIRECTORY} to ${workspace_mount}." >&2 + echo "To avoid this warning, see https://github.com/home-assistant/devcontainer/pull/135." >&2 + sudo mkdir -p "${workspace_mount}" + sudo mount --bind "${WORKSPACE_DIRECTORY}" "${workspace_mount}" +fi + +exit 0 diff --git a/addons/rootfs/usr/bin/supervisor_run b/addons/rootfs/usr/bin/supervisor_run index a652201..42da908 100755 --- a/addons/rootfs/usr/bin/supervisor_run +++ b/addons/rootfs/usr/bin/supervisor_run @@ -22,7 +22,6 @@ function run_supervisor() { -v /run/dbus:/run/dbus:ro \ -v /run/udev:/run/udev:ro \ -v /mnt/supervisor:/data:rw \ - -v "$WORKSPACE_DIRECTORY":/data/addons/local:rw \ -v /etc/machine-id:/etc/machine-id:ro \ -e SUPERVISOR_SHARE="/mnt/supervisor" \ -e SUPERVISOR_NAME=hassio_supervisor \