I have set up a pipeline so that when I commit my angular-cli project it will run tests. No matter what I try though I always get this error:
Cannot find module 'typescript' from '/opt/atlassian/pipelines'
Here is my config file. it has gone through many iterations but always the same error.
# This is a sample build configuration for JavaScript.
# Check our guides at https://confluence.atlassian.com/x/14UWN for more examples.
# Only use spaces to indent your .yml configuration.
# -----
# You can specify a custom docker image from Docker Hub as your build environment.
image: node:6.9.4
pipelines:
default:
- step:
caches:
- node
script: # Modify the commands below to build your repository.
- npm install -g typescript @angular/cli
- npm install --unsafe-perm
- npm run test:ci
the test:ci command is this:
"test:ci": "ng test --browser=Headless_Chrome --code-coverage=true --single-run=true",
angular cli is not installed in our docker image. Use this configuration:
image: trion/ng-cli # Any docker image from dokerhub with angular cli installed.
pipelines:
default:
- step:
caches:
- node
script: # Modify the commands below to build your repository.
- npm install
- npm run build
what i do is i use the latest node image (8.11 in my current yml), and install the cli in the scripts with
image: node:8.11
pipelines:
default:
- step:
name: Build app
script: # The script below will build the application.
- npm install
- npm install -g @angular/cli
- ng build --prod --build-optimizer --progress=false
'- npm install' will install package.json packages from your app/branch
'- npm install -g @angular/cli' will install the latest angular cli globaly
afterwards you can use all the cli functionality you need.
This is an example of my build script, the last line '- ng build ...- you can replace with your own lines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.