Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

A guide to publishing a package to NPM using Travis. 


This is a Work in Progress - modifying the pypi docs for NPM

Step-by-step guide


Create a DevOps Support ticket to have DevOps get publish tokens for the edX NPMJS account and have DevOps add it to the travis config using the Travis CI command line client to encrypt the token: 

Travis Admins/DEVOPS: Use the edx-semantic-release account and record the token in the Notes with the name of the package. NPM lets us have multiple tokens but doesn't let us label them.

Code Block
travis encrypt --add deploy.api_key NPMTOKEN


  1. using the Stages feature of Travis (studio-frontend)
  2. using Travis' simple built-in deploy
    1. Pitfalls: If prefixing your package name with the @edx package scope (which you should!) you'll need to make sure you specify to npm that you still want the package to be public by doing this



If your tag is in GitHub, but is not starting a build in Travis, or if you are deploying from too many sub-builds in Travis, see the following changes to .travis.yml.These docs have been merged with How to connect a repository to Travis CI

Filter by label (Content by label)
cqllabel in ( "packaging" , "travis" , "pypi" ) and type = "page" and space = "OpenOPS"
labelspypi packaging travis