diff --git a/docs/articles/steeltoe-3-2-2-adds-kube-service-bindings.md b/docs/articles/steeltoe-3-2-2-adds-kube-service-bindings.md index d959da2a..0ad07854 100644 --- a/docs/articles/steeltoe-3-2-2-adds-kube-service-bindings.md +++ b/docs/articles/steeltoe-3-2-2-adds-kube-service-bindings.md @@ -86,7 +86,7 @@ namespace PostgreSql Running your application on a Kubernetes platform which supports the [Kubernetes Service Binding](https://github.com/servicebinding/spec) specification you should see configuration key/values appear in your applications configuration. -As an added feature, the Steeltoe team has added integration with the [Steeltoe Connectors](https://github.com/SteeltoeOSS/Steeltoe/tree/release/3.2/src/Connectors) library. This integration enables the Steeltoe Connectors library to pick up and use the configuration data built by the Kubernetes provider. +As an added feature, the Steeltoe team has added integration with the [Steeltoe Connectors](https://github.com/SteeltoeOSS/Steeltoe/tree/3.x/src/Connectors) library. This integration enables the Steeltoe Connectors library to pick up and use the configuration data built by the Kubernetes provider. This feature is not enabled by default. To enable it you must edit your `appsettings.json` file and add the following configuration. diff --git a/docs/docs/v3/bootstrap/index.md b/docs/docs/v3/bootstrap/index.md index 8781a803..d3aa8cfd 100644 --- a/docs/docs/v3/bootstrap/index.md +++ b/docs/docs/v3/bootstrap/index.md @@ -1,6 +1,6 @@ # Application Bootstrapping -In order to improve the Steeltoe developer experience, Steeltoe 3.1.0 added this new feature that allows the configuration of most Steeltoe components with a single line of code in your application. The package is named [`Steeltoe.Bootstrap.Autoconfig`](https://github.com/SteeltoeOSS/Steeltoe/tree/release/3.2/src/Bootstrap/src/Autoconfig), and it works by applying the same extensions that are already included in Steeltoe packages to automatically wire up each of those components. +In order to improve the Steeltoe developer experience, Steeltoe 3.1.0 added this new feature that allows the configuration of most Steeltoe components with a single line of code in your application. The package is named [`Steeltoe.Bootstrap.Autoconfig`](https://github.com/SteeltoeOSS/Steeltoe/tree/3.x/src/Bootstrap/src/Autoconfig), and it works by applying the same extensions that are already included in Steeltoe packages to automatically wire up each of those components. Applications running on .NET Core 3.1+ and .NET 5.0+ are supported. Get started by adding a reference to the Autoconfig package (you may want to add other Steeltoe references at this point too, see [the table below](#supported-steeltoe-packages) for the full list of what's supported now): diff --git a/docs/docs/v3/configuration/config-server-provider.md b/docs/docs/v3/configuration/config-server-provider.md index 178e865e..aa375bd5 100644 --- a/docs/docs/v3/configuration/config-server-provider.md +++ b/docs/docs/v3/configuration/config-server-provider.md @@ -260,7 +260,7 @@ public class HomeController : Controller Out of the box, configuration providers in .NET do not have access to the same logging infrastructure that is available to the rest of the application. Logging in the Steeltoe Config Server Client is enabled when an `ILoggerFactory` has been provided. -Starting with version 3.2.0, when no `ILoggerFactory` is provided, Steeltoe automatically configures [UpgradableBootstrapLoggerFactory](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Common/src/Common/Logging/UpgradableBootstrapLoggerFactory.cs). This `ILoggerFactory` can be automatically replaced by the runtime logging infrastructure after the application starts with a couple extra steps: +Starting with version 3.2.0, when no `ILoggerFactory` is provided, Steeltoe automatically configures [UpgradableBootstrapLoggerFactory](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Common/src/Common/Logging/UpgradableBootstrapLoggerFactory.cs). This `ILoggerFactory` can be automatically replaced by the runtime logging infrastructure after the application starts with a couple extra steps: 1. Add a NuGet Package reference to `Steeltoe.Common.Hosting`. 1. Add the hosted service to the service container with this code: diff --git a/docs/docs/v3/connectors/usage.md b/docs/docs/v3/connectors/usage.md index 1b59ee84..1fe699ae 100644 --- a/docs/docs/v3/connectors/usage.md +++ b/docs/docs/v3/connectors/usage.md @@ -100,7 +100,7 @@ return Host.CreateDefaultBuilder(args) While enhanced support will be provided in the next major version of Steeltoe, preliminary support for the [Service Binding Specification for Kubernetes](https://github.com/servicebinding/spec) was [added in the 3.2.2 release](../../../articles/steeltoe-3-2-2-adds-kube-service-bindings.md) with a new `IConfigurationProvider`. -The current version of `Steeltoe.Extensions.Configuration.Kubernetes.ServiceBinding` can read [many types of bindings](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Configuration/src/Kubernetes.ServiceBinding/PostProcessors.cs) into configuration and will transform the bindings for MongoDb, MySQL, PostgreSQL, RabbitMQ and Redis into the formats required to work automatically with Steeltoe Connectors. +The current version of `Steeltoe.Extensions.Configuration.Kubernetes.ServiceBinding` can read [many types of bindings](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Configuration/src/Kubernetes.ServiceBinding/PostProcessors.cs) into configuration and will transform the bindings for MongoDb, MySQL, PostgreSQL, RabbitMQ and Redis into the formats required to work automatically with Steeltoe Connectors. In order to use Steeltoe's Service Bindings for Kubernetes, you need to do the following: diff --git a/docs/docs/v3/logging/serilog-logger.md b/docs/docs/v3/logging/serilog-logger.md index 8110ddf6..86d18107 100644 --- a/docs/docs/v3/logging/serilog-logger.md +++ b/docs/docs/v3/logging/serilog-logger.md @@ -2,7 +2,7 @@ This logging provider extends the dynamic logging provider with [Serilog](https://serilog.net/). This allows logger levels configured via Serilog to be queried and modified at runtime via the loggers endpoint. -The source code for the Serilog Dynamic Logger can be found [here](https://github.com/SteeltoeOSS/steeltoe/tree/release/3.2/src/Logging/src/). +The source code for the Serilog Dynamic Logger can be found [here](https://github.com/SteeltoeOSS/steeltoe/tree/3.x/src/Logging/src). A sample working project can be found [here](https://github.com/SteeltoeOSS/Samples/tree/3.x/Management/src/CloudFoundry). diff --git a/docs/docs/v3/management/health.md b/docs/docs/v3/management/health.md index 2e82a423..ee7055c6 100644 --- a/docs/docs/v3/management/health.md +++ b/docs/docs/v3/management/health.md @@ -125,7 +125,7 @@ For any group that has been defined, you may access health information from the Applications deployed on Kubernetes can provide information about their internal state with [Container Probes](https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes). Depending on your [Kubernetes configuration](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/), the kubelet will call those probes and react to the result. -Steeltoe provides an [`ApplicationAvailability`](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Common/src/Common/Availability/ApplicationAvailability.cs) class for managing various types of application state. Out of the box support is provided for Liveness and Readiness, where each are exposed in a corresponding `IHealthContributor` and Health Group. +Steeltoe provides an [`ApplicationAvailability`](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Common/src/Common/Availability/ApplicationAvailability.cs) class for managing various types of application state. Out of the box support is provided for Liveness and Readiness, where each are exposed in a corresponding `IHealthContributor` and Health Group. In order to change the health contributors that are included in either of the two default groups, use the same style of configuration seen above. Please note that this will _replace_ the default groupings, so if you would like to _add_ an `IHealthContributor` you will need to include the original entry. These entries demonstrate including disk space in both groups: diff --git a/docs/docs/v3/messaging/rabbitmq-intro.md b/docs/docs/v3/messaging/rabbitmq-intro.md index 711cf7b3..66c19623 100644 --- a/docs/docs/v3/messaging/rabbitmq-intro.md +++ b/docs/docs/v3/messaging/rabbitmq-intro.md @@ -239,7 +239,7 @@ Alternatively, you could configure the same connection settings using the `Addre >When specifying addresses as shown above, the `host` and `port` properties are ignored. If the address uses the `amqps` protocol, SSL support is automatically enabled. -See [`RabbitOptions`](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Messaging/src/RabbitMQ/Config/RabbitOptions.cs) for more of the supported options. +See [`RabbitOptions`](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Messaging/src/RabbitMQ/Config/RabbitOptions.cs) for more of the supported options. >TIP: See [Understanding AMQP, the protocol used by RabbitMQ](https://www.rabbitmq.com/tutorials/amqp-concepts.html) for more details. diff --git a/docs/docs/v3/messaging/rabbitmq-reference.md b/docs/docs/v3/messaging/rabbitmq-reference.md index 2a311152..8b897bec 100644 --- a/docs/docs/v3/messaging/rabbitmq-reference.md +++ b/docs/docs/v3/messaging/rabbitmq-reference.md @@ -515,7 +515,7 @@ We will explore message sending and reception, respectively, in [Sending Message ### Adding Retry Capabilities You can now configure the `RabbitTemplate` to use a `RetryTemplate` to help with handling problems with broker connectivity. -See the [Steeltoe Retry](https://github.com/SteeltoeOSS/Steeltoe/tree/release/3.2/src/Common/src/Common/Retry) framework for complete information. +See the [Steeltoe Retry](https://github.com/SteeltoeOSS/Steeltoe/tree/3.x/src/Common/src/Common/Retry) framework for complete information. The following is only one example that uses a [Polly](http://www.thepollyproject.org/) based retry policy, which makes three tries before throwing the exception to the caller. ```csharp @@ -2342,11 +2342,11 @@ Those methods are quite useful for request-reply scenarios, since they handle th Similar request-reply methods are also available where the `IMessageConverter` is applied to both the request and reply. Those methods are named `ConvertSendAndReceive`. -See the [`RabbitTemplate`](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Messaging/src/RabbitMQ/Core/RabbitTemplate.cs) code for more detail. +See the [`RabbitTemplate`](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Messaging/src/RabbitMQ/Core/RabbitTemplate.cs) code for more detail. Each of the `SendAndReceive` method variants has an overloaded version that takes `CorrelationData`. Together with a properly configured connection factory, this enables the receipt of publisher confirms for the send side of the operation. -See [Template Publisher Confirms and Returns](#template-publisher-confirms-and-returns) and the [`RabbitTemplate`](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Messaging/src/RabbitMQ/Core/RabbitTemplate.cs) code for more detail. +See [Template Publisher Confirms and Returns](#template-publisher-confirms-and-returns) and the [`RabbitTemplate`](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Messaging/src/RabbitMQ/Core/RabbitTemplate.cs) code for more detail. You can configure the `RabbitTemplate` with the `NoLocalReplyConsumer` option to control a `noLocal` flag for the reply RabbitMQ Client `BasicConsume()` operation. This is `false` by default. @@ -2467,7 +2467,7 @@ If the reply queue is configured to send rejected messages to a dead letter exch To do so, bind a queue to the configured dead letter exchange with a routing key equal to the reply queue's name. See the [RabbitMQ Dead Letter Documentation](https://www.rabbitmq.com/dlx.html) for more information about configuring dead lettering. -You can also take a look at the [FixedReplyQueueDeadLetterTest](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Messaging/test/RabbitMQ.Test/Core/FixedReplyQueueDeadLetterTest.cs) test case for an example. +You can also take a look at the [FixedReplyQueueDeadLetterTest](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Messaging/test/RabbitMQ.Test/Core/FixedReplyQueueDeadLetterTest.cs) test case for an example. ## Configuring the Broker @@ -2681,7 +2681,7 @@ var fooExchange = ExchangeBuilder.DirectExchange("foo") .Build(); ``` -See the code for [QueueBuilder](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Messaging/src/RabbitMQ/Config/QueueBuilder.cs) and [ExchangeBuilder](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Messaging/src/RabbitMQ/Config/ExchangeBuilder.cs) for more information. +See the code for [QueueBuilder](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Messaging/src/RabbitMQ/Config/QueueBuilder.cs) and [ExchangeBuilder](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Messaging/src/RabbitMQ/Config/ExchangeBuilder.cs) for more information. The `ExchangeBuilder` creates durable exchanges by default, to be consistent with the simple constructors on the individual `AbstractExchange` classes. To make a non-durable exchange with the builder, use `.Durable(false)` before invoking `.Build()`. @@ -3060,7 +3060,7 @@ Since 2.7.0, rejected messages go to the front of the queue, in a similar manner ### Using RabbitTransactionManager -The [RabbitTransactionManager](https://github.com/SteeltoeOSS/Steeltoe/blob/release/3.2/src/Messaging/src/RabbitMQ/Transaction/RabbitTransactionManager.cs) is the only `IPlatformTransactionManager` supported at this point. +The [RabbitTransactionManager](https://github.com/SteeltoeOSS/Steeltoe/blob/3.x/src/Messaging/src/RabbitMQ/Transaction/RabbitTransactionManager.cs) is the only `IPlatformTransactionManager` supported at this point. This transaction manager is an implementation of the [`IPlatformTransactionManager`] interface and should be used with a single RabbitMQ `IConnectionFactory`. >IMPORTANT: This strategy is not able to provide XA transactions - for example, in order to share transactions between messaging and database access. diff --git a/docs/docs/v4/configuration/config-server-provider.md b/docs/docs/v4/configuration/config-server-provider.md index 1c737184..ef84e017 100644 --- a/docs/docs/v4/configuration/config-server-provider.md +++ b/docs/docs/v4/configuration/config-server-provider.md @@ -6,7 +6,7 @@ The Spring Cloud Config Server is an application configuration service that give To gain a better understanding of the Spring Cloud Config Server, you should read the [Spring Cloud Config documentation](https://spring.io/projects/spring-cloud-config). -In addition to the Quick Start provided later, you can refer to the [Steeltoe ConfigurationProviders](https://github.com/SteeltoeOSS/Samples/tree/main/Configuration/src/ConfigurationProviders) sample application when you need to understand how to use this provider. +In addition to the Quick Start provided later, you can refer to the [Steeltoe ConfigurationProviders](https://github.com/SteeltoeOSS/Samples/tree/4.x/Configuration/src/ConfigurationProviders) sample application when you need to understand how to use this provider. ## Using the Config Server Provider @@ -129,7 +129,7 @@ builder.AddConfigServer(); ### Bind to Cloud Foundry -When you want to use a Config Server on Cloud Foundry and you have installed [Spring Cloud Services](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#provision-sccs-on-cloud-foundry), you can create and bind an instance of it to your application by using the Cloud Foundry CLI. +When you want to use a Config Server on Cloud Foundry and you have installed [Spring Cloud Services](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#provision-sccs-on-cloud-foundry), you can create and bind an instance of it to your application by using the Cloud Foundry CLI. 1. Create a Config Server instance: diff --git a/docs/docs/v4/connectors/cosmosdb.md b/docs/docs/v4/connectors/cosmosdb.md index 2ef2a7fd..30577a44 100644 --- a/docs/docs/v4/connectors/cosmosdb.md +++ b/docs/docs/v4/connectors/cosmosdb.md @@ -122,4 +122,4 @@ To retrieve data from CosmosDB in your app, use the following steps: } ``` -A complete sample app that uses `CosmosClient` is provided at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/CosmosDb. +A complete sample app that uses `CosmosClient` is provided at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/CosmosDb. diff --git a/docs/docs/v4/connectors/microsoft-sql-server.md b/docs/docs/v4/connectors/microsoft-sql-server.md index 4d0fccbd..0ec8b7db 100644 --- a/docs/docs/v4/connectors/microsoft-sql-server.md +++ b/docs/docs/v4/connectors/microsoft-sql-server.md @@ -140,7 +140,7 @@ you can inject it and use it in a controller or view: } ``` -A complete sample app that uses Entity Framework Core with SQL Server is provided at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/SqlServerEFCore. +A complete sample app that uses Entity Framework Core with SQL Server is provided at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/SqlServerEFCore. ## Cloud Foundry diff --git a/docs/docs/v4/connectors/mongodb.md b/docs/docs/v4/connectors/mongodb.md index c16ffa80..3ba184de 100644 --- a/docs/docs/v4/connectors/mongodb.md +++ b/docs/docs/v4/connectors/mongodb.md @@ -11,7 +11,7 @@ The remainder of this topic assumes that you are familiar with the basic concept To use this connector: -1. Create a MongoDB server instance or use a [docker container](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#mongodb). +1. Create a MongoDB server instance or use a [docker container](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#mongodb). 1. Add NuGet references to your project. 1. Configure your connection string in `appsettings.json`. 1. Initialize the Steeltoe Connector at startup. @@ -98,7 +98,7 @@ builder.AddMongoDb(); } ``` -A complete sample app that uses `IMongoClient` is provided at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/MongoDb. +A complete sample app that uses `IMongoClient` is provided at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/MongoDb. ## Cloud Foundry @@ -131,4 +131,4 @@ You can create and bind an instance to your application by using the Cloud Found This Connector supports the [Service Binding Specification for Kubernetes](https://github.com/servicebinding/spec). It can be used through the [Services Toolkit](https://techdocs.broadcom.com/us/en/vmware-tanzu/standalone-components/tanzu-application-platform/1-12/tap/services-toolkit-install-services-toolkit.html). -For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/MongoDb#running-on-tanzu-platform-for-kubernetes. +For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/MongoDb#running-on-tanzu-platform-for-kubernetes. diff --git a/docs/docs/v4/connectors/mysql.md b/docs/docs/v4/connectors/mysql.md index eebdfaaf..203cc244 100644 --- a/docs/docs/v4/connectors/mysql.md +++ b/docs/docs/v4/connectors/mysql.md @@ -14,7 +14,7 @@ The remainder of this topic assumes that you are familiar with the basic concept To use this connector: -1. Create a MySQL server instance or use a [docker container](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#mysql). +1. Create a MySQL server instance or use a [docker container](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#mysql). 1. Add NuGet references to your project. 1. Configure your connection string in `appsettings.json`. 1. Initialize the Steeltoe Connector at startup. @@ -90,7 +90,7 @@ public class HomeController : Controller } ``` -A complete sample app that uses `MySqlConnection` is provided at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/MySql. +A complete sample app that uses `MySqlConnection` is provided at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/MySql. ### Use Entity Framework Core @@ -146,7 +146,7 @@ you can inject it and use it in a controller or view: } ``` -A complete sample app that uses Entity Framework Core with MySQL is provided at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/MySqlEFCore. +A complete sample app that uses Entity Framework Core with MySQL is provided at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/MySqlEFCore. ## Cloud Foundry @@ -181,4 +181,4 @@ You can create and bind an instance to your application by using the Cloud Found This Connector supports the [Service Binding Specification for Kubernetes](https://github.com/servicebinding/spec). It can be used through the [Services Toolkit](https://techdocs.broadcom.com/us/en/vmware-tanzu/standalone-components/tanzu-application-platform/1-12/tap/services-toolkit-install-services-toolkit.html). -For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/MySql#running-on-tanzu-platform-for-kubernetes. +For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/MySql#running-on-tanzu-platform-for-kubernetes. diff --git a/docs/docs/v4/connectors/postgresql.md b/docs/docs/v4/connectors/postgresql.md index d2237ccc..b9687d2b 100644 --- a/docs/docs/v4/connectors/postgresql.md +++ b/docs/docs/v4/connectors/postgresql.md @@ -12,7 +12,7 @@ The remainder of this topic assumes that you are familiar with the basic concept To use this connector: -1. Create a PostgreSQL server instance or use a [docker container](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#postgresql). +1. Create a PostgreSQL server instance or use a [docker container](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#postgresql). 1. Add NuGet references to your project. 1. Configure your connection string in `appsettings.json`. 1. Initialize the Steeltoe Connector at startup. @@ -85,7 +85,7 @@ public class HomeController : Controller } ``` -A complete sample app that uses `NpgsqlConnection` is provided at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/PostgreSql. +A complete sample app that uses `NpgsqlConnection` is provided at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/PostgreSql. ### Use Entity Framework Core @@ -141,7 +141,7 @@ you can inject it and use it in a controller or view: } ``` -A complete sample app that uses Entity Framework Core with PostgreSQL is provided at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/PostgreSqlEFCore. +A complete sample app that uses Entity Framework Core with PostgreSQL is provided at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/PostgreSqlEFCore. ## Cloud Foundry @@ -176,4 +176,4 @@ You can create and bind an instance to your application by using the Cloud Found This Connector supports the [Service Binding Specification for Kubernetes](https://github.com/servicebinding/spec). It can be used through the [Services Toolkit](https://techdocs.broadcom.com/us/en/vmware-tanzu/standalone-components/tanzu-application-platform/1-12/tap/services-toolkit-install-services-toolkit.html). -For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/PostgreSql#running-on-tanzu-platform-for-kubernetes. +For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/PostgreSql#running-on-tanzu-platform-for-kubernetes. diff --git a/docs/docs/v4/connectors/rabbitmq.md b/docs/docs/v4/connectors/rabbitmq.md index f245cf1f..9b9082ce 100644 --- a/docs/docs/v4/connectors/rabbitmq.md +++ b/docs/docs/v4/connectors/rabbitmq.md @@ -11,7 +11,7 @@ The remainder of this topic assumes that you are familiar with the basic concept To use this connector: -1. Create a RabbitMQ server instance or use a [docker container](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#rabbitmq). +1. Create a RabbitMQ server instance or use a [docker container](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#rabbitmq). 1. Add NuGet references to your project. 1. Configure your connection string in `appsettings.json` (optional). 1. Initialize the Steeltoe Connector at startup. @@ -83,7 +83,7 @@ public class HomeController : Controller } ``` -A complete sample app that uses `IConnection` is provided at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/RabbitMQ. +A complete sample app that uses `IConnection` is provided at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/RabbitMQ. ## Cloud Foundry @@ -116,4 +116,4 @@ You can create and bind an instance to your application by using the Cloud Found This Connector supports the [Service Binding Specification for Kubernetes](https://github.com/servicebinding/spec). It can be used through the [Services Toolkit](https://techdocs.broadcom.com/us/en/vmware-tanzu/standalone-components/tanzu-application-platform/1-12/tap/services-toolkit-install-services-toolkit.html). -For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/RabbitMQ#running-on-tanzu-platform-for-kubernetes. +For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/RabbitMQ#running-on-tanzu-platform-for-kubernetes. diff --git a/docs/docs/v4/connectors/redis.md b/docs/docs/v4/connectors/redis.md index 2af94ceb..bc36f7cc 100644 --- a/docs/docs/v4/connectors/redis.md +++ b/docs/docs/v4/connectors/redis.md @@ -13,7 +13,7 @@ The remainder of this topic assumes that you are familiar with the basic concept To use this connector: -1. Create a Redis/Valkey server instance or use a [Redis docker container](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#redis) or [Valkey docker container](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#valkey). +1. Create a Redis/Valkey server instance or use a [Redis docker container](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#redis) or [Valkey docker container](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#valkey). 1. Add NuGet references to your project. 1. Configure your connection string in `appsettings.json`. 1. Initialize the Steeltoe Connector at startup. @@ -83,7 +83,7 @@ public class HomeController : Controller } ``` -For a complete sample app that uses `IConnectionMultiplexer`, see https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/Redis. +For a complete sample app that uses `IConnectionMultiplexer`, see https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/Redis. ### Use IDistributedCache @@ -111,7 +111,7 @@ public class HomeController : Controller } ``` -For a complete sample app that uses `IDistributedCache`, see https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/Redis. +For a complete sample app that uses `IDistributedCache`, see https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/Redis. ## Cloud Foundry @@ -147,4 +147,4 @@ You can create and bind an instance to your application by using the Cloud Found This Connector supports the [Service Binding Specification for Kubernetes](https://github.com/servicebinding/spec). It can be used through the [Services Toolkit](https://techdocs.broadcom.com/us/en/vmware-tanzu/standalone-components/tanzu-application-platform/1-12/tap/services-toolkit-install-services-toolkit.html). -For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/main/Connectors/src/Redis#running-on-tanzu-platform-for-kubernetes. +For details on how to use this, see the instructions at https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors/src/Redis#running-on-tanzu-platform-for-kubernetes. diff --git a/docs/docs/v4/management/health.md b/docs/docs/v4/management/health.md index b2f44bb6..b96182c5 100644 --- a/docs/docs/v4/management/health.md +++ b/docs/docs/v4/management/health.md @@ -203,7 +203,7 @@ For any group that has been defined, you can access health information from the Applications deployed on Kubernetes can provide information about their internal state with [Container Probes](https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes). Depending on your [Kubernetes configuration](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/), the kubelet calls those probes and reacts to the result. -Steeltoe provides an [`ApplicationAvailability`](https://github.com/SteeltoeOSS/Steeltoe/blob/main/src/Management/src/Endpoint/Actuators/Health/Availability/ApplicationAvailability.cs) class for managing various types of application state. +Steeltoe provides an [`ApplicationAvailability`](https://github.com/SteeltoeOSS/Steeltoe/blob/4.x/src/Management/src/Endpoint/Actuators/Health/Availability/ApplicationAvailability.cs) class for managing various types of application state. Support is provided, out of the box, for Liveness and Readiness, where each is exposed in a corresponding `IHealthContributor` and health group. While these health contributors are included, they are disabled by default and must be enabled in the configuration (as shown in the example below). @@ -391,7 +391,7 @@ builder.Services.AddHealthChecks().AddMySql(serviceProvider => }); ``` -The code above assumes the following `appsettings.json` configuration, combined with the [Steeltoe docker container for MySQL](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#mysql): +The code above assumes the following `appsettings.json` configuration, combined with the [Steeltoe docker container for MySQL](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#mysql): ```json { diff --git a/docs/docs/v4/management/info.md b/docs/docs/v4/management/info.md index 4d60077d..dc2dd42f 100644 --- a/docs/docs/v4/management/info.md +++ b/docs/docs/v4/management/info.md @@ -72,7 +72,7 @@ This contributor exposes any values below the `Info` configuration key. For exam This contributor exposes information from the `git.properties` Spring Boot file, if available. The file contains information from git, such as branch/tag name, commit hash, and remote. > [!TIP] -> For an example of how to use this contributor within MSBuild using [GitInfo](https://github.com/devlooped/GitInfo), see the [Steeltoe Management sample](https://github.com/SteeltoeOSS/Samples/tree/main/Management/src). +> For an example of how to use this contributor within MSBuild using [GitInfo](https://github.com/devlooped/GitInfo), see the [Steeltoe Management sample](https://github.com/SteeltoeOSS/Samples/tree/4.x/Management/src). ## Sample Output diff --git a/docs/docs/v4/management/prometheus.md b/docs/docs/v4/management/prometheus.md index 17ba27f8..32aee0d3 100644 --- a/docs/docs/v4/management/prometheus.md +++ b/docs/docs/v4/management/prometheus.md @@ -6,7 +6,7 @@ The Steeltoe Prometheus endpoint configures the [OpenTelemetry Prometheus Export The Prometheus endpoint does not automatically instrument your application, but does make it easy to export metrics in the Prometheus metrics format, which can be used by tools like [Prometheus Server](https://prometheus.io/) and the [Metric Registrar for Tanzu Platform for Cloud Foundry](https://techdocs.broadcom.com/us/en/vmware-tanzu/platform/tanzu-platform-for-cloud-foundry/10-0/tpcf/metric-registrar-index.html). -See the [Steeltoe Management samples](https://github.com/SteeltoeOSS/Samples/tree/main/Management/src/ActuatorWeb/README.md) for more information about using this tool. +See the [Steeltoe Management samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Management/src/ActuatorWeb/README.md) for more information about using this tool. ## Add NuGet Reference diff --git a/docs/docs/v4/management/springbootadmin.md b/docs/docs/v4/management/springbootadmin.md index ef7e8af1..3646aadd 100644 --- a/docs/docs/v4/management/springbootadmin.md +++ b/docs/docs/v4/management/springbootadmin.md @@ -92,7 +92,7 @@ a few additional steps are needed: For the server to report the app as `UP`, you must add at least the hypermedia and health actuators in `Program.cs`. > [!TIP] -> For testing, you can use the [Steeltoe docker image for SBA](https://github.com/SteeltoeOSS/Samples/blob/main/CommonTasks.md#spring-boot-admin). +> For testing, you can use the [Steeltoe docker image for SBA](https://github.com/SteeltoeOSS/Samples/blob/4.x/CommonTasks.md#spring-boot-admin). Putting it all together, your config files contain the contents shown in the following: diff --git a/docs/docs/v4/security/jwt-bearer.md b/docs/docs/v4/security/jwt-bearer.md index cc7a8c2a..801ad286 100644 --- a/docs/docs/v4/security/jwt-bearer.md +++ b/docs/docs/v4/security/jwt-bearer.md @@ -2,7 +2,7 @@ This library is a supplement to ASP.NET Core Security, adding functionality that helps you use Cloud Foundry Security services such as [Single Sign-On for VMware Tanzu](https://techdocs.broadcom.com/us/en/vmware-tanzu/platform-services/single-sign-on-for-tanzu/1-16/sso-tanzu/index.html) or a [UAA Server](https://github.com/cloudfoundry/uaa) for authentication and authorization using JSON Web Tokens (JWT) in ASP.NET Core web applications. -For more information, see also the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/main/Security/src/AuthWeb/README.md). +For more information, see also the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/4.x/Security/src/AuthWeb/README.md). General guidance for use of JWT is beyond the scope of this document. For information, see: @@ -150,7 +150,7 @@ public class SampleController : ControllerBase In the preceding example, if an incoming GET request is made to the `/api/sample` endpoint and the request does not contain a valid JWT bearer token for a user with a `scope` claim equal to `sampleapi.read`, the request is rejected. -See the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/main/Security/src/AuthWeb/README.md) for examples using a user's access token to interact with downstream APIs, focusing on these locations: +See the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/4.x/Security/src/AuthWeb/README.md) for examples using a user's access token to interact with downstream APIs, focusing on these locations: * [Configure ASP.NET Core to save the user's token](https://github.com/SteeltoeOSS/Samples/blob/4c0b222a8ea201240bb6b99aae46434864cf4dd1/Security/src/AuthWeb/appsettings.json#L15) * [Get the user's token](https://github.com/SteeltoeOSS/Samples/blob/4c0b222a8ea201240bb6b99aae46434864cf4dd1/Security/src/AuthWeb/Controllers/HomeController.cs#L60) @@ -209,7 +209,7 @@ Then you can configure the SSO binding with the web interface. For more information, see: * the [Single Sign-On for Tanzu developer guide](https://techdocs.broadcom.com/us/en/vmware-tanzu/platform-services/single-sign-on-for-tanzu/1-16/sso-tanzu/developer-index.html) -* the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/main/Security/src/AuthWeb/README.md) +* the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/4.x/Security/src/AuthWeb/README.md) ### UAA Server diff --git a/docs/docs/v4/security/redis-key-storage-provider.md b/docs/docs/v4/security/redis-key-storage-provider.md index 6437d65d..bb773ff5 100644 --- a/docs/docs/v4/security/redis-key-storage-provider.md +++ b/docs/docs/v4/security/redis-key-storage-provider.md @@ -12,7 +12,7 @@ Even when not used by the application directly, these cryptographic keys are use By using the Steeltoe Redis Key Storage Provider, you can easily reconfigure the data protection service to store these keys in Redis/Valkey instances that are accessible through the [Steeltoe Redis Connector](../connectors/redis.md). -For more information, see the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/main/Security/src/RedisDataProtection/README.md). +For more information, see the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/4.x/Security/src/RedisDataProtection/README.md). ## Using the Redis Key Storage Provider @@ -131,4 +131,4 @@ After the service is bound to your application, the configuration settings are a > If you use a different service, adjust the `create-service` command accordingly. > [!TIP] -> For more information, see the [Steeltoe sample application](https://github.com/SteeltoeOSS/Samples/blob/main/Security/src/RedisDataProtection/README.md). +> For more information, see the [Steeltoe sample application](https://github.com/SteeltoeOSS/Samples/blob/4.x/Security/src/RedisDataProtection/README.md). diff --git a/docs/docs/v4/security/sso-open-id.md b/docs/docs/v4/security/sso-open-id.md index 154fd02a..faac3345 100644 --- a/docs/docs/v4/security/sso-open-id.md +++ b/docs/docs/v4/security/sso-open-id.md @@ -9,7 +9,7 @@ General guidance on the use of OpenID Connect is beyond the scope of this docume * [OpenID](https://openid.net/developers/how-connect-works/) * [Microsoft OpenID Connect library](https://learn.microsoft.com/aspnet/core/security/authentication/configure-oidc-web-authentication) -For more information about how to use this library, see the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/main/Security/src/AuthWeb/README.md). +For more information about how to use this library, see the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/4.x/Security/src/AuthWeb/README.md). ## Using the OpenID Connect Library @@ -173,7 +173,7 @@ The preceding example establishes the following security rules: > The Steeltoe UAA server has several pre-provisioned user accounts. Sign in with `testuser` and password `password` to access resources secured with `sampleapi.read` > To test with a user that does not have the permission `sampleapi.read`, sign in with the user `customer` and password `password`. > -> See the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/main/Security/src/AuthWeb/README.md) for examples of additional basic functionality, such as signing out of the application. +> See the [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/4.x/Security/src/AuthWeb/README.md) for examples of additional basic functionality, such as signing out of the application. ### Single Sign-On for VMware Tanzu @@ -229,7 +229,7 @@ Then you can configure the SSO binding with the web interface. For more information, see: * [Single Sign-On for Tanzu developer guide](https://techdocs.broadcom.com/us/en/vmware-tanzu/platform-services/single-sign-on-for-tanzu/1-16/sso-tanzu/developer-index.html) -* [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/main/Security/src/AuthWeb/README.md). +* [Steeltoe Security samples](https://github.com/SteeltoeOSS/Samples/blob/4.x/Security/src/AuthWeb/README.md). ### UAA Server diff --git a/docs/docs/v4/tracing/index.md b/docs/docs/v4/tracing/index.md index f8945356..dd01978f 100644 --- a/docs/docs/v4/tracing/index.md +++ b/docs/docs/v4/tracing/index.md @@ -28,7 +28,7 @@ Steeltoe provides the class `TracingLogProcessor`, which is an `IDynamicMessageP It enriches log entries with correlation data using the same trace format popularized by [Spring Cloud Sleuth](https://cloud.spring.io/spring-cloud-sleuth/reference/html/#log-correlation), that include `[,,,,]`. -Consider this pair of log entries from the [Steeltoe Management sample applications](https://github.com/SteeltoeOSS/Samples/blob/main/Management/src/): +Consider this pair of log entries from the [Steeltoe Management sample applications](https://github.com/SteeltoeOSS/Samples/blob/4.x/Management/src/): ```text info: System.Net.Http.HttpClient.ActuatorApiClient.LogicalHandler[100] diff --git a/docs/docs/v4/welcome/migrate-quick-steps.md b/docs/docs/v4/welcome/migrate-quick-steps.md index 3a4a5406..b32c83c9 100644 --- a/docs/docs/v4/welcome/migrate-quick-steps.md +++ b/docs/docs/v4/welcome/migrate-quick-steps.md @@ -39,7 +39,7 @@ Use [Polly](https://github.com/App-vNext/Polly) instead. ## Configuration For additional information, see the updated [Configuration documentation](../configuration/index.md) and -[Configuration samples](https://github.com/SteeltoeOSS/Samples/tree/main/Configuration). +[Configuration samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Configuration). ### Cloud Foundry @@ -206,7 +206,7 @@ var builder = WebApplication.CreateBuilder(args); ## Connectors For additional information, see the updated [Connectors documentation](../configuration/index.md) and -[Configuration samples](https://github.com/SteeltoeOSS/Samples/tree/main/Connectors). +[Configuration samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors). > [!IMPORTANT] > The configuration structure for Connectors has changed in Steeltoe 4. Always use the `ConnectionString` property instead of `Host`, `Port`, `Username`, `Password`, etc. @@ -601,7 +601,7 @@ Console.WriteLine($"Received value: {value}"); ## Discovery For additional information, see the updated [Discovery documentation](../discovery/index.md) and -[Discovery samples](https://github.com/SteeltoeOSS/Samples/tree/main/Discovery). +[Discovery samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Discovery). ### Eureka @@ -911,7 +911,7 @@ await Task.Delay(TimeSpan.FromMilliseconds(250)); // wait for logs to flush ## Management For additional information, see the updated [Management documentation](../management/index.md) and -[Management samples](https://github.com/SteeltoeOSS/Samples/tree/main/Management). +[Management samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Management). ### Endpoints @@ -1155,7 +1155,7 @@ Using OpenTelemetry for collecting logs, metrics and distributed traces now work See the instructions [here](../tracing/index.md) to configure OpenTelemetry in your application. See [here](../management/prometheus.md) to export metrics to Prometheus using Steeltoe v4. -The sample [here](https://github.com/SteeltoeOSS/Samples/blob/main/Management/src/ActuatorWeb/README.md#viewing-metric-dashboards) demonstrates exporting to Prometheus and Grafana. +The sample [here](https://github.com/SteeltoeOSS/Samples/blob/4.x/Management/src/ActuatorWeb/README.md#viewing-metric-dashboards) demonstrates exporting to Prometheus and Grafana. ### Kubernetes @@ -1244,7 +1244,7 @@ Spring Cloud Stream support has been removed from Steeltoe in v4. ## Security For additional information, see the updated [Security documentation](../security/index.md) and -[Discovery samples](https://github.com/SteeltoeOSS/Samples/tree/main/Security). +[Discovery samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Security). ### CredHub client diff --git a/docs/docs/v4/welcome/whats-new.md b/docs/docs/v4/welcome/whats-new.md index 0c661b2b..9eb17ba1 100644 --- a/docs/docs/v4/welcome/whats-new.md +++ b/docs/docs/v4/welcome/whats-new.md @@ -452,7 +452,7 @@ For more information, see the updated [Bootstrap documentation](../bootstrap/ind ### Documentation For more information, see the updated [Configuration documentation](../configuration/index.md) and -[Configuration samples](https://github.com/SteeltoeOSS/Samples/tree/main/Configuration). +[Configuration samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Configuration). ## Connectors @@ -622,7 +622,7 @@ For more information, see the updated [Configuration documentation](../configura ### Documentation For more information, see the updated [Connectors documentation](../configuration/index.md) and -[Configuration samples](https://github.com/SteeltoeOSS/Samples/tree/main/Connectors). +[Configuration samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Connectors). ## Discovery @@ -887,7 +887,7 @@ For more information, see the updated [Connectors documentation](../configuratio ### Documentation For more information, see the updated [Discovery documentation](../discovery/index.md) and -[Discovery samples](https://github.com/SteeltoeOSS/Samples/tree/main/Discovery). +[Discovery samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Discovery). ## Logging @@ -1415,7 +1415,7 @@ For more information, see the updated [Logging documentation](../logging/index.m ### Documentation For more information, see the updated [Management documentation](../management/index.md) and -[Management samples](https://github.com/SteeltoeOSS/Samples/tree/main/Management). +[Management samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Management). ## Security @@ -1508,7 +1508,7 @@ For more information, see the updated [Management documentation](../management/i ### Documentation For more information, see the updated [Security documentation](../security/index.md) and -[Discovery samples](https://github.com/SteeltoeOSS/Samples/tree/main/Security). +[Discovery samples](https://github.com/SteeltoeOSS/Samples/tree/4.x/Security). ## Release Notes diff --git a/src/Steeltoe.io/wwwroot/schema/latest/schema.json b/src/Steeltoe.io/wwwroot/schema/latest/schema.json index ee59e0ff..e6b52225 100644 --- a/src/Steeltoe.io/wwwroot/schema/latest/schema.json +++ b/src/Steeltoe.io/wwwroot/schema/latest/schema.json @@ -1,2614 +1,1970 @@ { - "definitions": { - "Application": { - "type": "object", - "properties": { - "Name": { - "description": "Application name. Can generally be overridden under specific components.", - "type": "string" - } - } - }, - "AsnEncodedData": { - "type": "object", - "properties": { - "Oid": { - "$ref": "#/definitions/Oid" - }, - "RawData": { - "type": "string" - } - } - }, - "AsymmetricAlgorithm": { - "type": "object", - "properties": { - "KeySize": { - "type": "integer" - }, - "LegalKeySizes": { - "type": "array", - "items": { - "$ref": "#/definitions/KeySizes" - } - }, - "SignatureAlgorithm": { - "type": "string" - }, - "KeyExchangeAlgorithm": { - "type": "string" - } - } - }, - "BinderOptions": { - "type": "object", - "properties": { - "ConfigureClass": { - "type": "string" - }, - "ConfigureAssembly": { - "type": "string" - }, - "Environment": { - "type": "object", - "additionalProperties": { - "type": [ - "string", - "number", - "integer", - "boolean", - "object", - "array" - ] - } - }, - "InheritEnvironment": { - "type": "boolean" - }, - "DefaultCandidate": { - "type": "boolean" - } - } - }, - "BindingOptions": { - "type": "object", - "properties": { - "Destination": { - "type": "string" - }, - "Group": { - "type": "string" - }, - "ContentType": { - "type": "string" - }, - "Binder": { - "type": "string" - }, - "Consumer": { - "$ref": "#/definitions/ConsumerOptions" - }, - "Producer": { - "$ref": "#/definitions/ProducerOptions" - } - } - }, - "BindingServiceOptions": { - "type": "object", - "properties": { - "InstanceIndex": { - "type": "integer" - }, - "InstanceCount": { - "type": "integer" - }, - "DefaultBinder": { - "type": "string" - }, - "BindingRetryInterval": { - "type": "integer" - }, - "OverrideCloudConnectors": { - "type": "boolean" - }, - "DynamicDestinations": { - "type": "array", - "items": { - "type": "string" - } - }, - "Binders": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/BinderOptions" - } - }, - "Bindings": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/BindingOptions" - } - }, - "Default": { - "$ref": "#/definitions/BindingOptions" - } - } - }, - "CacheOptions": { - "type": "object", - "properties": { - "Channel": { - "$ref": "#/definitions/ChannelOptions" - }, - "Connection": { - "$ref": "#/definitions/ConnectionOptions" - } - } - }, - "ChannelOptions": { - "type": "object", - "properties": { - "Size": { - "type": "integer" - }, - "CheckoutTimeout": { - "type": "string" - } - } - }, - "Cloud": { - "type": "object", - "properties": { - "Config": { - "$ref": "#/definitions/ConfigServerClientSettings" - }, - "Kubernetes": { - "$ref": "#/definitions/KubernetesConfig" - }, - "Stream": { - "$ref": "#/definitions/BindingServiceOptions" - } - } - }, - "CloudFoundryEndpointOptions": { - "type": "object", - "properties": { - "ValidateCertificates": { - "type": "boolean" - }, - "ApplicationId": { - "type": "string" - }, - "CloudFoundryApi": { - "type": "string" - }, - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "ConfigServerClientSettings": { - "description": "Settings for interacting with Spring Cloud Config Server", - "type": "object", - "properties": { - "Uri": { - "type": "string" - }, - "Enabled": { - "type": "boolean" - }, - "Environment": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "Label": { - "type": "string" - }, - "Username": { - "type": "string" - }, - "Password": { - "type": "string" - }, - "FailFast": { - "type": "boolean" - }, - "ValidateCertificates": { - "type": "boolean" - }, - "RetryEnabled": { - "type": "boolean" - }, - "RetryInitialInterval": { - "type": "integer" - }, - "RetryMaxInterval": { - "type": "integer" - }, - "RetryMultiplier": { - "type": "number" - }, - "RetryAttempts": { - "type": "integer" - }, - "DiscoveryEnabled": { - "type": "boolean" - }, - "DiscoveryServiceId": { - "type": "string" - }, - "HealthEnabled": { - "type": "boolean" - }, - "HealthTimeToLive": { - "type": "integer" - }, - "RawUri": { - "type": "string" - }, - "RawUris": { - "type": "array", - "items": { - "type": "string" - } - }, - "Token": { - "type": "string" - }, - "Timeout": { - "type": "integer" - }, - "AccessTokenUri": { - "type": "string" - }, - "ClientId": { - "type": "string" - }, - "ClientSecret": { - "type": "string" - }, - "ClientCertificate": { - "$ref": "#/definitions/X509Certificate2" - }, - "TokenTtl": { - "type": "integer" - }, - "TokenRenewRate": { - "type": "integer" - }, - "DisableTokenRenewal": { - "type": "boolean" - } - } - }, - "ConnectionOptions": { - "type": "object", - "properties": { - "Mode": { - "type": "string", - "enum": [ - "CHANNEL", - "CONNECTION" - ] - }, - "Size": { - "type": "integer" - } - } - }, - "ConnectorConfig": { - "description": "Settings for Steeltoe CosmosDb Connector", - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/CosmosDbConnectorOptions" - } - } - }, - "ConnectorConfig": { - "description": "Settings for Hystrix Circuit Breakers", - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/HystrixProviderConnectorOptions" - } - } - }, - "ConnectorConfig": { - "description": "Settings for Steeltoe MongoDb Connector", - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/MongoDbConnectorOptions" - } - } - }, - "ConnectorConfig": { - "description": "Settings for Steeltoe MySQL Connector", - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/MySqlProviderConnectorOptions" - } - } - }, - "ConnectorConfig": { - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/OAuthConnectorOptions" - } - } - }, - "ConnectorConfig": { - "description": "Settings for Steeltoe PostgreSQL Connector", - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/PostgresProviderConnectorOptions" - } - } - }, - "ConnectorConfig": { - "description": "Settings for Steeltoe RabbitMQ Connector", - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/RabbitMQProviderConnectorOptions" - } - } - }, - "ConnectorConfig": { - "description": "Settings for Steeltoe Redis Connector", - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/RedisCacheConnectorOptions" - } - } - }, - "ConsulConfig": { - "description": "Settings for service discovery and registration with HashiCorp Consul", - "type": "object", - "properties": { - "Discovery": { - "$ref": "#/definitions/ConsulDiscoveryOptions" - }, - "Host": { - "type": "string" - }, - "Scheme": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "Datacenter": { - "type": "string" - }, - "Token": { - "type": "string" - }, - "WaitTime": { - "type": "string" - }, - "Username": { - "type": "string" - }, - "Password": { - "type": "string" - } - } - }, - "ConsulDiscoveryOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "Tags": { - "type": "array", - "items": { - "type": "string" - } - }, - "UseNetUtils": { - "type": "boolean" - }, - "NetUtils": { - "$ref": "#/definitions/InetUtils" - }, - "Heartbeat": { - "$ref": "#/definitions/ConsulHeartbeatOptions" - }, - "Retry": { - "$ref": "#/definitions/ConsulRetryOptions" - }, - "DefaultQueryTag": { - "type": "string" - }, - "QueryPassing": { - "type": "boolean" - }, - "Scheme": { - "type": "string" - }, - "RegisterHealthCheck": { - "type": "boolean" - }, - "HealthCheckUrl": { - "type": "string" - }, - "HealthCheckPath": { - "type": "string" - }, - "HealthCheckInterval": { - "type": "string" - }, - "HealthCheckTimeout": { - "type": "string" - }, - "HealthCheckCriticalTimeout": { - "type": "string" - }, - "HealthCheckTlsSkipVerify": { - "type": "boolean" - }, - "HostName": { - "type": "string" - }, - "IpAddress": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "PreferIpAddress": { - "type": "boolean" - }, - "ServiceName": { - "type": "string" - }, - "InstanceId": { - "type": "string" - }, - "PreferAgentAddress": { - "type": "boolean" - }, - "InstanceZone": { - "type": "string" - }, - "InstanceGroup": { - "type": "string" - }, - "DefaultZoneMetadataName": { - "type": "string" - }, - "FailFast": { - "type": "boolean" - }, - "Register": { - "type": "boolean" - }, - "Deregister": { - "type": "boolean" - }, - "IsHeartBeatEnabled": { - "type": "boolean" - }, - "IsRetryEnabled": { - "type": "boolean" - }, - "CacheTTL": { - "type": "integer" - }, - "UseAspNetCoreUrls": { - "type": "boolean" - } - } - }, - "ConsulHeartbeatOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "TtlValue": { - "type": "integer" - }, - "TtlUnit": { - "type": "string" - }, - "IntervalRatio": { - "type": "number" - }, - "Ttl": { - "type": "string" - } - } - }, - "ConsulRetryOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "InitialInterval": { - "type": "integer" - }, - "MaxInterval": { - "type": "integer" - }, - "Multiplier": { - "type": "number" - }, - "MaxAttempts": { - "type": "integer" - } - } - }, - "ConsumerOptions": { - "type": "object", - "properties": { - "BindingName": { - "type": "string" - }, - "AutoStartup": { - "type": "boolean" - }, - "Concurrency": { - "type": "integer" - }, - "Partitioned": { - "type": "boolean" - }, - "InstanceCount": { - "type": "integer" - }, - "InstanceIndex": { - "type": "integer" - }, - "InstanceIndexList": { - "type": "array", - "items": { - "type": "integer" - } - }, - "MaxAttempts": { - "type": "integer" - }, - "BackOffInitialInterval": { - "type": "integer" - }, - "BackOffMaxInterval": { - "type": "integer" - }, - "BackOffMultiplier": { - "type": "number" - }, - "DefaultRetryable": { - "type": "boolean" - }, - "RetryableExceptions": { - "type": "array", - "items": { - "type": "string" - } - }, - "HeaderMode": { - "type": "string", - "enum": [ - "None", - "Headers", - "EmbeddedHeaders" - ] - }, - "UseNativeDecoding": { - "type": "boolean" - }, - "Multiplex": { - "type": "boolean" - } - } - }, - "CosmosDbConnectorOptions": { - "type": "object", - "properties": { - "ConnectionString": { - "type": "string" - }, - "Host": { - "type": "string" - }, - "MasterKey": { - "type": "string" - }, - "ReadOnlyKey": { - "type": "string" - }, - "DatabaseId": { - "type": "string" - }, - "DatabaseLink": { - "type": "string" - }, - "UseReadOnlyCredentials": { - "type": "boolean" - } - } - }, - "DirectContainerOptions": { - "type": "object", - "properties": { - "AutoStartup": { - "type": "boolean" - }, - "AcknowledgeMode": { - "type": "string", - "enum": [ - "NONE", - "MANUAL", - "AUTO" - ] - }, - "Prefetch": { - "type": "integer" - }, - "DefaultRequeueRejected": { - "type": "boolean" - }, - "IdleEventInterval": { - "type": "string" - }, - "Retry": { - "$ref": "#/definitions/ListenerRetryOptions" - }, - "MissingQueuesFatal": { - "type": "boolean" - }, - "ConsumersPerQueue": { - "type": "integer" - }, - "PossibleAuthenticationFailureFatal": { - "type": "boolean" - } - } - }, - "EndpointClaim": { - "type": "object", - "properties": { - "Type": { - "type": "string" - }, - "Value": { - "type": "string" - } - } - }, - "Endpoints": { - "type": "object", - "properties": { - "Path": { - "type": "string" - }, - "Enabled": { - "type": "string" - }, - "Sensitive": { - "type": "string" - }, - "CloudFoundry": { - "$ref": "#/definitions/CloudFoundryEndpointOptions" - }, - "Env": { - "$ref": "#/definitions/EnvEndpointOptions" - }, - "Health": { - "$ref": "#/definitions/HealthEndpointOptions" - }, - "HeapDump": { - "$ref": "#/definitions/HeapDumpEndpointOptions" - }, - "HttpTrace": { - "$ref": "#/definitions/HttpTraceEndpointOptions" - }, - "Actuator": { - "$ref": "#/definitions/HypermediaEndpointOptionsSchema" - }, - "Info": { - "$ref": "#/definitions/InfoEndpointOptions" - }, - "Loggers": { - "$ref": "#/definitions/LoggersEndpointOptions" - }, - "Mappings": { - "$ref": "#/definitions/MappingsEndpointOptions" - }, - "Metrics": { - "$ref": "#/definitions/MetricsEndpointOptions" - }, - "Refresh": { - "$ref": "#/definitions/RefreshEndpointOptions" - }, - "Dump": { - "$ref": "#/definitions/ThreadDumpEndpointOptions" - }, - "Trace": { - "$ref": "#/definitions/TraceEndpointOptions" - } - } - }, - "EnvEndpointOptions": { - "type": "object", - "properties": { - "KeysToSanitize": { - "type": "array", - "items": { - "type": "string" - } - }, - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "EurekaConfig": { - "description": "Settings for service discovery and registration with Spring Cloud Eureka", - "type": "object", - "properties": { - "Client": { - "$ref": "#/definitions/IEurekaClientConfig" - }, - "Instance": { - "$ref": "#/definitions/IEurekaInstanceConfig" - } - } - }, - "Exposure": { - "type": "object", - "properties": { - "Include": { - "type": "array", - "items": { - "type": "string" - } - }, - "Exclude": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "HealthEndpointOptions": { - "type": "object", - "properties": { - "ShowDetails": { - "type": "string", - "enum": [ - "Always", - "Never", - "WhenAuthorized" - ] - }, - "Claim": { - "$ref": "#/definitions/EndpointClaim" - }, - "Role": { - "type": "string" - }, - "Groups": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/HealthGroupOptions" - } - }, - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "HealthGroupOptions": { - "type": "object", - "properties": { - "Include": { - "type": "string" - } - } - }, - "HeapDumpEndpointOptions": { - "type": "object", - "properties": { - "HeapDumpType": { - "type": "string" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "HttpTraceEndpointOptions": { - "type": "object", - "properties": { - "Capacity": { - "type": "integer" - }, - "AddRequestHeaders": { - "type": "boolean" - }, - "AddResponseHeaders": { - "type": "boolean" - }, - "AddPathInfo": { - "type": "boolean" - }, - "AddUserPrincipal": { - "type": "boolean" - }, - "AddParameters": { - "type": "boolean" - }, - "AddQueryString": { - "type": "boolean" - }, - "AddAuthType": { - "type": "boolean" - }, - "AddRemoteAddress": { - "type": "boolean" - }, - "AddSessionId": { - "type": "boolean" - }, - "AddTimeTaken": { - "type": "boolean" - }, - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "HypermediaEndpointOptionsSchema": { - "type": "object", - "properties": { - "Exposure": { - "$ref": "#/definitions/Exposure" - }, - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "HystrixProviderConnectorOptions": { - "type": "object", - "properties": { - "SslEnabled": { - "type": "boolean" - }, - "Uri": { - "type": "string" - }, - "Server": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "SslPort": { - "type": "integer" - }, - "Username": { - "type": "string" - }, - "Password": { - "type": "string" - }, - "VirtualHost": { - "type": "string" - } - } - }, - "IDataCenterInfo": { - "type": "object", - "properties": { - "Name": { - "type": "string", - "enum": [ - "Netflix", - "Amazon", - "MyOwn" - ] - } - } - }, - "IEndpointOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "IEurekaClientConfig": { - "description": "Settings for connection to the Eureka server", - "type": "object", - "properties": { - "RegistryFetchIntervalSeconds": { - "type": "integer" - }, - "ProxyHost": { - "type": "string" - }, - "ProxyPort": { - "type": "integer" - }, - "ProxyUserName": { - "type": "string" - }, - "ProxyPassword": { - "type": "string" - }, - "ShouldGZipContent": { - "type": "boolean" - }, - "EurekaServerConnectTimeoutSeconds": { - "type": "integer" - }, - "ShouldRegisterWithEureka": { - "type": "boolean" - }, - "ShouldDisableDelta": { - "type": "boolean" - }, - "ShouldFilterOnlyUpInstances": { - "type": "boolean" - }, - "ShouldFetchRegistry": { - "type": "boolean" - }, - "RegistryRefreshSingleVipAddress": { - "type": "string" - }, - "ShouldOnDemandUpdateStatusChange": { - "type": "boolean" - }, - "EurekaServerServiceUrls": { - "type": "string" - }, - "ValidateCertificates": { - "type": "boolean" - } - } - }, - "IEurekaInstanceConfig": { - "description": "Settings for how this application instance should register itself with Eureka", - "type": "object", - "properties": { - "InstanceId": { - "type": "string" - }, - "AppName": { - "type": "string" - }, - "AppGroupName": { - "type": "string" - }, - "IsInstanceEnabledOnInit": { - "type": "boolean" - }, - "NonSecurePort": { - "type": "integer" - }, - "SecurePort": { - "type": "integer" - }, - "IsNonSecurePortEnabled": { - "type": "boolean" - }, - "SecurePortEnabled": { - "type": "boolean" - }, - "LeaseRenewalIntervalInSeconds": { - "type": "integer" - }, - "LeaseExpirationDurationInSeconds": { - "type": "integer" - }, - "VirtualHostName": { - "type": "string" - }, - "SecureVirtualHostName": { - "type": "string" - }, - "ASGName": { - "type": "string" - }, - "MetadataMap": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "DataCenterInfo": { - "$ref": "#/definitions/IDataCenterInfo" - }, - "IpAddress": { - "type": "string" - }, - "StatusPageUrlPath": { - "type": "string" - }, - "StatusPageUrl": { - "type": "string" - }, - "HomePageUrlPath": { - "type": "string" - }, - "HomePageUrl": { - "type": "string" - }, - "HealthCheckUrlPath": { - "type": "string" - }, - "HealthCheckUrl": { - "type": "string" - }, - "SecureHealthCheckUrl": { - "type": "string" - }, - "DefaultAddressResolutionOrder": { - "type": "array", - "items": { - "type": "string" - } - }, - "HostName": { - "type": "string" - }, - "PreferIpAddress": { - "type": "boolean" - } - } - }, - "IManagementOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "Path": { - "type": "string" - }, - "EndpointOptions": { - "type": "array", - "items": { - "$ref": "#/definitions/IEndpointOptions" - } - }, - "UseStatusCodeFromResponse": { - "type": "boolean" - } - } - }, - "InetUtils": { - "type": "object" - }, - "InfoEndpointOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "KeySizes": { - "type": "object", - "additionalProperties": false, - "properties": { - "MinSize": { - "type": "integer" - }, - "MaxSize": { - "type": "integer" - }, - "SkipSize": { - "type": "integer" - } - } - }, - "KubernetesConfig": { - "description": "Settings for interacing with Kubernetes for Configuration and Service Discovery", - "type": "object", - "properties": { - "Discovery": { - "$ref": "#/definitions/KubernetesDiscoveryOptions" - }, - "Enabled": { - "type": "boolean" - }, - "ApplicationName": { - "type": "string" - }, - "NameSpace": { - "type": "string" - }, - "Reload": { - "$ref": "#/definitions/ReloadSettings" - }, - "Config": { - "$ref": "#/definitions/KubernetesConfiguration" - }, - "Secrets": { - "$ref": "#/definitions/WatchableResource" - }, - "NameEnvironmentSeparator": { - "type": "string" - }, - "InstanceId": { - "type": "string" - }, - "ApplicationId": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ApplicationVersion": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "InstanceIndex": { - "type": "integer" - }, - "Port": { - "type": "integer" - }, - "Uris": { - "type": "array", - "items": { - "type": "string" - } - }, - "Version": { - "type": "string" - }, - "DiskLimit": { - "type": "integer" - }, - "MemoryLimit": { - "type": "integer" - }, - "FileDescriptorLimit": { - "type": "integer" - }, - "InstanceIP": { - "type": "string" - }, - "InternalIP": { - "type": "string" - } - } - }, - "KubernetesConfiguration": { - "type": "object", - "properties": { - "Paths": { - "type": "array", - "items": { - "type": "string" - } - }, - "Enabled": { - "type": "boolean" - }, - "Sources": { - "type": "array", - "items": { - "$ref": "#/definitions/NamespacedResource" - } - } - } - }, - "KubernetesDiscoveryOptions": { - "description": "Settings for using the Kubernetes API for service discovery", - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "ServiceName": { - "type": "string" - }, - "AllNamespaces": { - "type": "boolean" - }, - "Namespace": { - "type": "string" - }, - "KnownSecurePorts": { - "type": "array", - "items": { - "type": "integer" - } - }, - "ServiceLabels": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "PrimaryPortName": { - "type": "string" - }, - "Metadata": { - "$ref": "#/definitions/Metadata" - }, - "CacheTTL": { - "type": "integer" - } - } - }, - "ListenerOptions": { - "type": "object", - "properties": { - "Type": { - "type": "string", - "enum": [ - "DIRECT" - ] - }, - "Direct": { - "$ref": "#/definitions/DirectContainerOptions" - } - } - }, - "ListenerRetryOptions": { - "type": "object", - "properties": { - "Stateless": { - "type": "boolean" - }, - "Enabled": { - "type": "boolean" - }, - "MaxAttempts": { - "type": "integer" - }, - "InitialInterval": { - "type": "string" - }, - "Multiplier": { - "type": "number" - }, - "MaxInterval": { - "type": "string" - } - } - }, - "LoggersEndpointOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "LoggingRoot": { - "description": "Settings for Microsoft's ILogging Infrastructure", - "type": "object", - "properties": { - "IncludeScopes": { - "type": "boolean" - }, - "LogLevel": { - "type": "object", - "additionalProperties": { - "type": "string", - "enum": [ - "Trace", - "Debug", - "Information", - "Warning", - "Error", - "Critical", - "None" - ] - } - } - } - }, - "Management": { - "description": "Settings for Steeltoe Management Endpoints", - "type": "object", - "properties": { - "Endpoints": { - "$ref": "#/definitions/Endpoints" - }, - "Tracing": { - "$ref": "#/definitions/TracingOptions" - } - } - }, - "MappingsEndpointOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "Metadata": { - "type": "object", - "properties": { - "AddLabels": { - "type": "boolean" - }, - "LabelsPrefix": { - "type": "string" - }, - "AddAnnotations": { - "type": "boolean" - }, - "AnnotationsPrefix": { - "type": "string" - }, - "AddPorts": { - "type": "boolean" - }, - "PortsPrefix": { - "type": "string" - } - } - }, - "MetricsEndpointOptions": { - "type": "object", - "properties": { - "IngressIgnorePattern": { - "type": "string" - }, - "EgressIgnorePattern": { - "type": "string" - }, - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "MongoDbConnectorOptions": { - "type": "object", - "properties": { - "ConnectionString": { - "type": "string" - }, - "Server": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "Username": { - "type": "string" - }, - "Password": { - "type": "string" - }, - "Database": { - "type": "string" - }, - "Options": { - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, - "MySqlProviderConnectorOptions": { - "type": "object", - "properties": { - "ConnectionString": { - "type": "string" - }, - "Server": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "Username": { - "type": "string" - }, - "Password": { - "type": "string" - }, - "Database": { - "type": "string" - }, - "SslMode": { - "type": "string" - }, - "AllowPublicKeyRetrieval": { - "type": "boolean" - }, - "AllowUserVariables": { - "type": "boolean" - }, - "ConnectionTimeout": { - "type": "integer" - }, - "ConvertZeroDateTime": { - "type": "boolean" - }, - "DefaultCommandTimeout": { - "type": "integer" - }, - "Keepalive": { - "type": "integer" - }, - "OldGuids": { - "type": "boolean" - }, - "PersistSecurityInfo": { - "type": "boolean" - }, - "TreatTinyAsBoolean": { - "type": "boolean" - }, - "UseAffectedRows": { - "type": "boolean" - }, - "UseCompression": { - "type": "boolean" - }, - "ConnectionLifeTime": { - "type": "integer" - }, - "ConnectionReset": { - "type": "boolean" - }, - "MaximumPoolsize": { - "type": "integer" - }, - "MinimumPoolsize": { - "type": "integer" - }, - "Pooling": { - "type": "boolean" - } - } - }, - "NamespacedResource": { - "type": "object", - "properties": { - "Name": { - "type": "string" - }, - "Namespace": { - "type": "string" - } - } - }, - "OAuthConnectorOptions": { - "type": "object", - "properties": { - "OAuthServiceUrl": { - "type": "string" - }, - "ClientId": { - "type": "string" - }, - "ClientSecret": { - "type": "string" - }, - "UserAuthorizationUri": { - "type": "string" - }, - "AccessTokenUri": { - "type": "string" - }, - "UserInfoUri": { - "type": "string" - }, - "TokenInfoUri": { - "type": "string" - }, - "JwtKeyUri": { - "type": "string" - }, - "Scope": { - "type": "array", - "items": { - "type": "string" - } - }, - "ValidateCertificates": { - "type": "boolean" - } - } - }, - "Oid": { - "type": "object", - "additionalProperties": false, - "properties": { - "Value": { - "type": "string" - }, - "FriendlyName": { - "type": "string" - } - } - }, - "PostgresProviderConnectorOptions": { - "type": "object", - "properties": { - "ConnectionString": { - "type": "string" - }, - "Host": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "Username": { - "type": "string" - }, - "Password": { - "type": "string" - }, - "Database": { - "type": "string" - }, - "SearchPath": { - "type": "string" - }, - "SslMode": { - "type": "string" - }, - "ClientCertificate": { - "type": "string" - }, - "ClientKey": { - "type": "string" - }, - "SslRootCertificate": { - "type": "string" - }, - "Timeout": { - "type": "integer" - }, - "CommandTimeout": { - "type": "integer" - }, - "TrustServerCertificate": { - "type": "boolean" - } - } - }, - "ProducerOptions": { - "type": "object", - "properties": { - "BindingName": { - "type": "string" - }, - "AutoStartup": { - "type": "boolean" - }, - "PartitionKeyExpression": { - "type": "string" - }, - "PartitionKeyExtractorName": { - "type": "string" - }, - "PartitionSelectorName": { - "type": "string" - }, - "PartitionSelectorExpression": { - "type": "string" - }, - "PartitionCount": { - "type": "integer" - }, - "RequiredGroups": { - "type": "array", - "items": { - "type": "string" - } - }, - "HeaderMode": { - "type": "string", - "enum": [ - "None", - "Headers", - "EmbeddedHeaders" - ] - }, - "UseNativeEncoding": { - "type": "boolean" - }, - "ErrorChannelEnabled": { - "type": "boolean" - }, - "IsPartitioned": { - "type": "boolean" - } - } - }, - "PublicKey": { - "type": "object", - "additionalProperties": false, - "properties": { - "EncodedKeyValue": { - "$ref": "#/definitions/AsnEncodedData" - }, - "EncodedParameters": { - "$ref": "#/definitions/AsnEncodedData" - }, - "Key": { - "$ref": "#/definitions/AsymmetricAlgorithm" - }, - "Oid": { - "$ref": "#/definitions/Oid" - } - } - }, - "RabbitMQProviderConnectorOptions": { - "type": "object", - "properties": { - "SslEnabled": { - "type": "boolean" - }, - "Uri": { - "type": "string" - }, - "Server": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "SslPort": { - "type": "integer" - }, - "Username": { - "type": "string" - }, - "Password": { - "type": "string" - }, - "VirtualHost": { - "type": "string" - } - } - }, - "RabbitOptions": { - "type": "object", - "properties": { - "Host": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "Addresses": { - "type": "string" - }, - "Username": { - "type": "string" - }, - "Password": { - "type": "string" - }, - "Ssl": { - "$ref": "#/definitions/SslOptions" - }, - "VirtualHost": { - "type": "string" - }, - "RequestedHeartbeat": { - "type": "string" - }, - "PublisherConfirms": { - "type": "boolean" - }, - "PublisherReturns": { - "type": "boolean" - }, - "ConnectionTimeout": { - "type": "string" - }, - "Cache": { - "$ref": "#/definitions/CacheOptions" - }, - "Listener": { - "$ref": "#/definitions/ListenerOptions" - }, - "Template": { - "$ref": "#/definitions/TemplateOptions" - } - } - }, - "RedisCacheConnectorOptions": { - "type": "object", - "properties": { - "Host": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "EndPoints": { - "type": "string" - }, - "Password": { - "type": "string" - }, - "AllowAdmin": { - "type": "boolean" - }, - "ClientName": { - "type": "string" - }, - "ConnectRetry": { - "type": "integer" - }, - "ConnectTimeout": { - "type": "integer" - }, - "AbortOnConnectFail": { - "type": "boolean" - }, - "KeepAlive": { - "type": "integer" - }, - "ResolveDns": { - "type": "boolean" - }, - "ServiceName": { - "type": "string" - }, - "Ssl": { - "type": "boolean" - }, - "SslHost": { - "type": "string" - }, - "TieBreaker": { - "type": "string" - }, - "WriteBuffer": { - "type": "integer" - }, - "SyncTimeout": { - "type": "integer" - }, - "ConnectionString": { - "type": "string" - }, - "InstanceName": { - "type": "string" - } - } - }, - "RefreshEndpointOptions": { + "type": "object", + "properties": { + "Certificates": { "type": "object", "properties": { - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { + "AppInstanceIdentity": { + "type": "object", + "properties": { + "CertificateFilePath": { + "type": "string", + "description": "Gets or sets the local path to a certificate file on disk. Use 'Steeltoe.Common.Certificates.CertificateSettings.PrivateKeyFilePath' if the private key is stored in another file." + }, + "PrivateKeyFilePath": { + "type": "string", + "description": "Gets or sets the local path to a private key file on disk (optional)." + } + }, + "description": "Configuration settings for certificate access. Indicates where to load a 'System.Security.Cryptography.X509Certificates.X509Certificate2' from." + }, + "CertificateFilePath": { "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } + "description": "Gets or sets the local path to a certificate file on disk. Use 'Steeltoe.Common.Certificates.CertificateSettings.PrivateKeyFilePath' if the private key is stored in another file." }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "ReloadSettings": { - "type": "object", - "properties": { - "Mode": { + "ConfigServer": { + "type": "object", + "properties": { + "CertificateFilePath": { + "type": "string", + "description": "Gets or sets the local path to a certificate file on disk. Use 'Steeltoe.Common.Certificates.CertificateSettings.PrivateKeyFilePath' if the private key is stored in another file." + }, + "PrivateKeyFilePath": { + "type": "string", + "description": "Gets or sets the local path to a private key file on disk (optional)." + } + }, + "description": "Configuration settings for certificate access. Indicates where to load a 'System.Security.Cryptography.X509Certificates.X509Certificate2' from." + }, + "Eureka": { + "type": "object", + "properties": { + "CertificateFilePath": { + "type": "string", + "description": "Gets or sets the local path to a certificate file on disk. Use 'Steeltoe.Common.Certificates.CertificateSettings.PrivateKeyFilePath' if the private key is stored in another file." + }, + "PrivateKeyFilePath": { + "type": "string", + "description": "Gets or sets the local path to a private key file on disk (optional)." + } + }, + "description": "Configuration settings for certificate access. Indicates where to load a 'System.Security.Cryptography.X509Certificates.X509Certificate2' from." + }, + "PrivateKeyFilePath": { "type": "string", - "enum": [ - "Event", - "Polling" - ] - }, - "Period": { - "type": "integer" - }, - "ConfigMaps": { - "type": "boolean" - }, - "Secrets": { - "type": "boolean" - } - } - }, - "RetryOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "MaxAttempts": { - "type": "integer" - }, - "InitialInterval": { - "type": "string" - }, - "Multiplier": { - "type": "number" - }, - "MaxInterval": { - "type": "string" - } - } - }, - "Security": { - "description": "Settings for Steeltoe Authentication Providers", - "type": "object", - "properties": { - "Oauth2": { - "$ref": "#/definitions/ConnectorConfig" - } - } - }, - "Spring": { - "description": "General settings for Steeltoe and Spring Cloud-compatible features", - "type": "object", - "properties": { - "Application": { - "$ref": "#/definitions/Application" - }, - "Cloud": { - "$ref": "#/definitions/Cloud" - }, - "RabbitMQ": { - "$ref": "#/definitions/RabbitOptions" - } - } - }, - "SqlServerConfig": { - "description": "Settings for Steeltoe Microsoft SQL Server Connector", - "type": "object", - "properties": { - "Credentials": { - "$ref": "#/definitions/SqlServerProviderConnectorOptions" + "description": "Gets or sets the local path to a private key file on disk (optional)." } - } + }, + "description": "Configuration settings for certificate access. Indicates where to load a 'System.Security.Cryptography.X509Certificates.X509Certificate2' from." }, - "SqlServerProviderConnectorOptions": { + "Consul": { "type": "object", "properties": { - "ConnectionString": { - "type": "string" - }, - "Server": { - "type": "string" - }, - "InstanceName": { - "type": "string" + "Datacenter": { + "type": "string", + "description": "Gets or sets the datacenter name passed in each request to the server." }, - "Port": { - "type": "integer" + "Discovery": { + "type": "object", + "properties": { + "DefaultQueryTag": { + "type": "string", + "description": "Gets or sets the tag to filter on when querying for service instances." + }, + "DefaultZoneMetadataName": { + "type": "string", + "description": "Gets or sets the metadata key name for 'Steeltoe.Discovery.Consul.Configuration.ConsulDiscoveryOptions.InstanceZone'." + }, + "Deregister": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to de-register the running app on shutdown. Default value: true." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to enable the Consul client. Default value: true." + }, + "FailFast": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to throw an exception (instead of logging an error) if registration fails. Default value: true." + }, + "HealthCheckCriticalTimeout": { + "type": "string", + "description": "Gets or sets the duration after which Consul deregisters the running app when in state critical. Default value: 30m." + }, + "HealthCheckInterval": { + "type": "string", + "description": "Gets or sets how often Consul should perform an HTTP health check. Default value: 10s." + }, + "HealthCheckPath": { + "type": "string", + "description": "Gets or sets the relative URL to the health endpoint of the running app. Default value: /actuator/health." + }, + "HealthCheckTimeout": { + "type": "string", + "description": "Gets or sets the timeout Consul should use for an HTTP health check. Default value: 10s." + }, + "HealthCheckTlsSkipVerify": { + "type": "boolean", + "description": "Gets or sets a value indicating whether Consul should skip TLS verification for HTTP health checks. Default value: false." + }, + "HealthCheckUrl": { + "type": "string", + "description": "Gets or sets the absolute URL to the health endpoint of the running app (overrides 'Steeltoe.Discovery.Consul.Configuration.ConsulDiscoveryOptions.HealthCheckPath')." + }, + "Heartbeat": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the running app periodically sends TTL (time-to-live) heartbeats. Default value: true." + }, + "IntervalRatio": { + "type": [ + "number", + "string" + ], + "description": "Gets or sets the rate at which the running app sends TTL heartbeats, relative to 'Steeltoe.Discovery.Consul.Configuration.ConsulHeartbeatOptions.TtlValue' and 'Steeltoe.Discovery.Consul.Configuration.ConsulHeartbeatOptions.TtlUnit'. Default value: 0.66." + }, + "TtlUnit": { + "type": "string", + "description": "Gets or sets the unit for 'Steeltoe.Discovery.Consul.Configuration.ConsulHeartbeatOptions.TtlValue' (\"ms\", \"s\", \"m\" or \"h\"). Default value: s." + }, + "TtlValue": { + "type": "integer", + "description": "Gets or sets how often a TTL heartbeat must be sent to be considered healthy. Default value: 30." + } + }, + "description": "Gets or sets settings related to heartbeats." + }, + "HostName": { + "type": "string", + "description": "Gets or sets the hostname to register the running app with (if 'Steeltoe.Discovery.Consul.Configuration.ConsulDiscoveryOptions.PreferIPAddress' is false)." + }, + "IPAddress": { + "type": "string", + "description": "Gets or sets the IP address to register the running app with (if 'Steeltoe.Discovery.Consul.Configuration.ConsulDiscoveryOptions.PreferIPAddress' is true)." + }, + "InstanceGroup": { + "type": "string", + "description": "Gets or sets the metadata \"group\" value to use when registering the running app." + }, + "InstanceId": { + "type": "string", + "description": "Gets or sets the unique ID to register the running app under." + }, + "InstanceZone": { + "type": "string", + "description": "Gets or sets the metadata zone value to use when registering the running app." + }, + "Metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets metadata key/value pairs used when registering the running app." + }, + "Port": { + "type": "integer", + "description": "Gets or sets the port number to register the running app with." + }, + "PreferIPAddress": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to register the running app with IP address instead of hostname. Default: false." + }, + "QueryPassing": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to filter on health status 'passing' when querying for service instances. Default value: true." + }, + "Register": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to register the running app as a service instance. Default value: true." + }, + "RegisterHealthCheck": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to enable periodic health checking for the running app. Default value: true." + }, + "Retry": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to try again When registering the running app fails. Default value: false." + }, + "InitialInterval": { + "type": "integer", + "description": "Gets or sets the time to wait (in milliseconds) after the first registration failure. Default value: 1000." + }, + "MaxAttempts": { + "type": "integer", + "description": "Gets or sets the maximum number of registration attempts (if retries are enabled). Default value: 6." + }, + "MaxInterval": { + "type": "integer", + "description": "Gets or sets the upper bound (in milliseconds) for intervals. Default value: 2000." + }, + "Multiplier": { + "type": [ + "number", + "string" + ], + "description": "Gets or sets the factor to increment the next interval with. Default value: 1.1." + } + }, + "description": "Gets settings related to retrying requests." + }, + "Scheme": { + "type": "string", + "description": "Gets or sets the scheme to register the running app with (\"http\" or \"https\"). Default value: http." + }, + "ServiceName": { + "type": "string", + "description": "Gets or sets the friendly name to register the running app with." + }, + "Tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the tags used when registering the running app." + }, + "UseAspNetCoreUrls": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to register with the port number ASP.NET Core is listening on. Default value: true." + }, + "UseNetworkInterfaces": { + "type": "boolean", + "description": "Gets or sets a value indicating whether 'System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces' is used to determine 'Steeltoe.Discovery.Consul.Configuration.ConsulDiscoveryOptions.IPAddress' and 'Steeltoe.Discovery.Consul.Configuration.ConsulDiscoveryOptions.HostName'. Default value: false." + } + }, + "description": "Configuration options for 'Steeltoe.Discovery.Consul.ConsulDiscoveryClient'." }, - "Username": { - "type": "string" + "Host": { + "type": "string", + "description": "Gets or sets the hostname or IP address of the Consul server. Default value: localhost." }, "Password": { - "type": "string" - }, - "Database": { - "type": "string" - }, - "IntegratedSecurity": { - "type": "string" - }, - "Uid": { - "type": "string" - }, - "Uri": { - "type": "string" - }, - "Db": { - "type": "string" - }, - "Pw": { - "type": "string" - }, - "Timeout": { - "type": "integer" - } - } - }, - "SslOptions": { - "type": "object", - "properties": { - "Enabled": { - "type": "boolean" - }, - "ValidateServerCertificate": { - "type": "boolean" - }, - "VerifyHostname": { - "type": "boolean" - }, - "CertPath": { - "type": "string" - }, - "CertPassphrase": { - "type": "string" - }, - "ServerHostName": { - "type": "string" - }, - "Algorithm": { - "type": "integer" - } - } - }, - "TemplateOptions": { - "type": "object", - "properties": { - "Retry": { - "$ref": "#/definitions/RetryOptions" - }, - "Mandatory": { - "type": "boolean" + "type": "string", + "description": "Gets or sets password for HTTP authentication." }, - "ReceiveTimeout": { - "type": "string" + "Port": { + "type": "integer", + "description": "Gets or sets the port number the Consul server is listening on. Default value: 8500." }, - "ReplyTimeout": { - "type": "string" + "Scheme": { + "type": "string", + "description": "Gets or sets the scheme to connect with the Consul server (\"http\" or \"https\"). Default value: http." }, - "Exchange": { - "type": "string" + "Token": { + "type": "string", + "description": "Gets or sets the authentication token passed in each request to the server." }, - "RoutingKey": { - "type": "string" + "Username": { + "type": "string", + "description": "Gets or sets the username for HTTP authentication." }, - "DefaultReceiveQueue": { - "type": "string" + "WaitTime": { + "type": "string", + "description": "Gets or sets the maximum duration for a blocking request." } - } + }, + "description": "Configuration options to use in creating a Consul client. See the documentation of the Consul client for more details." }, - "ThreadDumpEndpointOptions": { + "Discovery": { "type": "object", "properties": { - "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "RequiredPermissions": { - "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { + "Services": { "type": "array", "items": { - "type": "string" - } - }, - "ExactMatch": { - "type": "boolean" - } - } - }, - "TraceEndpointOptions": { + "type": "object", + "properties": { + "Host": { + "type": "string", + "description": "Gets the hostname of the registered service instance." + }, + "IsSecure": { + "type": "boolean", + "description": "Gets a value indicating whether the scheme of the registered service instance is https." + }, + "Metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets the key/value metadata associated with this service instance." + }, + "Port": { + "type": "integer", + "description": "Gets the port of the registered service instance." + }, + "ServiceId": { + "type": "string", + "description": "Gets the service ID as registered by the discovery client." + } + }, + "description": "Represents an 'Steeltoe.Common.Discovery.IServiceInstance' inside 'Steeltoe.Discovery.Configuration.ConfigurationDiscoveryOptions' that was loaded from app configuration." + }, + "description": "Gets the list of service instances." + } + }, + "description": "Provides access to 'Steeltoe.Common.Discovery.IServiceInstance's stored in app configuration. Used by 'Steeltoe.Discovery.Configuration.ConfigurationDiscoveryClient'." + }, + "Encrypt": { "type": "object", "properties": { - "Capacity": { - "type": "integer" - }, - "AddRequestHeaders": { - "type": "boolean" - }, - "AddResponseHeaders": { - "type": "boolean" - }, - "AddPathInfo": { - "type": "boolean" - }, - "AddUserPrincipal": { - "type": "boolean" - }, - "AddParameters": { - "type": "boolean" - }, - "AddQueryString": { - "type": "boolean" - }, - "AddAuthType": { - "type": "boolean" - }, - "AddRemoteAddress": { - "type": "boolean" - }, - "AddSessionId": { - "type": "boolean" - }, - "AddTimeTaken": { - "type": "boolean" - }, "Enabled": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Path": { - "type": "string" + "type": "boolean", + "description": "Gets or sets a value indicating whether decryption is enabled. Default value: false." }, - "RequiredPermissions": { + "Key": { "type": "string", - "enum": [ - "UNDEFINED", - "NONE", - "RESTRICTED", - "FULL" - ] - }, - "Global": { - "$ref": "#/definitions/IManagementOptions" - }, - "DefaultEnabled": { - "type": "boolean" - }, - "AllowedVerbs": { - "type": "array", - "items": { - "type": "string" - } + "description": "Gets or sets the symmetric cryptographic key." }, - "ExactMatch": { - "type": "boolean" - } - } + "KeyStore": { + "type": "object", + "properties": { + "Alias": { + "type": "string", + "description": "Gets or sets the alias of the key in the keystore." + }, + "Location": { + "type": "string", + "description": "Gets or sets the location of the keystore file." + }, + "Password": { + "type": "string", + "description": "Gets or sets the password that locks the keystore." + } + }, + "description": "Gets the settings related to the key store." + }, + "RSA": { + "type": "object", + "properties": { + "Algorithm": { + "type": "string", + "description": "Gets or sets the RSA algorithm (DEFAULT or OAEP). Default value: DEFAULT." + }, + "Salt": { + "type": "string", + "description": "Gets or sets the salt for the random secret. Default value: deadbeef." + }, + "Strong": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the \"strong\" GCM AES algorithm is used. Otherwise, the standard CBC algorithm is used. Default value: false." + } + }, + "description": "Gets the settings related to RSA cryptography." + } + }, + "description": "Holds settings used to configure decryption for the Spring Cloud Config Server provider." }, - "TracingOptions": { + "Eureka": { "type": "object", "properties": { - "Name": { - "type": "string" - }, - "IngressIgnorePattern": { - "type": "string" - }, - "EgressIgnorePattern": { - "type": "string" - }, - "MaxPayloadSizeInBytes": { - "type": "integer" - }, - "AlwaysSample": { - "type": "boolean" - }, - "NeverSample": { - "type": "boolean" - }, - "UseShortTraceIds": { - "type": "boolean" - }, - "PropagationType": { - "type": "string" - }, - "SingleB3Header": { - "type": "boolean" - }, - "EnableGrpcAspNetCoreSupport": { - "type": "boolean" + "Client": { + "type": "object", + "properties": { + "AccessTokenUri": { + "type": "string", + "description": "Gets or sets the URL to obtain OAuth2 access token from, before connecting to the Eureka server." + }, + "ClientId": { + "type": "string", + "description": "Gets or sets the client ID for obtaining access token." + }, + "ClientSecret": { + "type": "string", + "description": "Gets or sets the secret for obtaining access token." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to enable the Eureka client. Default value: true." + }, + "EurekaServer": { + "type": "object", + "properties": { + "ConnectTimeoutSeconds": { + "type": "integer", + "description": "Gets or sets how long to wait (in seconds) before a connection to the Eureka server times out. Note that the connections in the client are pooled and this setting affects the actual connection creation and also the wait time to get the connection from the pool. Default value: 5." + }, + "ProxyHost": { + "type": "string", + "description": "Gets or sets the proxy hostname used in contacting the Eureka server." + }, + "ProxyPassword": { + "type": "string", + "description": "Gets or sets the proxy password used in contacting the Eureka server." + }, + "ProxyPort": { + "type": "integer", + "description": "Gets or sets the proxy port number used in contacting the Eureka server." + }, + "ProxyUserName": { + "type": "string", + "description": "Gets or sets the proxy username used in contacting the Eureka server." + }, + "RetryCount": { + "type": "integer", + "description": "Gets or sets the number of times to retry Eureka server requests. Default value: 2." + }, + "ShouldGZipContent": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to auto-decompress responses from Eureka server. The registry information from the Eureka server is compressed for optimum network traffic. Default value: true." + } + }, + "description": "Gets Eureka server settings." + }, + "Health": { + "type": "object", + "properties": { + "CheckEnabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to query ASP.NET Core health checks and 'Steeltoe.Common.HealthChecks.IHealthContributor's during registration and renewals, in order to determine the status of the running app to report back to Eureka. Default value: true." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to activate an 'Steeltoe.Common.HealthChecks.IHealthContributor' that verifies connectivity to the Eureka server. Default value: true." + }, + "MonitoredApps": { + "type": "string", + "description": "Gets or sets a comma-separated list of applications in Eureka this app depends on. Leave empty for all apps. Their status is taken into account by 'Steeltoe.Discovery.Eureka.EurekaApplicationsHealthContributor', which requires manual addition to the IoC container." + } + }, + "description": "Gets Eureka health settings." + }, + "RegistryFetchIntervalSeconds": { + "type": "integer", + "description": "Gets or sets how often (in seconds) to fetch registry information from the Eureka server. Default value: 30." + }, + "RegistryRefreshSingleVipAddress": { + "type": "string", + "description": "Gets or sets whether to only fetch registry information for the specified VIP address. Default value: false." + }, + "ServiceUrl": { + "type": "string", + "description": "Gets or sets a comma-separated list of Eureka server endpoints. Default value: http://localhost:8761/eureka/." + }, + "ShouldDisableDelta": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to fetch the full registry each time or fetch only deltas. Note that the delta fetches can reduce the traffic tremendously, because the rate of change in the Eureka server is normally much lower than the rate of fetches. Default value: false." + }, + "ShouldFetchRegistry": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to periodically fetch registry information from the Eureka server. Default value: true." + }, + "ShouldFilterOnlyUpInstances": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to include only instances with UP status after fetching the list of applications. Default value: true." + }, + "ShouldRegisterWithEureka": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to register the running app as a service instance. Default value: true." + }, + "Validate_Certificates": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the client validates server certificates. Default value: true." + } + } }, - "ExporterEndpoint": { - "type": "string", - "format": "uri" + "Instance": { + "type": "object", + "properties": { + "AppGroup": { + "type": "string", + "description": "Gets or sets the name of the application group to be registered with Eureka." + }, + "AppName": { + "type": "string", + "description": "Gets or sets the name of the application to be registered with Eureka." + }, + "AsgName": { + "type": "string", + "description": "Gets or sets the AWS auto-scaling group name associated with the instance. This information is specifically used in an AWS environment to automatically put an instance out of service after the instance is launched, and it has been disabled for traffic." + }, + "DataCenterInfo": { + "type": "object", + "properties": { + "Name": { + "enum": [ + "Netflix", + "Amazon", + "MyOwn" + ] + } + }, + "description": "Gets the data center the instance is deployed to. This information is used to get some AWS-specific instance information if the instance is deployed in AWS." + }, + "HealthCheckUrl": { + "type": "string", + "description": "Gets or sets the absolute URL for health checks of the instance. Users can provide the 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.HealthCheckUrlPath' if the health check endpoint resides in the same instance talking to Eureka. Otherwise, in case the instance is a proxy for some other server, users can provide the full URL. If the full URL is provided, it takes precedence. It is normally used for making educated decisions based on the health of the instance. For example, it can be used to determine whether to proceed deployments to an entire farm or stop the deployments without causing further damage. The full URL should follow the format: http://${eureka.hostname}:7001/ where the value ${eureka.hostname} is replaced at runtime." + }, + "HealthCheckUrlPath": { + "type": "string", + "description": "Gets or sets the relative path to the health check endpoint of the instance. The health check URL is then constructed out of the 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.HostName' and the type of communication - secure or non-secure, as specified in 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.SecurePort' and 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.NonSecurePort'. It is normally used for making educated decisions based on the health of the instance. For example, it can be used to determine whether to proceed deployments to an entire farm or stop the deployments without causing further damage. Default value: /health." + }, + "HomePageUrl": { + "type": "string", + "description": "Gets or sets the absolute URL to the home page for the instance. Users can provide the 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.HomePageUrlPath' if the home page resides in the same instance talking to Eureka. Otherwise, in case the instance is a proxy for some other server, users can provide the full URL. If the full URL is provided, it takes precedence. It is normally used for informational purposes for other services to find out about the status of the instance. Users can provide a simple HTML page indicating what the current status of the instance is. The full URL should follow the format: http://${eureka.hostname}:7001/ where the value ${eureka.hostname} is replaced at runtime." + }, + "HomePageUrlPath": { + "type": "string", + "description": "Gets or sets the relative path to the home page URL for the instance. The home page URL is then constructed out of the 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.HostName' and the type of communication - secure or non-secure, as specified in 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.SecurePort' and 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.NonSecurePort'. It is normally used for informational purposes for other services to use it as a landing page. Default value: /." + }, + "HostName": { + "type": "string", + "description": "Gets or sets the hostname on which the instance is registered." + }, + "IPAddress": { + "type": "string", + "description": "Gets or sets the IP address on which the instance is registered." + }, + "InstanceEnabledOnInit": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the instance should take traffic as soon as it is registered. Default value: true." + }, + "InstanceId": { + "type": "string", + "description": "Gets or sets the unique ID (within the scope of the app name) of the instance to be registered with Eureka." + }, + "LeaseExpirationDurationInSeconds": { + "type": "integer", + "description": "Gets or sets the time (in seconds) that the Eureka server waits since it received the last heartbeat before it marks the instance as down and thereby disallowing traffic to the instance. Setting this value too high could mean that traffic is routed to the instance even when the instance is not alive anymore. Setting this value too low could mean the instance may be taken out of traffic because of temporary network glitches. This value must be higher than 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.LeaseRenewalIntervalInSeconds'. Default value: 90." + }, + "LeaseRenewalIntervalInSeconds": { + "type": "integer", + "description": "Gets or sets how often (in seconds) the client sends heartbeats to Eureka to indicate that it is still alive. If the heartbeats are not received for the period specified in 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.LeaseExpirationDurationInSeconds', Eureka server will remove the instance from its view, thereby disallowing traffic to the instance. Note that the instance could still not take traffic if 'Steeltoe.Discovery.Eureka.Configuration.EurekaHealthOptions.CheckEnabled' is true, which decides to make itself unavailable. Default value: 30." + }, + "MetadataMap": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets the name/value pairs associated with the instance. This information is sent to Eureka server and can be used by other instances." + }, + "NonSecurePortEnabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the non-secure port should be enabled." + }, + "Port": { + "type": "integer", + "description": "Gets or sets the non-secure port number on which the instance should receive traffic." + }, + "PreferIPAddress": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to register with 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.IPAddress' instead of 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.HostName'. Default value: false." + }, + "RegistrationMethod": { + "type": "string", + "description": "Gets or sets how to register on Cloud Foundry. Can be \"route\", \"direct\", or \"hostname\"." + }, + "SecureHealthCheckUrl": { + "type": "string", + "description": "Gets or sets the secure absolute URL for health checks of the instance. Users can provide the 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.HealthCheckUrlPath' if the health check endpoint resides in the same instance talking to Eureka. Otherwise, in case the instance is a proxy for some other server, users can provide the full URL. If the full URL is provided, it takes precedence. It is normally used for making educated decisions based on the health of the instance. For example, it can be used to determine whether to proceed deployments to an entire farm or stop the deployments without causing further damage. The full URL should follow the format: https://${eureka.hostname}:7001/ where the value ${eureka.hostname} is replaced at runtime." + }, + "SecurePort": { + "type": "integer", + "description": "Gets or sets the secure port on which the instance should receive traffic." + }, + "SecurePortEnabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the secure port should be enabled." + }, + "SecureVipAddress": { + "type": "string", + "description": "Gets or sets the comma-separated list of secure VIP (Virtual Internet Protocol) addresses for the instance." + }, + "StatusPageUrl": { + "type": "string", + "description": "Gets or sets the absolute URL to the status page for the instance. Users can provide the 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.StatusPageUrlPath' if the status page resides in the same instance talking to Eureka. Otherwise, in case the instance is a proxy for some other server, users can provide the full URL. If the full URL is provided, it takes precedence. It is normally used for informational purposes for other services to find out about the status of the instance. Users can provide a simple HTML page indicating what the current status of the instance is. The full URL should follow the format: http://${eureka.hostname}:7001/ where the value ${eureka.hostname} is replaced at runtime." + }, + "StatusPageUrlPath": { + "type": "string", + "description": "Gets or sets the relative path to the status page for the instance. The status page URL is then constructed out of the 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.HostName' and the type of communication - secure or non-secure, as specified in 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.SecurePort' and 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.NonSecurePort'. It is normally used for informational purposes for other services to find out about the status of the instance. Users can provide a simple HTML page indicating what the current status of the instance is. Default value: /info." + }, + "UseNetworkInterfaces": { + "type": "boolean", + "description": "Gets or sets a value indicating whether 'System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces' is used to determine 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.IPAddress' and 'Steeltoe.Discovery.Eureka.Configuration.EurekaInstanceOptions.HostName'. Default value: false." + }, + "VipAddress": { + "type": "string", + "description": "Gets or sets the comma-separated list of VIP (Virtual Internet Protocol) addresses for the instance." + } + } } } }, - "WatchableResource": { + "Management": { "type": "object", "properties": { - "Enabled": { - "type": "boolean" - }, - "Sources": { - "type": "array", - "items": { - "$ref": "#/definitions/NamespacedResource" + "CloudFoundry": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean" + } } - } - } + }, + "Endpoints": { + "type": "object", + "properties": { + "Actuator": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Exposure": { + "type": "object", + "properties": { + "Exclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the IDs of the actuators to exclude. Takes precedence over included entries." + }, + "Include": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the IDs of the actuators to include. Excluded entries take precedence." + } + }, + "description": "Indicates which actuators are exposed." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "CloudFoundry": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "ApplicationId": { + "type": "string", + "description": "Gets or sets the GUID identifying the app, used in permission checks." + }, + "CloudFoundryApi": { + "type": "string", + "description": "Gets or sets the location of the Cloud Controller API for the Cloud Foundry deployment where the app runs." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + }, + "ValidateCertificates": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to validate certificates. Default value: true." + } + } + }, + "CustomJsonConverters": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets a list of assembly-qualified custom JSON converters." + }, + "DbMigrations": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether management endpoints are enabled. Default value: true." + }, + "Env": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "KeysToSanitize": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of keys to sanitize. A key can be a simple string that the property must end with, or a regular expression. A case-insensitive match is always performed. Use a single-element empty string to disable sanitization. Default value: [ \"password\", \"secret\", \"key\", \"token\", \".*credentials.*\", \"vcap_services\" ]" + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "Health": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Claim": { + "type": "object", + "properties": { + "Type": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "description": "Gets or sets the claim requirements for retrieving components and/or details." + }, + "DiskSpace": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to enable the disk space contributor. Default value: true." + }, + "Path": { + "type": "string", + "description": "Gets or sets the path to check for available disk space. Default value: \".\"." + }, + "Threshold": { + "type": "integer", + "description": "Gets or sets the disk space, in bytes, that is considered low. Default value: 10 MB." + } + } + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Groups": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "Include": { + "type": "string", + "description": "Gets or sets a comma-separated list of health contributor IDs and/or health check registration names to include in this group." + }, + "ShowComponents": { + "enum": [ + "Never", + "WhenAuthorized", + "Always" + ], + "description": "Gets or sets when to show components in this group, overriding the endpoint-level setting." + }, + "ShowDetails": { + "enum": [ + "Never", + "WhenAuthorized", + "Always" + ], + "description": "Gets or sets when to show details of components in this group, overriding the endpoint-level setting." + } + } + }, + "description": "Gets the configured health groups." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Liveness": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to enable the liveness contributor. Default value: false." + } + } + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "Ping": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to enable the ping contributor. Default value: true." + } + } + }, + "Readiness": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to enable the readiness contributor. Default value: false." + } + } + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + }, + "Role": { + "type": "string", + "description": "Gets or sets the role required to retrieve components and/or details." + }, + "ShowComponents": { + "enum": [ + "Never", + "WhenAuthorized", + "Always" + ], + "description": "Gets or sets when to show components in responses." + }, + "ShowDetails": { + "enum": [ + "Never", + "WhenAuthorized", + "Always" + ], + "description": "Gets or sets when to show details of components in responses." + } + } + }, + "HeapDump": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "GCDumpTimeoutInSeconds": { + "type": "integer", + "description": "Gets or sets the time (in seconds) after which to give up on collecting a gcdump. Default value: 30." + }, + "HeapDumpType": { + "enum": [ + "Full", + "Heap", + "Mini", + "Triage", + "GCDump" + ], + "description": "Gets or sets the type of dump to create. Default value: Full (on macOS: GCDump)." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "HttpExchanges": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Capacity": { + "type": "integer", + "description": "Gets or sets a value indicating how many HTTP exchanges should be stored. Default value: 100." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "IncludePathInfo": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the path from the HTTP request URL should be returned. Default value: true." + }, + "IncludeQueryString": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the query string parameters from the request URL should be returned. Default value: true." + }, + "IncludeRemoteAddress": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the IP address of the request's sender should be returned. Default value: false." + }, + "IncludeRequestHeaders": { + "type": "boolean", + "description": "Gets or sets a value indicating whether headers from the HTTP request should be returned. Default value: true.\n\nIf a request header is not present in the 'Steeltoe.Management.Endpoint.Actuators.HttpExchanges.HttpExchangesEndpointOptions.RequestHeaders', the header name will be logged with a redacted value. Request headers can contain authentication tokens, or private information which may have regulatory concerns under GDPR and other laws. Arbitrary request headers should not be logged unless logs are secure and access controlled and the privacy impact assessed." + }, + "IncludeResponseHeaders": { + "type": "boolean", + "description": "Gets or sets a value indicating whether headers from the HTTP response should be returned. Default value: true.\n\nIf a response header is not present in the 'Steeltoe.Management.Endpoint.Actuators.HttpExchanges.HttpExchangesEndpointOptions.ResponseHeaders', the header name will be logged with a redacted value." + }, + "IncludeSessionId": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the user's session ID should be returned. Default value: false." + }, + "IncludeTimeTaken": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the time taken to process the request should be returned. Default value: true." + }, + "IncludeUserPrincipal": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the username of the 'System.Security.Claims.ClaimsPrincipal' should be returned. Default value: false." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequestHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets request header values that are allowed to be logged.\n\nIf a request header is not present in the 'Steeltoe.Management.Endpoint.Actuators.HttpExchanges.HttpExchangesEndpointOptions.RequestHeaders', the header name will be logged with a redacted value. Request headers can contain authentication tokens, or private information which may have regulatory concerns under GDPR and other laws. Arbitrary request headers should not be logged unless logs are secure and access controlled and the privacy impact assessed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + }, + "ResponseHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets response header values that are allowed to be logged.\n\nIf a response header is not present in the 'Steeltoe.Management.Endpoint.Actuators.HttpExchanges.HttpExchangesEndpointOptions.ResponseHeaders', the header name will be logged with a redacted value." + }, + "Reverse": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to return HTTP exchanges in reverse order (newest exchanges first). Default value: true." + } + } + }, + "Info": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "Loggers": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "Mappings": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "IncludeActuators": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to include actuator endpoints in the route mappings response. Default value: true." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "Path": { + "type": "string", + "description": "Gets or sets the HTTP request path at which management endpoints are exposed. Default value: /actuator." + }, + "Port": { + "type": "integer", + "description": "Gets or sets the alternate HTTP port at which management endpoints are exposed." + }, + "Prometheus": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "Refresh": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + }, + "ReturnConfiguration": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to return the configuration after refreshing. Default value: true." + } + } + }, + "SerializerOptions": { + "type": "object", + "properties": { + "AllowOutOfOrderMetadataProperties": { + "type": "boolean", + "description": "Allows JSON metadata properties to be specified after regular properties in a deserialized JSON object." + }, + "AllowTrailingCommas": { + "type": "boolean", + "description": "Get or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being deserialized." + }, + "DefaultBufferSize": { + "type": "integer", + "description": "Gets or sets the default buffer size, in bytes, to use when creating temporary buffers." + }, + "DefaultIgnoreCondition": { + "enum": [ + "Never", + "Always", + "WhenWritingDefault", + "WhenWritingNull" + ], + "description": "Gets or sets a value that determines when properties with default values are ignored during serialization or deserialization. The default value is 'System.Text.Json.Serialization.JsonIgnoreCondition.Never'." + }, + "IgnoreReadOnlyFields": { + "type": "boolean", + "description": "Gets or sets a value that indicates whether read-only fields are ignored during serialization. A field is read-only if it is marked with the readonly keyword. The default value is false." + }, + "IgnoreReadOnlyProperties": { + "type": "boolean", + "description": "Gets or sets a value that indicates whether read-only properties are ignored during serialization. The default value is false." + }, + "IncludeFields": { + "type": "boolean", + "description": "Gets or sets a value that indicates whether fields are handled during serialization and deserialization. The default value is false." + }, + "IndentCharacter": { + "type": "integer", + "description": "Defines the indentation character being used when 'System.Text.Json.JsonSerializerOptions.WriteIndented' is enabled. Defaults to the space character." + }, + "IndentSize": { + "type": "integer", + "description": "Defines the indentation size being used when 'System.Text.Json.JsonSerializerOptions.WriteIndented' is enabled. Defaults to two." + }, + "MaxDepth": { + "type": "integer", + "description": "Gets or sets the maximum depth allowed when serializing or deserializing JSON, with the default value of 0 indicating a maximum depth of 64." + }, + "NewLine": { + "type": "string", + "description": "Gets or sets the new line string to use when 'System.Text.Json.JsonSerializerOptions.WriteIndented' is true.\n\nThe default is the value of 'System.Environment.NewLine'." + }, + "NumberHandling": { + "enum": [ + "Strict", + "AllowReadingFromString", + "WriteAsString", + "AllowNamedFloatingPointLiterals" + ], + "description": "Gets or sets an object that specifies how number types should be handled when serializing or deserializing." + }, + "PreferredObjectCreationHandling": { + "enum": [ + "Replace", + "Populate" + ], + "description": "Gets or sets the preferred object creation handling for properties when deserializing JSON." + }, + "PropertyNameCaseInsensitive": { + "type": "boolean", + "description": "Gets or sets a value that indicates whether a property's name uses a case-insensitive comparison during deserialization. The default value is false." + }, + "ReadCommentHandling": { + "enum": [ + "Disallow", + "Skip", + "Allow" + ], + "description": "Gets or sets a value that defines how comments are handled during deserialization." + }, + "RespectNullableAnnotations": { + "type": "boolean", + "description": "Gets or sets a value that indicates whether nullability annotations should be respected during serialization and deserialization." + }, + "RespectRequiredConstructorParameters": { + "type": "boolean", + "description": "Gets or sets a value that indicates whether non-optional constructor parameters should be specified during deserialization." + }, + "UnknownTypeHandling": { + "enum": [ + "JsonElement", + "JsonNode" + ], + "description": "Gets or sets an object that specifies how deserializing a type declared as an 'System.Object' is handled during deserialization." + }, + "UnmappedMemberHandling": { + "enum": [ + "Skip", + "Disallow" + ], + "description": "Gets or sets an object that specifies how 'System.Text.Json.JsonSerializer' handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types." + }, + "WriteIndented": { + "type": "boolean", + "description": "Gets or sets a value that indicates whether JSON should use pretty printing. By default, JSON is serialized without any extra white space." + } + }, + "description": "Gets or sets the JSON serialization options." + }, + "Services": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "SslEnabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether 'Steeltoe.Management.Endpoint.Configuration.ManagementOptions.Port' applies to HTTP or HTTPS requests. Default value: false." + }, + "ThreadDump": { + "type": "object", + "properties": { + "AllowedVerbs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of HTTP verbs that are allowed for this endpoint." + }, + "Duration": { + "type": "integer", + "description": "Gets or sets the time (in milliseconds) to trace for, before automatically stopping the trace. Default value: 10." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether this endpoint is enabled." + }, + "Id": { + "type": "string", + "description": "Gets or sets the unique ID of this endpoint." + }, + "Path": { + "type": "string", + "description": "Gets or sets the relative path at which this endpoint is exposed." + }, + "RequiredPermissions": { + "enum": [ + "None", + "Restricted", + "Full" + ], + "description": "Gets or sets the permissions required to access this endpoint, when running on Cloud Foundry. Default value: Restricted." + } + } + }, + "UseStatusCodeFromResponse": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the HTTP response status code is based on the health status. This setting can be overruled by sending an X-Use-Status-Code-From-Response HTTP header. Default value: true." + }, + "Web": { + "type": "object", + "properties": { + "Exposure": { + "type": "object", + "properties": { + "Exclude": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the IDs of the actuators to exclude. Takes precedence over included entries." + }, + "Include": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the IDs of the actuators to include. Excluded entries take precedence." + } + }, + "description": "Indicates which actuators are exposed." + } + } + } + }, + "description": "Provides configuration settings for management endpoints (actuators)." + } + } + }, + "RunTask": { + "type": "string", + "description": "Gets or sets the name of the registered 'Steeltoe.Common.IApplicationTask' to run." + }, + "Serilog": { + "type": "object", + "properties": { + "MinimumLevel": { + "type": "object", + "properties": { + "Default": { + "enum": [ + "Verbose", + "Debug", + "Information", + "Warning", + "Error", + "Fatal" + ], + "description": "Specifies the meaning and relative importance of a log event." + }, + "Override": { + "type": "object", + "additionalProperties": { + "enum": [ + "Verbose", + "Debug", + "Information", + "Warning", + "Error", + "Fatal" + ], + "description": "Specifies the meaning and relative importance of a log event." + } + } + }, + "description": "Gets or sets the minimum level for the root logger (and the \"Default\"). Limits the verbosity of all other overrides to this setting." + } + }, + "description": "Contains the subset of Serilog options that 'Steeltoe.Logging.DynamicSerilog.DynamicSerilogLoggerProvider' needs." }, - "X500DistinguishedName": { + "Spring": { "type": "object", - "additionalProperties": false, "properties": { - "Name": { - "type": "string" - }, - "Oid": { - "$ref": "#/definitions/Oid" + "Application": { + "type": "object", + "properties": { + "Name": { + "type": "string", + "description": "Gets or sets the name of this application." + } + }, + "description": "Fallback configuration settings that describe this application." + }, + "Boot": { + "type": "object", + "properties": { + "Admin": { + "type": "object", + "properties": { + "Client": { + "type": "object", + "properties": { + "ApplicationName": { + "type": "string", + "description": "Gets or sets the name this application registers under in Spring Boot Admin server." + }, + "BaseHost": { + "type": "string", + "description": "Gets or sets the hostname or IP address to use in 'Steeltoe.Management.Endpoint.SpringBootAdminClient.SpringBootAdminClientOptions.BaseUrl'. This value should be set explicitly if Spring Boot Admin server is running in a container." + }, + "BasePath": { + "type": "string", + "description": "Gets or sets the path to use in 'Steeltoe.Management.Endpoint.SpringBootAdminClient.SpringBootAdminClientOptions.BaseUrl'." + }, + "BasePort": { + "type": "integer", + "description": "Gets or sets the port number to use in 'Steeltoe.Management.Endpoint.SpringBootAdminClient.SpringBootAdminClientOptions.BaseUrl'." + }, + "BaseScheme": { + "type": "string", + "description": "Gets or sets the scheme (\"http\" or \"https\") to use in 'Steeltoe.Management.Endpoint.SpringBootAdminClient.SpringBootAdminClientOptions.BaseUrl'." + }, + "BaseUrl": { + "type": "string", + "description": "Gets or sets the base URL of this application, which Spring Boot Admin server uses to interact with this application." + }, + "ConnectionTimeoutMs": { + "type": "integer", + "description": "Gets or sets the connection timeout (in milliseconds) for interactions with Spring Boot Admin server. Default value: 5_000." + }, + "Metadata": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "description": "Gets metadata to use when registering with Spring Boot Admin server." + }, + "PreferIPAddress": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to prefer using the local IP address over hostname in 'Steeltoe.Management.Endpoint.SpringBootAdminClient.SpringBootAdminClientOptions.BaseUrl'. Default value: false." + }, + "RefreshInterval": { + "type": "string", + "pattern": "^-?(\\d{1,7}|((\\d{1,7}[\\.:])?(([01]?\\d|2[0-3]):[0-5]?\\d|([01]?\\d|2[0-3]):[0-5]?\\d:[0-5]?\\d)(\\.\\d{1,7})?))$", + "description": "Gets or sets the interval for refreshing the registration with Spring Boot Admin server. Set to 'System.TimeSpan.Zero' to register only once at app startup. Default value: 15 seconds." + }, + "Url": { + "type": "string", + "description": "Gets or sets the URL of the Spring Boot Admin server." + }, + "UseNetworkInterfaces": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to use 'System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces' to determine the IP address or hostname for 'Steeltoe.Management.Endpoint.SpringBootAdminClient.SpringBootAdminClientOptions.BaseUrl'. Default value: false." + }, + "ValidateCertificates": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to validate certificates from Spring Boot Admin server. Default value: true." + } + } + } + } + } + } }, - "RawData": { - "type": "string" + "Cloud": { + "type": "object", + "properties": { + "Config": { + "type": "object", + "properties": { + "AccessTokenUri": { + "type": "string", + "description": "Gets or sets the address used by the provider to obtain a OAuth Access Token." + }, + "ClientId": { + "type": "string", + "description": "Gets or sets the client ID used by the provider to obtain a OAuth Access Token." + }, + "ClientSecret": { + "type": "string", + "description": "Gets or sets the client secret used by the provider to obtain a OAuth Access Token." + }, + "DisableTokenRenewal": { + "type": "boolean", + "description": "Gets or sets a value indicating whether periodic HashiCorp Vault token renewal should occur. Default value: false." + }, + "Discovery": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the discovery-first feature is enabled. Default value: false." + }, + "ServiceId": { + "type": "string", + "description": "Gets or sets the Service ID of the Config Server to use during discovery-first. Default value: \"configserver\"." + } + }, + "description": "Gets service discovery settings." + }, + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the Config Server provider is enabled. Default value: true." + }, + "Env": { + "type": "string", + "description": "Gets or sets a comma-separated list of environments used when accessing configuration data. Default value: \"Production\"." + }, + "FailFast": { + "type": "boolean", + "description": "Gets or sets a value indicating whether fail-fast behavior is enabled. Default value: false." + }, + "Headers": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets headers that will be added to the Config Server request." + }, + "Health": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether health checks are enabled. Default value: true." + }, + "TimeToLive": { + "type": "integer", + "description": "Gets or sets the health check cache time-to-live (in milliseconds). Default value: 300_000 (5 minutes)." + } + }, + "description": "Gets health check settings." + }, + "Label": { + "type": "string", + "description": "Gets or sets a comma-separated list of labels to request from the server." + }, + "Name": { + "type": "string", + "description": "Gets or sets the application name used when accessing configuration data." + }, + "Password": { + "type": "string", + "description": "Gets or sets the password used when accessing the Config Server." + }, + "PollingInterval": { + "type": "string", + "pattern": "^-?(\\d{1,7}|((\\d{1,7}[\\.:])?(([01]?\\d|2[0-3]):[0-5]?\\d|([01]?\\d|2[0-3]):[0-5]?\\d:[0-5]?\\d)(\\.\\d{1,7})?))$", + "description": "Gets or sets the frequency with which app should check Config Server for changes in configuration." + }, + "Retry": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether retries are enabled on failures. Default value: false." + }, + "InitialInterval": { + "type": "integer", + "description": "Gets or sets initial retry interval (in milliseconds). Default value: 1000." + }, + "MaxAttempts": { + "type": "integer", + "description": "Gets or sets the max number of retries the client will attempt. Default value: 6." + }, + "MaxInterval": { + "type": "integer", + "description": "Gets or sets max retry interval (in milliseconds). Default value: 2000." + }, + "Multiplier": { + "type": [ + "number", + "string" + ], + "description": "Gets or sets the multiplier for next retry interval. Default value: 1.1." + } + }, + "description": "Gets retry settings." + }, + "Timeout": { + "type": "integer", + "description": "Gets or sets the request timeout (in milliseconds). Default value: 60_000 (1 minute)." + }, + "Token": { + "type": "string", + "description": "Gets or sets the HashiCorp Vault authentication token." + }, + "TokenRenewRate": { + "type": "integer", + "description": "Gets or sets the vault token renew rate (in milliseconds). Default value: 60_000 (1 minute)." + }, + "TokenTtl": { + "type": "integer", + "description": "Gets or sets the HashiCorp Vault token time-to-live (in milliseconds). Default value: 300_000 (5 minutes)." + }, + "Uri": { + "type": "string", + "description": "Gets or sets a comma-separated list of Config Server addresses. Default value: \"http://localhost:8888\"." + }, + "Username": { + "type": "string", + "description": "Gets or sets the username used when accessing the Config Server." + }, + "ValidateCertificates": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the provider validates server certificates. Default value: true." + } + }, + "description": "Holds settings used to configure the Spring Cloud Config Server provider." + }, + "Discovery": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to enable the Eureka client. Default value: true." + }, + "RegistrationMethod": { + "type": "string", + "description": "Gets or sets how to register on Cloud Foundry. Can be \"route\", \"direct\", or \"hostname\"." + } + }, + "description": "Fallback configuration settings for Eureka." + }, + "Inet": { + "type": "object", + "properties": { + "DefaultHostname": { + "type": "string", + "description": "Gets or sets the default hostname. Default value: localhost." + }, + "DefaultIPAddress": { + "type": "string", + "description": "Gets or sets the default IP address. Default value: 127.0.0.1." + }, + "IgnoredInterfaces": { + "type": "string", + "description": "Gets or sets a comma-separated list of network interfaces to ignore." + }, + "PreferredNetworks": { + "type": "string", + "description": "Gets or sets a comma-separated list of preferred networks." + }, + "SkipReverseDnsLookup": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to skip reverse DNS lookups." + }, + "UseOnlySiteLocalInterfaces": { + "type": "boolean", + "description": "Gets or sets a value indicating whether to use only site-local network interfaces." + } + }, + "description": "Provides settings for resolving network interfaces." + } + } } } }, - "X509Certificate2": { + "Steeltoe": { "type": "object", "properties": { - "Archived": { - "type": "boolean" - }, - "Extensions": { - "type": "array" - }, - "FriendlyName": { - "type": "string" - }, - "HasPrivateKey": { - "type": "boolean" - }, - "PrivateKey": { - "$ref": "#/definitions/AsymmetricAlgorithm" - }, - "IssuerName": { - "$ref": "#/definitions/X500DistinguishedName" - }, - "NotAfter": { - "type": "string", - "format": "date-time" - }, - "NotBefore": { - "type": "string", - "format": "date-time" - }, - "PublicKey": { - "$ref": "#/definitions/PublicKey" - }, - "RawData": { - "type": "string" - }, - "SerialNumber": { - "type": "string" - }, - "SignatureAlgorithm": { - "$ref": "#/definitions/Oid" - }, - "SubjectName": { - "$ref": "#/definitions/X500DistinguishedName" - }, - "Thumbprint": { - "type": "string" - }, - "Version": { - "type": "integer" - }, - "Handle": { - "type": "object" - }, - "Issuer": { - "type": "string" - }, - "Subject": { - "type": "string" + "Client": { + "type": "object", + "properties": { + "CosmosDb": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + }, + "Database": { + "type": "string", + "description": "Gets or sets the name of the CosmosDB database." + } + }, + "description": "Provides configuration settings to connect to a data source." + }, + "properties": { + "Default": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + }, + "Database": { + "type": "string", + "description": "Gets or sets the name of the CosmosDB database." + } + }, + "description": "Provides configuration settings to connect to a data source." + } + } + }, + "MongoDb": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + }, + "Database": { + "type": "string", + "description": "Gets or sets the name of the MongoDB database." + } + }, + "description": "Provides configuration settings to connect to a data source." + }, + "properties": { + "Default": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + }, + "Database": { + "type": "string", + "description": "Gets or sets the name of the MongoDB database." + } + }, + "description": "Provides configuration settings to connect to a data source." + } + } + }, + "MySql": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + }, + "properties": { + "Default": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + } + } + }, + "PostgreSql": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + }, + "properties": { + "Default": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + } + } + }, + "RabbitMQ": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + }, + "properties": { + "Default": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + } + } + }, + "Redis": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + }, + "properties": { + "Default": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + } + } + }, + "SqlServer": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + }, + "properties": { + "Default": { + "type": "object", + "properties": { + "ConnectionString": { + "type": "string", + "description": "Gets or sets the connection string for this data source." + } + }, + "description": "Provides configuration settings to connect to a data source." + } + } + } + } } } } }, - "type": "object", - "properties": { - "Spring": { - "$ref": "#/definitions/Spring" - }, - "Eureka": { - "$ref": "#/definitions/EurekaConfig" - }, - "Consul": { - "$ref": "#/definitions/ConsulConfig" - }, - "Logging": { - "$ref": "#/definitions/LoggingRoot" - }, - "CosmosDb": { - "$ref": "#/definitions/ConnectorConfig" - }, - "MySql": { - "$ref": "#/definitions/ConnectorConfig" - }, - "Postgres": { - "$ref": "#/definitions/ConnectorConfig" - }, - "Rabbitmq": { - "$ref": "#/definitions/ConnectorConfig" - }, - "Redis": { - "$ref": "#/definitions/ConnectorConfig" - }, - "SqlServer": { - "$ref": "#/definitions/SqlServerConfig" - }, - "MongoDb": { - "$ref": "#/definitions/ConnectorConfig" - }, - "Hystrix": { - "$ref": "#/definitions/ConnectorConfig" - }, - "Security": { - "$ref": "#/definitions/Security" - }, - "Management": { - "$ref": "#/definitions/Management" - } - } + "description": "Configuration settings for registered application tasks." } \ No newline at end of file diff --git a/src/Steeltoe.io/wwwroot/schema/v4/schema.json b/src/Steeltoe.io/wwwroot/schema/v4/schema.json index 8293eef4..e6b52225 100644 --- a/src/Steeltoe.io/wwwroot/schema/v4/schema.json +++ b/src/Steeltoe.io/wwwroot/schema/v4/schema.json @@ -1612,7 +1612,7 @@ }, "Env": { "type": "string", - "description": "Gets or sets the environment used when accessing configuration data. Default value: \"Production\"." + "description": "Gets or sets a comma-separated list of environments used when accessing configuration data. Default value: \"Production\"." }, "FailFast": { "type": "boolean",