This repository has been archived by the owner on Oct 13, 2024. It is now read-only.
style: add Sonar and StyleCop Analyzers #373
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: CI | |
on: | |
pull_request: | |
branches: [master] | |
types: [opened, synchronize, reopened] | |
push: | |
branches: [master] | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
setup_release: | |
name: Setup Release | |
outputs: | |
changelog_changes: ${{ steps.setup_release.outputs.changelog_changes }} | |
changelog_date: ${{ steps.setup_release.outputs.changelog_date }} | |
changelog_exists: ${{ steps.setup_release.outputs.changelog_exists }} | |
changelog_release_exists: ${{ steps.setup_release.outputs.changelog_release_exists }} | |
changelog_url: ${{ steps.setup_release.outputs.changelog_url }} | |
changelog_version: ${{ steps.setup_release.outputs.changelog_version }} | |
publish_pre_release: ${{ steps.setup_release.outputs.publish_pre_release }} | |
publish_release: ${{ steps.setup_release.outputs.publish_release }} | |
publish_stable_release: ${{ steps.setup_release.outputs.publish_stable_release }} | |
release_body: ${{ steps.setup_release.outputs.release_body }} | |
release_build: ${{ steps.setup_release.outputs.release_build }} | |
release_commit: ${{ steps.setup_release.outputs.release_commit }} | |
release_generate_release_notes: ${{ steps.setup_release.outputs.release_generate_release_notes }} | |
release_tag: ${{ steps.setup_release.outputs.release_tag }} | |
release_version: ${{ steps.setup_release.outputs.release_version }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Release | |
id: setup_release | |
uses: LizardByte/setup-release-action@v2023.1210.1904 | |
with: | |
dotnet: true | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
build: | |
needs: | |
- setup_release | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup .NET | |
uses: actions/setup-dotnet@v4.0.0 | |
with: | |
dotnet-version: "6.0.x" | |
- name: Build Plugin | |
id: jprm | |
uses: oddstr13/jellyfin-plugin-repository-manager@v1.0.11 | |
with: | |
path: . | |
output: ./build | |
version: ${{ needs.setup_release.outputs.release_version }} | |
dotnet-config: Release | |
dotnet-target: net6.0 | |
verbosity: debug | |
- name: Unit Test | |
id: test | |
run: | | |
dotnet test /p:CollectCoverage=true /p:CoverletOutputFormat=opencover | |
- name: Upload coverage | |
# any except cancelled or skipped | |
if: always() && (steps.test.outcome == 'success' || steps.test.outcome == 'failure') | |
uses: codecov/codecov-action@v3 | |
- name: Rename artifacts | |
run: | | |
mkdir -p artifacts | |
mv ./build/*.zip ./artifacts/themerr-jellyfin.zip | |
- name: Upload Artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: themerr-jellyfin | |
if-no-files-found: error | |
path: artifacts/ | |
- name: Create/Update GitHub Release | |
if: ${{ needs.setup_release.outputs.publish_release == 'true' }} | |
uses: LizardByte/create-release-action@v2023.1210.832 | |
with: | |
allowUpdates: true | |
body: '' | |
discussionCategory: announcements | |
generateReleaseNotes: true | |
name: ${{ needs.setup_release.outputs.release_tag }} | |
prerelease: ${{ needs.setup_release.outputs.publish_pre_release }} | |
tag: ${{ needs.setup_release.outputs.release_tag }} | |
token: ${{ secrets.GH_BOT_TOKEN }} | |
- name: Create/Update Jellyfin Release | |
if: ${{ needs.setup_release.outputs.publish_release == 'true' }} | |
uses: LizardByte/jellyfin-plugin-repo@v2023.1214.42902 | |
with: | |
github_token: ${{ secrets.GH_BOT_TOKEN }} | |
committer_email: ${{ secrets.GH_BOT_EMAIL }} | |
committer_name: ${{ secrets.GH_BOT_NAME }} | |
release_tag: ${{ needs.setup_release.outputs.release_tag }} | |
zipfile: ./artifacts/themerr-jellyfin.zip |