name: Documentation Build on: push: tags: - '**' env: TZ: 'Europe/Berlin' LANG: 'de' CONFIGURATION: 'Release' GITEA_SERVER_URL: ${{ gitea.server_url }} jobs: build-deploy: runs-on: server-runner steps: - name: Checkout repository code uses: actions/checkout@v6 with: fetch-depth: 0 - name: Setup dotnet uses: actions/setup-dotnet@v5 with: dotnet-version: 10.x cache: false - name: Restore dependencies run: | set -ex dotnet restore -v q echo "CI_SERVER_HOST=${GITEA_SERVER_URL#https://}" >> "$GITEA_ENV" - name: Setup tools run: | set -ex dotnet tool install dotnet-reportgenerator-globaltool --tool-path /dotnet-tools dotnet tool install docfx --tool-path /dotnet-tools - name: Build solution shell: bash run: | set -ex shopt -s globstar mkdir /artifacts dotnet build -c ${CONFIGURATION} --no-restore --nologo - name: Test solution run: | set -ex dotnet test -c ${CONFIGURATION} --no-build --nologo /p:CoverletOutputFormat=Cobertura /dotnet-tools/reportgenerator "-reports:${{ gitea.workspace }}/**/coverage.cobertura.xml" "-targetdir:/reports" "-reportType:TextSummary" cat /reports/Summary.txt - name: Publish documentation env: DOCFX_SOURCE_REPOSITORY_URL: 'https://github.com/AM-WD/cloudflare-api' run: | set -ex /dotnet-tools/docfx metadata docs/docfx.json /dotnet-tools/docfx build docs/docfx.json tar -C "${{ gitea.workspace }}/docs/_site" -czf "/artifacts/docs.tar.gz" . curl -sSL --no-progress-meter --user "${{ secrets.DOCS_DEPLOY_USER }}:${{ secrets.DOCS_DEPLOY_PASS }}" -F docs=cloudflare -F dump=@/artifacts/docs.tar.gz "${{ vars.DOCS_DEPLOY_URL }}" - name: Upload artifacts uses: actions/upload-artifact@v3 with: name: cloudflare-docs path: | ${{ gitea.workspace }}/docs/_site