summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-05 07:45:43 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-05 07:45:43 +0000
commitb240c57efac7c1ecaa362e92dfbddb3fc54d5e29 (patch)
treee26bf92b18d9bf3d4d3c74a3f0147f541f685b1a
parent0019b9ab7c39e523b030a476952d1a5138c894e0 (diff)
automatic import of python-cfn-resourceopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-cfn-resource.spec321
-rw-r--r--sources1
3 files changed, 323 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..34ce02b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/cfn_resource-0.2.3.tar.gz
diff --git a/python-cfn-resource.spec b/python-cfn-resource.spec
new file mode 100644
index 0000000..9796c88
--- /dev/null
+++ b/python-cfn-resource.spec
@@ -0,0 +1,321 @@
+%global _empty_manifest_terminate_build 0
+Name: python-cfn_resource
+Version: 0.2.3
+Release: 1
+Summary: Wrapper decorators for building CloudFormation custom resources
+License: MIT
+URL: https://github.com/ryansb/cfn-wrapper-python
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f0/98/313292b9764a98824e613367bd5b7e061c93c77985d277ee324823b8c43a/cfn_resource-0.2.3.tar.gz
+BuildArch: noarch
+
+
+%description
+## cfn_resource.py
+
+This project is a decorator and validation system that takes the drudgery out
+of writing custom resources. You still have access to the context and event as
+normal, but the decorator handles serializing your response and communicating
+results to CloudFormation.
+
+See [cfn-lambda](https://github.com/andrew-templeton/cfn-lambda) from Andrew
+Templeton if you're looking to write your custom resources in Node.js.
+
+## Usage
+
+1. Copy `cfn_resource.py` into the directory of your lambda function handler.py
+1. Use the `cfn_resource.Resource` event decorators to decorate your handler
+ like in `example.py`
+1. Zip up the contents and upload to Lambda
+
+Once the function is up, copy its ARN and use it as the ServiceToken for your
+[custom resource][rsrc]. For more on the requests you may receive, see
+[this document][reqdocs]
+
+```json
+{
+ "AWSTemplateFormatVersion": "2010-09-09",
+ "Resources": {
+ "FakeThing": {
+ "Type": "Custom::MyResource",
+ "Properties": {
+ "ServiceToken": "arn:aws:lambda:SOME-REGION:ACCOUNT:function:FunctionName",
+ "OtherThing": "foobar",
+ "AnotherThing": 2
+ }
+ }
+ }
+}
+```
+
+For more on how custom resources work, see the [AWS docs][docs]
+
+## Code Sample
+
+For this example, you need to have your handler in Lambda set as
+`filename.handler` where filename has the below contents.
+
+```
+import cfn_resource
+
+# set `handler` as the entry point for Lambda
+handler = cfn_resource.Resource()
+
+@handler.create
+def create_thing(event, context):
+ # do some stuff
+ return {"PhysicalResourceId": "arn:aws:fake:myID"}
+
+@handler.update
+def update_thing(event, context):
+ # do some stuff
+ return {"PhysicalResourceId": "arn:aws:fake:myID"}
+```
+
+## Running Tests
+
+To run the tests locally, you need Python 2.7 and `pip`. Ideally, you should
+use a virtualenv.
+
+```
+$ pip install -r test-requirements.txt
+$ py.test
+```
+
+The tests use `mock` and `py.test` and will give you a terminal coverage
+report. Currently the tests cover ~90% of the (very small) codebase.
+
+## License
+
+This code is released under the MIT software license, see LICENSE.txt for
+details. No warranty of any kind is included, and the copyright notice must be
+included in redistributions.
+
+[rsrc]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html
+[docs]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html
+[reqdocs]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/crpg-ref-requests.html
+
+
+%package -n python3-cfn_resource
+Summary: Wrapper decorators for building CloudFormation custom resources
+Provides: python-cfn_resource
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-cfn_resource
+## cfn_resource.py
+
+This project is a decorator and validation system that takes the drudgery out
+of writing custom resources. You still have access to the context and event as
+normal, but the decorator handles serializing your response and communicating
+results to CloudFormation.
+
+See [cfn-lambda](https://github.com/andrew-templeton/cfn-lambda) from Andrew
+Templeton if you're looking to write your custom resources in Node.js.
+
+## Usage
+
+1. Copy `cfn_resource.py` into the directory of your lambda function handler.py
+1. Use the `cfn_resource.Resource` event decorators to decorate your handler
+ like in `example.py`
+1. Zip up the contents and upload to Lambda
+
+Once the function is up, copy its ARN and use it as the ServiceToken for your
+[custom resource][rsrc]. For more on the requests you may receive, see
+[this document][reqdocs]
+
+```json
+{
+ "AWSTemplateFormatVersion": "2010-09-09",
+ "Resources": {
+ "FakeThing": {
+ "Type": "Custom::MyResource",
+ "Properties": {
+ "ServiceToken": "arn:aws:lambda:SOME-REGION:ACCOUNT:function:FunctionName",
+ "OtherThing": "foobar",
+ "AnotherThing": 2
+ }
+ }
+ }
+}
+```
+
+For more on how custom resources work, see the [AWS docs][docs]
+
+## Code Sample
+
+For this example, you need to have your handler in Lambda set as
+`filename.handler` where filename has the below contents.
+
+```
+import cfn_resource
+
+# set `handler` as the entry point for Lambda
+handler = cfn_resource.Resource()
+
+@handler.create
+def create_thing(event, context):
+ # do some stuff
+ return {"PhysicalResourceId": "arn:aws:fake:myID"}
+
+@handler.update
+def update_thing(event, context):
+ # do some stuff
+ return {"PhysicalResourceId": "arn:aws:fake:myID"}
+```
+
+## Running Tests
+
+To run the tests locally, you need Python 2.7 and `pip`. Ideally, you should
+use a virtualenv.
+
+```
+$ pip install -r test-requirements.txt
+$ py.test
+```
+
+The tests use `mock` and `py.test` and will give you a terminal coverage
+report. Currently the tests cover ~90% of the (very small) codebase.
+
+## License
+
+This code is released under the MIT software license, see LICENSE.txt for
+details. No warranty of any kind is included, and the copyright notice must be
+included in redistributions.
+
+[rsrc]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html
+[docs]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html
+[reqdocs]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/crpg-ref-requests.html
+
+
+%package help
+Summary: Development documents and examples for cfn_resource
+Provides: python3-cfn_resource-doc
+%description help
+## cfn_resource.py
+
+This project is a decorator and validation system that takes the drudgery out
+of writing custom resources. You still have access to the context and event as
+normal, but the decorator handles serializing your response and communicating
+results to CloudFormation.
+
+See [cfn-lambda](https://github.com/andrew-templeton/cfn-lambda) from Andrew
+Templeton if you're looking to write your custom resources in Node.js.
+
+## Usage
+
+1. Copy `cfn_resource.py` into the directory of your lambda function handler.py
+1. Use the `cfn_resource.Resource` event decorators to decorate your handler
+ like in `example.py`
+1. Zip up the contents and upload to Lambda
+
+Once the function is up, copy its ARN and use it as the ServiceToken for your
+[custom resource][rsrc]. For more on the requests you may receive, see
+[this document][reqdocs]
+
+```json
+{
+ "AWSTemplateFormatVersion": "2010-09-09",
+ "Resources": {
+ "FakeThing": {
+ "Type": "Custom::MyResource",
+ "Properties": {
+ "ServiceToken": "arn:aws:lambda:SOME-REGION:ACCOUNT:function:FunctionName",
+ "OtherThing": "foobar",
+ "AnotherThing": 2
+ }
+ }
+ }
+}
+```
+
+For more on how custom resources work, see the [AWS docs][docs]
+
+## Code Sample
+
+For this example, you need to have your handler in Lambda set as
+`filename.handler` where filename has the below contents.
+
+```
+import cfn_resource
+
+# set `handler` as the entry point for Lambda
+handler = cfn_resource.Resource()
+
+@handler.create
+def create_thing(event, context):
+ # do some stuff
+ return {"PhysicalResourceId": "arn:aws:fake:myID"}
+
+@handler.update
+def update_thing(event, context):
+ # do some stuff
+ return {"PhysicalResourceId": "arn:aws:fake:myID"}
+```
+
+## Running Tests
+
+To run the tests locally, you need Python 2.7 and `pip`. Ideally, you should
+use a virtualenv.
+
+```
+$ pip install -r test-requirements.txt
+$ py.test
+```
+
+The tests use `mock` and `py.test` and will give you a terminal coverage
+report. Currently the tests cover ~90% of the (very small) codebase.
+
+## License
+
+This code is released under the MIT software license, see LICENSE.txt for
+details. No warranty of any kind is included, and the copyright notice must be
+included in redistributions.
+
+[rsrc]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html
+[docs]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html
+[reqdocs]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/crpg-ref-requests.html
+
+
+%prep
+%autosetup -n cfn_resource-0.2.3
+
+%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-cfn_resource -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2.3-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..eb4e96f
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+0b9ecd61cb7592ce22658ce58c05300c cfn_resource-0.2.3.tar.gz