You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
1.6 KiB

version: 2.1
jobs:
build:
docker:
- image: mcr.microsoft.com/dotnet/sdk:8.0
steps:
- checkout
- run:
name: Восстановление зависимостей
command: dotnet restore "Individual Task 1/Individual Task 1.fsproj"
- run:
name: Сборка проекта
command: dotnet build "Individual Task 1/Individual Task 1.fsproj" -c Release
- persist_to_workspace:
root: .
paths:
- Individual Task 1
- .git
test:
docker:
- image: mcr.microsoft.com/dotnet/sdk:8.0
steps:
- attach_workspace:
at: .
- run:
name: Запуск на тестовых данных
command: cd "Individual Task 1" && dotnet run
docker_build:
machine:
image: ubuntu-2204:current
steps:
- attach_workspace:
at: .
- run:
name: Сборка Docker образа
command: docker build -t euler-105:${CIRCLE_SHA1} -f "Individual Task 1/Dockerfile" "Individual Task 1"
- run:
name: Запуск контейнера
command: |
docker run --name euler-test euler-105:${CIRCLE_SHA1}
docker logs euler-test
- run:
name: Очистка контейнера
command: docker rm euler-test
when: always
workflows:
version: 2
build_test_deploy:
jobs:
- build
- test:
requires:
- build
- docker_build:
requires:
- test