diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..697850f --- /dev/null +++ b/.drone.yml @@ -0,0 +1,86 @@ +kind: pipeline +type: docker +name: default + +trigger: + event: + - push + branch: + - master + +steps: + - name: build + image: mcr.microsoft.com/dotnet/sdk:6.0 + commands: + - cd Blazor/ + - dotnet restore Blazor.sln + - dotnet build Blazor.sln -c Release --no-restore + + - name: tests + image: mcr.microsoft.com/dotnet/sdk:6.0 + commands: + - cd Blazor/ + - dotnet restore Blazor.sln + - dotnet test Blazor.sln --no-restore + depends_on: [build] + + # - name: code-analysis + # image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dronesonarplugin-dotnet6 + # commands: + # - cd Blazor/ + # - dotnet restore Blazor.sln + # - dotnet sonarscanner begin /k:blazor /d:sonar.host.url=https://codefirst.iut.uca.fr/sonar /d:sonar.coverageReportPaths="coveragereport/SonarQube.xml" /d:sonar.coverage.exclusions="Tests/**" /d:sonar.login=$$$${PLUGIN_SONAR_TOKEN} + # - dotnet build Blazor.sln -c Release --no-restore + # - dotnet test Blazor.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 Blazor.sln -c Release --no-restore -o $CI_PROJECT_DIR/build/release + # - dotnet sonarscanner end /d:sonar.login=$$$${PLUGIN_SONAR_TOKEN} + # secrets: [ SECRET_SONAR_LOGIN ] + # settings: + # # accessible en ligne de commande par $${PLUGIN_SONAR_HOST} + # sonar_host: https://codefirst.iut.uca.fr/sonar # problem when using variable + # # accessible en ligne de commande par $${PLUGIN_SONAR_TOKEN} + # sonar_token: + # from_secret: SONAR_TOKEN + # depends_on: [build] + + - name: generate-and-deploy-docs + image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-docdeployer + failure: ignore + volumes: + - name: docs + path: /docs + commands: + - /entrypoint.sh + when: + branch: + - master + depends_on: [ build ] + + - name: docker-build + image: plugins/docker + settings: + dockerfile: Blazor/Blazor/Dockerfile + context: . + registry: hub.codefirst.iut.uca.fr + repo: hub.codefirst.iut.uca.fr/remi.arnal/blazor + username: + from_secret: SECRET_REGISTRY_USERNAME + password: + from_secret: SECRET_REGISTRY_PASSWORD + when: + branch: + - master + + # container deployment + - name: deploy-container + image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest + environment: + IMAGENAME: hub.codefirst.iut.uca.fr/remi.arnal/blazor:latest + CONTAINERNAME: blazor-web + COMMAND: create + OVERWRITE: true + +volumes: +- name: docs + temp: {} \ No newline at end of file diff --git a/Blazor/Blazor/Dockerfile b/Blazor/Blazor/Dockerfile index 432afa3..7123ee4 100644 --- a/Blazor/Blazor/Dockerfile +++ b/Blazor/Blazor/Dockerfile @@ -1,22 +1,22 @@ -#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. - -FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base -WORKDIR /app -EXPOSE 80 -EXPOSE 443 - -FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build -WORKDIR /src -COPY ["Blazor/Blazor.csproj", "Blazor/"] -RUN dotnet restore "Blazor/Blazor.csproj" -COPY . . -WORKDIR "/src/Blazor" -RUN dotnet build "Blazor.csproj" -c Release -o /app/build - -FROM build AS publish -RUN dotnet publish "Blazor.csproj" -c Release -o /app/publish - -FROM base AS final -WORKDIR /app -COPY --from=publish /app/publish . +#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. + +FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base +WORKDIR /app +EXPOSE 80 +EXPOSE 443 + +FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build +WORKDIR /src +COPY ["Blazor/Blazor/Blazor.csproj", "Blazor/"] +RUN dotnet restore "Blazor/Blazor.csproj" +COPY . . +WORKDIR "/src/Blazor" +RUN dotnet build "Blazor/Blazor.csproj" -c Release -o /app/build + +FROM build AS publish +RUN dotnet publish "Blazor/Blazor.csproj" -c Release -o /app/publish + +FROM base AS final +WORKDIR /app +COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "Blazor.dll"] \ No newline at end of file diff --git a/README.md b/README.md index 17fddc3..05e69f9 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,3 @@ # blazor - +i +i \ No newline at end of file