Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Feature envvars and action `env:` options aren't passed to `docker run`

Ouverte
#394 5 commentaires 0 réactions 1 personne assignée Voir sur GitHub

@v-Kaniska244 y travaille déjà.

Depuis le 1/8/2025.

Évaluation

Cette issue n'a pas encore été évaluée.

Description

It seems like envvars added by features and via the action's env: option aren't passed to docker run. VSCode does pass them to docker run. This is important for shell init scripts that expect the envvars to exist when the container is started.

Example of VSCode's behavior:

docker run --sig-proxy=false -a STDOUT -a STDERR \
  `# ...` \
  -e LANG=en_US.UTF-8 \
  -e NVIDIA_DISABLE_REQUIRE=true \
  -e CC=gcc \
  -e CXX=g++ \
  -e CUDAHOSTCXX=g++ \
  -e PYTHON_VERSION=3.13 \
  --entrypoint /bin/sh vsc-devcontainers-954e198c667c39268cc299cf82b04e5e1818c554baccfa2555269604372fc153-uid \
  -c echo Container started

devcontainers/ci behavior:

docker run --sig-proxy=false -a STDOUT -a STDERR \
  `# ...` \
  -e LANG=en_US.UTF-8 \
  -e NVIDIA_DISABLE_REQUIRE=true \
  -e PYTHON_VERSION=3.13 \
  --entrypoint /bin/sh vsc-devcontainers-4ec525fa91aa7d1bf05e336d30063cc11430f50413ea10c3c0d37f8fe16cb41b-uid \
  -c echo Container started

Digging into the difference between their devcontainer up commands, I see VSCode isn't using --remote-env anywhere:

devcontainer up \
  --user-data-folder /home/ptaylor/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data \
  --container-session-data-folder /tmp/devcontainers-5417b12b-bcd8-4a49-ab65-556b2e796a371751917899255 \
  --workspace-folder /home/ptaylor/dev/rapids/devcontainers \
  --workspace-mount-consistency cached \
  --gpu-availability detect \
  --id-label devcontainer.local_folder=/home/ptaylor/dev/rapids/devcontainers \
  --id-label devcontainer.config_file=/home/ptaylor/dev/rapids/devcontainers/.devcontainer/cuda12.9-pip/devcontainer.json \
  --log-level debug \
  --log-format json \
  --config /home/ptaylor/dev/rapids/devcontainers/.devcontainer/cuda12.9-pip/devcontainer.json \
  --default-user-env-probe loginInteractiveShell \
  --mount type=volume,source=vscode,target=/vscode,external=true \
  --skip-post-create \
  --update-remote-user-uid-default on \
  --mount-workspace-git-root \
  --include-configuration \
  --include-merged-configuration

However the devcontainers/ci action defines all the the envvars with --remote-env:

devcontainer up \
  --workspace-folder /home/runner/_work/devcontainers/devcontainers \
  --remote-env GITHUB_OUTPUT=/mnt/github/output \
  --remote-env GITHUB_ENV=/mnt/github/env \
  --remote-env GITHUB_PATH=/mnt/github/path \
  --remote-env GITHUB_STEP_SUMMARY=/mnt/github/step-summary \
  --config /home/runner/_work/devcontainers/devcontainers/.devcontainer/cuda12.9-conda/devcontainer.json \
  --mount type=bind,source=/home/runner/_work/_temp/_runner_file_commands/set_output_fe6df713-9b89-4697-b75c-89f6f821d7dd,target=/mnt/github/output \
  --mount type=bind,source=/home/runner/_work/_temp/_runner_file_commands/set_env_fe6df713-9b89-4697-b75c-89f6f821d7dd,target=/mnt/github/env \
  --mount type=bind,source=/home/runner/_work/_temp/_runner_file_commands/add_path_fe6df713-9b89-4697-b75c-89f6f821d7dd,target=/mnt/github/path \
  --mount type=bind,source=/home/runner/_work/_temp/_runner_file_commands/step_summary_fe6df713-9b89-4697-b75c-89f6f821d7dd,target=/mnt/github/step-summary

What do --include-configuration and/or --include-merged-configuration do? Would adding them fix this behavior in the devcontainers/ci action?

Langage dominant
TypeScript
Étoiles
503
Forks
102
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ouvrir dans Codespaces

Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de devcontainers/ci

Toutes les issues de devcontainers/ci

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.