-
-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #31 from h1dden-da3m0n/chore/ci
chore(ci): builds, releas drafter and more
- Loading branch information
Showing
8 changed files
with
352 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,194 @@ | ||
# With more recent updates Visual Studio 2017 supports EditorConfig files out of the box | ||
# Visual Studio Code needs an extension: https://github.com/editorconfig/editorconfig-vscode | ||
# For emacs, vim, np++ and other editors, see here: https://github.com/editorconfig | ||
############################### | ||
# Core EditorConfig Options # | ||
############################### | ||
root = true | ||
# All files | ||
[*] | ||
indent_style = space | ||
indent_size = 4 | ||
charset = utf-8 | ||
trim_trailing_whitespace = true | ||
insert_final_newline = true | ||
end_of_line = lf | ||
max_line_length = 9999 | ||
|
||
# YAML indentation | ||
[*.{yml,yaml}] | ||
indent_size = 2 | ||
|
||
# XML indentation | ||
[*.{csproj,xml}] | ||
indent_size = 2 | ||
|
||
############################### | ||
# .NET Coding Conventions # | ||
############################### | ||
[*.{cs,vb}] | ||
# Organize usings | ||
dotnet_sort_system_directives_first = true | ||
# this. preferences | ||
dotnet_style_qualification_for_field = false:silent | ||
dotnet_style_qualification_for_property = false:silent | ||
dotnet_style_qualification_for_method = false:silent | ||
dotnet_style_qualification_for_event = false:silent | ||
# Language keywords vs BCL types preferences | ||
dotnet_style_predefined_type_for_locals_parameters_members = true:silent | ||
dotnet_style_predefined_type_for_member_access = true:silent | ||
# Parentheses preferences | ||
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:silent | ||
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:silent | ||
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent | ||
dotnet_style_parentheses_in_other_operators = never_if_unnecessary:silent | ||
# Modifier preferences | ||
dotnet_style_require_accessibility_modifiers = for_non_interface_members:silent | ||
dotnet_style_readonly_field = true:suggestion | ||
# Expression-level preferences | ||
dotnet_style_object_initializer = true:suggestion | ||
dotnet_style_collection_initializer = true:suggestion | ||
dotnet_style_explicit_tuple_names = true:suggestion | ||
dotnet_style_null_propagation = true:suggestion | ||
dotnet_style_coalesce_expression = true:suggestion | ||
dotnet_style_prefer_is_null_check_over_reference_equality_method = true:silent | ||
dotnet_style_prefer_inferred_tuple_names = true:suggestion | ||
dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion | ||
dotnet_style_prefer_auto_properties = true:silent | ||
dotnet_style_prefer_conditional_expression_over_assignment = true:silent | ||
dotnet_style_prefer_conditional_expression_over_return = true:silent | ||
|
||
############################### | ||
# Naming Conventions # | ||
############################### | ||
# Style Definitions (From Roslyn) | ||
|
||
# Non-private static fields are PascalCase | ||
dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.severity = suggestion | ||
dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.symbols = non_private_static_fields | ||
dotnet_naming_rule.non_private_static_fields_should_be_pascal_case.style = non_private_static_field_style | ||
|
||
dotnet_naming_symbols.non_private_static_fields.applicable_kinds = field | ||
dotnet_naming_symbols.non_private_static_fields.applicable_accessibilities = public, protected, internal, protected_internal, private_protected | ||
dotnet_naming_symbols.non_private_static_fields.required_modifiers = static | ||
|
||
dotnet_naming_style.non_private_static_field_style.capitalization = pascal_case | ||
|
||
# Constants are PascalCase | ||
dotnet_naming_rule.constants_should_be_pascal_case.severity = suggestion | ||
dotnet_naming_rule.constants_should_be_pascal_case.symbols = constants | ||
dotnet_naming_rule.constants_should_be_pascal_case.style = constant_style | ||
|
||
dotnet_naming_symbols.constants.applicable_kinds = field, local | ||
dotnet_naming_symbols.constants.required_modifiers = const | ||
|
||
dotnet_naming_style.constant_style.capitalization = pascal_case | ||
|
||
# Static fields are camelCase and start with s_ | ||
dotnet_naming_rule.static_fields_should_be_camel_case.severity = suggestion | ||
dotnet_naming_rule.static_fields_should_be_camel_case.symbols = static_fields | ||
dotnet_naming_rule.static_fields_should_be_camel_case.style = static_field_style | ||
|
||
dotnet_naming_symbols.static_fields.applicable_kinds = field | ||
dotnet_naming_symbols.static_fields.required_modifiers = static | ||
|
||
dotnet_naming_style.static_field_style.capitalization = camel_case | ||
dotnet_naming_style.static_field_style.required_prefix = _ | ||
|
||
# Instance fields are camelCase and start with _ | ||
dotnet_naming_rule.instance_fields_should_be_camel_case.severity = suggestion | ||
dotnet_naming_rule.instance_fields_should_be_camel_case.symbols = instance_fields | ||
dotnet_naming_rule.instance_fields_should_be_camel_case.style = instance_field_style | ||
|
||
dotnet_naming_symbols.instance_fields.applicable_kinds = field | ||
|
||
dotnet_naming_style.instance_field_style.capitalization = camel_case | ||
dotnet_naming_style.instance_field_style.required_prefix = _ | ||
|
||
# Locals and parameters are camelCase | ||
dotnet_naming_rule.locals_should_be_camel_case.severity = suggestion | ||
dotnet_naming_rule.locals_should_be_camel_case.symbols = locals_and_parameters | ||
dotnet_naming_rule.locals_should_be_camel_case.style = camel_case_style | ||
|
||
dotnet_naming_symbols.locals_and_parameters.applicable_kinds = parameter, local | ||
|
||
dotnet_naming_style.camel_case_style.capitalization = camel_case | ||
|
||
# Local functions are PascalCase | ||
dotnet_naming_rule.local_functions_should_be_pascal_case.severity = suggestion | ||
dotnet_naming_rule.local_functions_should_be_pascal_case.symbols = local_functions | ||
dotnet_naming_rule.local_functions_should_be_pascal_case.style = local_function_style | ||
|
||
dotnet_naming_symbols.local_functions.applicable_kinds = local_function | ||
|
||
dotnet_naming_style.local_function_style.capitalization = pascal_case | ||
|
||
# By default, name items with PascalCase | ||
dotnet_naming_rule.members_should_be_pascal_case.severity = suggestion | ||
dotnet_naming_rule.members_should_be_pascal_case.symbols = all_members | ||
dotnet_naming_rule.members_should_be_pascal_case.style = pascal_case_style | ||
|
||
dotnet_naming_symbols.all_members.applicable_kinds = * | ||
|
||
dotnet_naming_style.pascal_case_style.capitalization = pascal_case | ||
|
||
############################### | ||
# C# Coding Conventions # | ||
############################### | ||
[*.cs] | ||
# var preferences | ||
csharp_style_var_for_built_in_types = true:silent | ||
csharp_style_var_when_type_is_apparent = true:silent | ||
csharp_style_var_elsewhere = true:silent | ||
# Expression-bodied members | ||
csharp_style_expression_bodied_methods = false:silent | ||
csharp_style_expression_bodied_constructors = false:silent | ||
csharp_style_expression_bodied_operators = false:silent | ||
csharp_style_expression_bodied_properties = true:silent | ||
csharp_style_expression_bodied_indexers = true:silent | ||
csharp_style_expression_bodied_accessors = true:silent | ||
# Pattern matching preferences | ||
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion | ||
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion | ||
# Null-checking preferences | ||
csharp_style_throw_expression = true:suggestion | ||
csharp_style_conditional_delegate_call = true:suggestion | ||
# Modifier preferences | ||
csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async:suggestion | ||
# Expression-level preferences | ||
csharp_prefer_braces = true:silent | ||
csharp_style_deconstructed_variable_declaration = true:suggestion | ||
csharp_prefer_simple_default_expression = true:suggestion | ||
csharp_style_pattern_local_over_anonymous_function = true:suggestion | ||
csharp_style_inlined_variable_declaration = true:suggestion | ||
|
||
############################### | ||
# C# Formatting Rules # | ||
############################### | ||
# New line preferences | ||
csharp_new_line_before_open_brace = all | ||
csharp_new_line_before_else = true | ||
csharp_new_line_before_catch = true | ||
csharp_new_line_before_finally = true | ||
csharp_new_line_before_members_in_object_initializers = true | ||
csharp_new_line_before_members_in_anonymous_types = true | ||
csharp_new_line_between_query_expression_clauses = true | ||
# Indentation preferences | ||
csharp_indent_case_contents = true | ||
csharp_indent_switch_labels = true | ||
csharp_indent_labels = flush_left | ||
# Space preferences | ||
csharp_space_after_cast = false | ||
csharp_space_after_keywords_in_control_flow_statements = true | ||
csharp_space_between_method_call_parameter_list_parentheses = false | ||
csharp_space_between_method_declaration_parameter_list_parentheses = false | ||
csharp_space_between_parentheses = false | ||
csharp_space_before_colon_in_inheritance_clause = true | ||
csharp_space_after_colon_in_inheritance_clause = true | ||
csharp_space_around_binary_operators = before_and_after | ||
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false | ||
csharp_space_between_method_call_name_and_opening_parenthesis = false | ||
csharp_space_between_method_call_empty_parameter_list_parentheses = false | ||
# Wrapping preferences | ||
csharp_preserve_single_line_statements = true | ||
csharp_preserve_single_line_blocks = true |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
version: 2 | ||
updates: | ||
# Fetch and update latest `nuget` pkgs | ||
- package-ecosystem: nuget | ||
directory: / | ||
schedule: | ||
interval: daily | ||
time: '00:00' | ||
open-pull-requests-limit: 10 | ||
commit-message: | ||
prefix: chore | ||
include: scope | ||
|
||
# Fetch and update latest `github-actions` pkgs | ||
- package-ecosystem: github-actions | ||
directory: / | ||
schedule: | ||
interval: weekly | ||
time: '00:00' | ||
open-pull-requests-limit: 10 | ||
commit-message: | ||
prefix: chore | ||
include: scope |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
_extends: jellyfin-meta-plugins | ||
|
||
template: | | ||
<!-- Optional: add a release summary here --> | ||
[Plugin build can be downloaded here](https://repo.jellyfin.org/releases/plugin/bookshelf/bookshelf_$NEXT_MAJOR_VERSION.0.0.0.zip). | ||
## :sparkles: What's New | ||
$CHANGES |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
name: Test Build Plugin | ||
|
||
on: | ||
push: | ||
branches: [ master ] | ||
paths-ignore: | ||
- '**/*.md' | ||
pull_request: | ||
branches: [ master ] | ||
paths-ignore: | ||
- '**/*.md' | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
|
||
- name: Setup .NET Core | ||
uses: actions/setup-dotnet@v1 | ||
with: | ||
dotnet-version: 5.0.x | ||
|
||
- name: Install dependencies | ||
run: dotnet restore | ||
|
||
- name: Build | ||
run: dotnet build --configuration Release | ||
|
||
- name: Test | ||
run: dotnet test --no-restore --verbosity normal |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
name: Run CodeQL | ||
|
||
on: | ||
push: | ||
branches: [ master ] | ||
paths-ignore: | ||
- '**/*.md' | ||
pull_request: | ||
branches: [ master ] | ||
paths-ignore: | ||
- '**/*.md' | ||
schedule: | ||
- cron: '24 2 * * 4' | ||
|
||
jobs: | ||
analyze: | ||
name: Analyze | ||
runs-on: ubuntu-latest | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
language: [ 'csharp' ] | ||
|
||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v2 | ||
|
||
- name: Setup .NET Core | ||
uses: actions/setup-dotnet@v1 | ||
with: | ||
dotnet-version: 5.0.x | ||
|
||
- name: Initialize CodeQL | ||
uses: github/codeql-action/init@v1 | ||
with: | ||
languages: ${{ matrix.language }} | ||
queries: +security-and-quality | ||
|
||
- name: Autobuild | ||
uses: github/codeql-action/autobuild@v1 | ||
|
||
- name: Perform CodeQL Analysis | ||
uses: github/codeql-action/analyze@v1 |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
name: Publish Drafted GitHub Release | ||
|
||
on: | ||
push: | ||
tags: [ 'v*' ] | ||
|
||
jobs: | ||
publish_release_draft: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Get version from GITHUB_REF | ||
id: get-version | ||
run: echo "::set-output name=version::${GITHUB_REF/refs\/tags\//}" | ||
|
||
- name: Publish release on GitHub | ||
uses: test-room-7/action-publish-release-drafts@v0 | ||
with: | ||
github-token: ${{ secrets.GITHUB_TOKEN }} | ||
tag-name: ${{ steps.get-version.outputs.version }} |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# Automates creation of Release Drafts using Release Drafter | ||
name: Update Release Draft | ||
|
||
on: | ||
push: | ||
branches: | ||
- master | ||
|
||
jobs: | ||
update_release_draft: | ||
runs-on: ubuntu-latest | ||
steps: | ||
# Drafts your next Release notes as Pull Requests are merged into "master" | ||
- uses: release-drafter/[email protected] | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
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