Feature envvars and action `env:` options aren't passed to `docker run`
@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
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de devcontainers/ci
-
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
devcontainers/ci#446 ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
devcontainers/ci#445 ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
devcontainers/ci#444 · 4 commentaires · 3 réactions ·
-
Inputs are wrong in post step when action is called through a nested composite actionPeut-être pris @v-Kaniska244 l’a pris il y a 74 jours. Ouverte
devcontainers/ci#442 · 1 personne assignée ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
devcontainers/ci#437 ·
Toutes les issues de devcontainers/ci
Issues similaires
-
"Contains" page watch never matches when its text has a trailing spacePeut-être pris @RaphaelFakhri l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
CopilotKit/openmuse#184 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100
bootstrap-vue-next/bootstrap-vue-next#3357 ·
Les mainteneurs répondent en général sous 1 jour
-
[quality] tide.ts: six mutation survivors in the merge-queue gate, draft refusal, fork-403 workflow-file diagnosis and getPull's fork flag are unpinned by any testPeut-être pris @hivecommons-hive l’a pris aujourd’hui. Ouverteagent/quality needs-kind stage/040-covered-by-pr testing
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
cncf/prow-github-actions#517 · 1 commentaire ·
Les mainteneurs répondent en général sous 2 jours
-
Unsampled pageload span is profiled when profileLifecycle is 'trace' (browser UI profiling)Peut-être pris @Jxxunnn l’a pris aujourd’hui. OuverteBrowser Waiting for: Product Owner
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
getsentry/sentry-javascript#25497 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour