hrms-api-backend/.onedev-buildspec.yml

83 lines
2.6 KiB
YAML
Raw Normal View History

2024-12-12 11:29:54 +00:00
version: 37
jobs:
2024-12-16 09:17:05 +00:00
- name: CI for UAT
2024-12-12 11:29:54 +00:00
steps:
- !CheckoutStep
name: checkout code
cloneCredential: !DefaultCredential {}
withLfs: false
withSubmodules: false
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !GenerateChecksumStep
2024-12-12 15:33:43 +00:00
name: generate project checksum
files: '**/*.csproj'
2024-12-12 11:29:54 +00:00
targetFile: checksum
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !SetupCacheStep
2024-12-12 15:33:43 +00:00
name: set up nuget cache
key: nuget_packages_@file:checksum@
2024-12-12 11:29:54 +00:00
loadKeys:
2024-12-12 15:33:43 +00:00
- nuget_packages
2024-12-12 11:29:54 +00:00
paths:
2024-12-12 15:33:43 +00:00
- /root/.nuget/packages
2024-12-12 11:29:54 +00:00
uploadStrategy: UPLOAD_IF_NOT_HIT
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
- !CommandStep
2024-12-12 15:33:43 +00:00
name: test and analyze
2024-12-12 11:29:54 +00:00
runInContainer: true
2024-12-12 15:33:43 +00:00
image: mcr.microsoft.com/dotnet/sdk
2024-12-12 11:29:54 +00:00
interpreter: !DefaultInterpreter
commands: |
2024-12-12 15:33:43 +00:00
set -e
dotnet tool install -g roslynator.dotnet.cli
dotnet test -l trx --collect:"XPlat Code Coverage"
#/root/.dotnet/tools/roslynator analyze -o roslynator-analysis.xml
2024-12-12 11:29:54 +00:00
useTTY: true
2024-12-15 09:29:56 +00:00
condition: NEVER
2024-12-12 15:33:43 +00:00
- !PublishTRXReportStep
name: publish unit test report
reportName: Unit Test
filePatterns: '**/*.trx'
2024-12-15 09:29:56 +00:00
condition: NEVER
2024-12-12 15:33:43 +00:00
- !PublishCoberturaReportStep
name: publish code coverage report
reportName: Code Coverage
filePatterns: '**/coverage.cobertura.xml'
2024-12-15 09:29:56 +00:00
condition: NEVER
2024-12-12 15:33:43 +00:00
- !PublishRoslynatorReportStep
name: publish code problem report
reportName: Code Problems
filePatterns: roslynator-analysis.xml
failThreshold: HIGH
2024-12-15 09:29:56 +00:00
condition: NEVER
2024-12-12 15:33:43 +00:00
- !SetBuildVersionStep
name: set build version
buildVersion: '@tag@'
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
2024-12-12 11:29:54 +00:00
- !BuildImageStep
2024-12-15 09:29:56 +00:00
name: build docker image - Leave
dockerfile: ./BMA.EHR.Leave/Dockerfile
output: !RegistryOutput
tags: hrms-git.chin.in.th/bma-hrms/hrms-api-leave:@build_version@ hrms-git.chin.in.th/bma-hrms/hrms-api-leave:latest
2024-12-16 09:14:06 +00:00
condition: NEVER
2024-12-15 09:29:56 +00:00
- !BuildImageStep
name: build docker image - Checkin
2024-12-12 15:33:43 +00:00
dockerfile: ./BMA.EHR.CheckInConsumer/Dockerfile
2024-12-12 11:29:54 +00:00
output: !RegistryOutput
tags: hrms-git.chin.in.th/bma-hrms/hrms-api-checkin:@build_version@ hrms-git.chin.in.th/bma-hrms/hrms-api-checkin:latest
2024-12-16 09:14:06 +00:00
condition: NEVER
2024-12-16 09:17:05 +00:00
- !BuildImageStep
name: build docker image - Insignia
dockerfile: ./BMA.EHR.Insignia/Dockerfile
output: !RegistryOutput
tags: hrms-git.chin.in.th/bma-hrms/hrms-api-insignia:@build_version@ hrms-git.chin.in.th/bma-hrms/hrms-api-insignia:latest
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
2024-12-12 11:29:54 +00:00
triggers:
- !TagCreateTrigger
tags: uat-*
branches: main
retryCondition: never
maxRetries: 3
retryDelay: 30
timeout: 14400