utility to enrich an openapi specification with information specific for the AWS API Gateway
Project description
License: MIT license
This is utility to enrich an openapi integration with information specific for the AWS API Gateway. It allows defining route integrations and authorizers to do automatic (re-)imports in API Gateway.
The openapi integration is extended on two parts: - security: optionally, adding one or more authorizers. - paths: extending each method with the associated authorizer and defining an endpoint.
The input to this utility is passed as parameters.
Paths / Integrations
To define routes, the syntax is:
path.PATH=full_uri[,authorizer_name,scopes]*
For example:
path.user.post=http://3.64.241.104:12121/user/post
This will define an endpoint for the route /user/post, using no authorizers. Alternatively, authorizer plus scopes can be specified:
path.user.post=http://3.64.241.104:12121/user/post,authorizer1,user.email,user.id
In this case, it uses the authorizer with name “authorizer1”, with scopes “user.email” and “user.id”
Defining input / output
Three parameters manage the input / output tasks:
-filename: allows to specify the input files to process, and it is possible to repeat this parameter multiple times. It is an error if the designed filename does not exist.
-glob: which supports specifying the input using filename patterns. It is not an error if this pattern matches no names in the file system.
-output-folder: optional, defines the output folder. If not specified, the input files will be overwritten.
Defining the configuration in a separate file
It is possible to specify any configuration parameters in a separate file, using the argument:
configuration=filename
This file should define the parameters in separate lines, using the same syntax. Empty lines and starting with the character # are discarded.
It is possible to specify multiple external configuration files. An example of a single file would be:
# a comment authorizer.name=DubaixCognito,Other authorizer.identity-source=$request.header.Authorization authorizer.audience=2f0m9fcoiejij4316u574aq259,7ac34sujrb8gmvj2b6blpi7ruu authorizer.issuer=https://cognito-idp.eu-west-2.amazonaws.com/eu-west-2_1T9bfKHNp tag.Frontend=http://3.64.241.104:12121/tmp/,DubaixCognito,user.email,user.id path.user.scope2=http://OTHER_PATH:12122/path,Other,user.email
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file openapi4aws-1.2.1.tar.gz
.
File metadata
- Download URL: openapi4aws-1.2.1.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac2a3e42750fccd34b543a840d23212032d9d927547a1ba9da2163ec118567d9 |
|
MD5 | 3e0e8f3e8384d13088d682c35b2f20e1 |
|
BLAKE2b-256 | 927f8279ea5da4a8c00ab39c79e6ec426bba3e9d171a640be29a3ec14243b20b |