-
Notifications
You must be signed in to change notification settings - Fork 273
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
.NET Isolated support + more efficient out-of-proc protocol (#2046)
* Adds .NET 6.0 target for the WebJobs extension * Adds .NET Isolated worker extension * Adds automated smoke testing in GitHub actions
- Loading branch information
Showing
69 changed files
with
8,769 additions
and
1,667 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,14 @@ | ||
# Azure Functions artifacts | ||
bin | ||
obj | ||
appsettings.json | ||
local.settings.json | ||
|
||
# Other | ||
.funcignore | ||
.gitignore | ||
.ionide | ||
.git | ||
.vs | ||
.vscode | ||
node_modules |
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,148 @@ | ||
# Rules in this file were initially inferred by Visual Studio IntelliCode from the C:\GitHub\azure-functions-durable-extension codebase based on best match to current usage at 10/25/2021 | ||
# You can modify the rules from these initially generated values to suit your own policies | ||
# You can learn more about editorconfig here: https://docs.microsoft.com/en-us/visualstudio/ide/editorconfig-code-style-settings-reference | ||
[*.cs] | ||
|
||
|
||
#Core editorconfig formatting - indentation | ||
|
||
#use soft tabs (spaces) for indentation | ||
indent_style = space | ||
|
||
#Formatting - indentation options | ||
|
||
#indent switch case contents. | ||
csharp_indent_case_contents = true | ||
#csharp_indent_case_contents_when_block | ||
csharp_indent_case_contents_when_block = true | ||
#indent switch labels | ||
csharp_indent_switch_labels = true | ||
|
||
#Formatting - new line options | ||
|
||
#place catch statements on a new line | ||
csharp_new_line_before_catch = true | ||
#place else statements on a new line | ||
csharp_new_line_before_else = true | ||
#require members of anonymous types to be on separate lines | ||
csharp_new_line_before_members_in_anonymous_types = true | ||
#require members of object intializers to be on separate lines | ||
csharp_new_line_before_members_in_object_initializers = true | ||
#require braces to be on a new line for object_collection_array_initializers, properties, lambdas, types, anonymous_types, methods, accessors, and control_blocks (also known as "Allman" style) | ||
csharp_new_line_before_open_brace = object_collection_array_initializers, properties, lambdas, types, anonymous_types, methods, accessors, control_blocks | ||
|
||
#Formatting - organize using options | ||
|
||
#sort System.* using directives alphabetically, and place them before other usings | ||
dotnet_sort_system_directives_first = true | ||
|
||
#Formatting - spacing options | ||
|
||
#require NO space between a cast and the value | ||
csharp_space_after_cast = false | ||
#require a space before the colon for bases or interfaces in a type declaration | ||
csharp_space_after_colon_in_inheritance_clause = true | ||
#require a space after a keyword in a control flow statement such as a for loop | ||
csharp_space_after_keywords_in_control_flow_statements = true | ||
#require a space before the colon for bases or interfaces in a type declaration | ||
csharp_space_before_colon_in_inheritance_clause = true | ||
#remove space within empty argument list parentheses | ||
csharp_space_between_method_call_empty_parameter_list_parentheses = false | ||
#remove space between method call name and opening parenthesis | ||
csharp_space_between_method_call_name_and_opening_parenthesis = false | ||
#do not place space characters after the opening parenthesis and before the closing parenthesis of a method call | ||
csharp_space_between_method_call_parameter_list_parentheses = false | ||
#remove space within empty parameter list parentheses for a method declaration | ||
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false | ||
#place a space character after the opening parenthesis and before the closing parenthesis of a method declaration parameter list. | ||
csharp_space_between_method_declaration_parameter_list_parentheses = false | ||
|
||
#Formatting - wrapping options | ||
|
||
#leave code block on single line | ||
csharp_preserve_single_line_blocks = true | ||
#leave statements and member declarations on the same line | ||
csharp_preserve_single_line_statements = true | ||
|
||
#Style - Code block preferences | ||
|
||
#prefer curly braces even for one line of code | ||
csharp_prefer_braces = true:suggestion | ||
|
||
#Style - expression bodied member options | ||
|
||
#prefer block bodies for accessors | ||
csharp_style_expression_bodied_accessors = false:suggestion | ||
#prefer block bodies for constructors | ||
csharp_style_expression_bodied_constructors = false:suggestion | ||
#prefer block bodies for methods | ||
csharp_style_expression_bodied_methods = false:suggestion | ||
#prefer expression-bodied members for properties | ||
csharp_style_expression_bodied_properties = true:suggestion | ||
|
||
#Style - expression level options | ||
|
||
#prefer out variables to be declared inline in the argument list of a method call when possible | ||
csharp_style_inlined_variable_declaration = true:suggestion | ||
#prefer tuple names to ItemX properties | ||
dotnet_style_explicit_tuple_names = true:suggestion | ||
#prefer the language keyword for member access expressions, instead of the type name, for types that have a keyword to represent them | ||
dotnet_style_predefined_type_for_member_access = true:suggestion | ||
|
||
#Style - Expression-level preferences | ||
|
||
#prefer objects to be initialized using object initializers when possible | ||
dotnet_style_object_initializer = true:suggestion | ||
#prefer inferred anonymous type member names | ||
dotnet_style_prefer_inferred_anonymous_type_member_names = false:suggestion | ||
#prefer inferred tuple element names | ||
dotnet_style_prefer_inferred_tuple_names = true:suggestion | ||
|
||
#Style - implicit and explicit types | ||
|
||
#prefer var over explicit type in all cases, unless overridden by another code style rule | ||
csharp_style_var_elsewhere =false:suggestion | ||
#prefer var is used to declare variables with built-in system types such as int | ||
csharp_style_var_for_built_in_types =false:suggestion | ||
#prefer var when the type is already mentioned on the right-hand side of a declaration expression | ||
csharp_style_var_when_type_is_apparent = true:suggestion | ||
|
||
#Style - language keyword and framework type options | ||
|
||
#prefer the language keyword for local variables, method parameters, and class members, instead of the type name, for types that have a keyword to represent them | ||
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion | ||
|
||
#Style - Miscellaneous preferences | ||
|
||
#prefer local functions over anonymous functions | ||
csharp_style_pattern_local_over_anonymous_function = true:suggestion | ||
|
||
#Style - modifier options | ||
|
||
#prefer accessibility modifiers to be declared except for public interface members. This will currently not differ from always and will act as future proofing for if C# adds default interface methods. | ||
dotnet_style_require_accessibility_modifiers = for_non_interface_members:suggestion | ||
|
||
#Style - Modifier preferences | ||
|
||
#when this rule is set to a list of modifiers, prefer the specified ordering. | ||
csharp_preferred_modifier_order = public,private,internal,protected,static,readonly,async,override,abstract,virtual,sealed:suggestion | ||
|
||
#Style - Pattern matching | ||
|
||
#prefer pattern matching instead of is expression with type casts | ||
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion | ||
|
||
#Style - qualification options | ||
|
||
#prefer fields not to be prefaced with this. or Me. in Visual Basic | ||
dotnet_style_qualification_for_field = false:suggestion | ||
#prefer methods to be prefaced with this. in C# or Me. in Visual Basic | ||
dotnet_style_qualification_for_method = true:suggestion | ||
#prefer properties not to be prefaced with this. or Me. in Visual Basic | ||
dotnet_style_qualification_for_property = false:suggestion | ||
csharp_using_directive_placement=outside_namespace:suggestion | ||
|
||
[*.{cs,vb}] | ||
dotnet_style_qualification_for_field=true:suggestion | ||
dotnet_style_qualification_for_property=true:suggestion | ||
dotnet_style_qualification_for_event=false:suggestion |
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
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,24 @@ | ||
name: Smoke Test - .NET Isolated | ||
|
||
on: | ||
push: | ||
branches: [ main, dev ] | ||
paths: | ||
- 'src/**' | ||
- 'test/SmokeTests/OOProcSmokeTests/DotNetIsolated/**' | ||
pull_request: | ||
branches: [ main, dev ] | ||
paths: | ||
- 'src/**' | ||
- 'test/SmokeTests/OOProcSmokeTests/DotNetIsolated/**' | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
|
||
# Validation is blocked on https://github.com/Azure/azure-functions-host/issues/7995 | ||
- name: Run .NET Isolated Smoke Test | ||
run: test/SmokeTests/e2e-test.ps1 -DockerfilePath test/SmokeTests/OOProcSmokeTests/DotNetIsolated/Dockerfile -HttpStartPath api/StartHelloCitiesTyped -NoValidation | ||
shell: pwsh |
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,22 @@ | ||
name: Smoke Test - .NET V3 | ||
|
||
on: | ||
push: | ||
branches: [ main, dev ] | ||
paths: | ||
- 'src/**' | ||
- 'test/SmokeTests/SmokeTestsV3/**' | ||
pull_request: | ||
branches: [ main, dev ] | ||
paths: | ||
- 'src/**' | ||
- 'test/SmokeTests/SmokeTestsV3/**' | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Run .NET V3 Smoke Test | ||
run: test/SmokeTests/e2e-test.ps1 -DockerfilePath test/SmokeTests/SmokeTestsV3/Dockerfile -HttpStartPath api/HttpStart | ||
shell: pwsh |
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,22 @@ | ||
name: Smoke Test - Node14 V4 | ||
|
||
on: | ||
push: | ||
branches: [ main, dev ] | ||
paths: | ||
- 'src/**' | ||
- 'test/SmokeTests/OOProcSmokeTests/durableJS/**' | ||
pull_request: | ||
branches: [ main, dev ] | ||
paths: | ||
- 'src/**' | ||
- 'test/SmokeTests/OOProcSmokeTests/durableJS/**' | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Run Node14 V4 Smoke Test | ||
run: test/SmokeTests/e2e-test.ps1 -DockerfilePath test/SmokeTests/OOProcSmokeTests/durableJS/Dockerfile -HttpStartPath api/DurableFunctionsHttpStart | ||
shell: pwsh |
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
Oops, something went wrong.