Skip to content

Latest commit

 

History

History
51 lines (34 loc) · 1.88 KB

README.md

File metadata and controls

51 lines (34 loc) · 1.88 KB

ITplusX Dev Container Features

Custom Dev Container Features maintained by ITplusX.

Features

Feature Description
shared-pnpm-store Mounts shared Docker volumes as the pnpm store and package-manager store and sets PNPM_HOME via containerEnv. Never invokes pnpm.
omz-pnpm-plugin Installs the itplusx fork of the oh-my-zsh pnpm plugin, which respects a pre-set PNPM_HOME.

The former mount-pnpm-store feature has been removed. Use shared-pnpm-store instead.

Usage

"features": {
    "ghcr.io/itplusx/devcontainer-features/shared-pnpm-store:1.1.0": {},
    "ghcr.io/itplusx/devcontainer-features/omz-pnpm-plugin:1.0.1": {}
}

Repo structure

Based on the official devcontainers/feature-starter template:

  • src/<feature-id>/ — one directory per feature (devcontainer-feature.json + install scripts)
  • test/<feature-id>/ — tests, run with devcontainer features test -f <feature-id> .
  • .github/workflows/release.yaml — publishes all features to ghcr.io/itplusx/devcontainer-features/<feature-id> (manual workflow_dispatch)

Publishing

  1. Bump version in the feature's devcontainer-feature.json
  2. Merge to main
  3. Run the Release dev container features workflow (Actions tab)
  4. First publish only: set the GHCR package visibility to public

Testing locally

npm install -g @devcontainers/cli
devcontainer features test -f shared-pnpm-store --skip-autogenerated .

Acknowledgements

The initial implementation of shared-pnpm-store was developed locally by @schloram. Thanks! 🙌

License

MIT — see LICENSE.