summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-06-20 09:15:45 +0000
committerCoprDistGit <infra@openeuler.org>2023-06-20 09:15:45 +0000
commit1829ce160334549e2937a5ad47b609e3cd1e36d5 (patch)
treefcaba3c53d606fc2c6ce3a586712d65679677819
parentc18fc901ff51ee0a1a132152bb1acd70998bb239 (diff)
automatic import of python-AWS-OpenAPI-Lintopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-aws-openapi-lint.spec273
-rw-r--r--sources1
3 files changed, 275 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..d597987 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/AWS-OpenAPI-Lint-0.2.2.tar.gz
diff --git a/python-aws-openapi-lint.spec b/python-aws-openapi-lint.spec
new file mode 100644
index 0000000..4617cb9
--- /dev/null
+++ b/python-aws-openapi-lint.spec
@@ -0,0 +1,273 @@
+%global _empty_manifest_terminate_build 0
+Name: python-AWS-OpenAPI-Lint
+Version: 0.2.2
+Release: 1
+Summary: AWS API Gateway OpenAPI spec linter
+License: MIT
+URL: https://github.com/evilmint/aws-openapi-lint
+Source0: https://mirrors.aliyun.com/pypi/web/packages/8c/86/7aaa63946ca2644352d9e629d8c10c451d3a7d3f87ef13513c156b7390dc/AWS-OpenAPI-Lint-0.2.2.tar.gz
+BuildArch: noarch
+
+
+%description
+# OpenAPI AWS API Gateway linter
+
+[![codecov](https://codecov.io/gh/evilmint/aws-openapi-lint/branch/master/graph/badge.svg)](https://codecov.io/gh/evilmint/aws-openapi-lint) [![license](https://img.shields.io/github/license/evilmint/aws-openapi-lint)](https://github.com/evilmint/aws-openapi-lint)
+
+AWS-OpenAPI-Lint is a simple OpenAPI 3 yaml / json spec linter designed for checking API Gateway integration.
+
+## Rules
+
+It contains rules for checking whether:
+
+- you have an authorizer on OPTIONS
+- authorizer is mentioned in `requestParameters` but is not present in `security`
+- http verbs are consistent in the path and integration
+- all used headers in path from all verbs are mentioned in CORS rules and vice-versa
+- CORS rules allow all verbs mentioned in the path
+- CORS rules are present
+- amazon integration is present
+- path parameters present in `requestParameters` are not used in the direct path parameters and vice-versa
+
+## Roadmap
+
+- [ ] Update README with rule names and behavior
+- [X] Support json specs
+- [X] Add optional rule for checking base url equality
+- [ ] Add support for configuration yaml file
+- [ ] Add possibility to disable rule checking on specific paths
+- [ ] Add possibility to disable rules per path
+- [ ] Ignore path-params if `http_proxy` integration type used
+- [X] Add option to disable rules via CLI
+- [X] Add warning threshold to return with status code 0 if limit not exceeded
+- [X] Fix flake8 violations
+- [X] Add a license
+- [X] Publish to PyPI or alike
+- [X] Configure properly up GitHub actions to run tests on push
+
+## Installation
+
+```
+pip install aws-openapi-lint
+```
+
+## Usage
+
+`$ aws-openapi-lint path/to/spec.yml`
+
+```
+usage: main.py [-h] [--treat-errors-as-warnings]
+ [--warning-threshold WARNING_THRESHOLD]
+ [--exclude-rules EXCLUDE_RULES]
+ lint_file
+
+Lint OpenAPI specifications based on AWS API Gateway.
+
+positional arguments:
+ lint_file Specify path to the openapi schema file.
+
+optional arguments:
+ -h, --help show this help message and exit
+ --treat-errors-as-warnings
+ Treats errors as warnings (exit code will be 0 unless
+ warning threshold is specified
+ --warning-threshold WARNING_THRESHOLD
+ Warning threshold which when surpassed renders exit
+ code to become 1)
+ --exclude-rules EXCLUDE_RULES
+ Excluded rules separated by comma.
+
+```
+
+%package -n python3-AWS-OpenAPI-Lint
+Summary: AWS API Gateway OpenAPI spec linter
+Provides: python-AWS-OpenAPI-Lint
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-AWS-OpenAPI-Lint
+# OpenAPI AWS API Gateway linter
+
+[![codecov](https://codecov.io/gh/evilmint/aws-openapi-lint/branch/master/graph/badge.svg)](https://codecov.io/gh/evilmint/aws-openapi-lint) [![license](https://img.shields.io/github/license/evilmint/aws-openapi-lint)](https://github.com/evilmint/aws-openapi-lint)
+
+AWS-OpenAPI-Lint is a simple OpenAPI 3 yaml / json spec linter designed for checking API Gateway integration.
+
+## Rules
+
+It contains rules for checking whether:
+
+- you have an authorizer on OPTIONS
+- authorizer is mentioned in `requestParameters` but is not present in `security`
+- http verbs are consistent in the path and integration
+- all used headers in path from all verbs are mentioned in CORS rules and vice-versa
+- CORS rules allow all verbs mentioned in the path
+- CORS rules are present
+- amazon integration is present
+- path parameters present in `requestParameters` are not used in the direct path parameters and vice-versa
+
+## Roadmap
+
+- [ ] Update README with rule names and behavior
+- [X] Support json specs
+- [X] Add optional rule for checking base url equality
+- [ ] Add support for configuration yaml file
+- [ ] Add possibility to disable rule checking on specific paths
+- [ ] Add possibility to disable rules per path
+- [ ] Ignore path-params if `http_proxy` integration type used
+- [X] Add option to disable rules via CLI
+- [X] Add warning threshold to return with status code 0 if limit not exceeded
+- [X] Fix flake8 violations
+- [X] Add a license
+- [X] Publish to PyPI or alike
+- [X] Configure properly up GitHub actions to run tests on push
+
+## Installation
+
+```
+pip install aws-openapi-lint
+```
+
+## Usage
+
+`$ aws-openapi-lint path/to/spec.yml`
+
+```
+usage: main.py [-h] [--treat-errors-as-warnings]
+ [--warning-threshold WARNING_THRESHOLD]
+ [--exclude-rules EXCLUDE_RULES]
+ lint_file
+
+Lint OpenAPI specifications based on AWS API Gateway.
+
+positional arguments:
+ lint_file Specify path to the openapi schema file.
+
+optional arguments:
+ -h, --help show this help message and exit
+ --treat-errors-as-warnings
+ Treats errors as warnings (exit code will be 0 unless
+ warning threshold is specified
+ --warning-threshold WARNING_THRESHOLD
+ Warning threshold which when surpassed renders exit
+ code to become 1)
+ --exclude-rules EXCLUDE_RULES
+ Excluded rules separated by comma.
+
+```
+
+%package help
+Summary: Development documents and examples for AWS-OpenAPI-Lint
+Provides: python3-AWS-OpenAPI-Lint-doc
+%description help
+# OpenAPI AWS API Gateway linter
+
+[![codecov](https://codecov.io/gh/evilmint/aws-openapi-lint/branch/master/graph/badge.svg)](https://codecov.io/gh/evilmint/aws-openapi-lint) [![license](https://img.shields.io/github/license/evilmint/aws-openapi-lint)](https://github.com/evilmint/aws-openapi-lint)
+
+AWS-OpenAPI-Lint is a simple OpenAPI 3 yaml / json spec linter designed for checking API Gateway integration.
+
+## Rules
+
+It contains rules for checking whether:
+
+- you have an authorizer on OPTIONS
+- authorizer is mentioned in `requestParameters` but is not present in `security`
+- http verbs are consistent in the path and integration
+- all used headers in path from all verbs are mentioned in CORS rules and vice-versa
+- CORS rules allow all verbs mentioned in the path
+- CORS rules are present
+- amazon integration is present
+- path parameters present in `requestParameters` are not used in the direct path parameters and vice-versa
+
+## Roadmap
+
+- [ ] Update README with rule names and behavior
+- [X] Support json specs
+- [X] Add optional rule for checking base url equality
+- [ ] Add support for configuration yaml file
+- [ ] Add possibility to disable rule checking on specific paths
+- [ ] Add possibility to disable rules per path
+- [ ] Ignore path-params if `http_proxy` integration type used
+- [X] Add option to disable rules via CLI
+- [X] Add warning threshold to return with status code 0 if limit not exceeded
+- [X] Fix flake8 violations
+- [X] Add a license
+- [X] Publish to PyPI or alike
+- [X] Configure properly up GitHub actions to run tests on push
+
+## Installation
+
+```
+pip install aws-openapi-lint
+```
+
+## Usage
+
+`$ aws-openapi-lint path/to/spec.yml`
+
+```
+usage: main.py [-h] [--treat-errors-as-warnings]
+ [--warning-threshold WARNING_THRESHOLD]
+ [--exclude-rules EXCLUDE_RULES]
+ lint_file
+
+Lint OpenAPI specifications based on AWS API Gateway.
+
+positional arguments:
+ lint_file Specify path to the openapi schema file.
+
+optional arguments:
+ -h, --help show this help message and exit
+ --treat-errors-as-warnings
+ Treats errors as warnings (exit code will be 0 unless
+ warning threshold is specified
+ --warning-threshold WARNING_THRESHOLD
+ Warning threshold which when surpassed renders exit
+ code to become 1)
+ --exclude-rules EXCLUDE_RULES
+ Excluded rules separated by comma.
+
+```
+
+%prep
+%autosetup -n AWS-OpenAPI-Lint-0.2.2
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-AWS-OpenAPI-Lint -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2.2-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..05391ff
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+d5bddd91adf7d9724455c78a29547405 AWS-OpenAPI-Lint-0.2.2.tar.gz