diff --git a/.dockerignore b/.dockerignore
new file mode 100644
index 0000000..3729ff0
--- /dev/null
+++ b/.dockerignore
@@ -0,0 +1,25 @@
+**/.classpath
+**/.dockerignore
+**/.env
+**/.git
+**/.gitignore
+**/.project
+**/.settings
+**/.toolstarget
+**/.vs
+**/.vscode
+**/*.*proj.user
+**/*.dbmdl
+**/*.jfm
+**/azds.yaml
+**/bin
+**/charts
+**/docker-compose*
+**/Dockerfile*
+**/node_modules
+**/npm-debug.log
+**/obj
+**/secrets.dev.yaml
+**/values.dev.yaml
+LICENSE
+README.md
\ No newline at end of file
diff --git a/.drone.yml b/.drone.yml
new file mode 100644
index 0000000..e8d7754
--- /dev/null
+++ b/.drone.yml
@@ -0,0 +1,75 @@
+kind: pipeline
+type: docker
+name: default
+
+trigger:
+ event:
+ - push
+
+steps:
+ - name: build
+ image: mcr.microsoft.com/dotnet/sdk:6.0
+ commands:
+ - cd Sources/
+ - dotnet restore MySolution.sln
+ - dotnet build MySolution.sln -c Release --no-restore
+
+ - name: tests
+ image: mcr.microsoft.com/dotnet/sdk:6.0
+ commands:
+ - cd Sources/
+ - dotnet restore MySolution.sln
+ - dotnet test MySolution.sln --no-restore
+ depends_on: [build]
+
+ - name: code-analysis
+ image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dronesonarplugin-dotnet6
+ commands:
+ - cd Sources/
+ - dotnet restore MySolution.sln
+ - dotnet sonarscanner begin /k:$REPO_NAME /d:sonar.host.url=$$$${PLUGIN_SONAR_HOST} /d:sonar.coverageReportPaths="coveragereport/SonarQube.xml" /d:sonar.coverage.exclusions="Tests/**" /d:sonar.login=$$$${PLUGIN_SONAR_TOKEN}
+ - dotnet build MySolution.sln -c Release --no-restore
+ - dotnet test MySolution.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 MySolution.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/
+ # accessible en ligne de commande par $${PLUGIN_SONAR_TOKEN}
+ sonar_token:
+ from_secret: SECRET_SONAR_LOGIN
+ depends_on: [tests]
+
+ - 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: Sources/Dockerfile
+ context: .
+ registry: hub.codefirst.iut.uca.fr
+ repo: hub.codefirst.iut.uca.fr/my-group/my-application-client
+ username:
+ from_secret: SECRET_REGISTRY_USERNAME
+ password:
+ from_secret: SECRET_REGISTRY_PASSWORD
+ when:
+ branch:
+ - master
+
+volumes:
+- name: docs
+ temp: {}
\ No newline at end of file
diff --git a/BlazorApp1/BlazorApp1.csproj b/BlazorApp1/BlazorApp1.csproj
index 9354de1..85b598a 100644
--- a/BlazorApp1/BlazorApp1.csproj
+++ b/BlazorApp1/BlazorApp1.csproj
@@ -4,6 +4,8 @@
net6.0
enable
enable
+ 810f4876-066d-48da-a977-da816d3bafab
+ Windows
@@ -13,6 +15,8 @@
+
+
diff --git a/BlazorApp1/Dockerfile b/BlazorApp1/Dockerfile
new file mode 100644
index 0000000..6205ea6
--- /dev/null
+++ b/BlazorApp1/Dockerfile
@@ -0,0 +1,26 @@
+#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
+
+#Depending on the operating system of the host machines(s) that will build or run the containers, the image specified in the FROM statement may need to be changed.
+#For more information, please see https://aka.ms/containercompat
+
+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 ["nuget.config", "."]
+COPY ["BlazorApp1/BlazorApp1.csproj", "BlazorApp1/"]
+RUN dotnet restore "BlazorApp1/BlazorApp1.csproj"
+COPY . .
+WORKDIR "/src/BlazorApp1"
+RUN dotnet build "BlazorApp1.csproj" -c Release -o /app/build
+
+FROM build AS publish
+RUN dotnet publish "BlazorApp1.csproj" -c Release -o /app/publish
+
+FROM base AS final
+WORKDIR /app
+COPY --from=publish /app/publish .
+ENTRYPOINT ["dotnet", "BlazorApp1.dll"]
\ No newline at end of file
diff --git a/BlazorApp1/Pages/CreateLog.razor b/BlazorApp1/Pages/CreateLog.razor
new file mode 100644
index 0000000..89c8922
--- /dev/null
+++ b/BlazorApp1/Pages/CreateLog.razor
@@ -0,0 +1,5 @@
+@page "/logs"
+
+
CreateLog
+
+
\ No newline at end of file
diff --git a/BlazorApp1/Pages/CreateLog.razor.cs b/BlazorApp1/Pages/CreateLog.razor.cs
new file mode 100644
index 0000000..77efcb1
--- /dev/null
+++ b/BlazorApp1/Pages/CreateLog.razor.cs
@@ -0,0 +1,21 @@
+namespace BlazorApp1.Pages
+{
+ using Microsoft.AspNetCore.Components;
+ using Microsoft.Extensions.Logging;
+
+ public partial class CreateLog
+ {
+ [Inject]
+ public ILogger Logger { get; set; }
+
+ private void CreateLogs()
+ {
+ var logLevels = Enum.GetValues(typeof(LogLevel)).Cast();
+
+ foreach (var logLevel in logLevels.Where(l => l != LogLevel.None))
+ {
+ Logger.Log(logLevel, $"Log message for the level: {logLevel}");
+ }
+ }
+ }
+}
diff --git a/BlazorApp1/Program.cs b/BlazorApp1/Program.cs
index d03f057..9230a5d 100644
--- a/BlazorApp1/Program.cs
+++ b/BlazorApp1/Program.cs
@@ -8,6 +8,7 @@ using Blazorise.Icons.FontAwesome;
using Microsoft.AspNetCore.Localization;
using Microsoft.Extensions.Options;
using System.Globalization;
+using Microsoft.Extensions.Logging;
var builder = WebApplication.CreateBuilder(args);
@@ -24,6 +25,7 @@ builder.Services.AddBlazoredLocalStorage();
builder.Services.AddScoped();
builder.Services.AddBlazoredModal();
builder.Services.AddScoped();
+builder.Logging.AddConfiguration(builder.Configuration.GetSection("Logging"));
// Add the controller of the app
builder.Services.AddControllers();
diff --git a/BlazorApp1/Properties/launchSettings.json b/BlazorApp1/Properties/launchSettings.json
index b79f54e..ea03acc 100644
--- a/BlazorApp1/Properties/launchSettings.json
+++ b/BlazorApp1/Properties/launchSettings.json
@@ -10,12 +10,12 @@
"profiles": {
"BlazorApp1": {
"commandName": "Project",
- "dotnetRunMessages": true,
"launchBrowser": true,
- "applicationUrl": "https://localhost:7228;http://localhost:5228",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
- }
+ },
+ "applicationUrl": "https://localhost:7228;http://localhost:5228",
+ "dotnetRunMessages": true
},
"IIS Express": {
"commandName": "IISExpress",
@@ -23,6 +23,13 @@
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
+ },
+ "Docker": {
+ "commandName": "Docker",
+ "launchBrowser": true,
+ "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}",
+ "publishAllPorts": true,
+ "useSSL": true
}
}
-}
+}
\ No newline at end of file
diff --git a/BlazorApp1/Ressources/Pages.List.fr-FR.resx b/BlazorApp1/Resources/Pages.List.fr-FR.resx
similarity index 100%
rename from BlazorApp1/Ressources/Pages.List.fr-FR.resx
rename to BlazorApp1/Resources/Pages.List.fr-FR.resx
diff --git a/BlazorApp1/Ressources/Pages.List.resx b/BlazorApp1/Resources/Pages.List.resx
similarity index 100%
rename from BlazorApp1/Ressources/Pages.List.resx
rename to BlazorApp1/Resources/Pages.List.resx
diff --git a/BlazorApp1/appsettings.json b/BlazorApp1/appsettings.json
index 10f68b8..ef6372d 100644
--- a/BlazorApp1/appsettings.json
+++ b/BlazorApp1/appsettings.json
@@ -1,9 +1,9 @@
{
"Logging": {
"LogLevel": {
- "Default": "Information",
- "Microsoft.AspNetCore": "Warning"
+ "Default": "Trace",
+ "Microsoft": "Warning",
+ "Microsoft.Hosting.Lifetime": "Information"
}
- },
- "AllowedHosts": "*"
-}
+ }
+}
\ No newline at end of file
diff --git a/Minecraft.Crafting.Api/Minecraft.Crafting.Api.csproj b/Minecraft.Crafting.Api/Minecraft.Crafting.Api.csproj
index d90438b..e5e28b3 100644
--- a/Minecraft.Crafting.Api/Minecraft.Crafting.Api.csproj
+++ b/Minecraft.Crafting.Api/Minecraft.Crafting.Api.csproj
@@ -9,6 +9,7 @@
+
diff --git a/Minecraft.Crafting.Api/Program.cs b/Minecraft.Crafting.Api/Program.cs
index 48863a6..d887341 100644
--- a/Minecraft.Crafting.Api/Program.cs
+++ b/Minecraft.Crafting.Api/Program.cs
@@ -1,12 +1,14 @@
+using Microsoft.Extensions.Logging;
var builder = WebApplication.CreateBuilder(args);
+
// Add services to the container.
builder.Services.AddControllers();
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
-
+builder.Logging.AddConfiguration(builder.Configuration.GetSection("Logging"));
var app = builder.Build();
// Configure the HTTP request pipeline.