From 100c31b5ff3bf25af29a675347a3abc54552a77e Mon Sep 17 00:00:00 2001 From: Kentin BRONGNIART Date: Thu, 3 Apr 2025 10:59:55 +0200 Subject: [PATCH] =?UTF-8?q?Mise=20=C3=A0=20jour=20de=20'.drone.yml'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .drone.yml | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 119 insertions(+), 5 deletions(-) diff --git a/.drone.yml b/.drone.yml index 14d2526..8998d5c 100644 --- a/.drone.yml +++ b/.drone.yml @@ -5,10 +5,16 @@ name: CI_ApiPm trigger: event: - push + - pull_request + - tag branch: exclude: - master +volumes: + - name: docs + temp: {} + steps: - name: retore & build image: mcr.microsoft.com/dotnet/sdk:8.0 @@ -71,12 +77,120 @@ steps: - dotnet nswag aspnetcore2openapi /output:/doc/swagger.json depends_on: [clone, retore & build] - #- name: code-inspection - # image: hub.codefirst.iut.uca.fr/marc.chevaldonne:codefirs-dronsonarplugin-dotnet8 - # secret: [SECRET_SONAR_LOGIN] - # A FINIR + - name: code-inspection + image: hub.codefirst.iut.uca.fr/marc.chevaldonne:codefirs-dronsonarplugin-dotnet8 + secret: [SECRET_SONAR_LOGIN] + environment: + sonar_host: https://codefirst.iut.uca.fr/sonar/ + sonar_token: + from_secret: SECRET_SONAR_LOGIN + project_key: wtf-service + commands: + - dotnet restore WF_EF_Api/WF_EF_Api.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 WF_EF_Api/WF_EF_Api.sln + - dotnet test WF_EF_Api/XUnitTest/XUnitTest.csproj --logger trx --no-restore /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura --collect "XPlat Code Coverage" + - reportgenerator -reports:"**/coverage.cobertura.xml" -reporttypes:SonarQube -targetdir:"coveragereport" + - dotnet sonarscanner end /d:sonar.login=$${sonar_token} + depends_on: [test] + + + - name: publish image: mcr.microsoft.com/dotnet/sdk:8.0 commands: - dotnet publish WF_EF_Api/WfApi/WfApi.csproj -c Release -o out - depends_on: [retore & build, test] \ No newline at end of file + depends_on: [retore & build, test] + + + +- name: deploy-api-db + image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest + environment: + IMAGENAME: postgres:16.8-alpine3.20 + CONTAINERNAME: wtf-api + COMMAND: create + PRIVATE: true + #OVERWRITE: true + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_PASSWORD: + from_secret: POSTGRES_PASSWORD_API + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_USER: + from_secret: POSTGRES_USER_API + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_DB: + from_secret: POSTGRES_DB_API + ADMINS: kentinbrongniart,lenibeaulaton + + - name: deploy-auth-db + image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest + environment: + IMAGENAME: postgres:16.8-alpine3.20 + CONTAINERNAME: wtf-api-auth + COMMAND: create + PRIVATE: true + #OVERWRITE: true + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_PASSWORD: + from_secret: POSTGRES_PASSWORD_AUTH + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_USER: + from_secret: POSTGRES_USER_AUTH + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_DB: + from_secret: POSTGRES_DB_AUTH + ADMINS: kentinbrongniart,lenibeaulaton + + + - name: deploy-test-db + image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest + environment: + IMAGENAME: postgres:16.8-alpine3.20 + CONTAINERNAME: wtf-api-test + COMMAND: create + PRIVATE: true + #OVERWRITE: true + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_PASSWORD: "test" + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_USER: "test" + CODEFIRST_CLIENTDRONE_ENV_POSTGRES_DB: "wtf-test" + ADMINS: kentinbrongniart,lenibeaulaton + + - name: publish-to-registry + image: plugins/docker + settings: + dockerfile: src/Dockerfile + context: src/ + registry: hub.codefirst.iut.uca.fr + repo: hub.codefirst.iut.uca.fr/WhatTheFantasy/WF-PmAPI + username: + from_secret: SECRET_REGISTRY_USERNAME + password: + from_secret: SECRET_REGISTRY_PASSWORD + depends_on: [restore & build, test, code-inspection, publish] + + + - name: deploy-container + image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest + environment: + IMAGENAME: hub.codefirst.iut.uca.fr/WhatTheFantasy/WF-PmAPI:latest + CONTAINERNAME: web-services + COMMAND: create + OVERWRITE: true + CODEFIRST_CLIENTDRONE_ENV_DB_SERVER_API: "SAE-WHAT-THE-FANTASY-wtf-api" + CODEFIRST_CLIENTDRONE_ENV_DB_USER_API: + from_secret: POSTGRES_USER_API + CODEFIRST_CLIENTDRONE_ENV_DB_PASSWORD_API: + from_secret: POSTGRES_PASSWORD_API + CODEFIRST_CLIENTDRONE_ENV_DB_DATABASE_API: + from_secret: POSTGRES_DB_API + CODEFIRST_CLIENTDRONE_ENV_DB_SERVER_AUTH: "SAE-WHAT-THE-FANTASY-wtf-api-auth" + CODEFIRST_CLIENTDRONE_ENV_DB_USER_AUTH: + from_secret: POSTGRES_USER_AUTH + CODEFIRST_CLIENTDRONE_ENV_DB_PASSWORD_AUTH: + from_secret: POSTGRES_PASSWORD_AUTH + CODEFIRST_CLIENTDRONE_ENV_DB_DATABASE_AUTH: + from_secret: POSTGRES_DB_AUTH + CODEFIRST_CLIENTDRONE_ENV_DB_SERVER_API_TEST: "SAE-WHAT-THE-FANTASY-wtf-api" + CODEFIRST_CLIENTDRONE_ENV_DB_USER_API_TEST: "test" + CODEFIRST_CLIENTDRONE_ENV_DB_PASSWORD_API_TEST: "test" + CODEFIRST_CLIENTDRONE_ENV_DB_DATABASE_API_TEST: "wtf-db-test" + ADMINS: kentinbrongniart,lenibeaulaton + depends_on: [restore & build, test, code-inspection, publish, publish-to-registry] + + +