-
-
Save kenvontucky/f863f5628b7015963a919b8880f95214 to your computer and use it in GitHub Desktop.
| image: node:latest | |
| cache: | |
| key: ${CI_COMMIT_REF_SLUG} | |
| paths: | |
| - node_modules/ | |
| stages: | |
| - test | |
| - build | |
| - deploy | |
| job:test: | |
| stage: test | |
| 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 | |
| script: node_modules/.bin/ng test | |
| job:e2e: | |
| stage: test | |
| 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 | |
| script: node_modules/.bin/ng e2e | |
| release:build: | |
| stage: build | |
| script: node_modules/.bin/ng build --prod --aot | |
| artifacts: | |
| name: "project-$CI_COMMIT_REF_NAME" | |
| paths: | |
| - dist/ | |
| only: | |
| - tags | |
| deploy:production: | |
| stage: deploy | |
| environment: | |
| name: production | |
| url: http://demo-app.com | |
| before_script: | |
| - wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-218.0.0-linux-x86.tar.gz | |
| - tar -xzf google-cloud-sdk-218.0.0-linux-x86.tar.gz | |
| - ./google-cloud-sdk/install.sh | |
| dependencies: | |
| - release:build | |
| script: | |
| - echo $GAE_KEY_FILE > gae_auth.json | |
| - ./google-cloud-sdk/bin/gcloud auth activate-service-account --key-file gae_auth.json | |
| - ./google-cloud-sdk/bin/gcloud app deploy --project=$GAE_PROJECT_ID | |
| when: manual | |
| only: | |
| - tags | |
Here is the package.json
{
"name": "demo-app",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "^6.1.0",
"@angular/common": "^6.1.0",
"@angular/compiler": "^6.1.0",
"@angular/core": "^6.1.0",
"@angular/forms": "^6.1.0",
"@angular/http": "^6.1.0",
"@angular/platform-browser": "^6.1.0",
"@angular/platform-browser-dynamic": "^6.1.0",
"@angular/router": "^6.1.0",
"core-js": "^2.5.4",
"puppeteer": "^1.8.0",
"rxjs": "~6.2.0",
"zone.js": "~0.8.26"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.8.0",
"@angular/cli": "~6.2.2",
"@angular/compiler-cli": "^6.1.0",
"@angular/language-service": "^6.1.0",
"@types/jasmine": "~2.8.8",
"@types/jasminewd2": "~2.0.3",
"@types/node": "~8.9.4",
"codelyzer": "~4.3.0",
"jasmine-core": "~2.99.1",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~3.0.0",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~1.1.2",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.4.0",
"ts-node": "~7.0.0",
"tslint": "~5.11.0",
"typescript": "~2.9.2"
}
}Can you please provide gitlab runner configration for run jobs. So i am thinking it may be issue of runner type. please check below given error log.
config.toml
concurrent = 1
check_interval = 0
[session_server]
session_timeout = 1800
[[runners]]
name = "analytics-runner"
url = "https://gitlab.com/"
token = "*********"
executor = "docker"
shell = "powershell"
[runners.custom_build_dir]
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]
Error log
ERROR: Preparation failed: missing docker configuration
Will be retried in 3s ...
ERROR: Preparation failed: missing docker configuration
Will be retried in 3s ...
ERROR: Preparation failed: missing docker configuration
Will be retried in 3s ...
ERROR: Job failed (system failure): missing docker configuration
Sorry, I'm not using any custom runner, the example uses the default gitlab runners. I suggest you to take a look at https://docs.gitlab.com/runner/configuration/advanced-configuration.html.
Thanks for quick reply. I have last question regarding final outcome. Will your yml create docker image or only artifacts ?
Only artifacts are created under release:build.
thanks
Do you have a link for the accompanying package.json file?