Skip to content
Snippets Groups Projects
Commit 8960de10 authored by Erik Borgeteien Hansen's avatar Erik Borgeteien Hansen
Browse files

Merge branch 'cicd' into 'main'

Cicd

See merge request !31
parents 01e408c8 e5dc86b3
No related branches found
No related tags found
1 merge request!31Cicd
Pipeline #176772 passed with stages
in 1 minute and 27 seconds
# This file is a template, and might need editing before it works on your project.
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml
image: node:lts
# This is a sample GitLab CI/CD configuration file that should run without any modifications.
# It demonstrates a basic 3 stage CI/CD pipeline. Instead of real tests or scripts,
# it uses echo commands to simulate the pipeline execution.
#
# A pipeline is composed of independent jobs that run scripts, grouped into stages.
# Stages run in sequential order, but jobs within stages run in parallel.
#
# For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages
stages: # List of stages for jobs, and their order of execution
stages:
- build
- test
# - deploy
image: node:16
# These folders are cached between builds
# http://docs.gitlab.com/ce/ci/yaml/README.html#cache
cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
# Default cache directory from https://classic.yarnpkg.com/en/docs/install-ci/#gitlab.
- node_modules/
# Enables git-lab CI caching. Both .cache and public must be cached, otherwise builds will fail.
- .cache/
- public/
install_dependencies_job: # This job runs in the build stage, which runs first.
npm:install:
stage: build
script:
- echo "Installing dependencies..."
- npm install
- echo "Dependencies installed."
artifacts:
paths:
- node_modules/
lint-test-job: # This job also runs in the test stage.
stage: test # It can run at the same time as unit-test-job (in parallel).
script:
- echo "Linting the code..."
- npm run lint
- echo "Code-linting complete."
artifacts:
paths:
- node_modules/
- npm ci
unit-test-job: # This job runs in the test stage.
stage: test # It only starts when the job in the build stage completes successfully.
test:unit:
stage: test
needs: ["npm:install"]
script:
- echo "Running unit tests..."
- npm run test:unit -- --coverage
- echo "Unit tests complete."
artifacts:
paths:
- node_modules/
- npm ci
- npm run test:unit
#test:coverage:
# stage: test
# needs: ["npm:install"]
# script:
# - ./node_modules/.bin/gatsby info
# rules:
# - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
# - if: $CI_MERGE_REQUEST_ID
#pages:
# stage: deploy
# needs:
# - npm:install
# - test:unit
# - test:gatsby
# script:
# - ./node_modules/.bin/gatsby build --prefix-paths
# artifacts:
# paths:
# - public
# rules:
# - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment