How should I point Meteor to a private repository for Atmosphere packages?

325 views Asked by At

I am being asked to deploy a meteor app to a build server that does not have internet access. The build server can download Meteor, Npm packages, etc, from a private JFrog Artifactory repo on a local network server. The meteor app also has Atmosphere package dependencies. How can I configure Meteor to point to Artifactory (or any private repo) for Atmosphere packages, or otherwise solve this problem?

2

There are 2 answers

2
Mikkel On

You only access Atmosphere or github at build/deploy time. So usually if you use mup to deploy to your server, it won't matter that it's not online.

If it has to be built by a build server, then that build server will need network access, unless you want to configure a local repository for it to get files from.

There are some places here for you to look further into how to do it:

https://www.npmjs.com/package/sinopia

can you host a private repository for your organization to use with npm?

https://addyosmani.com/blog/using-npm-offline/

Local NPM/Atmosphere package repositories for Meteor applications without internet access

0
Felipe Santiago On

At the moment I am facing the same problem and this is what I did:

  1. Build the meteor app in a machine with internet access so it can build fine.
  2. Create a tarball of the .meteor folder with all dependencies.
  3. Upload the tarball somewhere accessible by your build server (maybe in Artifactory?).
  4. In the build server, download the tarball, extract it and replace it whenever you want to build the app.

Meteor will not try to download the packages from Atmosphere if they are already available. Not the best solution, especially because if your dependencies change you will need to update the tarball, however it works.