Files
railwaysystem/.gitlab-ci.yml

38 lines
1.4 KiB
YAML

# Validation only. No automatic push pipelines or shared deployment from fusion work.
workflow:
rules:
- if: '$CI_PIPELINE_SOURCE == "web" && $RUN_FUSION_VALIDATION == "true"'
- when: never
stages: [validate]
build_backend:
stage: validate
tags: [railway-deploy]
script:
- test -n "$FUSION_JAVA21_HOME"
- export JAVA_HOME="$FUSION_JAVA21_HOME"
- export PATH="$JAVA_HOME/bin:$PATH"
- java -version
- test "$(javac -version 2>&1 | cut -d' ' -f2 | cut -d. -f1)" = 21
- bash scripts/bootstrap/check-kingbase-jdbc.sh
- mvn -B -f RuoYi-Vue/pom.xml -pl ruoyi-admin -am '-Dtest=Round5s*,Round5vAccommodationAtomicityTest,RealIotSecurityGateTest,FaceExtractClientMockTest,CommandRespHandlerMockTest,DmsHttpClientTest,DmsTokenManagerTest,TrainIotLockAuthBridgeMockTest' -Dsurefire.failIfNoSpecifiedTests=false package
- python3 -m unittest discover -s scripts/qa -p 'test_qa*.py' -v
artifacts:
expire_in: 2 days
paths: [RuoYi-Vue/ruoyi-admin/target/ruoyi-admin.jar]
build_frontend:
stage: validate
tags: [railway-deploy]
script:
- cd build_ui
- test "$(node --version)" = v22.23.2
- test "$(npm --version)" = 10.9.8
- npm ci --ignore-scripts --no-audit --no-fund
- npm run build:prod
- test -f dist/index.html
artifacts:
expire_in: 2 days
paths: [build_ui/dist/]
# Deliberately no deploy job. Private JDBC provisioning is administrator-controlled.