Reputation: 33
I am trying to deploy my angular 7 application on gitlab,my .gitlabci.yml contents are as below its giving on pipeline and both jobs are failing. I want to run tests on CI
image: node:latest
cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- node_modules/
before_script:
- apt-get update && apt-get install -y unzip fontconfig locales gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget
- npm install --silent
stages:
- test
- build
job 1:
stage: test
script: node_modules/.bin/ng test
job 2:
stage: test
script: node_modules/.bin/ng e2e
release_job:
stage: build
script: node_modules/.bin/ng build --prod --aot
artifacts:
name: "project-$CI_COMMIT_REF_NAME"
paths:
- dist/
only:
- tags
Upvotes: 0
Views: 870
Reputation: 2884
Well I don't know what is in your node_modules so it is hard to say. (In future, I recommend posting that information)
My first suggestion would be to ensure you have the Angular cli in your node_modules. It should be in your dev dependencies of your package.json
.
Otherwise I'd suggest using the Angular cli globally and install it as a separate entity.
If you install it globally, your Gitlab CI instance will be able to find it when you use ng
instead of using node_modules/.bin/ng
Add this command along side / inside your installation stage before you use any ng
command. (The -g means globally).
npm i -g @angular/cli
Then you can run ng test
etc. instead of referencing node_modules.
Upvotes: 1