René's URL Explorer Experiment


Title: feat(cli): trust an extra CA bundle in builds and the container by aledbf · Pull Request #57 · spin-stack/devcontainer-cli · GitHub

Open Graph Title: feat(cli): trust an extra CA bundle in builds and the container by aledbf · Pull Request #57 · spin-stack/devcontainer-cli

X Title: feat(cli): trust an extra CA bundle in builds and the container by aledbf · Pull Request #57 · spin-stack/devcontainer-cli

Description: --ca-bundle on build, up and run-user-commands, plus the tests #50 asks for around secrets on tmpfs. Closes #50 Builds Every Feature install RUN mounts the bundle as the BuildKit secret devcontainer-ca-bundle at /run/devcontainer/ca-bundle.crt. install.sh runs with SSL_CERT_FILE, NODE_EXTRA_CA_CERTS, REQUESTS_CA_BUNDLE, CURL_CA_BUNDLE and GIT_SSL_CAINFO pointing at it, and the variables apply to that RUN only, never as an ENV. A user Dockerfile gets the same secret id (--secret id=devcontainer-ca-bundle,src=) and opts in with RUN --mount=type=secret,.... This is documented in docs/go-only-features.md. Without buildx the bundle is left out of the build with a warning, as --secrets-file is. A Compose configuration's docker compose build takes no secrets, so it also gets a warning. Container up bind-mounts the file read-only at the same path and sets the five variables over the configuration's containerEnv. This covers both single containers and Compose services. run-user-commands sets the variables for the lifecycle commands. A container created without the mount is refused, because a running container cannot take a new mount. Never copied The e2e test scans the layers and config of the built image (history and labels included) for the CA's body and for the file. It finds neither. A rebuild with a different CA's bundle passes only from cache and produces the same layers. One thing does change: a build with the flag differs from one without it in the Feature RUN text (the secret mount and the variables), so those two builds don't share cache. Also in this change up --secrets-file now reaches the user Dockerfile's RUNs. It reached only the Features' before, which contradicted the issue's item 3. Tests for DOCKER_CONFIG outside $HOME with a symlinked config.json, and for the bridged build auth being written under TMPDIR (documented). The flag is in the flag inventory and in DIVERGENCES. Tests Unit: the generated Feature RUNs, buildx file secrets, flag validation (a file with no PEM certificate is refused), the env merge, the Compose override and its warning, DOCKER_CONFIG off $HOME. e2e, against a real TLS server container signed by a test CA: TestE2E_CABundle: a Feature RUN and an opted-in Dockerfile RUN fail without the flag and pass with it. In the container, curl, node and postCreateCommand trust the server. The mount is read-only. run-user-commands is refused on a container without the bundle. TestE2E_UpSecretsFile: the value reaches a Dockerfile RUN and postCreateCommand, and it is absent from the layers, docker history and the container's inspect. 🤖 Generated with Claude Code

Open Graph Description: --ca-bundle <file> on build, up and run-user-commands, plus the tests #50 asks for around secrets on tmpfs. Closes #50 Builds Every Feature install RUN mounts the bundle as the BuildKit secr...

X Description: --ca-bundle &lt;file&gt; on build, up and run-user-commands, plus the tests #50 asks for around secrets on tmpfs. Closes #50 Builds Every Feature install RUN mounts the bundle as the Build...

Opengraph URL: https://github.com/spin-stack/devcontainer-cli/pull/57

X: @github

direct link

Domain: github.com

react-profiling0
react-import-mapreact,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf
route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:9ddf551d-61e2-cfab-94a0-df1cbb2ba0d0
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idBFB0:3EF3E:5849F3:7C1F24:6AF71F19
html-safe-nonce5f9872aafa738ccd9d8217d5724f8d6236bbcefa04c1aae799ec1093a9c5e391
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCRkIwOjNFRjNFOjU4NDlGMzo3QzFGMjQ6NkFGNzFGMTkiLCJ2aXNpdG9yX2lkIjoiMTg5MDc2NDM3MDY1NjgyOTIwOSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmacc1030d5cf6a45abeda1d017666a129bab751f95ccc0a9d4004469509a2ec2243
hovercard-subject-tagpull_request:5283965014
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/spin-stack/devcontainer-cli/pull/57/files
twitter:imagehttps://avatars.githubusercontent.com/u/161571?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/161571?s=400&v=4
og:image:alt--ca-bundle <file> on build, up and run-user-commands, plus the tests #50 asks for around secrets on tmpfs. Closes #50 Builds Every Feature install RUN mounts the bundle as the BuildKit secr...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None24029fae934b29fd2bf68c26391ed86bbe5d97a3eab6831409e0b6f4058303c6
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/spin-stack/devcontainer-cli git https://github.com/spin-stack/devcontainer-cli.git
octolytics-dimension-user_id253817182
octolytics-dimension-user_loginspin-stack
octolytics-dimension-repository_id1297553254
octolytics-dimension-repository_nwospin-stack/devcontainer-cli
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1297553254
octolytics-dimension-repository_network_root_nwospin-stack/devcontainer-cli
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release437496c6e2e8dce07e08e315aa63df12d8d328ce
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/spin-stack/devcontainer-cli/pull/57/files#start-of-content
https://github.com/
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fspin-stack%2Fdevcontainer-cli%2Fpull%2F57%2Ffiles
GitHubRepository hosting, code review, and collaborationhttps://github.com/platform
CopilotAI coding agent for tasks, projects, and automated workhttps://github.com/features/copilot
ActionsCI/CD and automationhttps://github.com/features/actions
Code QualityQuality analysis, fixes, and enforcementhttps://github.com/features/code-quality
CodespacesCloud development environmentshttps://github.com/features/codespaces
Code SecurityVulnerability detection and remediationhttps://github.com/security/advanced-security/code-security
Secret ProtectionSecret scanning and leak preventionhttps://github.com/security/advanced-security/secret-protection
All Featureshttps://github.com/features
Documentationhttps://docs.github.com/en
Traininghttps://learn.github.com/skills
Certificationshttps://learn.github.com/credentials
Build with Copilothttps://github.com/features/ai
Customize Copilothttps://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/customize-copilot-overview
Integrationshttps://github.com/marketplace
Trending reposhttps://github.com/trending
GitHub Sponsorshttps://github.com/open-source/sponsors
Developer articleshttps://github.com/resources/articles
ChangelogYour source for the latest features, improvements, and fixes across GitHub products, all in one place.https://github.blog/changelog/
Enterpriseshttps://github.com/enterprise
Teamhttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
See all industrieshttps://github.com/solutions/industry
Why GitHubhttps://github.com/why-github
Customer Storieshttps://github.com/customer-stories
Business insightshttps://github.com/solutions/executive-insights
Trust Centerhttps://github.com/trust-center
GitHub Advanced SecurityEnterprise-grade code securityhttps://github.com/security/advanced-security
Copilot for businessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Documentationhttps://docs.github.com/en
Resource centerhttps://github.com/resources
Bloghttps://github.blog/
Events & webinarshttps://github.com/resources/events
Community Forumhttps://github.com/orgs/community/discussions
Customer Storieshttps://github.com/customer-stories
Integrationshttps://github.com/marketplace
Customer supporthttps://help.github.com/
Traininghttps://learn.github.com/skills
GitHub Statushttps://www.githubstatus.com/
Abouthttps://github.com/about
Partnershttps://github.com/partners
Changeloghttps://github.blog/changelog/
GitHub UniverseThe event for developers, by developers — talks, workshops, and what’s next for GitHub.https://githubuniverse.com/
Pricinghttps://github.com/pricing
Sign inhttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fspin-stack%2Fdevcontainer-cli%2Fpull%2F57%2Ffiles
Sign uphttps://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=spin-stack%2Fdevcontainer-cli
Reloadhttps://github.com/spin-stack/devcontainer-cli/pull/57/files
Reloadhttps://github.com/spin-stack/devcontainer-cli/pull/57/files
Reloadhttps://github.com/spin-stack/devcontainer-cli/pull/57/files
spin-stackhttps://github.com/spin-stack
devcontainer-clihttps://github.com/spin-stack/devcontainer-cli
Codehttps://github.com/spin-stack/devcontainer-cli
Issueshttps://github.com/spin-stack/devcontainer-cli/issues
Pull requests1 (1)https://github.com/spin-stack/devcontainer-cli/pulls
Actionshttps://github.com/spin-stack/devcontainer-cli/actions
Security and qualityhttps://github.com/spin-stack/devcontainer-cli/security
Insightshttps://github.com/spin-stack/devcontainer-cli/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fspin-stack%2Fdevcontainer-cli%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fspin-stack%2Fdevcontainer-cli%2Fissues%2Fnew%2Fchoose
aledbfhttps://github.com/aledbf
mainhttps://github.com/spin-stack/devcontainer-cli/tree/main
ca-bundlehttps://github.com/spin-stack/devcontainer-cli/tree/ca-bundle
Conversation 0 https://github.com/spin-stack/devcontainer-cli/pull/57
Commits 3 https://github.com/spin-stack/devcontainer-cli/pull/57/commits
Checks 13 https://github.com/spin-stack/devcontainer-cli/pull/57/checks
Files changed https://github.com/spin-stack/devcontainer-cli/pull/57/files
Please reload this pagehttps://github.com/spin-stack/devcontainer-cli/pull/57/files
feat(cli): trust an extra CA bundle in builds and the container https://github.com/spin-stack/devcontainer-cli/pull/57/files#top
Show all changes 3 commits https://github.com/spin-stack/devcontainer-cli/pull/57/files
156dd0e feat(cli): trust an extra CA bundle in builds and the container aledbf Nov 12, 2026 https://github.com/spin-stack/devcontainer-cli/pull/57/commits/156dd0e3bf5847068d4da3ce224d773b6d400299
9e909a2 test(cli): say why the CA bundle e2e TLS server has no address aledbf Nov 12, 2026 https://github.com/spin-stack/devcontainer-cli/pull/57/commits/9e909a242f2ad3e0de30a15e3beed91ef166fd38
06d7cd0 test(cli): read the TLS server's container id from stdout alone aledbf Nov 12, 2026 https://github.com/spin-stack/devcontainer-cli/pull/57/commits/06d7cd00a91bee335899b4870e764e65ef9ed7d0
Clear filters https://github.com/spin-stack/devcontainer-cli/pull/57/files
Please reload this pagehttps://github.com/spin-stack/devcontainer-cli/pull/57/files
Please reload this pagehttps://github.com/spin-stack/devcontainer-cli/pull/57/files
DIVERGENCES.md https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-bfb44e0d8e054a7f0ba0b5f0e563b3721feb1274535a93974cda8294990b640d
go-only-features.md https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-eb0475e51522c2378dd19f20f491848d2f43db51bf15aa6ca242dd5e54375538
cli-flags-inventory.yaml https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ef26fc8b83693de6623d757fdf22351a99c8900c36d9cd8c1dc6e50b3d0d89d9
build.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
ca_bundle.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-1b97b791c7d02bb762fc30f3e8cd0f2b6a82eec8eae1453774cc882c4734ee1a
ca_bundle_test.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-1d4dbb8af90610bf63bce7238dfb273da7fb60a4fdbb1ac8156be47530b288d9
compose_up.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-dbc523062af4a676a3d4f79a697a95b9f3f61129a4def517a66f83fb31acc1fb
compose_up_held_test.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-c6cf5847fea521a8f6b54ab36e22e891040f8948aafd1d7edee55a595d14d459
e2e_ca_bundle_test.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ee3780e0816e4470f011172b446285c5e9a85fb56227a26ce3ea6ea4d21ac558
feature_install.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-81ba00af4680e2756fc9816a79151abc1541143778a4f6478a27c22de87a2c6b
run_user_commands.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-a74bd290e9ac427d62878996767f3e91fc78c8a5e7a71882c108477eeb69a013
up.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e4159340a020b2901eae16cf8957d0bea9af63523ad9754862feb45a400e2190
client.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-2d19c8194afb71cf59b850c9e062ba33252ed30205cb370ab223a216c9352c8d
inline_cache_test.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-cac1e2009bc755277c024effe325a7c9c7494d7b0755f7fd9f993a624b88170d
extend.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-0377ffa9d88c8b8842ee272db561af2e68001adc6f953480acc262241f4da803
extend_test.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-3e6a9939fa8c98b3d9e6c7c54dcdc5169da0268eb77875eedf7f5abe14345bec
buildauth_test.go https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-9f1b9496ebf86065c5fd2683238db9687ab365001be42dec313bfa666729bc64
docs/DIVERGENCES.mdhttps://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-bfb44e0d8e054a7f0ba0b5f0e563b3721feb1274535a93974cda8294990b640d
View file https://github.com/spin-stack/devcontainer-cli/blob/06d7cd00a91bee335899b4870e764e65ef9ed7d0/docs/DIVERGENCES.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/spin-stack/devcontainer-cli/pull/57/{{ revealButtonHref }}
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-bfb44e0d8e054a7f0ba0b5f0e563b3721feb1274535a93974cda8294990b640d
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-bfb44e0d8e054a7f0ba0b5f0e563b3721feb1274535a93974cda8294990b640d
docs/go-only-features.mdhttps://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-eb0475e51522c2378dd19f20f491848d2f43db51bf15aa6ca242dd5e54375538
View file https://github.com/spin-stack/devcontainer-cli/blob/06d7cd00a91bee335899b4870e764e65ef9ed7d0/docs/go-only-features.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/spin-stack/devcontainer-cli/pull/57/{{ revealButtonHref }}
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-eb0475e51522c2378dd19f20f491848d2f43db51bf15aa6ca242dd5e54375538
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-eb0475e51522c2378dd19f20f491848d2f43db51bf15aa6ca242dd5e54375538
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-eb0475e51522c2378dd19f20f491848d2f43db51bf15aa6ca242dd5e54375538
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-eb0475e51522c2378dd19f20f491848d2f43db51bf15aa6ca242dd5e54375538
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-eb0475e51522c2378dd19f20f491848d2f43db51bf15aa6ca242dd5e54375538
docs/parity/cli-flags-inventory.yamlhttps://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ef26fc8b83693de6623d757fdf22351a99c8900c36d9cd8c1dc6e50b3d0d89d9
View file https://github.com/spin-stack/devcontainer-cli/blob/06d7cd00a91bee335899b4870e764e65ef9ed7d0/docs/parity/cli-flags-inventory.yaml
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/spin-stack/devcontainer-cli/pull/57/{{ revealButtonHref }}
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ef26fc8b83693de6623d757fdf22351a99c8900c36d9cd8c1dc6e50b3d0d89d9
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ef26fc8b83693de6623d757fdf22351a99c8900c36d9cd8c1dc6e50b3d0d89d9
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ef26fc8b83693de6623d757fdf22351a99c8900c36d9cd8c1dc6e50b3d0d89d9
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ef26fc8b83693de6623d757fdf22351a99c8900c36d9cd8c1dc6e50b3d0d89d9
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ef26fc8b83693de6623d757fdf22351a99c8900c36d9cd8c1dc6e50b3d0d89d9
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-ef26fc8b83693de6623d757fdf22351a99c8900c36d9cd8c1dc6e50b3d0d89d9
internal/cli/build.gohttps://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
View file https://github.com/spin-stack/devcontainer-cli/blob/06d7cd00a91bee335899b4870e764e65ef9ed7d0/internal/cli/build.go
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/spin-stack/devcontainer-cli/pull/57/{{ revealButtonHref }}
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
https://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-e5c5aee1b6ec3a6aeb2eb897d526ceadcb3d11b32b0beb145e3f33e5c7a11dd0
internal/cli/ca_bundle.gohttps://github.com/spin-stack/devcontainer-cli/pull/57/files#diff-1b97b791c7d02bb762fc30f3e8cd0f2b6a82eec8eae1453774cc882c4734ee1a
View file https://github.com/spin-stack/devcontainer-cli/blob/06d7cd00a91bee335899b4870e764e65ef9ed7d0/internal/cli/ca_bundle.go
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/spin-stack/devcontainer-cli/pull/57/{{ revealButtonHref }}
Please reload this pagehttps://github.com/spin-stack/devcontainer-cli/pull/57/files
Please reload this pagehttps://github.com/spin-stack/devcontainer-cli/pull/57/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.