Skip to content

Cleanup

Cleanup #218

name: Build and Publish
on: push
jobs:
build-and-publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup .NET
uses: actions/setup-dotnet@v2
with:
dotnet-version: |
7.0.x
6.0.x
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build -c Release --no-restore
- name: Test
run: dotnet test -c Release --no-build --verbosity normal
- name: Pack
if: github.ref_name == 'stable' || github.ref_name == 'alpha'
run: |
dotnet pack NetCord -c Release --no-build
dotnet pack NetCord.Services -c Release --no-build
- name: Publish
if: github.ref_name == 'stable' || github.ref_name == 'alpha'
run: |
dotnet nuget push NetCord/**.nupkg -k ${{ secrets.NUGET_API_KEY }} -n -s https://api.nuget.org/v3/index.json --skip-duplicate
dotnet nuget push NetCord.Services/**.nupkg -k ${{ secrets.NUGET_API_KEY }} -n -s https://api.nuget.org/v3/index.json --skip-duplicate
- name: Build Documentation
if: github.ref_name == 'stable' || github.ref_name == 'alpha'
run: |
dotnet tool install docfx -g --version 2.70.0
docfx Documentation/docfx.json
- name: Stop Apache2
if: github.ref_name == 'stable' || github.ref_name == 'alpha'
uses: appleboy/[email protected]
with:
username: ${{ secrets.SSH_USERNAME }}
host: ${{ secrets.SSH_HOST }}
port: ${{ secrets.SSH_PORT }}
key: ${{ secrets.SSH_KEY }}
script: sudo systemctl stop apache2
- name: Deploy Documentation
if: github.ref_name == 'stable' || github.ref_name == 'alpha'
uses: appleboy/[email protected]
with:
username: ${{ secrets.SSH_USERNAME }}
host: ${{ secrets.SSH_HOST }}
port: ${{ secrets.SSH_PORT }}
key: ${{ secrets.SSH_KEY }}
rm: true
source: Documentation/_site
strip_components: 2
target: ~/NetCord/html
- name: Start Apache2
if: github.ref_name == 'stable' || github.ref_name == 'alpha'
uses: appleboy/[email protected]
with:
username: ${{ secrets.SSH_USERNAME }}
host: ${{ secrets.SSH_HOST }}
port: ${{ secrets.SSH_PORT }}
key: ${{ secrets.SSH_KEY }}
script: sudo systemctl start apache2