title: JSON Schema for Beef Entity code-generation (https://github.com/Avanade/Beef).

title: 'CodeGeneration' object (entity-driven)

description: The 'CodeGeneration' object defines global properties that are used to drive the underlying entity-driven code generation.

title: Indicates whether to use 'CoreEx.Results' (aka Railway-oriented programming).

description: Defaults to 'true'. This can be overridden within the 'Entity'(s) and/or 'Operation'(s).

title: Indicates whether to use preprocessor directives in the generated output.

title: The namespace for the Reference Data entities (adds as a c# 'using' statement).

description: Defaults to 'Company' + '.' (literal) + AppName + '.Business.Entities' (literal).

title: The namespace for the Reference Data common entities (adds as a c# 'using' statement).

description: Defaults to 'Company' + '.' (literal) + AppName + '.Common.Entities' (literal).

title: Indicates whether a corresponding 'Text' property is added when generating a Reference Data 'Property' for an 'Entity'.

description: This is used where serializing within the Web API 'Controller' and the 'ExecutionContext.IsRefDataTextSerializationEnabled' is set to 'true' (which is automatically set where the url contains '$text=true'). This can be further configured on the 'Entity' and for each 'Property'.

title: The 'RouteAtttribute' for the Reference Data Web API controller required for named pre-fetching. The 'WebApiRoutePrefix' will be prepended where specified.

title: The list of additional (non-inferred) Dependency Injection (DI) parameters for the generated 'ReferenceDataData' constructor.

description: Each constructor parameter should be formatted as 'Type' + '^' + 'Name'; e.g. 'IConfiguration^Config'. Where the 'Name' portion is not specified it will be inferred. Where the 'Type' matches an already inferred value it will be ignored.

title: The JSON Serializer to use for JSON property attribution.

description: Defaults to 'SystemText'. This can be overridden within the 'Entity'(s).

enum: SystemText Newtonsoft

title: The default JSON name for the 'ETag' property.

description: Defaults to 'etag'. Note that the 'JsonName' can be set individually per property where required.

enum: etag eTag _etag _eTag ETag ETAG

title: The additional Namespace using statement to be added to the generated 'Entity' code.

description: Typically used where referening a 'Type' from a Namespace that is not generated by default.

title: The authorize attribute value to be used for the corresponding entity Web API controller; generally either 'Authorize' or 'AllowAnonymous'.

description: This can be overridden within the 'Entity'(s) and/or their corresponding 'Operation'(s).

title: Indicates whether the HTTP Response Location Header route ('Operation.WebApiLocation') is automatically inferred.

description: This will automatically set the 'Operation.WebApiLocation' for an 'Operation' named 'Create' where there is a corresponding named 'Get'. This can be overridden within the 'Entity'(s).

title: The 'RoutePrefixAtttribute' for the corresponding entity Web API controller.

description: This is the base (prefix) 'URI' prepended to all entity and underlying 'Operation'(s).

title: Indicates whether a 'Cleaner.Cleanup' is performed for the operation parameters within the Manager-layer.

description: This can be overridden within the 'Entity'(s) and 'Operation'(s).

title: The 'Validation' framework to use for the entity-based validation.

description: Defaults to 'CoreEx' (literal). This can be overridden within the 'Entity'(s), 'Operation'(s) and 'Parameter'(s).

enum: CoreEx FluentValidation

title: The .NET database interface name (used where 'Operation.AutoImplement' is 'Database').

description: Defaults to 'IDatabase'. This can be overridden within the 'Entity'(s).

title: The default database schema name.

description: Defaults to 'dbo'.

title: The default database schema name.

description: Defaults to 'SqlServer'. Enables specific database provider functionality/formatting/etc. where applicable.

enum: SqlServer MySQL

title: The .NET Entity Framework interface name used where 'Operation.AutoImplement' is 'EntityFramework'.

description: Defaults to 'IEfDb'. This can be overridden within the 'Entity'(s).

title: The .NET Entity Framework interface name used where 'Operation.AutoImplement' is 'Cosmos'.

description: Defaults to 'ICosmosDb'. This can be overridden within the 'Entity'(s).

title: The .NET OData interface name used where 'Operation.AutoImplement' is 'OData'.

description: Defaults to 'IOData'. This can be overridden within the 'Entity'(s).

title: The default .NET HTTP Agent interface name used where 'Operation.AutoImplement' is 'HttpAgent'.

description: Defaults to 'IHttpAgent'. This can be overridden within the 'Entity'(s).

title: The default ETag to/from RowVersion column Mapping Converter used where 'Operation.AutoImplement' is 'Database' or 'EntityFramework'.

description: Defaults to 'StringToBase64Converter'.

title: The default Reference Data property 'Converter' used by the generated 'Mapper'(s) where not specifically defined.

description: Defaults to 'ReferenceDataCodeConverter<T>'. Where this value is suffixed by '<T>' or '{T}' this will automatically be set to the 'Type'.

title: The Reference Data 'Code' data name.

description: Defaults to 'Code' (literal).

title: The Reference Data 'Text' data name.

description: Defaults to 'Text' (literal).

title: The Reference Data 'IsActive' data name.

description: Defaults to 'IsActive' (literal).

title: The Reference Data 'SortOrder' data name.

description: Defaults to 'SortOrder' (literal).

title: The Reference Data 'ETag' data name.

description: Defaults to 'RowVersion' (literal).

title: The layer to add logic to publish an event for a 'Create', 'Update' or 'Delete' operation.

description: Defaults to 'DataSvc'. Used to enable the sending of messages to the likes of EventHub, ServiceBus, SignalR, etc. This can be overridden within the 'Entity'(s).

enum: None DataSvc Data

title: The URI root for the event source by prepending to all event source URIs.

description: The event source is only updated where an 'EventSourceKind' is not 'None'. This can be extended within the 'Entity'(s).

title: The URI kind for the event source URIs.

description: Defaults to 'None' (being the event source is not updated).

enum: None Absolute Relative RelativeOrAbsolute

title: The root for the event Subject name by prepending to all event subject names.

description: Used to enable the sending of messages to the likes of EventHub, ServiceBus, SignalR, etc. This can be overridden within the 'Entity'(s).

title: The subject path separator.

description: Defaults to '.'. Used only where the subject is automatically inferred.

title: The formatting for the Action when an Event is published.

description: Defaults to 'None' (no formatting required, i.e. as-is)'.

title: Indicates whether a 'System.TransactionScope' should be created and orchestrated at the 'DataSvc'-layer whereever generating event publishing logic.

description: Usage will force a rollback of any underlying data transaction (where the provider supports TransactionScope) on failure, such as an 'EventPublish' error. This is by no means implying a Distributed Transaction (DTC) should be invoked; this is only intended for a single data source that supports a TransactionScope to guarantee reliable event publishing. Defaults to 'false'. This essentially defaults the 'Entity.EventTransaction' where not otherwise specified. This should only be used where 'EventPublish' is 'DataSvc' and a transactionally-aware data source is being used.

title: Indicates whether gRPC support (more specifically service-side) is required.

description: gRPC support is an explicit opt-in model. Must be set to 'true' for any of the subordinate gRPC capabilities to be code-generated. Will require each 'Entity', and corresponding 'Property' and 'Operation' to be opted-in specifically.

title: The base path (directory) prefix for the artefacts; other 'Path*' properties append to this value when they are not specifically overridden.

description: Defaults to 'Company' (runtime parameter) + '.' + 'AppName' (runtime parameter). For example 'Beef.Demo'.

title: The path (directory) for the Database-related artefacts.

description: Defaults to 'PathBase' + '.Common' (literal). For example 'Beef.Demo.Common'.

title: The path (directory) for the Business-related (.NET) artefacts.

description: Defaults to 'PathBase' + '.Business' (literal). For example 'Beef.Demo.Business'.

title: The path (directory) for the API-related (.NET) artefacts.

description: Defaults to 'PathBase' + '.' + 'ApiName' (runtime parameter). For example 'Beef.Demo.Api'.

title: The base Namespace (root) for the .NET artefacts.

title: The Namespace (root) for the Common-related .NET artefacts.

description: Defaults to 'NamespaceBase' + '.Common' (literal). For example 'Beef.Demo.Common'.

title: The Namespace (root) for the Business-related .NET artefacts.

description: Defaults to 'NamespaceBase' + '.Business' (literal). For example 'Beef.Demo.Business'.

title: The Namespace (root) for the Api-related .NET artefacts.

description: Defaults to 'NamespaceBase' + '.' + 'ApiName' (runtime parameter). For example 'Beef.Demo.Api'.

title: The corresponding 'Entity' collection.

$ref: #/definitions/Entity

title: 'Entity' object (entity-driven)

description: The 'Entity' is used as the primary configuration for driving the entity-driven code generation.

title: The unique entity name.

title: The overriding text for use in comments.

description: Overrides the Name (as sentence text) for the summary comments. It will be formatted as: 'Represents the {Text} entity.'. To create a '<see cref="XXX"/>' within use moustache shorthand (e.g. {{Xxx}}).

title: The overriding file name.

description: Overrides the Name as the code-generated file name.

title: The overriding private name.

description: Overrides the 'Name' to be used for private fields. By default reformatted from 'Name'; e.g. 'FirstName' as '_firstName'.

title: The overriding argument name.

description: Overrides the 'Name' to be used for argument parameters. By default reformatted from 'Name'; e.g. 'FirstName' as 'firstName'.

title: The Const .NET Type option.

description: The .NET Type to be used for the 'const' values. Defaults to 'string'.

enum: int long Guid string

title: Indicates whether to override the 'IInitial.IsInitial' property.

description: Set to either 'true' or 'false' to override as specified; otherwise, 'null' to check each property. Defaults to 'null'.

description: Defaults to 'CodeGeneration.WithResult'. This can be overridden within the Operation'(s).

title: The Reference Data identifier Type option.

description: Required to identify an entity as being Reference Data. Specifies the underlying .NET Type used for the Reference Data identifier.

title: Indicates whether a corresponding 'Text' property is added when generating a Reference Data 'Property' overriding the 'CodeGeneration.RefDataText' selection.

description: This is used where serializing within the Web API'Controller' and the 'ExecutionContext.IsRefDataTextSerializationEnabled' is set to 'true' (which is automatically set where the url contains '$text=true'). Defaults from 'CodeGeneration.RefDataText'.

title: The Reference Data sort order option.

description: Specifies the default sort order for the underlying Reference Data collection. Defaults to 'SortOrder'.

enum: SortOrder Id Code Text

title: The base class that the entity inherits from.

description: Defaults to 'EntityBase' for a standard entity. For Reference Data it will default to 'ReferenceDataBaseEx<xxx>' depending on the corresponding 'RefDataType' value. See 'OmitEntityBase' if the desired outcome is to not inherit from any of the aforementioned base classes.

title: The list of comma separated interfaces that are to be declared for the entity class.

title: Indicates whether to automatically infer the interface implements for the entity from the properties declared.

description: Will attempt to infer the following: 'IIdentifier<Guid>', 'IIdentifier<int>', 'IIdentifier<long>', 'IIdentifier<string>', 'IETag' and 'IChangeLog'. Defaults to 'true'.

title: Indicates whether the class should be defined as abstract.

title: Indicates whether the class should be defined as a generic with a single parameter 'T'.

title: The entity namespace to be appended.

description: Appended to the end of the standard structure as follows: '{Company}.{AppName}.Business.Entities.{Namespace}'.

title: Indicates that the entity should not inherit from 'EntityBase'.

description: As such any of the 'EntityBase' related capabilites are not supported (are omitted from generation). The intention for this is more for the generation of simple internal entities.

description: Defaults to the 'CodeGeneration.JsonSerializer' configuration property where specified; otherwise, 'SystemText'.

title: Indicates whether the entity is for internal use only; declared in Business entities only.

title: Indicates whether a corresponding entity collection class should be created.

title: Indicates whether a corresponding entity collection result class should be created

description: Enables the likes of additional paging state to be stored with the underlying collection.

title: The entity collection type used where 'CollectionInherits' is not specified.

enum: Standard Keyed Dictionary

title: The base class that a 'Collection' inherits from.

description: Defaults to 'EntityBaseCollection' or 'EntityBaseKeyedCollection' depending on 'CollectionKeyed'. For Reference Data it will default to 'ReferenceDataCollectionBase'.

title: The base class that a 'CollectionResult' inherits from.

description: Defaults to 'EntityCollectionResult'.

title: Indicates that a 'Get' operation will be automatically generated where not otherwise explicitly specified.

title: Indicates that a 'GetAll' operation will be automatically generated where not otherwise explicitly specified.

title: Indicates that a 'Create' operation will be automatically generated where not otherwise explicitly specified.

title: Indicates that a 'Update' operation will be automatically generated where not otherwise explicitly specified.

title: Indicates that a 'Patch' operation will be automatically generated where not otherwise explicitly specified.

title: Indicates that a 'Delete' operation will be automatically generated where not otherwise explicitly specified.

title: The data source auto-implementation option.

description: Defaults to 'None'. Indicates that the implementation for the underlying 'Operations' will be auto-implemented using the selected data source (unless explicity overridden). When selected some of the related attributes will also be required (as documented). Additionally, the 'AutoImplement' indicator must be selected for each underlying 'Operation' that is to be auto-implemented.

enum: Database EntityFramework Cosmos OData HttpAgent None

title: The access modifier for the generated 'Data' constructor.

description: Defaults to 'Public'.

enum: Public Private Protected

title: The list of additional (non-inferred) Dependency Injection (DI) parameters for the generated 'Data' constructor.

title: Indicates whether the 'Data' extensions logic should be generated.

description: This can be overridden using 'Operation.DataExtensions'.

title: The Reference Data 'Id' data name.

description: Defaults to 'Name' + 'Id' (literal).

title: The Reference Data 'Code' data name.

description: Defaults to 'Code' (literal).

title: The Reference Data 'Text' data name.

description: Defaults to 'Text' (literal).

description: Defaults to 'IsActive' (literal).

description: Defaults to 'SortOrder' (literal).

title: The Reference Data 'ETag' data name.

description: Defaults to 'RowVersion' (literal).

title: The Reference Data database stored procedure name.

description: Defaults to 'sp' (literal) + 'Name' + 'GetAll' (literal).

title: The .NET database interface name (used where 'AutoImplement' is 'Database').

description: Defaults to the 'CodeGeneration.DatabaseName' configuration property (its default value is 'IDatabase').

title: The database schema name (used where 'AutoImplement' is 'Database').

description: Defaults to 'dbo'.

title: The name of the 'Mapper' that the generated Database 'Mapper' inherits from.

title: Indicates that a custom Database 'Mapper' will be used; i.e. not generated.

description: Otherwise, by default, a 'Mapper' will be generated.

title: The .NET Entity Framework interface name used where 'AutoImplement' is 'EntityFramework'.

description: Defaults to 'CodeGeneration.EntityFrameworkName'.

title: The corresponding Entity Framework model name (required where 'AutoImplement' is 'EntityFramework').

title: Indicates that a custom Entity Framework 'Mapper' will be used; i.e. not generated.

title: The EntityFramework data-layer name that should be used for base mappings.

title: The .NET Cosmos interface name used where 'AutoImplement' is 'Cosmos'.

description: Defaults to the 'CodeGeneration.CosmosName' configuration property (its default value is 'ICosmosDb').

title: The corresponding Cosmos model name (required where 'AutoImplement' is 'Cosmos').

title: The Cosmos 'ContainerId' required where 'AutoImplement' is 'Cosmos'.

title: The C# code to be used for setting the optional Cosmos 'PartitionKey' where 'AutoImplement' is 'Cosmos'.

description: The value 'PartitionKey.None' can be specified. Literals will need to be quoted.

title: Indicates whether the 'CosmosDbValueContainer' is to be used; otherwise, 'CosmosDbContainer'.

title: Indicates that a custom Cosmos 'Mapper' will be used; i.e. not generated.

title: The Cosmos data-layer name that should be used for base mappings.

title: The .NET OData interface name used where 'AutoImplement' is 'OData'.

description: Defaults to the 'CodeGeneration.ODataName' configuration property (its default value is 'IOData').

title: The corresponding OData model name (required where 'AutoImplement' is 'OData').

title: The name of the underlying OData collection where 'AutoImplement' is 'OData'.

description: The underlying 'Simple.OData.Client' will attempt to infer.

title: Indicates that a custom OData 'Mapper' will be used; i.e. not generated.

title: The .NET HTTP Agent interface name used where 'Operation.AutoImplement' is 'HttpAgent'.

description: Defaults to 'CodeGeneration.HttpAgentName' configuration property (its default value is 'IHttpAgent').

title: The base HTTP Agent API route where 'Operation.AutoImplement' is 'HttpAgent'.

description: This is the base (prefix) 'URI' for the HTTP Agent endpoint and can be further extended when defining the underlying 'Operation'(s).

title: The corresponding HTTP Agent model name (required where 'AutoImplement' is 'HttpAgent').

description: This can be overridden within the 'Operation'(s).

title: The fluent-style method-chaining C# HTTP Agent API code to include where 'Operation.AutoImplement' is 'HttpAgent'.

description: Prepended to 'Operation.HttpAgentCode' where specified to enable standardized functionality.

title: The HTTP Agent data-layer name that should be used for base mappings.

title: Indicates whether request-based 'IRequestCache' caching is to be performed at the 'DataSvc' layer to improve performance (i.e. reduce chattiness).

description: Defaults to 'true'.

title: The access modifier for the generated 'DataSvc' constructor.

description: Defaults to 'Public'.

title: The list of additional (non-inferred) Dependency Injection (DI) parameters for the generated 'DataSvc' constructor.

title: Indicates whether the 'DataSvc' extensions logic should be generated.

description: This can be overridden using 'Operation.DataSvcExtensions'.

description: Defaults to the 'CodeGeneration.EventPublish' configuration property (inherits) where not specified. Used to enable the sending of messages to the likes of EventGrid, Service Broker, SignalR, etc. This can be overridden within the 'Operation'(s).

title: The Event Source.

description: Defaults to 'Name' (as lowercase) appended with the '/{$key}' placeholder. Note: when used in code-generation the 'CodeGeneration.EventSourceRoot' will be prepended where specified. To include the entity id/key include a '{$key}' placeholder ('Create', 'Update' or 'Delete' operation only); for example: 'person/{$key}'. This can be overridden for the 'Operation'.

title: Indicates whether a 'System.TransactionScope' should be created and orchestrated whereever generating event publishing logic.

description: Usage will force a rollback of any underlying data transaction (where the provider supports TransactionScope) on failure, such as an 'EventPublish' error. This is by no means implying a Distributed Transaction (DTC) should be invoked; this is only intended for a single data source that supports a TransactionScope to guarantee reliable event publishing. Defaults to 'CodeGeneration.EventTransaction'. This essentially defaults the 'Operation.DataSvcTransaction' where not otherwise specified. This should only be used where a transactionally-aware data source is being used.

title: The access modifier for the generated 'Manager' constructor.

description: Defaults to 'Public'.

title: The list of additional (non-inferred) Dependency Injection (DI) parameters for the generated 'Manager' constructor.

title: Indicates whether the 'Manager' extensions logic should be generated.

description: This can be overridden using 'Operation.ManagerExtensions'.

title: The name of the .NET implementing 'Type' or interface 'Type' that will perform the validation.

description: Only used for defaulting the 'Create' and 'Update' operation types ('Operation.Type') where not specified explicitly.

title: Indicates whether the 'IIdentifierGenerator' should be used to generate the 'Id' property where the operation types ('Operation.Type') is 'Create'.

description: This can be overridden within the 'CodeGeneration' and 'Operation'(s).

description: Defaults to 'CodeGeneration.ValidationFramework'. This can be overridden within the 'Operation'(s) and 'Parameter'(s).

description: This is the base (prefix) 'URI' for the entity and can be further extended when defining the underlying 'Operation'(s). The 'CodeGeneration.WebApiRoutePrefix' will be prepended where specified.

description: Defaults to the 'CodeGeneration.WebApiAuthorize' configuration property (inherits) where not specified; can be overridden at the 'Operation' level also.

title: The access modifier for the generated Web API 'Controller' constructor.

description: Defaults to 'Public'.

title: The list of additional (non-inferred) Dependency Injection (DI) parameters for the generated 'WebApi' constructor.

description: This will automatically set the 'Operation.WebApiLocation' for an 'Operation' named 'Create' where there is a corresponding named 'Get'. This is defaulted from the 'CodeGen.WebApiAutoLocation'.

title: Indicates whether the Web API is responsible for managing (simulating) concurrency via auto-generated ETag.

description: This provides an alternative where the underlying data source does not natively support optimistic concurrency (native support should always be leveraged as a priority). Where the 'Operation.Type' is 'Update' or 'Patch', the request ETag will be matched against the response for a corresponding 'Get' operation to verify no changes have been made prior to updating. For this to function correctly the .NET response Type for the 'Get' must be the same as that returned from the corresponding 'Create', 'Update' and 'Patch' (where applicable) as the generated ETag is a SHA256 hash of the resulting JSON. This defaults the 'Operation.WebApiConcurrency'.

title: The corresponding 'Get' method name (in the 'XxxManager') where the 'Operation.Type' is 'Update' and 'SimulateConcurrency' is 'true'.

description: Defaults to 'Get'. Specify either just the method name (e.g. 'OperationName') or, interface and method name (e.g. 'IXxxManager.OperationName') to be invoked where in a different 'YyyManager.OperationName'.

title: Indicates whether a data 'model' version of the entity should also be generated (output to '.\Business\Data\Model').

description: The model will be generated with 'OmitEntityBase = true'. Any reference data properties will be defined using their 'RefDataType' intrinsic 'Type' versus their corresponding (actual) reference data 'Type'.

title: Indicates whether to exclude the generation of the 'Entity' class ('Xxx.cs').

title: Indicates whether to exclude the generation of all 'Operation' related artefacts; excluding the 'Entity' class.

description: Is a shorthand means for setting all of the other 'Exclude*' properties (with the exception of 'ExcludeEntity') to exclude.

title: Indicates whether to exclude the generation of the 'Data' interface ('IXxxData.cs').

title: The option to exclude the generation of the 'Data' class ('XxxData.cs').

description: Defaults to 'Include' indicating _not_ to exlude. A value of 'Exclude' indicates to exclude all output; alternatively, 'RequiresMapper' indicates to at least output the corresponding 'Mapper' class.

title: Indicates whether to exclude the generation of the 'DataSvc' interface ('IXxxDataSvc.cs').

title: Indicates whether to exclude the generation of the 'DataSvc' class ('XxxDataSvc.cs').

title: Indicates whether to exclude the generation of the 'Manager' interface ('IXxxManager.cs').

title: Indicates whether to exclude the generation of the 'Manager' class ('XxxManager.cs').

title: The option to exclude the generation of the WebAPI 'Controller' class ('XxxController.cs').

title: Indicates whether to exclude the generation of the WebAPI consuming 'Agent' class ('XxxAgent.cs').

title: Indicates whether to exclude the generation of the gRPC consuming 'Agent' class ('XxxAgent.cs').

title: The role (permission) used by the 'ExecutionContext.IsInRole(role)' for each 'Operation'.

description: Used where not overridden specifically for an 'Operation'; i.e. acts as the default.

title: Indicates whether gRPC support (more specifically service-side) is required for the Entity.

description: gRPC support is an explicit opt-in model (see 'CodeGeneration.Grpc' configuration); therefore, each corresponding 'Property' and 'Operation' will also need to be opted-in specifically.

title: The corresponding 'Property' collection.

title: The corresponding 'Operation' collection.

title: The corresponding 'Consts' collection.

title: 'Property' object (entity-driven)

description: The 'Property' object defines an 'Entity' property and its charateristics.

title: The unique property name.

description: By default the 'Text' will be the 'Name' reformatted as sentence casing. Depending on whether the 'Type' is 'bool', will appear in one of the two generated sentences. Where not 'bool' it will be: Gets or sets a value indicating whether {text}.'. Otherwise, it will be: Gets or sets the {text}.'. To create a '<see cref="XXX"/>' within use moustache shorthand (e.g. {{Xxx}}).

title: The overriding model text for use in comments.

description: By default the 'ModelText' will be the 'Name' reformatted as sentence casing. Depending on whether the 'Type' is 'bool', will appear in one of the two generated sentences. Where not 'bool' it will be: Gets or sets a value indicating whether {text}.'. Otherwise, it will be: Gets or sets the {text}.'. To create a '<see cref="XXX"/>' within use moustache shorthand (e.g. {{Xxx}}).

title: The .NET 'Type'.

description: Defaults to 'string'. To reference a Reference Data 'Type' always prefix with 'RefDataNamespace' (e.g. 'RefDataNamespace.Gender') or shortcut '^' (e.g. '^Gender'). This will ensure that the appropriate Reference Data 'using' statement is used. _Shortcut:_ Where the 'Type' starts with (prefix) 'RefDataNamespace.' or '^', and the correspondong 'RefDataType' attribute is not specified it will automatically default the 'RefDataType' to 'string.'

title: Indicates whether the .NET 'Type' should be declared as nullable; e.g. 'string?'. Will be inferred where the 'Type' is denoted as nullable; i.e. suffixed by a '?'.

title: Indicates whether the property is inherited and therefore should not be output within the generated Entity class.

title: The overriding private name.

title: The overriding argument name.

title: Indicates whether the property is considered part of the primary (unique) key.

description: This is also used to simplify the parameter specification for an Entity Operation by inferrence.

title: Indicates that the property 'Type' is another generated entity / collection and therefore specific capabilities can be assumed (e.g. 'CopyFrom' and 'Clone').

description: Will be inferred (default to 'true') where the 'Type' is 'ChangeLog' or the 'Type' is found as another 'Entity' within the code-generation configuration file.

title: Indicates that the value is immutable and therefore cannot be changed once set.

title: The 'DateTime' transformation to be performed on 'Set' and 'CleanUp'.

description: Defaults to 'UseDefault'. This is only applied where the 'Type' is 'DateTime'.

enum: UseDefault None DateOnly DateTimeLocal DateTimeUtc DateTimeUnspecified

title: The 'string' trimming of white space characters to be performed on 'Set' and 'CleanUp'.

description: Defaults to 'UseDefault'. This is only applied where the 'Type' is 'string'.

title: The 'string' transformation to be performed on 'Set' and 'CleanUp'.

title: The 'string' casing to be performed on 'Set' and 'CleanUp'.

title: Indicates whether an instance of the 'Type' is to be automatically created/instantiated when the property is first accessed (i.e. lazy instantiation).

title: The C# code to default the value.

description: Where the 'Type' is 'string' then the specified default value will need to be delimited. Any valid value assignment C# code can be used.

title: Indicates whether the property is considered part of the Partition Key.

description: This will implement 'IPartitionKey' for the generated entity.

title: Indicates whether the property is for internal use only; declared in Business entities only.

description: In this instance the 'Property' will be excluded from the 'Common' entity declaration and 'Business' JSON serialization.

title: The underlying Reference Data Type that is also used as the Reference Data serialization identifier (SID).

description: Defaults to 'string' (being the 'ReferenceDataBase.Code') where not specified and the corresponding 'Type' starts with (prefix) 'RefDataNamespace.' or '^'. Note: an 'Id' of type 'string' is currently not supported; the use of the 'Code' is the recommended approach.

title: Indicates that the Reference Data property is to be a serializable list ('ReferenceDataSidList').

description: This is required to enable a list of Reference Data values (as per 'RefDataType') to be passed as an argument for example.

title: Indicates whether a corresponding 'Text' property is added when generating a Reference Data property, overriding the 'Entity.RefDataText' selection.

description: This is used where serializing within the Web API 'Controller' and the 'ExecutionContext.IsRefDataTextSerializationEnabled' is set to 'true' (which is automatically set where the url contains '$text=true').'Optional' indicates when 'ExecutionContext.IsRefDataTextSerializationEnabled' is set to 'true' then a value is output, 'Always' indicates that the value is _always_ output, and 'Never' indicates that feature is turned off.

title: The corresponding reference data 'Text' property name; defaults to 'Name' + 'Text'.

title: Indicates whether the property should use the underlying Reference Data mapping capabilities.

description: Mapped properties are a special Reference Data property type that ensure value uniqueness; this allows the likes of additional to/from mappings to occur between systems where applicable.

title: The JSON property name.

description: Defaults to 'ArgumentName' where not specified (i.e. camelCase); however, where the property is 'ETag' it will default to the 'Config.ETagJsonName'.

title: The JSON property name for the corresponding data model (see 'Entity.DataModel').

description: Defaults to 'JsonName' where not specified.

title: Indicates whether the property is not to be serialized.

description: All properties are serialized by default.

title: Indicates whether to include the value (default or otherwise) when serializing.

title: Indicates whether the property is to be included within the data model.

description: All properties are included in the data model by default.

title: Indicates whether the property is not to be serialized where outputting as a data model.

title: The data name where Entity.AutoImplement is selected.

description: Defaults to the property 'Name'. Represents the column name for a 'Database', or the correspinding property name for the other options.

title: The data 'Converter' class name where 'Entity.AutoImplement' is selected.

description: A 'Converter' is used to convert a data source value to/from a .NET 'Type' where no standard data conversion can be applied. Where this value is suffixed by '<T>' or '{T}' this will automatically set 'Type'.

title: Indicates whether the property should be ignored (excluded) from the 'Data'-layer / data 'Mapper' generated output.

description: All properties are included by default.

title: Indicates whether the 'PrimaryKey' property value is automatically generated by the data source on 'Create'.

title: The operations types ('ExecutionContext.OperationType') selection to enable inclusion and exclusion of property mapping.

description: Defaults to 'Any'.

enum: Any AnyExceptCreate AnyExceptUpdate AnyExceptGet Get Create Update Delete

title: The database property 'Mapper' class name where 'Entity.AutoImplement' is selected.

description: A 'Mapper' is used to map a data source value to/from a .NET complex 'Type' (i.e. class with one or more properties).

title: Indicates whether the property should be ignored (excluded) from the database 'Mapper' generated output.

title: The database 'DbType' override (versus inferring from the corresponding .NET Type).

description: Overrides the inferred database type; i.e. can specify 'Date' or 'DateTime2', for .NET Type 'System.DateTime'.

title: The Entity Framework 'Mapper' approach for the property.

description: Defaults to 'Set'.

title: The Cosmos 'Mapper' approach for the property.

description: Defaults to 'Set'.

title: The OData 'Mapper' approach for the property.

description: Defaults to 'Map' which indicates the property will be explicitly mapped. A value of 'Ignore' will explicitly 'Ignore', whilst a value of 'Skip' will skip code-generated mapping altogether.

title: The HttpAgent 'Mapper' approach for the property.

description: Defaults to 'Set'.

title: The display name used in the likes of error messages for the property.

description: Defaults to the 'Name' as sentence case.

title: The property annotation (e.g. attribute) declaration code.

title: The unique (immutable) field number required to enable gRPC support.

title: The underlying gRPC data type; will be inferred where not specified.

title: 'CodeGeneration' object (entity-driven)

description: The code generation for an 'Operation' is primarily driven by the 'Type' property. This encourages (enforces) a consistent implementation for the standardised **CRUD** (Create, Read, Update and Delete) actions, as well as supporting fully customised operations as required.

title: The unique operation name.

title: The type of operation that is to be code-generated.

enum: Get GetColl Create Update Patch Delete Custom

title: The text for use in comments.

description: The 'Text' will be defaulted for all the 'Operation.Type' options with the exception of 'Custom'. To create a '<see cref="XXX"/>' within use moustache shorthand (e.g. {{Xxx}}).

title: Indicates whether the properties marked as a primary key ('Property.PrimaryKey') are to be used as the parameters.

description: This simplifies the specification of these properties versus having to declare each specifically.

title: Indicates whether a 'PagingArgs' argument is to be added to the operation to enable (standardized) paging related logic.

title: The .NET value parameter 'Type' for the operation.

description: Defaults to the parent 'Entity.Name' where the 'Operation.Type' options are 'Create' or 'Update'.

title: The .NET return 'Type' for the operation.

description: Defaults to the parent 'Entity.Name' where the 'Operation.Type' options are 'Get', 'GetColl', 'Create' or 'Update'; otherwise, defaults to 'void'.

title: Indicates whether the 'ReturnType' is nullable for the operation.

description: This is only applicable for an 'Operation.Type' of 'Custom'. Will be inferred where the 'ReturnType' is denoted as nullable; i.e. suffixed by a '?'.

title: The text for use in comments to describe the 'ReturnType'.

description: A default will be created where not specified. To create a '<see cref="XXX"/>' within use moustache shorthand (e.g. {{Xxx}}).

title: The overriding private name.

description: Overrides the 'Name' to be used for private usage. By default reformatted from 'Name'; e.g. 'GetByArgs' as '_getByArgs'.

description: Defaults to 'Entity.WilhResult'.

title: The operation override for the 'Entity.AutoImplement'.

description: Defaults to 'Entity.AutoImplement'. The corresponding 'Entity.AutoImplement' must be defined for this to be enacted. Auto-implementation is applicable for all 'Operation.Type' options with the exception of 'Custom'.

title: The override for the data entity 'Mapper'.

description: Used where the default generated 'Mapper' is not applicable.

description: Defaults to 'Entity.DataExtensions'.

title: Indicates whether a 'DataInvoker' should orchestrate the 'Data'-layer.

description: Where 'Dataransaction' or 'EventPublish' is 'Data' then orchestration will default to 'true'.

title: Indicates whether a 'System.TransactionScope' should be created and orchestrated at the 'Data'-layer.

description: Where using an 'EventOutbox' this is ignored as it is implied through its usage.

title: The database stored procedure name used where 'Operation.AutoImplement' is 'Database'.

description: Defaults to 'sp' + 'Entity.Name' + 'Operation.Name'; e.g. 'spPersonCreate'.

description: Overrides the 'Entity.EntityFrameworkModel'.

description: Overrides the 'Entity.CosmosModel'.

title: The Cosmos 'ContainerId' override used where 'Operation.AutoImplement' is 'Cosmos'.

description: Overrides the 'Entity.CosmosContainerId'.

title: The C# code override to be used for setting the optional Cosmos 'PartitionKey' used where 'Operation.AutoImplement' is 'Cosmos'.

description: Overrides the 'Entity.CosmosPartitionKey'.

title: The override name of the underlying OData collection where 'Operation.AutoImplement' is 'OData'.

description: Overriddes the 'Entity.ODataCollectionName'; otherwise, the underlying 'Simple.OData.Client' will attempt to infer.

title: The HTTP Agent API route where 'Operation.AutoImplement' is 'HttpAgent'.

description: This is appended to the 'Entity.HttpAgentRoutePrefix'.

title: The HTTP Agent Method for the operation.

description: Defaults to 'Operation.WebApiMethod'.

enum: HttpGet HttpPost HttpPut HttpDelete HttpPatch

description: Defaults to 'Operation.HttpAgentModel' where the 'Operation.ReturnType' is equal to 'Entity.Name' (same type). This can be overridden within the 'Operation'(s).

description: Appended to 'Entity.HttpAgentCode' where specified to extend.

title: Indicates whether the 'Manager' logic is a custom implementation; i.e. no auto-'DataSvc' invocation logic is to be generated.

title: Indicates whether a 'System.TransactionScope' should be created and orchestrated at the 'Manager'-layer.

description: Defaults to 'Entity.ManagerExtensions'.

description: Defaults to the 'Entity.Validator' where not specified explicitly (where 'Operation.Type' options 'Create' or 'Update').

description: Defaults to 'Entity.ValidationFramework'. This can be overridden within the 'Parameter'(s).

title: The 'ExecutionContext.OperationType' (CRUD denotation) defined at the 'Manager'-layer.

description: The default will be inferred from the 'Operation.Type'; however, where the 'Operation.Type' is 'Custom' it will default to 'Unspecified'.

description: This can be overridden within the 'CodeGeneration' and 'Entity'.

title: Indicates whether the 'DataSvc' logic is a custom implementation; i.e. no auto-'DataSvc' invocation logic is to be generated.

title: Indicates whether a 'System.TransactionScope' should be created and orchestrated at the 'DataSvc'-layer.

title: Indicates whether a 'DataSvcInvoker' should orchestrate the 'DataSvc'-layer.

description: Where 'DataSvcTransaction' or 'EventPublish' is 'DataSvc' then orchestration will default to 'true'.

description: Defaults to 'Entity.ManagerExtensions'.

description: Defaults to the 'Entity.EventPublish' configuration property (inherits) where not specified. Used to enable the sending of messages to the likes of EventGrid, Service Broker, SignalR, etc.

title: The Event Source.

description: Defaults to 'Entity.EventSource'. Note: when used in code-generation the 'CodeGeneration.EventSourceRoot' will be prepended where specified. To include the entity id/key include a '{$key}' placeholder ('Create', 'Update' or 'Delete' operation only); for example: 'person/{$key}'.

title: The event subject template and corresponding event action pair (separated by a colon).

description: The event subject template defaults to '{AppName}.{Entity.Name}', plus each of the unique key placeholders comma separated; e.g. 'Domain.Entity.{id1},{id2}' (depending on whether 'Entity.EventSubjectFormat' is 'NameAndKey' or 'NameOnly'). The event action defaults to 'WebApiOperationType' or 'Operation.Type' where not specified. Multiple events can be raised by specifying more than one subject/action pair separated by a semicolon. E.g. 'Demo.Person.{id}:Create;Demo.Other.{id}:Update'.

title: The Web API 'RouteAtttribute' to be appended to the 'Entity.WebApiRoutePrefix'.

description: Where not specified no attribute output will occur; it will then inherit as supported by .NET.

title: The HTTP Method for the operation.

description: The value defaults as follows: 'HttpGet' for 'Operation.Type' value 'Get' or 'GetColl', 'HttpPost' for 'Operation.Type' value 'Create' or 'Custom', 'HttpPut' for 'Operation.Type' value 'Update', and 'HttpDelete' for 'Operation.Type' value 'Delete'. An 'Operation.Type' value 'Patch' can not be specified and will always default to 'HttpPatch'.

title: The primary HTTP Status Code that will be returned for the operation where there is a non-'null' return value.

description: The value defaults as follows: 'OK' for 'Operation.Type' value 'Get', 'GetColl', 'Update', 'Delete' or 'Custom', 'Created' for 'Operation.Type' value 'Create'.

title: The primary HTTP Status Code that will be returned for the operation where there is a 'null' return value.

description: The value defaults as follows: 'NotFound' for 'Operation.Type' value 'Get' and 'NoContent' for 'Operation.Type' value 'GetColl'; otherwise, 'null'.

title: The HTTP Response Location Header route.

description: This uses similar formatting to the 'WebApiRoute'. The response value is accessed using 'r.' notation to access underlying properties; for example '{r.Id}' or 'person/{r.Id}'. The 'Entity.WebApiRoutePrefix' will be prepended automatically; however, to disable set the first character to '!', e.g. '!person/{r.Id}'. The URI can be inferred from another 'Operation' by using a lookup '^'; for example '^Get' indicates to infer from the named 'Get' operation (where only '^' is specified this is shorthand for '^Get' as this is the most common value). The Location URI will ensure the first character is a '/' so it acts a 'relative URL absolute path'.

description: This provides an alternative where the underlying data source does not natively support optimistic concurrency (native support should always be leveraged as a priority). Where the 'Operation.Type' is 'Update' or 'Patch', the request ETag will be matched against the response for a corresponding 'Get' operation to verify no changes have been made prior to updating. For this to function correctly the .NET response Type for the 'Get' must be the same as that returned from the corresponding 'Create', 'Update' and 'Patch' (where applicable) as the generated ETag is a SHA256 hash of the resulting JSON. Defaults to 'Entity.WebApiConcurrency'.

title: The corresponding 'Update' method name (in the 'XxxManager') where the 'Operation.Type' is 'Patch'.

description: Defaults to 'Update'. Specify either just the method name (e.g. 'OperationName') or, interface and method name (e.g. 'IXxxManager.OperationName') to be invoked where in a different 'YyyManager.OperationName'.

title: The permission used by the 'ExecutionContext.IsAuthorized(AuthPermission)' to determine whether the user is authorized.

title: The permission used by the 'ExecutionContext.IsInRole(AuthRole)' to determine whether the user is authorized.

title: Indicates whether to exclude the generation of all 'Operation' related output.

description: Is a shorthand means for setting all of the other 'Exclude*' properties to 'true'.

title: Indicates whether to exclude the generation of the operation within the 'Data' interface ('IXxxData.cs') output.

title: Indicates whether to exclude the generation of the operation within the 'Data' class ('XxxData.cs') output.

title: Indicates whether to exclude the generation of the operation within the 'DataSvc' interface ('IXxxDataSvc.cs') output.

title: Indicates whether to exclude the generation of the operation within the 'DataSvc' class ('XxxDataSvc.cs') output.

title: Indicates whether to exclude the generation of the operation within the 'Manager' interface ('IXxxManager.cs') output.

title: Indicates whether to exclude the generation of the operation within the 'Manager' class ('XxxManager.cs') output.

title: Indicates whether to exclude the generation of the operation within the WebAPI 'Controller' class ('XxxController.cs') output.

title: Indicates whether to exclude the generation of the operation within the WebAPI consuming 'Agent' class ('XxxAgent.cs') output.

title: Indicates whether to exclude the generation of the operation within the gRPC consuming 'Agent' class ('XxxAgent.cs') output.

title: Indicates whether gRPC support (more specifically service-side) is required for the Operation.

description: gRPC support is an explicit opt-in model (see 'CodeGeneration.Grpc' configuration); therefore, each corresponding 'Entity', 'Property' and 'Operation' will also need to be opted-in specifically.

title: The corresponding 'Parameter' collection.

title: 'Parameter' object (entity-driven)

description: The 'Parameter' object defines an 'Operation' parameter and its charateristics.

title: The unique parameter name.

description: By default the 'Text' will be the 'Name' reformatted as sentence casing.

title: The .NET 'Type'.

title: Indicates whether the .NET 'Type should be declared as nullable; e.g. 'int?'. Will be inferred where the 'Type' is denoted as nullable; i.e. suffixed by a '?'.

title: The C# code to default the value.

title: The overriding private name.

title: The overriding argument name.

title: The 'Property.Name' within the parent 'Entity' to copy (set) the configuration/characteristics from where not already defined.

description: Defaults to 'string' where not specified and the corresponding 'Type' starts with (prefix) 'RefDataNamespace.'.

title: The name of the .NET 'Type' that will perform the validation.

title: The fluent-style method-chaining C# validator code to append to 'IsMandatory' and 'Validator' (where specified).

description: Defaults to 'Operation.ValidationFramework'.

title: Indicates whether a 'ValidationException' should be thrown when the parameter value has its default value (null, zero, etc).

title: The option that determines the layers in which the parameter is passed.

description: Defaults to 'All'. To further describe, 'All' passes the parameter through all layeys, 'ToManagerSet' only passes the parameter to the 'Manager' layer and overrides the same named property within the corresponding 'value' parameter, 'ToManagerCollSet' only passes the parameter to the 'Manager' layer and overrides the same named property within the corresponding 'value' collection parameter. Where using the 'PrimaryKey' option to automatically set 'Parameters', and the 'Operation.Type' is 'Create' or 'Update' it will default to 'ToManagerSet'.

title: The data 'Converter' class name where specific data conversion is required.

title: The option for how the parameter will be delcared within the Web API Controller.

description: Defaults to 'FromQuery'; unless the parameter 'Type' has also been defined as an 'Entity' within the code-gen config file then it will default to 'FromEntityProperties'. Specifies that the parameter will be declared with corresponding 'FromQueryAttribute', 'FromBodyAttribute' or 'FromRouteAttribute' for the Web API method. The 'FromEntityProperties' will declare all properties of the 'Entity' as query parameters.

enum: FromQuery FromBody FromRoute FromEntityProperties

title: 'Const' object (entity-driven)

description: The 'Const' object is used to define a .NET (C#) constant value for an 'Entity'.

title: The unique constant name.

title: The .NET (C#) code for the constant value.

description: The code generation will ensure the value is delimited properly to output correctly formed (delimited) .NET (C#) code.

description: By default the 'Text' will be the 'Name' reformatted as sentence casing. It will be formatted as: 'Represents a {text} constant value.' To create a '<see cref="XXX"/>' within use moustache shorthand (e.g. '{{Xxx}}').


rancher-fleet.json

description: A selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty selector matches all objects

description: matchExpressions is An array of label selector requirements. The requirements are ANDed

description: key is the label key that the selector applies to

type: string

description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist

description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty

description: The value of the label that must be compared to according to the selected operator

type: array

type: object

description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed

description: An array of diff options to consider when comparing the current state of the bundle to the desired one.

description: An array of compare patches; how the diff should be calculated and eventually ignored. See ref: https://fleet.rancher.io/next/ref-crds#comparepatch

description: The apiVersion of the resource to compare

description: An array of custom JSONPointers. See ref: https://jsonpatch.com/#json-pointer

description: The kind of the resource to compare

description: The name of the resource to compare

description: The namespace of the resource to compare

description: An array of operations to consider when comparing the current state of the resource to the desired one. See example: https://fleet.rancher.io/next/bundle-diffs#combining-it-all-together

description: The operation to perform. See ref: https://jsonpatch.com/#operations

description: The path to the field to compare. See ref: https://jsonpatch.com/#json-pointer

description: The value to add or replace

description: Set the Helm --atomic flag when upgrading. Default: false

type: boolean

description: Use a custom location for the Helm chart. This can refer to any go-getter URL, OCI registry based helm chart URL e.g. "oci://ghcr.io/fleetrepoci/guestbook" or a local/remote tgz file. This allows one to download charts from most any location.  Also know that go-getter URL supports adding a digest to validate the download. If repo is set below this field is the name of the chart to lookup

description: Set the Helm --force flag when upgrading. This could be dangerous (sic). Default: false

description: Set the Helm --max-history flag when upgrading

type: integer

description: A custom release name to deploy the chart as. If not specified a release name will be generated by combining the invoking GitRepo.name + GitRepo.path

description: A https URL to a Helm repo to download the chart from. If repo is used the value of `chart` will be used as the chart name to lookup in the Helm repository

description: Makes helm skip the check for its own annotations. Defailt: false

description: Set the Helm --timeout flag when upgrading.

description: Any values that should be placed in the `values.yaml` and passed to helm during install. Cluster labels can also be used here, see https://fleet.rancher.io/next/gitrepo-structure#reference for more info

description: Path to any values files that need to be passed to helm during install

description: Path to the value file

description: An array of of configmap or secrets references defined in the downstream clusters to get values for the chart.

description: A reference to a configmap key

description: The key to get from the configmap

description: The name of the configmap

description: The namespace of the configmap

description: A reference to a secret key

description: The key to get from the secret

description: The name of the secret

description: The namespace of the secret

description: The version of the chart or semver constraint of the chart to find. If a constraint is specified it is evaluated each time git changes. The version also determines which chart to download from OCI registries

description: Custom folder for kustomize resources. This folder must contain a kustomization.yaml file. Path is relative to repository root

description: The driving file of a Fleet bundle

description: The default namespace to be applied to resources. This field is not used to enforce or lock down the deployment to a specific namespace, but instead provide the default value of the namespace field if one is not specified in the manifests. Default: default

description: An array of dependencies to other Bundles.

description: Format: <GITREPO-NAME>-<BUNDLE_PATH> with all path separators replaced by "-". Example: A Gitrepo named "one", with a Bundle path "/multi-cluster/hello-world" => "one-multi-cluster-hello-world"

$ref: #/definitions/selector

$ref: #/definitions/diff

description: Helm overrides for the bundle. When changes are applied to the values.yaml from multiple sources at the same time, the values will update in the following order: helm.values -> helm.valuesFiles -> helm.valuesFrom

$ref: #/definitions/helm

description: Kustomize options for the bundle.

$ref: #/definitions/kustomize

description: Labels to apply to the bundle. These labels can be used to select bundles by using the dependsOn keyword

description: All resources will be assigned to this namespace and if any cluster scoped resource exists the deployment will fail. Default: ""

description: A paused bundle will not update downstream clusters but instead mark the bundle as OutOfSync. One can then manually confirm that a bundle should be deployed to the downstream clusters. Default: false

description: A number of percentage of how to automatically partition clusters if not specific partitioning strategy is configured. Default: 25%

description: A number or percentage of clusters that can be unavailable during an update of a bundle. This follows the same basic approach as a deployment rollout strategy. Once the number of clusters meets unavailable state update will be  paused. Default value is 100% which doesn't take effect on update. Default: 100%

description: A number or percentage of cluster partitions that can be unavailable during an update of a bundle. Default: 0

description: An array of definitions of partitions. If any target clusters do not match the configuration they are added to partitions at the end following the autoPartitionSize

description: A cluster group name to include in this partition

description: Selector matching cluster group labels to include in this partition

description: A cluster name to include in this partition

description: Selector matching cluster labels to include in this partition

description: A number or percentage of clusters that can be unavailable in this partition before this partition is treated as done.Default: 10%

description: A user friend name given to the partition used for Display (optional). Default: ""

description: The Service account which will be used for the BundleDeployments. Default: ""

$comment: Undocumented field in the fleet docs.

description: Target customization are used to determine how resources should be modified per target. Targets are evaluated in order and the first one to match a cluster is used for that cluster

description: A cluster group name to select

description: Selector matching cluster group labels to select

description: Selector matching cluster labels to select

description: Custom defaultNamespace value overriding the value at the root

description: Custom helm options overriding the options at the root

description: Custom kustomize options overriding the options at the root

description: The name of target. If not specified a default name of the format "target000" will be used. This value is mostly for display

description: Custom namespace value overriding the value at the root

description: Custom serviceAccount value overriding the value at the root

description: If using raw YAML these are names that map to overlays/{name} that will be used to replace or patch a resource. If you wish to customize the file ./subdir/resource.yaml then a file ./overlays/myoverlay/subdir/resource.yaml will replace the base file. A file named ./overlays/myoverlay/subdir/resource_patch.yaml will patch the base file. A patch can in JSON Patch or JSON Merge format or a strategic merge patch for builtin Kubernetes types. Refer to "Raw YAML Resource Customization" (https://fleet.rancher.io/next/gitrepo-structure#raw-yaml-resource-customization) for more information

description: An array of overlays to apply to the resource. The overlays are applied in the order they are listed

description: An overlay to apply to the resource. The overlay can be a patch or a replacement. It should point to the folder containing the overlay file(s)

description: ImageScans is An array of images repositories to scan for, so the corresponding repositories may be automatically updated with the specified image

description: The image to scan for

description: The scan interval

description: An array of policies on how to retrieve the latest image. Can be semver or alphabetical

description: The alphabetical policy specifics

description: The order of the images to use. Can be ascending or descending

description: The semver policy specifics

description: Semver string to evaluate latest image. For more details on how to use semver, see https://github.com/Masterminds/semver

description: The secret reference to use for the image repository

description: The name of the secret. It must be located in the same namespace as the GitRepo

description: The tag name used in the manifest files, to be replaced with the latest image. Must be unique per Bundle

title: fleet.yaml


minecraft-recipe.json

description: Represents a recipe in a blast furnace.

$ref: #/definitions/tagsCommonToAllRecipes

$ref: #/definitions/cookingRecipeCategory

description: Represents a recipe in a campfire.

description: Represents a shaped crafting recipe in a crafting table.

$ref: #/definitions/commonRecipeCategory

description: A list of single-character keys used to describe a pattern for shaped crafting.

title: key

description: All keys used for this shaped crafting recipe.

type: object array

description: The ingredient corresponding to this key.

description: An item ID.

description: An item tag.

description: An item ID.

description: An item tag.

$ref: #/definitions/result

description: Represents a shapeless crafting recipe in a crafting table.

description: A list of entries for this shapeless crafting recipe.

title: ingredient

description: An entry made of a single ingredient.

$ref: #/definitions/ingredient

description: An entry made of a list of acceptable ingredients.

description: Represents a recipe in a furnace.

description: Represents a recipe in a smithing table.

title: base

description: Ingredient specifying an item to be upgraded.

$ref: #/definitions/item

title: addition

title: result

description: Represents a recipe in a smoker.

description: Represents a recipe in a stonecutter.

title: ingredient

description: The ingredient for the recipe.

title: ingredient

description: The list of ingredients for the recipe.

title: ingredient

description: An item ID. The output item of the recipe.

description: The amount of the output item.

description: An item ID.

description: An item tag.

title: ingredient

description: An acceptable ingredient.

description: A namespaced ID indicating the type of serializer of the recipe.

description: A string identifier. Used to group multiple recipes together in the recipe book.

description: If a notification is shown when the recipe is unlocked.

title: ingredients

description: The ingredients.

description: The output experience of the recipe.

type: number

description: The cook time of the recipe in ticks.

title: category

description: Category of common recipes (in recipe book).

enum: building redstone equipment misc

title: category

description: Category of cooking recipes (in recipe book).

enum: food blocks misc

title: result

description: The output item of the recipe.

description: The amount of the item.

description: An item ID.

description: Configuration file defining a recipe for a data pack for Minecraft.

description: The type of recipe.

title: minecraft data pack recipe


$ref: #/definitions/NodeCacheUser

required: key value hashCode()

enum: read readwrite

description: The level of the access for the build cache user

description: Some optional free text

description: The hashed password of the user

required: level password

description: A user of the build cache

description: Use a fixed target cache size

const: fixed

description: The total available size of the cache in MiB

description: Set the target cache size dynamically based on the disk volume's capacity

const: maxAvailable

description: Access to the build cache node UI is disabled

const: disabled

description: Generated as startup credentials used for secure access to cache node UI

const: generated

description: Access to the build cache node UI is open for anyone

const: open

required: password username

description: Credentials used for secure access to cache node UI

const: secure

description: The hashed password for securing the cache node UI

description: The username for securing the cache node UI

description: The configuration format for build cache nodes

description: The version of the config file model (must be 5).

enum: none read readwrite

description: The level of the access for anonymous users

description: The users of the cache and their access level

description: These credentials are used to restrict access to the build cache

description: The credentials for reading and writing to the cache

description: The free space buffer to reserve in MiB

description: The maximum size of a single artifact in the cache in MiB

description: The maximum age of an artifact in the cache in hours, if enabled

enum: fixed maxAvailable

$ref: #/definitions/TargetSizeFixed

$ref: #/definitions/TargetSizeMaxAvailable

description: Settings around cache size and access

description: The cache settings

description: The key of the node (can be found on the nodes screen of Gradle Enterprise)

description: The URI of this build cache node

format: uri

description: The secret of the node (can be found on the nodes screen of Gradle Enterprise)

description: The URI of the Gradle Enterprise instance

required: key nodeAddress secret serverAddress

description: Settings for connecting to Gradle Enterprise

description: The registration details to connect to Gradle Enterprise

enum: disabled open secure generated

$ref: #/definitions/UiAccessDisabled

$ref: #/definitions/UiAccessOpen

$ref: #/definitions/UiAccessSecure

$ref: #/definitions/UiAccessGenerated


cv.schema.json

$ref: #/$defs/Cv

title: Disability information

title: Kind of disability

enum: visual auditory movement mental

title: Disability degree

description: Disability degree. Value must be between 1.0 (fully disabled) and 0

$ref: #/$defs/NullableNumber

title: Text describing the disability

$ref: #/$defs/NullableString

title: Driving license details

required: Country License

title: Country issuing the driver license

$ref: #/$defs/Country

title: Kind of driver licence, i

description: Kind of driver licence, i.e.: A, B1, etc

title: Identification document

description: Identification document, I.e.: passport

required: Country Document Id

title: Issuer of the document

title: Document name

description: Document name. It could be a national document name, or passport

title: Code with the serial number of the document for the CV principal

title: Personal information, not related with professional skills or qualifications

required:
Given Name
Family Name
Native Language

title: Given name

description: Given name. It can be multiple words for compound names

title: Family name

description: Family name. Depending on cultures, this field can be very different

title: First learned language

description: First learned language. Or preferred language if you had many

$ref: #/$defs/Language

title: Pronoun to state how do you like to be addressed

enum: feminine masculine neutral

title: Gender role

enum:
woman
man
lesbian
gay
transgender woman
transgender man
bisexual
intersexual
queer
agender
other

title: Date of birth

$ref: #/$defs/NullableDate

title: Country of birth

$ref: #/$defs/NullableCountry

title: Short name you commonly use or nickname

title: Photo address

$ref: #/$defs/NullableUri

title: Avatar

description: Avatar. Image used to represent you without being an actual photo

title: Set of nationalities

description: Set of nationalities. If none is supplied, the birth of country is used

title: List of disabilities of a person

$ref: #/$defs/Disability

title: List of driving permissions

$ref: #/$defs/DrivingLicense

title: Id documents owned by country

$ref: #/$defs/IdDocument

title: Area that may have different degrees of precision, from a whole country, to a street address

title: Location country

title: Country region

description: Country region. If set, can not be blank

title: City

description: City. If set, can not be blank

title: Postcode

description: Postcode. If set, can not be blank

title: Street address

description: Street address. If set, can not be blank

title: Location country

title: Country region

title: City

description: City. If set, can not be blank

title: Postcode

description: Postcode. If set, can not be blank

title: Street address

title: Link to a resource identifier, it can be `tel:`, `mailto:`, or the usual WWW ones

title: Link's URI

title: Description of the link's purpose

required: Amount Currency

$ref: #/$defs/Money

$ref: #/$defs/Period

required: Days Period

$ref: #/$defs/NullableSalary

$ref: #/$defs/NullableRemote

enum: linux macos windows

$ref: #/$defs/Location

title: Foreign language capabilities

required: Language Listening Reading Spoken Written

title: Foreign language

title: Listening level

title: Reading level

title: Spoken level

title: Written level

description: Organization data (can be used for companies, educational institutions, etc.)

title: Name of the organization

description: Name of the organization. If set can not be blank

title: URL of the organization's website

description: Organization's type (NGO, educational, government, etc.). If set can not be blank

title: Industry (financial, industry, etc

description: Industry (financial, industry, etc.). If set can not be blank

title: Name of the organization

title: URL of the organization's website

title: Industry (financial, industry, etc

$ref: #/$defs/NullableYearMonth

title: Web Application, Mobile Application, REST service, CLI, library, Desktop Application

$ref: #/$defs/NullableOrganization

title: Professional experience executed for an employer or a client

title: Permanent role company

description: Permanent role company. If null, it means this is a contractor experience

title: Training course, as opposed to formal education

title: Course title

description: Course title. Can not be blank

title: Organization which run the course and/or award its certificate

title: Start date of the course

description: Start date of the course. It must be a date before the end date

title: End date of the course

description: End date of the course. Should be set to a date before today

description: URL with more information about the course. The URL must return a success code

title: Course subject

description: Course subject. If set, it cannot be blank

title: Location where the training took place

title: Brief description of the course

description: Brief description of the course. Blank values other than 'null' aren't allowed

title: Name of the company paying for the course

title: Number of effective hours of this course

description: Number of effective hours of this course. If set, should be greater than zero

title: Score of the course (if any)

title: Set of topics covered in the course

title: Professional achievement

description: Professional achievement. Achievement accomplished at a given date. Publications must be owned by external parties in order to be an achievement, posts on social networks or personal blogs are listed in other CV sections

title: Type of achievement

enum: certification award publication presentation conference workshop other

title: Descriptive title of the achievement

description: Descriptive title of the achievement. Cannot be blank

description: Data in which the achievement was accomplished. Cannot be after today

description: Link with further information of the achievement, I.e.: the URL of a publication. The URL must exist and be readable

title: Detailed description of the achievement

description: Detailed description of the achievement. It cannot be blank

title: Organization that awarded this achievement

title: Other person's reference

title: Referrer's name

description: Referrer's name. Can not be blank

title: Reference details in plain text

description: Reference details in plain text. Can not be blank

title: Relation among CV principal and referrer

enum: colleague manager subordinate client provider

title: Contact data of the referrer person

title: Referrer's social networks

title: Projects in common with the referrer

title: CV data grouped by topics

description: CV data grouped by topics. Most of the fields are optional. When the model is rendered, the fields are passed to the template context with the names in camel case. Read only properties are meant only for use in templates, and cannot be defined in the document

title: Schema used for the document

description: Used to deal with different versions. It also eases the use on some editors

title: Job search status

enum:
active search
open to challenges
not moving

title: Locale representing the CV's content

description: Locale representing the CV's content. If not set, it will be `en`

title: Date of the CV's latest modification

description: List of resources to be included in this CV. Allows CV modularization. Resources' content will be overwritten with the CV document content

title: Templates used to render this CV

description: Templates used to render this CV. Templates for different media types are supported using the template extension to select the appropriate one

description: Configuration added to the context when the CV is rendered. Map keys must be in camel case

title: Personal information

title: Current residence information

title: Contact data

title: Searched job desired characteristics

title: Bio, if set, cannot be blank

title: Titles

title: Labels

title: Professional goals

description: Professional goals. It cannot contain any blank item

title: Group of general skills to highlight

title: List of links pointing to another resources (like social networks profiles)

title: List of languages aside of the birth language

title: Personal projects developed outside a company

title: Experience on non govern organizations related with social or technical interests

title: Professional projects developed for a company

title: Formal education

title: Specific courses on a given subject

title: Professional achievements awarded by third parties

title: Personal references from previous experiences

title: Set of technical skills

title: Common (or soft) skills

title: Fun facts and/or interests


title: Unknown field

title: string field = 1;

title: map<string, strmprivacy.api.entities.v1.ConsentLevels> field_patterns = 2;

title: Unknown field

title: strmprivacy.api.entities.v1.CsvConfig csv = 1;

title: strmprivacy.api.entities.v1.DatabaseConfig database = 2;

title: Unknown field

title: strmprivacy.api.entities.v1.ConsentConfig consent = 4;

title: strmprivacy.api.entities.v1.DerivedData

title: repeated strmprivacy.api.entities.v1.DerivedData derived_data = 9;

title: strmprivacy.api.entities.v1.EncryptedData encrypted_data = 7;

title: strmprivacy.api.entities.v1.EncryptionConfig encryption = 5;

title: strmprivacy.api.entities.v1.EncryptionKeysData encryption_keys_data = 8;

title: strmprivacy.api.entities.v1.EventContractRef event_contract_ref = 6;

title: string policy_id = 10;

title: strmprivacy.api.entities.v1.BatchJobRef ref = 1;

title: strmprivacy.api.entities.v1.DataConnectorAndType source_data = 3;

title: repeated strmprivacy.api.entities.v1.BatchJobState states = 2;

description:
********************************
Batch Jobs
Currently we only support:
- CSV as DataFormat type
- a clean database for every batch job
- CSV files with a header row, because the header is needed to get the field names
*******************************

title: Unknown field

title: int32

title: repeated int32 consent_levels = 1;

title: Unknown field

title: strmprivacy.api.entities.v1.DataConnectorAndType target = 1;

title: Unknown field

title: string billing_id = 1;

deprecationMessage: Field "billing_id" is marked as deprecated

title: string id = 2;

description: the UUIDv4 of the job, generated upon creation

title: string project_id = 3;

description: the UUIDv4 of the STRM Privacy project

title: Unknown field

title: strmprivacy.api.entities.v1.ConsentLevelType consent_level_type = 3;

title: int32

title: repeated int32 consent_levels = 2;

title: strmprivacy.api.entities.v1.MaskedFields masked_fields = 4;

format: date-time

title: Unknown field

title: string message = 3;

title: strmprivacy.api.entities.v1.BatchJobStateType state = 2;

title: google.protobuf.Timestamp state_time = 1;

title: Unknown field

title: string charset = 1;

title: Unknown field

title: string

title: repeated string columns = 3;

title: string schema = 1;

title: string table = 2;

title: Unknown field

title: string handle = 1;

description: constraint: handle should already exist

title: string name = 2;

description: constraints: generic name constraint, unique within handle

title: string version = 3;

description: constraints: semantic version, e.g. 1.12.3

enum: CONSENT_LEVEL_TYPE_UNSPECIFIED 0 CUMULATIVE 1 GRANULAR 2

description:
Consent level is meant to interpret the consent-levels of an event for decryption purposes only.

Cumulative means that the highest consent-level in an event must be greater than or equal to the single requested level
for the decrypted stream.

Granular means that the set of consent-levels in an event must enclose the set of requested event levels for the
decrypted stream.

markdownEnumDescriptions:
(or 0)
(or "CONSENT_LEVEL_TYPE_UNSPECIFIED")
(or 1)
(or "CUMULATIVE")
(or 2)
(or "GRANULAR")

title: Unknown field

title: strmprivacy.api.entities.v1.DataConnectorRef data_connector_ref = 1;

title: strmprivacy.api.entities.v1.DataType data_type = 4;

title: string file_name = 3;

description:
(-- api-linter: core::0122::name-suffix=disabled
     aip.dev/not-precedent: We think file_name is a better name. --)

title: string path_prefix = 2;

description: If omitted, files are read from the root of the bucket.

title: Unknown field

title: string

title: repeated string field_patterns = 1;

title: Unknown field

title: string billing_id = 1;

title: string name = 2;

title: string project_id = 3;

title: Unknown field

title: string batch_job_group_id = 2;

title: strmprivacy.api.entities.v1.TimestampConfig timestamp_config = 1;

enum: BATCH_JOB_STATE_TYPE_UNSPECIFIED 0 PENDING 1 STARTED 2 ERROR_STARTING 3 RUNNING 4 FINISHED 5 ERROR 6

title: Unknown field

title: strmprivacy.api.entities.v1.ConsentLevelExtractor consent_level_extractor = 2;

title: int32

title: repeated int32 default_consent_levels = 1;

title: Unknown field

title: map<string, strmprivacy.api.entities.v1.MaskedFields.PatternList> field_patterns = 3;

description:
map of event-contract-ref vs field patterns

constraints:
 data-contract-refs should be existing data contracts
 field_patterns should be valid values (checked by events-core)
 the field_patterns list should have no duplicates.

title: string hash_type = 1;

description: Default Murmurhash3 if empty

title: string seed = 2;

description: hashing seed

title: Unknown field

title: google.type.TimeZone default_time_zone = 3;

title: string field = 1;

description: generic field name

title: string format = 2;

description: Java Time Format template, see https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html

title: Unknown field

title: string id = 1;

description: IANA Time Zone Database time zone, e.g. "America/New_York".

title: string version = 2;

description: Optional. IANA Time Zone Database version number, e.g. "2019a".

description:
Represents a time zone from the
 [IANA Time Zone Database](https://www.iana.org/time-zones).

title: Unknown field

title: strmprivacy.api.entities.v1.BatchJob


portman-config-schema.json

description: Portman by Apideck allows you to port your OpenApi Spec to a Postman Collection, inject a powerful test suite, and run your tests with Newman. Details about all configuration options can be found at http://getportman.com.

required: searchFor replaceWith

required: username password


ffizer.schema.json

title: TemplateCfg

description: list of path from the current template to ignore

description: list of template to import and to apply as part of this template

$ref: #/definitions/ImportCfg

description: list of the scripts to apply at end of generation

$ref: #/definitions/ScriptCfg

description: set to true if the template content is under a `template` folder (not mixed with metadata)

description: list of variables/parameters of the template

$ref: #/definitions/VariableCfg

description: define a template layer to import

required: label value

description: display of the value (in select)

description: the value

$ref: #/definitions/AnyValue

description: command to execute

description: default answer for confirmation of execution

description: message to display

description: sentence to ask the value (default to the name on variable)

description: optionnal default value

description: is the variable hidden to the user (could be usefull to cache shared variable/data)

description: name of variable used in the template

description: if non-empty then the value should selected into the list of value

$ref: #/definitions/VariableValuesCfg

$ref: #/definitions/LabelValueCfg


up.json

title: Name of the project.

description: A machine-friendly project name.

examples: apex-site apex-api ping-app

title: Description of the project.

description: An optional project description.

examples:
Marketing site
Public API

title: Type of project.

description: The type of project.

default: server

enum: static server

title: AWS profile.

description: AWS credentials profile name, these are stored in ~/.aws/credentials.

examples: apex-prod apex-dev personal

description: List of target AWS regions for deployment.

title: AWS Region.

description: AWS region.

examples: us-west-2 us-* eu-* *

title: Enables S3 acceleration.

description: Enable S3 acceleration for faster uploads via the CloudFront CDN.

title: Enables active warming.

description: Active warming mitigates cold starts when enabled.

title: Active warming rate.

description: Active warming sends requests to your application at this interval.

title: Active warming container count.

description: Number of concurrent containers to warm.

title: Memory.

description: Lambda memory size.

title: Domain name.

description: Domain hostname for the stage.

title: Domain name.

description: Domain hostname for the stage.

title: Domain name.

description: Domain hostname for the stage.

title: Build hook.

description: Hook command(s) to run.

title: Clean hook.

description: Hook command(s) to run.

title: Prebuild hook.

description: Hook command(s) to run.

title: Postbuild hook.

description: Hook command(s) to run.

title: Predeploy hook.

description: Hook command(s) to run.

title: Postdeploy hook.

description: Hook command(s) to run.

title: Directory path.

description: Path to directory from which assets are served.

examples: public ./dist

title: URL prefix.

description: Optional URL path prefix.

examples: /public/ /static/

title: Command.

description: Command run to start your application.

default: ./server

title: Request timeout.

description: Timeout in seconds per request.

title: Listen timeout.

description: Timeout in seconds Up will wait for your app to boot and listen on `PORT`.

title: Shutdown timeout.

description: Timeout in seconds Up will wait after sending a SIGINT to your server, before sending a SIGKILL.

title: Minimum delay.

description: Minimum time in milliseconds before retrying.

title: Max delay.

description: Maximum time in milliseconds before retrying.

title: Factor.

description: Factor applied to each attempt.

title: Retry attempts.

description: Attempts made before failing.

title: Jitter.

description: Apply jitter.

title: Disable error pages.

description: Disable default error pages.

title: Directory path.

description: Path to directory from which error pages are served.

title: Support email.

description: Support email for contact link.

title: Color.

description: Theme color.

title: Enable CORS.

description: Enable Cross-Origin Resource Sharing.

title: Allowed Origins.

description: A list of origins a cross-domain request can be executed from. Use `*` to allow any origin, or a wildcard such as `http://*.domain.com`.

title: Allowed Methods.

description: A list of methods the client is allowed to use with cross-domain requests.

examples: GET HEAD

title: Allowed Headers.

description: A list of headers the client is allowed to use with cross-domain requests. If the special `*` value is present in the list, all headers will be allowed.

title: Exposed Headers.

description: A list of headers which are safe to expose to the API of a CORS response.

title: Max Age.

description: A number indicating how long (in seconds) the results of a preflight request can be cached.

title: Allow Credentials.

description: A boolean indicating whether the request can include user credentials such as cookies, HTTP authentication or client side SSL certificates. Defaults to true.

required: name type

title: Action Name.

description: Name of the action for reference from alert definitions.

title: Action Type.

description: Type of action to perform.

examples: email sms

title: Email addresses.

description: Email addresses when using the email action.

title: Phone numbers.

description: Phone numbers when using the sms action.

required: metric statistic threshold action

title: Metric name.

description: Name of the metric.

title: Statistics name.

description: Name of statistic to perform.

enum: min max avg sum count

examples: avg sum

title: Value Threshold.

description: Threshold which is compared to the operator.

title: Action Name.

description: Name of the action to perform.

type: integer string

title: Period.

description: Period is the alert query time-span.

title: Evaluation Periods.

description: Number of periods to evaluate over.

title: Operator.

description: Operator is the comparison operator.

title: Namespace.

description: Metric namespace.

title: Description.

description: Informative alert description, displayed in the email, sms, or slack.

title: Disable.

description: Disable the alert.

title: JSON schema for Apex Up configuration files


aerleon-definitions.schema.json

title: Aerleon Network & Service Definitions

title: Network Definition Section

description: Policy files can reference the networks in this section by name. A network is a list of IP addresses or CIDR IP address ranges and may contain other networks.

$ref: #/$defs/networkDefinition

$ref: #/$defs/token

title: Service Definition Section

description: Policy files can reference the services in this section by name. A service is a list of port/protocol pairs (e.g. port: 80, protocol: tcp) and can include port ranges. A service can include other services.

$ref: #/$defs/serviceDefinition

description: Attach a comment directly to a value. This comment may be included in generated output on platforms that support it.

description: Specifies an IP address or CIDR IP address range expression.

description: Specifies a fully qualified domain name with two or more labels.

description: Specifies a port or port range.

description: Specifies a protocol by name or number.

title: Network Definition

description:
Defines a named network, composed of IP addresses, IP address ranges, and references to other networks.
An object with the "address" property adds that address or address range to the network.
An object with the "name" property includes the contents of that network into this one.
A single string also includes the content of that network into this one.

title: Network Reference

description: Include another network by name.

$ref: #/$defs/address

$ref: #/$defs/comment

$ref: #/$defs/fqdn

title: Network Reference

description: Include another network by name.

title: Service Definition

description: Defines a named service, composed of portocol, port pairs and/or references to other services.

required: port protocol

$ref: #/$defs/port

$ref: #/$defs/protocol

title: Service Reference

description: Include another service by name.

description: Include another service by name.