I am trying to rollout one of my build using travis. As part of the pre script I am building a docker image. Within the docker image, I need to get a package from my git repository. git is trying to do ssh and I am trying to get it to use https. Can anyone see what I might be doing wrong?
Docker file
FROM node:15-alpine as builder
RUN apk update
RUN apk add --no-cache git
RUN git config --global url."https://github.com/".insteadOf [email protected]:
RUN git config --global url."https://".insteadOf git://
COPY package.json .
RUN npm install
travis.yml
sudo: required
language: node_js
node_js:
- '14'
services:
- docker
before_install:
- if [ "$TRAVIS_BRANCH" == "nightly" ]; then docker build -t something/clientv1 -f ./app/Dockerfile.nightly ./app; fi
- if [ "$TRAVIS_BRANCH" == "staging" ]; then docker build -t something/clientv1 -f ./app/Dockerfile.staging ./app; fi
- if [ "$TRAVIS_BRANCH" == "beta" ]; then docker build -t something/clientv1 -f ./app/Dockerfile.beta ./app; fi
- docker build -t something/nginx ./nginx
- docker build -t something/api ./server
script:
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_ID" --password-stdin
- if [ "$TRAVIS_BRANCH" = "nightly" ] || [ "$TRAVIS_BRANCH" = "staging"] || [ "$TRAVIS_BRANCH" = "beta" ]; docker push something/clientv1; fi
- docker push something/nginx
- docker push something/api
deploy:
...
package.json
...
"dependencies": {
"react-awesome-query-builder": "https://github.com/billtlee/react-awesome-query-builder.git#forLocal"
}
...
travis output
npm notice
npm ERR! code 128
npm ERR! command failed
npm ERR! command git ls-remote ssh://[email protected]/[secure]/react-awesome-query-builder.git
npm ERR! error: cannot run ssh: No such file or directory
npm ERR! fatal: unable to fork
2
Answers
I got it to work by downgrading to 14-alpine from 15-alpine. I don't know what changed. But no matter what I did, it kept wanting to use ssh...
An URL of a dependency starts with
ssh://
and you haven’t added a rule to rewrite such URLs. Add one: