In the package.json
of my Node.js project I have a couple of dependencies, here's an example:
...
"dependencies": {
"lodash": "^4.17.4",
"request": "^2.81.0",
"request-promise-native": "^1.0.4",
"my-module": "git+ssh://git@stash.my-company:7999/sub/my-module.git#v5.0.0"
},
...
my-module
is an in-house module located in my company's Bitbucket and cannot be made available to the public. Our Bitbucket can only be accessed from the intranet and is not accessible via internet.
Now I want to deploy the project from a local Git repository to Azure. I follow the instructions of https://learn.microsoft.com/en-us/bot-framework/deploy-bot-local-git and would certainly be successful if I didn't have the dependency on my-module
. Where I have no problem running npm install
from our internal company network, it fails when deploying to Azure because there is no access to our Bitbucket repository.
I can't make our Bitbucket accessible from the outside and I can't publish my-module
(e. g. in Github).
Any idea how I can solve this smartly?
Edit:
Just copy and paste is not an option, because my-module
has frequent changes and I want to be able to include a new version at any time.
So I've tried this with the help of a Git submodule: I added my-module
as a submodule to my project and got its content into local folder lib/my-module
, which I now use in package.json. In Azure, I had to disable the update of Git submodules (because my-module
's URL is our company's internal repo which cannot be accessed by Azure) with SCM_DISABLE_SUBMODULES=1
. Then I was able to deploy my project successfully to Azure.
But: In Azure there is now the folder lib/my-module
, but it has no content (on my local computer, the content is there). What would I have to do?