feat(ci): add npm publishing for gitalisk-node package to GitLab registry
What does this MR do?
This MR enhances the manual release job to publish the @gitlab-org/gitalisk-node npm package to GitLab's package registry alongside the existing semantic-release process.
Changes
-
Updated
publish-release::manualjob:- Introduced
.npmrcand.npmrc-cifor proper CI authentication withCI_JOB_TOKEN- In the ci environment the .npmrc file gets replaced with the .npmrc-ci file's contents
- Added package name validation to ensure proper scoping (
@gitlab-org/) - Added workspace-specific publish command for
@gitlab-org/gitalisk-node
- Introduced
-
Added npm configuration files:
-
.npmrc: Points@gitlab-orgscope to GitLab's npm registry -
.npmrc-ci: CI-specific configuration using GitLab CI variables for authentication
-
Why is this needed?
The gitalisk project produces a Node.js addon package (@gitlab-org/gitalisk-node) containing native binaries for multiple architectures that needs to be published to make the Rust functionality available to Node.js consumers.
Testing
- Pipeline validation completed using GitLab's Pipeline Editor
- Manual job can be triggered without errors
- Package naming validation works correctly
- Native binaries are built before publishing
Related Issues
Closes #23 (closed)
Edited by Mohammed Osumah