blog/.gitlab-ci.yml

40 lines
858 B
YAML

# Use latest version of Node.js
image: node:latest
stages:
- build
- test
- deploy
cache: # add cache to 'node_modules' for speeding up builds
paths:
- node_modules/ # Node modules and dependencies
build-job:
stage: build
script:
- npm install -g hexo-cli snyk
- npm install
- snyk auth $SNYK_TOKEN
only:
- master # job will affect only the 'master' branch
snyk-test:
stage: test
script:
- snyk test # Test node modules for vulnerability
only:
- master
pages:
stage: deploy
script:
- snyk protect # Apply patches to node modules
- hexo deploy # deploy the site
- find public -type f -iregex '.*\.\(htm\|html\|txt\|text\|js\|css\)$' -execdir gzip -f --keep {} \; # Compress files
artifacts:
paths:
- public # deploy to the 'public' folder
only:
- master
when: on_success