From 8983e4c641a492c660d83d6efc2518077f74e5fe Mon Sep 17 00:00:00 2001 From: Jiri Uhlir Date: Wed, 3 Jun 2026 10:56:31 +0200 Subject: [PATCH] Fix dotnet worker template --- scripts/new-dotnet-worker-app.sh | 44 +++++++++++++++++++++++++++++--- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/scripts/new-dotnet-worker-app.sh b/scripts/new-dotnet-worker-app.sh index db11a9d..5129058 100755 --- a/scripts/new-dotnet-worker-app.sh +++ b/scripts/new-dotnet-worker-app.sh @@ -13,7 +13,9 @@ fi APP_DIR="$WORKSPACE_DIR/$APP_ID" PROJECT_NAME="$(python3 - "$APP_ID" <<'PY' -import re, sys +import re +import sys + parts = re.split(r'[^a-zA-Z0-9]+', sys.argv[1]) print(''.join(p[:1].upper() + p[1:] for p in parts if p)) PY @@ -23,26 +25,33 @@ mkdir -p "$APP_DIR" cd "$APP_DIR" cat > "$PROJECT_NAME.csproj" < + net8.0 enable enable + Exe + + + + EOF_DOTNET cat > Program.cs <(); var host = builder.Build(); host.Run(); -public class Worker : BackgroundService +public sealed class Worker : BackgroundService { private readonly ILogger _logger; @@ -53,15 +62,30 @@ public class Worker : BackgroundService protected override async Task ExecuteAsync(CancellationToken stoppingToken) { + _logger.LogInformation("Service $APP_ID started."); + while (!stoppingToken.IsCancellationRequested) { _logger.LogInformation("Service $APP_ID is running at {time}", DateTimeOffset.Now); await Task.Delay(TimeSpan.FromSeconds(30), stoppingToken); } + + _logger.LogInformation("Service $APP_ID stopped."); } } EOF_DOTNET +cat > appsettings.json <<'EOF_JSON' +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.Hosting.Lifetime": "Information" + } + } +} +EOF_JSON + cat > Dockerfile < README.md </dev/null || true GITEA_PUSH_URL="${GITEA_URL/http:\/\//http:\/\/${GITEA_TOKEN}@}" + git remote remove origin 2>/dev/null || true git remote add origin "$GITEA_PUSH_URL/$GITEA_ORG/$APP_ID.git" git push -u origin main