Publish Artifact
The Publish command pushes artifacts created by the build command to a npm registry and also provides you functionality to tag a version of the artifact in your git repository.
Publishing to an NPM-Compatible Private Registry
To publish packages to your private registry, you'll need to configure your credentials accordingly. Follow the guidelines provided by your registry's service to ensure a smooth setup.
Locate Documentation: Jump into your private registry provider's documentation or help center.
Credentials Setup: Find the section dedicated to setting up publishing credentials or authentication.
Follow Steps: Adhere to the detailed steps provided by your registry to configure your system for publishing.
When working with sfp and managing artifacts, it’s required to use a private NPM registry. This allows for more control over package distribution, increased security, and custom package management. Here are some popular NPM compatible private registries, including instructions on how to configure NPM to use them:
GitHub Packages
GitHub Packages acts as a hosting service for npm packages, allowing for seamless integration with existing GitHub workflows. For configuration details, visit GitHub's guide on configuring NPM for use with GitHub Packages.
GitLab NPM Registry
GitLab offers a fully integrated npm registry within its continuous integration/continuous deployment (CI/CD) pipelines. To configure NPM to interact with GitLab’s registry, refer to GitLab's NPM registry documentation.
Azure Artifacts
Azure Artifacts provides a npm feed that's compatible with NPM, enabling package hosting, sharing, and version control. Note: The link provided previously was incorrect. Azure Artifacts information can be found here: Azure Artifacts documentation.
JFrog Artifactory
JFrog Artifactory offers a robust solution for managing npm packages, with features supporting binary repository management. For setting up Artifactory to work with NPM, refer to JFrog’s npm Registry documentation.
MyGet
MyGet provides package management support for npm, among other package managers, facilitating the hosting and management of private npm packages. For specifics on utilizing NPM with MyGet, check out MyGet’s NPM support documentation.
Utilising publish command
Each of these registries offers its own advantages, and the choice between them should be based on your project’s needs and existing infrastructure.
Follow the instructions on your npm registry to generate .npmrc file with the correct URL and access token (which has the permission to publish into your registry.
Utilize the parameters in sfp publish and provide the npmrc file along with activating npm
Tagging an artifact
sfp's publish command provides you with various options to tag the published artifacts in version control. Please note that these tags are utilized by sfp's build command to determine which packages are to be built when used with diffcheck
flag
Last updated