diff --git a/config.md b/config.md index a622fe82..b4cf76a8 100644 --- a/config.md +++ b/config.md @@ -1,21 +1,4 @@ ---- -layout: default -title: pages.reference -parent: Reference -nav_order: 2 ---- - -# Configuration Reference -{: .no_toc } - - - ---- - +# Configuration reference ## api @@ -68,10 +51,10 @@ nav_order: 2 |credentials|CORS setting to control whether a browser allows credentials to be sent to this API|`boolean`|`true` |debug|Whether debug is enabled for the CORS implementation|`boolean`|`false` |enabled|Whether CORS is enabled|`boolean`|`true` -|headers|CORS setting to control the allowed headers|`string`|`[*]` +|headers|CORS setting to control the allowed headers|`[]string`|`[*]` |maxAge|The maximum age a browser should rely on CORS checks|[`time.Duration`](https://pkg.go.dev/time#Duration)|`600` -|methods| CORS setting to control the allowed methods|`string`|`[GET POST PUT PATCH DELETE]` -|origins|CORS setting to control the allowed origins|`string`|`[*]` +|methods| CORS setting to control the allowed methods|`[]string`|`[GET POST PUT PATCH DELETE]` +|origins|CORS setting to control the allowed origins|`[]string`|`[*]` ## debug @@ -101,7 +84,7 @@ nav_order: 2 |Key|Description|Type|Default Value| |---|-----------|----|-------------| -|factor|Factor to increase the delay by, between each retry|`boolean`|`2` +|factor|Factor to increase the delay by, between each retry|`float32`|`2` |initialDelay|Initial retry delay|[`time.Duration`](https://pkg.go.dev/time#Duration)|`250ms` |maxDelay|Maximum delay between retries|[`time.Duration`](https://pkg.go.dev/time#Duration)|`30s` @@ -174,7 +157,7 @@ nav_order: 2 |idleTimeout|The max duration to hold a HTTP keepalive connection between calls|[`time.Duration`](https://pkg.go.dev/time#Duration)|`` |maxIdleConns|The max number of idle connections to hold pooled|`int`|`` |method|The HTTP Method to use when invoking the Gas Oracle REST API|`string`|`` -|mode|The gas oracle mode|connector | restapi | disabled|`` +|mode|The gas oracle mode|'connector', 'restapi', 'fixed', or 'disabled'|`` |queryInterval|The minimum interval between queries to the Gas Oracle|[`time.Duration`](https://pkg.go.dev/time#Duration)|`` |requestTimeout|The maximum amount of time that a request is allowed to remain open|[`time.Duration`](https://pkg.go.dev/time#Duration)|`` |template|REST API Gas Oracle: A go template to execute against the result from the Gas Oracle, to create a JSON block that will be passed as the gas price to the connector|[Go Template](https://pkg.go.dev/text/template) `string`|`` @@ -213,7 +196,7 @@ nav_order: 2 |Key|Description|Type|Default Value| |---|-----------|----|-------------| -|factor|The retry backoff factor|`boolean`|`2` +|factor|The retry backoff factor|`float32`|`2` |initialDelay|The initial retry delay|[`time.Duration`](https://pkg.go.dev/time#Duration)|`250ms` |maxDelay|The maximum retry delay|[`time.Duration`](https://pkg.go.dev/time#Duration)|`30s` diff --git a/go.mod b/go.mod index 86662288..af47046d 100644 --- a/go.mod +++ b/go.mod @@ -9,11 +9,11 @@ require ( github.com/go-resty/resty/v2 v2.7.0 github.com/gorilla/mux v1.8.0 github.com/gorilla/websocket v1.5.0 - github.com/hyperledger/firefly-common v0.1.17-0.20220808193503-961a6b241a1a + github.com/hyperledger/firefly-common v1.1.3 github.com/oklog/ulid/v2 v2.1.0 github.com/sirupsen/logrus v1.8.1 - github.com/spf13/viper v1.12.0 - github.com/stretchr/testify v1.7.1 + github.com/spf13/viper v1.12.1-0.20220712161005-5247643f0235 + github.com/stretchr/testify v1.8.0 github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 golang.org/x/text v0.3.7 ) @@ -44,7 +44,7 @@ require ( github.com/mitchellh/reflectwalk v1.0.0 // indirect github.com/nxadm/tail v1.4.8 // indirect github.com/pelletier/go-toml v1.9.5 // indirect - github.com/pelletier/go-toml/v2 v2.0.1 // indirect + github.com/pelletier/go-toml/v2 v2.0.2 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/rs/cors v1.8.2 // indirect @@ -54,7 +54,7 @@ require ( github.com/spf13/cast v1.5.0 // indirect github.com/spf13/jwalterweatherman v1.1.0 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/stretchr/objx v0.2.0 // indirect + github.com/stretchr/objx v0.4.0 // indirect github.com/subosito/gotenv v1.4.0 // indirect github.com/x-cray/logrus-prefixed-formatter v0.5.2 // indirect golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e // indirect diff --git a/go.sum b/go.sum index 440fbfde..4910b465 100644 --- a/go.sum +++ b/go.sum @@ -278,6 +278,8 @@ github.com/huandu/xstrings v1.3.1 h1:4jgBlKK6tLKFvO8u5pmYjG91cqytmDCDvGh7ECVFfFs github.com/huandu/xstrings v1.3.1/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/hyperledger/firefly-common v0.1.17-0.20220808193503-961a6b241a1a h1:KQJuUGh4CdZ5XXwKjyY9M0hm//uqwcUkwpxkiIEaziQ= github.com/hyperledger/firefly-common v0.1.17-0.20220808193503-961a6b241a1a/go.mod h1:MNbaI2spBsdZYOub6Duj9xueE7Qyu9itOmJ4vE8tjYw= +github.com/hyperledger/firefly-common v1.1.3 h1:srCodaJSLl8/qaq+Cse6HfHZbzYFzguerX370YGxnXU= +github.com/hyperledger/firefly-common v1.1.3/go.mod h1:gMlv4Iy5JjnzXmSEdb+tWVDIc/2GhL9MRcgNX+VmI4M= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/imdario/mergo v0.3.11 h1:3tnifQM4i+fbajXKBHXWEH+KvNHqojZ778UH75j3bGA= @@ -382,6 +384,8 @@ github.com/pelletier/go-toml v1.9.5 h1:4yBQzkHv+7BHq2PQUZF3Mx0IYxG7LsP222s7Agd3v github.com/pelletier/go-toml v1.9.5/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.0.1 h1:8e3L2cCQzLFi2CR4g7vGFuFxX7Jl1kKX8gW+iV0GUKU= github.com/pelletier/go-toml/v2 v2.0.1/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= +github.com/pelletier/go-toml/v2 v2.0.2 h1:+jQXlF3scKIcSEKkdHzXhCTDLPFi5r1wnK6yPS+49Gw= +github.com/pelletier/go-toml/v2 v2.0.2/go.mod h1:MovirKjgVRESsAvNZlAjtFwV867yGuwRkXbG66OzopI= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= @@ -439,10 +443,14 @@ github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.12.0 h1:CZ7eSOd3kZoaYDLbXnmzgQI5RlciuXBMA+18HwHRfZQ= github.com/spf13/viper v1.12.0/go.mod h1:b6COn30jlNxbm/V2IqWiNWkJ+vZNiMNksliPCiuKtSI= +github.com/spf13/viper v1.12.1-0.20220712161005-5247643f0235 h1:azjn5/lAGpcMny6s1fW/y6rXTu2YUOA+a2C6wKpgpkw= +github.com/spf13/viper v1.12.1-0.20220712161005-5247643f0235/go.mod h1:f40df4ovE8V1ot0NXmYP1zUDS+X1D5AXGviq9fCJqZU= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.2.0 h1:Hbg2NidpLE8veEBkEZTL3CvlkUIVzuU9jDplZO54c48= github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= +github.com/stretchr/objx v0.4.0 h1:M2gUjqZET1qApGOWNSnZ49BAIMX4F/1plDv3+l31EJ4= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= @@ -451,6 +459,9 @@ github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1 h1:5TQK59W5E3v0r2duFAb7P95B6hEeOyEnHRa8MjYSMTY= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= +github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/subosito/gotenv v1.3.0/go.mod h1:YzJjq/33h7nrwdY+iHMhEOEEbW0ovIz0tB6t6PwAXzs= github.com/subosito/gotenv v1.4.0 h1:yAzM1+SmVcz5R4tXGsNMu1jUl2aOJXoiWUCEwwnGrvs= github.com/subosito/gotenv v1.4.0/go.mod h1:mZd6rFysKEcUhUHXJk0C/08wAgyDBFuwEYL7vWWGaGo= diff --git a/internal/tmmsgs/en_config_descriptions.go b/internal/tmmsgs/en_config_descriptions.go index 13e1aec1..068884f0 100644 --- a/internal/tmmsgs/en_config_descriptions.go +++ b/internal/tmmsgs/en_config_descriptions.go @@ -54,7 +54,7 @@ var ( ConfigPolicyEngineSimpleFixedGasPrice = ffc("config.policyengine.simple.fixedGasPrice", "A fixed gasPrice value/structure to pass to the connector", "Raw JSON") ConfigPolicyEngineSimpleResubmitInterval = ffc("config.policyengine.simple.resubmitInterval", "The time between warning and re-sending a transaction (same nonce) when a blockchain transaction has not been allocated a receipt", i18n.TimeDurationType) - ConfigPolicyEngineSimpleGasOracleEnabled = ffc("config.policyengine.simple.gasOracle.mode", "The gas oracle mode", "connector | restapi | disabled") + ConfigPolicyEngineSimpleGasOracleEnabled = ffc("config.policyengine.simple.gasOracle.mode", "The gas oracle mode", "'connector', 'restapi', 'fixed', or 'disabled'") ConfigPolicyEngineSimpleGasOracleGoTemplate = ffc("config.policyengine.simple.gasOracle.template", "REST API Gas Oracle: A go template to execute against the result from the Gas Oracle, to create a JSON block that will be passed as the gas price to the connector", i18n.GoTemplateType) ConfigPolicyEngineSimpleGasOracleURL = ffc("config.policyengine.simple.gasOracle.url", "REST API Gas Oracle: The URL of a Gas Oracle REST API to call", i18n.StringType) ConfigPolicyEngineSimpleGasOracleProxyURL = ffc("config.policyengine.simple.gasOracle.proxy.url", "Optional HTTP proxy URL to use for the Gas Oracle REST API", i18n.StringType) diff --git a/pkg/fftm/config_docs_generate_test.go b/pkg/fftm/config_docs_generate_test.go index 0a9f0f95..51596373 100644 --- a/pkg/fftm/config_docs_generate_test.go +++ b/pkg/fftm/config_docs_generate_test.go @@ -29,12 +29,14 @@ import ( "github.com/stretchr/testify/assert" ) +const configDocHeader = "# Configuration reference" + func TestGenerateConfigDocs(t *testing.T) { // Initialize config of all plugins InitConfig() f, err := os.Create(filepath.Join("..", "..", "config.md")) assert.NoError(t, err) - generatedConfig, err := config.GenerateConfigMarkdown(context.Background(), config.GetKnownKeys()) + generatedConfig, err := config.GenerateConfigMarkdown(context.Background(), configDocHeader, config.GetKnownKeys()) assert.NoError(t, err) _, err = f.Write(generatedConfig) assert.NoError(t, err) diff --git a/pkg/fftm/config_docs_test.go b/pkg/fftm/config_docs_test.go index 4299413d..ed3c74f2 100644 --- a/pkg/fftm/config_docs_test.go +++ b/pkg/fftm/config_docs_test.go @@ -30,10 +30,12 @@ import ( "github.com/stretchr/testify/assert" ) +const configDocHeader = "# Configuration reference" + func TestConfigDocsUpToDate(t *testing.T) { // Initialize config of all plugins InitConfig() - generatedConfig, err := config.GenerateConfigMarkdown(context.Background(), config.GetKnownKeys()) + generatedConfig, err := config.GenerateConfigMarkdown(context.Background(), configDocHeader, config.GetKnownKeys()) assert.NoError(t, err) configOnDisk, err := os.ReadFile(filepath.Join("..", "..", "config.md")) assert.NoError(t, err)