Skip to content

Allow use of package-import-method "copy" on deploy command #8816

Open
@GitHubUserDots04

Description

@GitHubUserDots04

Contribution

Describe the user story

As a developer, I would like to use deploy command that would result in a node_module without any hard links.

Describe the solution you'd like

Currently, when using the pnpm deploy command in projects with workspace:* dependencies, pnpm creates hard links for these dependencies. It can cause some issues in certain deployment scenarios where hard links are not desirable or supported.
After I deploy with the command, I need an extra step and re-copy all files from node_modules in order to ensure there's no hard links.
I have local workspace libraries shared between apps I need stand alone copies from them, to allow different encryption methods for my local packages.

This feature request proposes extending pnpm deploy with a new option that leverages the "copy" function to enable copying files instead of creating hard links, respecting the package-import-method setting.

At first seems an easy implementation:
releasing/plugin-commands-deploy/src/deploy.ts
The function copy project should listen from a given config.

The options could be given by cli command, or .npmrc config

Describe the drawbacks of your solution

Should have no drawbacks, as the would just add an option to the existing and solid process.

Describe alternatives you've considered

No alternative solution.
Extra step on my deployment process.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions