Merge pull request 'pipeline' (#4) from pipeline into main
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
Reviewed-on: #4main
commit
046b668485
@ -0,0 +1,75 @@
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: default
|
||||
|
||||
trigger:
|
||||
event:
|
||||
- push
|
||||
|
||||
steps:
|
||||
- name: build
|
||||
image: mcr.microsoft.com/dotnet/sdk:8.0
|
||||
commands:
|
||||
- dotnet restore API_dotnet.sln
|
||||
- dotnet build API_dotnet.sln -c Release --no-restore
|
||||
- dotnet publish API_dotnet.sln -c Release --no-restore -o $CI_PROJECT_DIR/build/release
|
||||
|
||||
- name: tests
|
||||
image: mcr.microsoft.com/dotnet/sdk:8.0
|
||||
commands:
|
||||
- dotnet restore API_dotnet.sln
|
||||
- dotnet test API_dotnet.sln --no-restore
|
||||
depends_on: [build]
|
||||
|
||||
- name: code-inspection
|
||||
image: hub.codefirst.iut.uca.fr/marc.chevaldonne/codefirst-dronesonarplugin-dotnet8
|
||||
secrets: [ SECRET_SONAR_LOGIN ]
|
||||
environment:
|
||||
sonar_host: https://codefirst.iut.uca.fr/sonar/
|
||||
sonar_token:
|
||||
from_secret: SECRET_SONAR_LOGIN # Secret de Drone
|
||||
project_key: Optifit_API_ef
|
||||
commands:
|
||||
- dotnet restore API_dotnet.sln
|
||||
- dotnet sonarscanner begin /k:$${project_key} /d:sonar.host.url=$${sonar_host} /d:sonar.coverageReportPaths="coveragereport/SonarQube.xml" /d:sonar.login=$${sonar_token}
|
||||
- dotnet build API_dotnet.sln -c Release --no-restore
|
||||
- dotnet test API_dotnet.sln --logger trx --no-restore /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura --collect "XPlat Code Coverage"
|
||||
- reportgenerator -reports:"**/coverage.cobertura.xml" -reporttypes:SonarQube -targetdir:"coveragereport"
|
||||
- dotnet publish API_dotnet.sln -c Release --no-restore -o $CI_PROJECT_DIR/build/release
|
||||
- dotnet sonarscanner end /d:sonar.login=$${sonar_token}
|
||||
when:
|
||||
branch:
|
||||
- master
|
||||
event:
|
||||
- push
|
||||
- pull_request
|
||||
depends_on: [build,tests]
|
||||
|
||||
- name: docker-build-and-push
|
||||
image: plugins/docker
|
||||
settings:
|
||||
dockerfile: Dockerfile
|
||||
context: .
|
||||
registry: hub.codefirst.iut.uca.fr
|
||||
repo: hub.codefirst.iut.uca.fr/louis.laborie/optifit_ef_api
|
||||
username:
|
||||
from_secret: SECRET_REGISTRY_USERNAME
|
||||
password:
|
||||
from_secret: SECRET_REGISTRY_PASSWORD
|
||||
when:
|
||||
branch:
|
||||
- main
|
||||
- rebase
|
||||
- pipeline
|
||||
|
||||
- name: deploy-container
|
||||
image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest
|
||||
environment:
|
||||
IMAGENAME: hub.codefirst.iut.uca.fr/louis.laborie/optifit_ef_api:latest
|
||||
CONTAINERNAME: optifit-ef-api
|
||||
COMMAND: create
|
||||
OVERWRITE: true
|
||||
CODEFIRST_CLIENTDRONE_ENV_ASPNETCORE_HTTP_PORTS: 80
|
||||
ADMINS: louislaborie,tonyfages,anthonyrichard
|
||||
depends_on:
|
||||
- docker-build-and-push
|
@ -0,0 +1,29 @@
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
|
||||
WORKDIR /app
|
||||
|
||||
EXPOSE 80
|
||||
EXPOSE 443
|
||||
EXPOSE 8080
|
||||
EXPOSE 8081
|
||||
|
||||
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
|
||||
ARG BUILD_CONFIGURATION=Release
|
||||
WORKDIR /src
|
||||
COPY ["Infrastructure/Infrastructure.csproj", "Infrastructure/"]
|
||||
COPY ["Server/Server.csproj", "Server/"]
|
||||
COPY ["Shared/Shared.csproj", "Shared/"]
|
||||
RUN dotnet restore "Server/Server.csproj"
|
||||
COPY . .
|
||||
WORKDIR "/src/Server"
|
||||
RUN dotnet build "Server.csproj" -c $BUILD_CONFIGURATION -o /app/build
|
||||
|
||||
FROM build AS publish
|
||||
ARG BUILD_CONFIGURATION=Release
|
||||
RUN dotnet publish "Server.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
|
||||
|
||||
|
||||
|
||||
FROM base AS final
|
||||
WORKDIR /app
|
||||
COPY --from=publish /app/publish .
|
||||
ENTRYPOINT ["dotnet", "Server.dll"]
|
@ -0,0 +1,8 @@
|
||||
namespace Shared;
|
||||
|
||||
public enum ECategory
|
||||
{
|
||||
WARM_UP,
|
||||
TRAINING,
|
||||
STRETCHING
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
namespace Shared;
|
||||
|
||||
public enum ETarget
|
||||
{
|
||||
LEG,
|
||||
ARM,
|
||||
CARDIO,
|
||||
HAMSTRING
|
||||
}
|
Loading…
Reference in new issue