devops/pipline/pre-build-test-push.yml

83 lines
2.3 KiB
YAML

include:
- project: 'mmedo/devops/services/gitlab-includes/prepare'
ref: 'master'
file: 'pre-build/pre-build_packages.yml'
stages:
- prepare
- build
- test
- publish
prepare_config:
extends: .prepare
variables:
SED_NEXUS_USER: $SED_NEXUS_USER
tags:
- mmedo
nuget_build_packages:
stage: build
image: sed-docker.artifacts.tn.tngrp.ru/dotnet-v7-sdk:v7.0.410
before_script:
- ls -la nuget.config appsettings.json user-container.pfx
- cp appsettings.json ./Packages.Tests/
- cp user-container.pfx ./Packages.Tests/
script:
- dotnet nuget locals all --clear
- dotnet restore Packages.sln --configfile nuget.config
- mkdir -p ./build_nupkg
- dotnet build Packages.sln --configuration Release --no-restore --output ./build_nupkg
# - mkdir -p ./test-results
# - dotnet test Packages.Tests/Packages.Tests.csproj --configuration Release --no-restore --logger trx --results-directory ./test-results /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura
# - ls -la ./test-results
tags:
- mmedo
needs:
- job: prepare_config
artifacts: true
artifacts:
paths:
- "./build_nupkg/*.nupkg"
# paths:
# - ./test-results/*
# nuget-test:
# stage: test
# image: sed-docker.artifacts.tn.tngrp.ru/dotnet-v7-sdk:v7.0.410
# before_script:
# - ls -la nuget.config appsettings.json user-container.pfx
# - cp appsettings.json ./Packages.Tests/
# - cp user-container.pfx ./Packages.Tests/
# script:
# - mkdir -p ./test-results
# - dotnet test Packages.Tests/Packages.Tests.csproj --configuration Release --no-restore --logger trx --results-directory ./test-results /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura
# - ls -la ./test-results
# tags:
# - msed
# needs:
# - job: prepare_config
# artifacts: true
# artifacts:
# paths:
# - ./test-results/*
publish-nuget:
stage: publish
image: sed-docker.artifacts.tn.tngrp.ru/dotnet-v7-sdk:v7.0.410
script:
- ls -la ./build_nupkg/
- dotnet nuget push --help
- dotnet nuget push --skip-duplicate ./build_nupkg/**/*.nupkg --source nexus-mmedo-nuget --api-key "696af0eb-9162-3f85-b9ad-540794e1ffd9"
tags:
- mmedo
needs:
- job: prepare_config
artifacts: true
- job: nuget_build_packages
artifacts: true