Files
web-ui/.drone.yml
Beatrice Dellacà 4fc3738adf
Some checks failed
continuous-integration/drone/push Build is failing
add unit tests
2026-02-24 11:33:37 +01:00

78 lines
1.8 KiB
YAML

---
kind: pipeline
type: docker
name: web-ui-ci
trigger:
branch:
- main
- develop
event:
- push
- pull_request
steps:
- name: install
image: node:25
commands:
- yarn install --frozen-lockfile
- name: lint
image: node:25
commands:
- yarn lint
- name: build
image: node:25
commands:
- yarn build
- name: unit-tests
image: node:25
environment:
NODE_OPTIONS: --no-webstorage
commands:
- yarn test:coverage
- test -f coverage/lcov.info
- name: code-analysis
when:
event:
- push
image: sonarsource/sonar-scanner-cli:latest
commands:
- |
test -f coverage/lcov.info
SONAR_ARGS="-Dsonar.projectKey=$SONAR_PROJECT_KEY -Dsonar.host.url=$SONAR_INSTANCE_URL -Dsonar.token=$SONAR_LOGIN_KEY -Dsonar.sources=src -Dsonar.tests=tests -Dsonar.test.inclusions=tests/**/*.{test,spec}.{ts,tsx,js,jsx} -Dsonar.javascript.lcov.reportPaths=coverage/lcov.info -Dsonar.working.directory=/tmp/.scannerwork"
sonar-scanner $SONAR_ARGS
environment:
SONAR_USER_HOME: /tmp/.sonar
SONAR_PROJECT_KEY:
from_secret: sonar_project_key
SONAR_INSTANCE_URL:
from_secret: sonar_instance_url
SONAR_LOGIN_KEY:
from_secret: sonar_login_key
---
kind: pipeline
type: docker
name: web-ui-publish
trigger:
event:
- tag
ref:
- refs/tags/v*
steps:
- name: publish-npm
image: node:25
environment:
NEXUS_NPM_TOKEN:
from_secret: nexus_npm_token
commands:
- yarn install --frozen-lockfile
- npm config set //nexus.beatrice.wtf/repository/npm-hosted/:_authToken "$NEXUS_NPM_TOKEN"
- yarn publish:nexus