Dockerfile & actions
This commit is contained in:
parent
bcadc733bb
commit
a68287d847
11 changed files with 190 additions and 14 deletions
BIN
.Dockerfile.swp
Normal file
BIN
.Dockerfile.swp
Normal file
Binary file not shown.
53
.forgejo/workflows/buildAndTest.yml
Normal file
53
.forgejo/workflows/buildAndTest.yml
Normal file
|
|
@ -0,0 +1,53 @@
|
||||||
|
# This workflow will build a .NET project
|
||||||
|
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net
|
||||||
|
name: Dotnet build and test
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
logLevel:
|
||||||
|
description: 'Log level'
|
||||||
|
required: true
|
||||||
|
default: 'warning'
|
||||||
|
type: choice
|
||||||
|
options:
|
||||||
|
- info
|
||||||
|
- warning
|
||||||
|
- debug
|
||||||
|
tags:
|
||||||
|
description: 'Test scenario tags'
|
||||||
|
required: false
|
||||||
|
type: boolean
|
||||||
|
push:
|
||||||
|
branches: [ "main" ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ "main" ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
log-the-inputs:
|
||||||
|
runs-on: debian-latest
|
||||||
|
steps:
|
||||||
|
- run: |
|
||||||
|
echo "Log level: $LEVEL"
|
||||||
|
echo "Tags: $TAGS"
|
||||||
|
echo "Environment: $ENVIRONMENT"
|
||||||
|
env:
|
||||||
|
LEVEL: ${{ inputs.logLevel }}
|
||||||
|
TAGS: ${{ inputs.tags }}
|
||||||
|
|
||||||
|
build:
|
||||||
|
|
||||||
|
runs-on: debian-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v6
|
||||||
|
- name: Setup .NET
|
||||||
|
uses: actions/setup-dotnet@v5
|
||||||
|
with:
|
||||||
|
dotnet-version: 9.0.x
|
||||||
|
- name: Restore dependencies
|
||||||
|
run: dotnet restore
|
||||||
|
- name: Build
|
||||||
|
run: dotnet build --no-restore
|
||||||
|
- name: Test
|
||||||
|
run: dotnet test --no-build --verbosity normal
|
||||||
|
|
@ -3,7 +3,6 @@
|
||||||
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
|
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageVersion Include="IdentityModel.OidcClient" Version="6.0.0" />
|
|
||||||
<PackageVersion Include="AsciiDocSharp" Version="0.2.0" />
|
<PackageVersion Include="AsciiDocSharp" Version="0.2.0" />
|
||||||
<PackageVersion Include="AsciiDocSharp.Converters.Html" Version="0.2.0" />
|
<PackageVersion Include="AsciiDocSharp.Converters.Html" Version="0.2.0" />
|
||||||
<PackageVersion Include="bootstrap" Version="5.3.7" />
|
<PackageVersion Include="bootstrap" Version="5.3.7" />
|
||||||
|
|
@ -12,11 +11,12 @@
|
||||||
<PackageVersion Include="Google.Apis.Compute.v1" Version="1.70.0.3871" />
|
<PackageVersion Include="Google.Apis.Compute.v1" Version="1.70.0.3871" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8" Version="8.0.5-preview-net9" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8" Version="8.0.5-preview-net9" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.AspNetIdentity" Version="8.0.5-preview-net9" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.AspNetIdentity" Version="8.0.5-preview-net9" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.Storage" Version="8.0.5-preview-net9" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.EntityFramework" Version="8.0.5-preview-net9" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.EntityFramework.Storage" Version="8.0.5-preview-net9" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.EntityFramework.Storage" Version="8.0.5-preview-net9" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.EntityFramework" Version="8.0.5-preview-net9" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.Security" Version="8.0.5-preview-net9" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.Security" Version="8.0.5-preview-net9" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.Storage" Version="8.0.5-preview-net9" />
|
||||||
<PackageVersion Include="IdentityModel.AspNetCore" Version="4.3.0" />
|
<PackageVersion Include="IdentityModel.AspNetCore" Version="4.3.0" />
|
||||||
|
<PackageVersion Include="IdentityModel.OidcClient" Version="6.0.0" />
|
||||||
<PackageVersion Include="MailKit" Version="4.8.0" />
|
<PackageVersion Include="MailKit" Version="4.8.0" />
|
||||||
<PackageVersion Include="Microsoft.AspNetCore.Antiforgery" Version="2.3.0" />
|
<PackageVersion Include="Microsoft.AspNetCore.Antiforgery" Version="2.3.0" />
|
||||||
<PackageVersion Include="Microsoft.AspNetCore.Authentication.Google" Version="9.0.7" />
|
<PackageVersion Include="Microsoft.AspNetCore.Authentication.Google" Version="9.0.7" />
|
||||||
|
|
@ -58,4 +58,4 @@
|
||||||
<PackageVersion Include="xunit" Version="2.9.3" />
|
<PackageVersion Include="xunit" Version="2.9.3" />
|
||||||
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.2" />
|
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.2" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
25
Dockerfile
Normal file
25
Dockerfile
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
# syntax=docker/dockerfile:1
|
||||||
|
# Learn about building .NET container images:
|
||||||
|
# https://github.com/dotnet/dotnet-docker/blob/main/samples/README.md
|
||||||
|
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:10.0-alpine AS build
|
||||||
|
ARG TARGETARCH=amd64
|
||||||
|
|
||||||
|
WORKDIR /source
|
||||||
|
|
||||||
|
# Copy project file and restore as distinct layers
|
||||||
|
COPY --link src src
|
||||||
|
COPY --link Directory.Packages.props .
|
||||||
|
|
||||||
|
RUN dotnet nuget add source https://isn.pschneider.fr/v3/index.json
|
||||||
|
RUN dotnet restore -a $TARGETARCH src/Yavsc/Yavsc.csproj
|
||||||
|
|
||||||
|
# Copy source code and publish app
|
||||||
|
RUN dotnet publish -a $TARGETARCH --no-restore -o /app src/Yavsc/Yavsc.csproj
|
||||||
|
|
||||||
|
# Runtime stage
|
||||||
|
FROM mcr.microsoft.com/dotnet/runtime:10.0-alpine
|
||||||
|
WORKDIR /app
|
||||||
|
COPY --link --from=build /app .
|
||||||
|
USER $APP_UID
|
||||||
|
ENTRYPOINT ["./Yavsc"]
|
||||||
|
|
||||||
96
index.html
Normal file
96
index.html
Normal file
|
|
@ -0,0 +1,96 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no" />
|
||||||
|
<link rel="icon" type="image/x-icon" href="/favicon.ico?v=ip1EW4Ejoq5lhcZzTRD5r53hRENDE5RZho3VH0a2_sQ" />
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico?v=ip1EW4Ejoq5lhcZzTRD5r53hRENDE5RZho3VH0a2_sQ" />
|
||||||
|
<link rel="stylesheet" href="/lib/jquery-ui/jquery-ui.min.css">
|
||||||
|
<link rel="stylesheet" href="/lib/bootstrap/dist/css/bootstrap.min.css?v=PI8n5gCcz9cQqQXm3PEtDuPG8qx9oFsFctPg0S5zb8g" />
|
||||||
|
<link rel="stylesheet" href="/css/site.css?v=8BfL_GJ7Bh5uZoeC23J-oCP-un22xhlnRidCGp-NdGU" />
|
||||||
|
<script src="/lib/jquery-ui/external/jquery/jquery.js"></script>
|
||||||
|
<script src="/lib/jquery-ui/jquery-ui.js"></script>
|
||||||
|
<script src="/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
|
||||||
|
<script src="/js/site.js?v=mpchSU5dFUmcmGL2AYVrLMlUnF_GnVhNpzvq-U87kuI"></script>
|
||||||
|
|
||||||
|
<script src="/lib/bootstrap/js/carousel.js?v=f8uXk2JBu2A-xCE25_1_J34GvRKt66vPh4Amu8ofrfA"></script>
|
||||||
|
<style>
|
||||||
|
.navbar {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body style="background-image: url('/images/fogo.jpg');
|
||||||
|
background-position: 0%;
|
||||||
|
background-attachment: fixed;
|
||||||
|
">
|
||||||
|
<nav class="navbar navbar-expand-sm navbar-dark bg-dark" aria-label="Yavsc">
|
||||||
|
<a class="navbar-brand" href="#">Lua</a>
|
||||||
|
<button class="navbar-toggler" type="button" data-bs-toggle="collapse"
|
||||||
|
data-bs-target="#navbar" aria-controls="navbar"
|
||||||
|
aria-expanded="true" aria-label="Toggle navigation">
|
||||||
|
<span class="navbar-toggler-icon"></span>
|
||||||
|
</button>
|
||||||
|
<div class="collapse navbar-collapse" id="navbar" style="background-image: /images/fogo.jpg;">
|
||||||
|
<ul class="navbar-nav me-auto" >
|
||||||
|
<li class="nav-item"><a class="nav-link active" aria-current="page" href="/">Home</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="/Blogspot">Blogs</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="/Home/Contact">Contact</a></li>
|
||||||
|
<li class="nav-item"><a class="nav-link" href="/Home/About">About</a></li>
|
||||||
|
|
||||||
|
<li class="dropdown-item">
|
||||||
|
<a class="nav-link" href="/Account/Register">Register</a>
|
||||||
|
</li>
|
||||||
|
<li class="dropdown-item">
|
||||||
|
<a class="nav-link" href="/Account/Login?ReturnUrl=~%2F">Login</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div id="myCarousel" class="carousel slide" data-ride="carousel" data-interval="6000">
|
||||||
|
<div class="carousel-inner" role="listbox">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div b-h7a3lv6qti class="container body-container">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<footer b-h7a3lv6qti class="border-top footer text-muted">
|
||||||
|
<div b-h7a3lv6qti class="container">
|
||||||
|
© WTFPL 2025 - <a href="/Home/Privacy">Privacy</a>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$(document).ready(function(){
|
||||||
|
var car = $('.carousel').first();
|
||||||
|
var fi = car.children('.carousel-inner').first()
|
||||||
|
.children('.item').first();
|
||||||
|
var capt = fi.children('.carousel-caption-s');
|
||||||
|
|
||||||
|
fi.addClass('active');
|
||||||
|
car.animate({'background-color':'rgba(0, 0, 0, .5)'},500,function() {
|
||||||
|
car.animate({'background-color':'rgba(0, 0, 0, 0)'},500)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
@ -29,4 +29,4 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="../Yavsc.Abstract/Yavsc.Abstract.csproj" />
|
<ProjectReference Include="../Yavsc.Abstract/Yavsc.Abstract.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
using System.Text.Encodings.Web;
|
|
||||||
using System.Web;
|
using System.Web;
|
||||||
using AsciiDocSharp;
|
using AsciiDocSharp;
|
||||||
using AsciiDocSharp.Converters.Html;
|
using AsciiDocSharp.Converters.Html;
|
||||||
|
|
@ -34,7 +34,9 @@ namespace Yavsc.Helpers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var processor = new AsciiDocProcessor();
|
var processor = new AsciiDocProcessor(
|
||||||
|
|
||||||
|
);
|
||||||
var htmlConverter = new HtmlDocumentConverter();
|
var htmlConverter = new HtmlDocumentConverter();
|
||||||
|
|
||||||
var document = processor.ParseFromText(text);
|
var document = processor.ParseFromText(text);
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@
|
||||||
<PackageReference Include="HigginsSoft.IdentityServer8.Security" />
|
<PackageReference Include="HigginsSoft.IdentityServer8.Security" />
|
||||||
<PackageReference Include="HigginsSoft.IdentityServer8.Storage" />
|
<PackageReference Include="HigginsSoft.IdentityServer8.Storage" />
|
||||||
<PackageReference Include="Serilog.AspNetCore" />
|
<PackageReference Include="Serilog.AspNetCore" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Authentication.Google" />
|
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" />
|
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" />
|
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Identity.UI" />
|
<PackageReference Include="Microsoft.AspNetCore.Identity.UI" />
|
||||||
|
|
@ -51,4 +50,4 @@
|
||||||
<ProjectReference Include="../Yavsc.Server/Yavsc.Server.csproj" />
|
<ProjectReference Include="../Yavsc.Server/Yavsc.Server.csproj" />
|
||||||
<ProjectReference Include="../Yavsc.Abstract/Yavsc.Abstract.csproj" />
|
<ProjectReference Include="../Yavsc.Abstract/Yavsc.Abstract.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
@ -16,4 +16,4 @@
|
||||||
<ProjectReference Include="..\Yavsc.Abstract\Yavsc.Abstract.csproj" />
|
<ProjectReference Include="..\Yavsc.Abstract\Yavsc.Abstract.csproj" />
|
||||||
<ProjectReference Include="..\Yavsc.Server\Yavsc.Server.csproj" />
|
<ProjectReference Include="..\Yavsc.Server\Yavsc.Server.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
@ -31,4 +31,4 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Using Include="Xunit" />
|
<Using Include="Xunit" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
# Visual Studio Version 17
|
# Visual Studio Version 17
|
||||||
VisualStudioVersion = 17.0.31903.59
|
VisualStudioVersion = 17.0.31903.59
|
||||||
|
|
@ -24,6 +24,7 @@ EndProject
|
||||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution items", "Solution items", "{9EB76B06-CA8E-4211-A16D-6646ED584311}"
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution items", "Solution items", "{9EB76B06-CA8E-4211-A16D-6646ED584311}"
|
||||||
ProjectSection(SolutionItems) = preProject
|
ProjectSection(SolutionItems) = preProject
|
||||||
Directory.Packages.props = Directory.Packages.props
|
Directory.Packages.props = Directory.Packages.props
|
||||||
|
Directory.Packages.props = Directory.Packages.props
|
||||||
EndProjectSection
|
EndProjectSection
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "cli", "src\cli\cli.csproj", "{7311313C-1837-420D-9AB2-E743AF78592A}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "cli", "src\cli\cli.csproj", "{7311313C-1837-420D-9AB2-E743AF78592A}"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue