我正在尝试在gitlab上部署我的angular 7应用程序,我的.gitlabci.yml内容如下 它在管道上的付出,两个工作都失败了。 我想在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
答案 0 :(得分:1)
我不知道您的node_modules中有什么,所以很难说。 (以后,我建议发布该信息)
我的第一个建议是确保在node_modules中具有Angular cli。它应该在package.json
的dev依赖项中。
否则,我建议全局使用Angular cli并将其安装为单独的实体。
如果是全局安装,则在使用ng
而不是node_modules/.bin/ng
时,您的Gitlab CI实例将能够找到它
在使用任何ng
命令之前,请在安装阶段的内部/内部添加此命令。 (-g表示全局)。
npm i -g @ angular / cli
然后,您可以运行ng test
等,而不用引用node_modules。