Skip to content

Commit

Permalink
Sync OpenAPI & template fix; Multiple parameter correctness changes (#…
Browse files Browse the repository at this point in the history
…150)

* Sync OpenAPI; Multiple parameter correctness changes

This includes the results of:
* hashicorp/vault#21949
* hashicorp/vault#21942
* hashicorp/vault#22027

The general direction of change is pretty positive, but in reviewing the
generated diffs, I have spotted an issue: we are now generating correct
parameters for query parameters... but those query parameters are being
handled as individual function parameters... which are generated in the
order listed in the OpenAPI spec... which is dependent on random Go hash
iteration ordering. Ugh.

Oh well, let's catch up with latest developments in the Vault repo for
now, and I'll go put in a new PR to at least sort the parameters
alphabetically.

Longer term, this is probably going to push us in the direction of
excluding the GET version of APIs with equivalent GET and POST versions
from the generated libraries.

* Update the templates with a missing using directive
  • Loading branch information
maxb committed Jul 25, 2023
1 parent 442b32b commit ce26ec2
Show file tree
Hide file tree
Showing 53 changed files with 879 additions and 1,234 deletions.
1 change: 0 additions & 1 deletion docs/GenerateHashRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ Name | Type | Description | Notes
**Algorithm** | **string** | Algorithm to use (POST body parameter). Valid values are: * sha2-224 * sha2-256 * sha2-384 * sha2-512 Defaults to \"sha2-256\". | [optional] [default to "sha2-256"]
**Format** | **string** | Encoding format to use. Can be \"hex\" or \"base64\". Defaults to \"hex\". | [optional] [default to "hex"]
**Input** | **string** | The base64-encoded input data | [optional]
**Urlalgorithm** | **string** | Algorithm to use (POST URL parameter) | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

2 changes: 0 additions & 2 deletions docs/GenerateRandomRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**Bytes** | **int** | The number of bytes to generate (POST body parameter). Defaults to 32 (256 bits). | [optional] [default to 32]
**Format** | **string** | Encoding format to use. Can be \"hex\" or \"base64\". Defaults to \"base64\". | [optional] [default to "base64"]
**Source** | **string** | Which system to source random data from, ether \"platform\", \"seal\", or \"all\". | [optional] [default to "platform"]
**Urlbytes** | **string** | The number of bytes to generate (POST URL parameter) | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

1 change: 0 additions & 1 deletion docs/GenerateRandomWithBytesRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**Bytes** | **int** | The number of bytes to generate (POST body parameter). Defaults to 32 (256 bits). | [optional] [default to 32]
**Format** | **string** | Encoding format to use. Can be \"hex\" or \"base64\". Defaults to \"base64\". | [optional] [default to "base64"]
**Source** | **string** | Which system to source random data from, ether \"platform\", \"seal\", or \"all\". | [optional] [default to "platform"]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

1 change: 0 additions & 1 deletion docs/GenerateRandomWithSourceRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**Bytes** | **int** | The number of bytes to generate (POST body parameter). Defaults to 32 (256 bits). | [optional] [default to 32]
**Format** | **string** | Encoding format to use. Can be \"hex\" or \"base64\". Defaults to \"base64\". | [optional] [default to "base64"]
**Urlbytes** | **string** | The number of bytes to generate (POST URL parameter) | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

58 changes: 56 additions & 2 deletions docs/IdentityApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -7585,7 +7585,7 @@ No authorization required
<a name="oidcproviderauthorize"></a>
# **OidcProviderAuthorize**

> void OidcProviderAuthorize (string name, TimeSpan? wrapTTL = null)
> void OidcProviderAuthorize (string name, string codeChallengeMethod = default(string), string scope = default(string), string state = default(string), string redirectUri = default(string), string codeChallenge = default(string), int? maxAge = default(int?), string clientId = default(string), string responseType = default(string), string nonce = default(string), TimeSpan? wrapTTL = null)


Expand Down Expand Up @@ -7622,12 +7622,57 @@ namespace Example



var codeChallengeMethod = "\"plain\""; // string | The method that was used to derive the code challenge. The following methods are supported: 'S256', 'plain'. Defaults to 'plain'. (optional) (default to "plain")



var scope = "scope_example"; // string | A space-delimited, case-sensitive list of scopes to be requested. The 'openid' scope is required. (optional)



var state = "state_example"; // string | The value used to maintain state between the authentication request and client. (optional)



var redirectUri = "redirectUri_example"; // string | The redirection URI to which the response will be sent. (optional)



var codeChallenge = "codeChallenge_example"; // string | The code challenge derived from the code verifier. (optional)



var maxAge = 56; // int? | The allowable elapsed time in seconds since the last time the end-user was actively authenticated. (optional)



var clientId = "clientId_example"; // string | The ID of the requesting client. (optional)



var responseType = "responseType_example"; // string | The OIDC authentication flow to be used. The following response types are supported: 'code' (optional)



var nonce = "nonce_example"; // string | The value that will be returned in the ID token nonce claim after a token exchange. (optional)



try
{


apiInstance.OidcProviderAuthorize(string name, TimeSpan? wrapTTL = null);
apiInstance.OidcProviderAuthorize(string name, string codeChallengeMethod = default(string), string scope = default(string), string state = default(string), string redirectUri = default(string), string codeChallenge = default(string), int? maxAge = default(int?), string clientId = default(string), string responseType = default(string), string nonce = default(string), TimeSpan? wrapTTL = null);
}
catch (ApiException e)
{
Expand All @@ -7644,6 +7689,15 @@ namespace Example
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**name** | **string**| Name of the provider |
**codeChallengeMethod** | **string**| The method that was used to derive the code challenge. The following methods are supported: &#x27;S256&#x27;, &#x27;plain&#x27;. Defaults to &#x27;plain&#x27;. | [optional] [default to &quot;plain&quot;]
**scope** | **string**| A space-delimited, case-sensitive list of scopes to be requested. The &#x27;openid&#x27; scope is required. | [optional]
**state** | **string**| The value used to maintain state between the authentication request and client. | [optional]
**redirectUri** | **string**| The redirection URI to which the response will be sent. | [optional]
**codeChallenge** | **string**| The code challenge derived from the code verifier. | [optional]
**maxAge** | **int?**| The allowable elapsed time in seconds since the last time the end-user was actively authenticated. | [optional]
**clientId** | **string**| The ID of the requesting client. | [optional]
**responseType** | **string**| The OIDC authentication flow to be used. The following response types are supported: &#x27;code&#x27; | [optional]
**nonce** | **string**| The value that will be returned in the ID token nonce claim after a token exchange. | [optional]


### Return type
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**Context** | **string** | Context string appended to every operationId | [optional]
**GenericMountPaths** | **bool** | Use generic mount paths | [optional] [default to false]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

1 change: 0 additions & 1 deletion docs/LeasesRenewLeaseRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**Increment** | **string** | The desired increment in seconds to the lease | [optional]
**LeaseId** | **string** | The lease identifier to renew. This is included with a lease. | [optional]
**UrlLeaseId** | **string** | The lease identifier to renew. This is included with a lease. | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

1 change: 0 additions & 1 deletion docs/LeasesRevokeLeaseRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**LeaseId** | **string** | The lease identifier to renew. This is included with a lease. | [optional]
**Sync** | **bool** | Whether or not to perform the revocation synchronously | [optional] [default to true]
**UrlLeaseId** | **string** | The lease identifier to renew. This is included with a lease. | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

1 change: 0 additions & 1 deletion docs/PkiIssuerSignVerbatimRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ Name | Type | Description | Notes
**OtherSans** | **List&lt;string&gt;** | Requested other SANs, in an array with the format &lt;oid&gt;;UTF8:&lt;utf8 string value&gt; for each entry. | [optional]
**PrivateKeyFormat** | **string** | Format for the returned private key. Generally the default will be controlled by the \&quot;format\&quot; parameter as either base64-encoded DER or PEM-encoded DER. However, this can be set to \&quot;pkcs8\&quot; to have the returned private key contain base64-encoded pkcs8 or PEM-encoded pkcs8 instead. Defaults to \&quot;der\&quot;. | [optional] [default to PrivateKeyFormatEnum.Der]
**RemoveRootsFromChain** | **bool** | Whether or not to remove self-signed CA certificates in the output of the ca_chain field. | [optional] [default to false]
**Role** | **string** | The desired role with configuration for this request | [optional]
**SerialNumber** | **string** | The Subject&#x27;s requested serial number, if any. See RFC 4519 Section 2.31 &#x27;serialNumber&#x27; for a description of this field. If you want more than one, specify alternative names in the alt_names map using OID 2.5.4.5. This has no impact on the final certificate&#x27;s Serial Number field. | [optional]
**SignatureBits** | **int** | The number of bits to use in the signature algorithm; accepts 256 for SHA-2-256, 384 for SHA-2-384, and 512 for SHA-2-512. Defaults to 0 to automatically detect based on key length (SHA-2-256 for RSA keys, and matching the curve size for NIST P-Curves). | [optional] [default to 0]
**Ttl** | **string** | The requested Time To Live for the certificate; sets the expiration date. If not specified the role default, backend default, or system default TTL is used, in that order. Cannot be larger than the role max TTL. | [optional]
Expand Down
1 change: 0 additions & 1 deletion docs/PkiSignVerbatimRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ Name | Type | Description | Notes
**OtherSans** | **List&lt;string&gt;** | Requested other SANs, in an array with the format &lt;oid&gt;;UTF8:&lt;utf8 string value&gt; for each entry. | [optional]
**PrivateKeyFormat** | **string** | Format for the returned private key. Generally the default will be controlled by the \&quot;format\&quot; parameter as either base64-encoded DER or PEM-encoded DER. However, this can be set to \&quot;pkcs8\&quot; to have the returned private key contain base64-encoded pkcs8 or PEM-encoded pkcs8 instead. Defaults to \&quot;der\&quot;. | [optional] [default to PrivateKeyFormatEnum.Der]
**RemoveRootsFromChain** | **bool** | Whether or not to remove self-signed CA certificates in the output of the ca_chain field. | [optional] [default to false]
**Role** | **string** | The desired role with configuration for this request | [optional]
**SerialNumber** | **string** | The Subject&#x27;s requested serial number, if any. See RFC 4519 Section 2.31 &#x27;serialNumber&#x27; for a description of this field. If you want more than one, specify alternative names in the alt_names map using OID 2.5.4.5. This has no impact on the final certificate&#x27;s Serial Number field. | [optional]
**SignatureBits** | **int** | The number of bits to use in the signature algorithm; accepts 256 for SHA-2-256, 384 for SHA-2-384, and 512 for SHA-2-512. Defaults to 0 to automatically detect based on key length (SHA-2-256 for RSA keys, and matching the curve size for NIST P-Curves). | [optional] [default to 0]
**Ttl** | **string** | The requested Time To Live for the certificate; sets the expiration date. If not specified the role default, backend default, or system default TTL is used, in that order. Cannot be larger than the role max TTL. | [optional]
Expand Down
1 change: 0 additions & 1 deletion docs/PluginsCatalogRegisterPluginRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ Name | Type | Description | Notes
**Command** | **string** | The command used to start the plugin. The executable defined in this command must exist in vault&#x27;s plugin directory. | [optional]
**Env** | **List&lt;string&gt;** | The environment variables passed to plugin command. Each entry is of the form \&quot;key&#x3D;value\&quot;. | [optional]
**Sha256** | **string** | The SHA256 sum of the executable used in the command field. This should be HEX encoded. | [optional]
**Type** | **string** | The type of the plugin, may be auth, secret, or database | [optional]
**_Version** | **string** | The semantic version of the plugin to use. | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
Expand Down
1 change: 0 additions & 1 deletion docs/RadiusLoginRequest.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**Password** | **string** | Password for this user. | [optional]
**Urlusername** | **string** | Username to be used for login. (URL parameter) | [optional]
**Username** | **string** | Username to be used for login. (POST request body) | [optional]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
Expand Down
56 changes: 49 additions & 7 deletions docs/SecretsApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -1565,7 +1565,7 @@ No authorization required
<a name="awsgeneratecredentials"></a>
# **AwsGenerateCredentials**

> void AwsGenerateCredentials (string name, string awsMountPath, TimeSpan? wrapTTL = null)
> void AwsGenerateCredentials (string name, string awsMountPath, string roleArn = default(string), string ttl = default(string), string roleSessionName = default(string), TimeSpan? wrapTTL = null)



Expand Down Expand Up @@ -1607,12 +1607,27 @@ namespace Example




var roleArn = "roleArn_example"; // string | ARN of role to assume when credential_type is assumed_role (optional)




var ttl = "\"3600\""; // string | Lifetime of the returned credentials in seconds (optional) (default to "3600")




var roleSessionName = "roleSessionName_example"; // string | Session name to use when assuming role. Max chars: 64 (optional)




try
{


apiInstance.AwsGenerateCredentials(string name, string awsMountPath, TimeSpan? wrapTTL = null);
apiInstance.AwsGenerateCredentials(string name, string awsMountPath, string roleArn = default(string), string ttl = default(string), string roleSessionName = default(string), TimeSpan? wrapTTL = null);
}
catch (ApiException e)
{
Expand All @@ -1630,6 +1645,9 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**name** | **string**| Name of the role |
**awsMountPath** | **string**| Path that the backend was mounted at | [default to &quot;aws&quot;]
**roleArn** | **string**| ARN of role to assume when credential_type is assumed_role | [optional]
**ttl** | **string**| Lifetime of the returned credentials in seconds | [optional] [default to &quot;3600&quot;]
**roleSessionName** | **string**| Session name to use when assuming role. Max chars: 64 | [optional]


### Return type
Expand Down Expand Up @@ -1763,7 +1781,7 @@ No authorization required
<a name="awsgeneratestscredentials"></a>
# **AwsGenerateStsCredentials**

> void AwsGenerateStsCredentials (string name, string awsMountPath, TimeSpan? wrapTTL = null)
> void AwsGenerateStsCredentials (string name, string awsMountPath, string roleArn = default(string), string ttl = default(string), string roleSessionName = default(string), TimeSpan? wrapTTL = null)



Expand Down Expand Up @@ -1805,12 +1823,27 @@ namespace Example




var roleArn = "roleArn_example"; // string | ARN of role to assume when credential_type is assumed_role (optional)




var ttl = "\"3600\""; // string | Lifetime of the returned credentials in seconds (optional) (default to "3600")




var roleSessionName = "roleSessionName_example"; // string | Session name to use when assuming role. Max chars: 64 (optional)




try
{


apiInstance.AwsGenerateStsCredentials(string name, string awsMountPath, TimeSpan? wrapTTL = null);
apiInstance.AwsGenerateStsCredentials(string name, string awsMountPath, string roleArn = default(string), string ttl = default(string), string roleSessionName = default(string), TimeSpan? wrapTTL = null);
}
catch (ApiException e)
{
Expand All @@ -1828,6 +1861,9 @@ Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**name** | **string**| Name of the role |
**awsMountPath** | **string**| Path that the backend was mounted at | [default to &quot;aws&quot;]
**roleArn** | **string**| ARN of role to assume when credential_type is assumed_role | [optional]
**ttl** | **string**| Lifetime of the returned credentials in seconds | [optional] [default to &quot;3600&quot;]
**roleSessionName** | **string**| Session name to use when assuming role. Max chars: 64 | [optional]


### Return type
Expand Down Expand Up @@ -4757,7 +4793,7 @@ No authorization required
<a name="cubbyholewrite"></a>
# **CubbyholeWrite**

> void CubbyholeWrite (string path, TimeSpan? wrapTTL = null)
> void CubbyholeWrite (string path, Dictionary<string, Object> requestBody, TimeSpan? wrapTTL = null)

Store a secret at the specified location.

Expand Down Expand Up @@ -4794,14 +4830,19 @@ namespace Example





var requestBody = new Dictionary<string, Object>(); // Dictionary<string, Object> |



try
{

// Store a secret at the specified location.


apiInstance.CubbyholeWrite(string path, TimeSpan? wrapTTL = null);
apiInstance.CubbyholeWrite(string path, Dictionary<string, Object> requestBody, TimeSpan? wrapTTL = null);
}
catch (ApiException e)
{
Expand All @@ -4818,6 +4859,7 @@ namespace Example
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**path** | **string**| Specifies the path of the secret. |
**requestBody** | [**Dictionary&lt;string, Object&gt;**](Object.md)| |


### Return type
Expand All @@ -4830,7 +4872,7 @@ No authorization required

### HTTP request headers

- **Content-Type**: Not defined
- **Content-Type**: ,
- **Accept**: Not defined


Expand Down
Loading

0 comments on commit ce26ec2

Please sign in to comment.