ci: update workflows and environments to .NET 10
- Update GitHub Actions to latest versions (checkout@v6, setup-dotnet@v5, upload-artifact@v6) - Update CI/CD workflows to use .NET 10.0.x SDK - Bump base and runtime images to .NET 10.0 in Dockerfiles - Update README documentation and prerequisites to reflect .NET 10 migration
This commit is contained in:
@@ -14,7 +14,7 @@ jobs:
|
||||
version: ${{ steps.version.outputs.version }}
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v6
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
@@ -37,7 +37,7 @@ jobs:
|
||||
needs: build
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v6
|
||||
- name: Copy compose file to server
|
||||
uses: appleboy/scp-action@v1
|
||||
with:
|
||||
|
||||
@@ -12,11 +12,11 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Setup .NET 9
|
||||
uses: actions/setup-dotnet@v4
|
||||
uses: actions/checkout@v6
|
||||
- name: Setup .NET 10
|
||||
uses: actions/setup-dotnet@v5
|
||||
with:
|
||||
dotnet-version: 9.0.x
|
||||
dotnet-version: 10.0.x
|
||||
- name: Format code
|
||||
run: dotnet format src --verify-no-changes --verbosity diagnostic
|
||||
test:
|
||||
@@ -24,11 +24,11 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Setup .NET 9
|
||||
uses: actions/setup-dotnet@v4
|
||||
uses: actions/checkout@v6
|
||||
- name: Setup .NET 10
|
||||
uses: actions/setup-dotnet@v5
|
||||
with:
|
||||
dotnet-version: 9.0.x
|
||||
dotnet-version: 10.0.x
|
||||
- name: Install report generator
|
||||
run: dotnet tool install -g dotnet-reportgenerator-globaltool
|
||||
- name: Run tests
|
||||
@@ -36,7 +36,7 @@ jobs:
|
||||
- name: Merge coverage reports
|
||||
run: reportgenerator "-reports:src/tests/*/TestResults/*/coverage.cobertura.xml" "-reporttypes:Html;Cobertura" "-targetdir:src/tests/TestResults/Coverage"
|
||||
- name: Upload code coverage
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: coverage-reports
|
||||
path: src/tests/TestResults/Coverage
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Steve's Bot 🤖
|
||||
|
||||
This is a comprehensive Discord bot platform built with .NET 9, designed to be a full-featured and extensible solution for having my own assistant in my [Discord server](https://discord.stevanfreeborn.com).
|
||||
This is a comprehensive Discord bot platform built with .NET 10, designed to be a full-featured and extensible solution for having my own assistant in my [Discord server](https://discord.stevanfreeborn.com).
|
||||
|
||||
## ✨ Features
|
||||
|
||||
@@ -32,7 +32,7 @@ This is a comprehensive Discord bot platform built with .NET 9, designed to be a
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- [.NET 9 SDK](https://dotnet.microsoft.com/download)
|
||||
- [.NET 10 SDK](https://dotnet.microsoft.com/download)
|
||||
- Discord Bot Token (from [Discord Developer Portal](https://discord.com/developers/applications))
|
||||
- For YouTube integration: YouTube Data API v3 key from [Google Cloud Console](https://console.cloud.google.com/apis/credentials)
|
||||
|
||||
@@ -150,14 +150,14 @@ src/
|
||||
|
||||
### YouTube Webhook Options
|
||||
|
||||
| Setting | Description | Required |
|
||||
|----------------------------------------|---------------------------------------|----------|
|
||||
| `YouTubeClientOptions__BaseUrl` | YouTube Data API base URL | Yes |
|
||||
| `YouTubeClientOptions__ApiKey` | YouTube Data API v3 key | Yes |
|
||||
| `SubscriptionOptions__CallbackUrl` | Webhook callback URL | Yes |
|
||||
| `SubscriptionOptions__TopicUrl` | YouTube channel topic URL | Yes |
|
||||
| `PubSubClientOptions__BaseUrl` | PubSubHubbub hub URL | Yes |
|
||||
| `DiscordNotificationOptions__ChannelId` | Discord channel for notifications | Yes |
|
||||
| Setting | Description | Required |
|
||||
|-----------------------------------------|-----------------------------------|----------|
|
||||
| `YouTubeClientOptions__BaseUrl` | YouTube Data API base URL | Yes |
|
||||
| `YouTubeClientOptions__ApiKey` | YouTube Data API v3 key | Yes |
|
||||
| `SubscriptionOptions__CallbackUrl` | Webhook callback URL | Yes |
|
||||
| `SubscriptionOptions__TopicUrl` | YouTube channel topic URL | Yes |
|
||||
| `PubSubClientOptions__BaseUrl` | PubSubHubbub hub URL | Yes |
|
||||
| `DiscordNotificationOptions__ChannelId` | Discord channel for notifications | Yes |
|
||||
|
||||
### Telemetry Options
|
||||
|
||||
@@ -226,11 +226,11 @@ The project includes a multi-stage Dockerfile for optimized production builds:
|
||||
|
||||
```dockerfile
|
||||
# Build stage with .NET SDK
|
||||
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS base
|
||||
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS base
|
||||
# ... build steps ...
|
||||
|
||||
# Runtime stage with optimized ASP.NET runtime
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:9.0
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:10.0
|
||||
# ... runtime setup ...
|
||||
```
|
||||
|
||||
@@ -266,6 +266,6 @@ This project is licensed under the terms found in the [LICENSE.md](LICENSE.md) f
|
||||
|
||||
---
|
||||
|
||||
Built with ❤️ using .NET 9 and a lot of coffee ☕
|
||||
Built with ❤️ using .NET 10 and a lot of coffee ☕
|
||||
|
||||
*Steve's Bot - Helping Stevan and friends since 2025* 🚀
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS base
|
||||
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS base
|
||||
WORKDIR /app
|
||||
|
||||
# solution level
|
||||
@@ -29,7 +29,7 @@ COPY . .
|
||||
FROM base AS publish-stage
|
||||
RUN dotnet publish -c Release -o dist src/StevesBot.Webhook/StevesBot.Webhook.csproj
|
||||
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:9.0
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:10.0
|
||||
WORKDIR /app
|
||||
COPY --from=publish-stage /app/dist ./
|
||||
ENTRYPOINT ["dotnet", "StevesBot.Webhook.dll"]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS base
|
||||
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS base
|
||||
WORKDIR /app
|
||||
|
||||
# solution level
|
||||
@@ -29,7 +29,7 @@ COPY . .
|
||||
FROM base AS publish-stage
|
||||
RUN dotnet publish -c Release -o dist src/StevesBot.Worker/StevesBot.Worker.csproj
|
||||
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:9.0
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:10.0
|
||||
WORKDIR /app
|
||||
COPY --from=publish-stage /app/dist ./
|
||||
ENTRYPOINT ["dotnet", "StevesBot.Worker.dll"]
|
||||
|
||||
Reference in New Issue
Block a user