使用 gitlab 流水线实现 npm publish

36 阅读1分钟

第一步,创建 npm token

在 npm Access Tokens 中添加 token,选择 Automation 类型,适合流水线的 token,参考 docs.npmjs.com/about-acces…

Snipaste_2024-01-21_22-05-13.png

第二步,添加 CI/CD 环境变量

在 gitlab 项目中找到设置,在 CI/CD 中找到变量,添加变量 NPM_TOKEN Snipaste_2024-01-21_22-05-56.png

第三步,添加 .gitlab-ci.yml

在项目中添加流水线配置文件 .gitlab-ci.yml

publish:
  image: node:latest
  stage: deploy
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH || $CI_COMMIT_REF_NAME =~ /^v\d+\.\d+\.\d+.*$/
      changes:
        - package.json
  script:
    - echo "registry=https://registry.npmjs.com/" > .npmrc
    - echo "//registry.npmjs.com/:_authToken=${NPM_TOKEN}" >> .npmrc
    - cat .npmrc
    - npm publish