summaryrefslogtreecommitdiff
path: root/python-aws-cdk-aws-amplify-alpha.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-aws-cdk-aws-amplify-alpha.spec')
-rw-r--r--python-aws-cdk-aws-amplify-alpha.spec599
1 files changed, 599 insertions, 0 deletions
diff --git a/python-aws-cdk-aws-amplify-alpha.spec b/python-aws-cdk-aws-amplify-alpha.spec
new file mode 100644
index 0000000..b4338c2
--- /dev/null
+++ b/python-aws-cdk-aws-amplify-alpha.spec
@@ -0,0 +1,599 @@
+%global _empty_manifest_terminate_build 0
+Name: python-aws-cdk.aws-amplify-alpha
+Version: 2.81.0a0
+Release: 1
+Summary: The CDK Construct Library for AWS::Amplify
+License: Apache-2.0
+URL: https://github.com/aws/aws-cdk
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/0e/ab/21fc45fd4f6069975325746807a3130c0c3b96906302dd81af211d70e873/aws-cdk.aws-amplify-alpha-2.81.0a0.tar.gz
+BuildArch: noarch
+
+Requires: python3-aws-cdk-lib
+Requires: python3-constructs
+Requires: python3-jsii
+Requires: python3-publication
+Requires: python3-typeguard
+
+%description
+<!--END STABILITY BANNER-->
+The AWS Amplify Console provides a Git-based workflow for deploying and hosting fullstack serverless web applications. A fullstack serverless app consists of a backend built with cloud resources such as GraphQL or REST APIs, file and data storage, and a frontend built with single page application frameworks such as React, Angular, Vue, or Gatsby.
+## Setting up an app with branches, custom rules and a domain
+To set up an Amplify Console app, define an `App`:
+```python
+import aws_cdk.aws_codebuild as codebuild
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ build_spec=codebuild.BuildSpec.from_object_to_yaml({
+ # Alternatively add a `amplify.yml` to the repo
+ "version": "1.0",
+ "frontend": {
+ "phases": {
+ "pre_build": {
+ "commands": ["yarn"
+ ]
+ },
+ "build": {
+ "commands": ["yarn build"
+ ]
+ }
+ },
+ "artifacts": {
+ "base_directory": "public",
+ "files": -"**/*"
+ }
+ }
+ })
+)
+```
+To connect your `App` to GitLab, use the `GitLabSourceCodeProvider`:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitLabSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-gitlab-token")
+ )
+)
+```
+To connect your `App` to CodeCommit, use the `CodeCommitSourceCodeProvider`:
+```python
+import aws_cdk.aws_codecommit as codecommit
+repository = codecommit.Repository(self, "Repo",
+ repository_name="my-repo"
+)
+amplify_app = amplify.App(self, "App",
+ source_code_provider=amplify.CodeCommitSourceCodeProvider(repository=repository)
+)
+```
+The IAM role associated with the `App` will automatically be granted the permission
+to pull the CodeCommit repository.
+Add branches:
+```python
+# amplify_app: amplify.App
+main = amplify_app.add_branch("main") # `id` will be used as repo branch name
+dev = amplify_app.add_branch("dev",
+ performance_mode=True
+)
+dev.add_environment("STAGE", "dev")
+```
+Auto build and pull request preview are enabled by default.
+Add custom rules for redirection:
+```python
+# amplify_app: amplify.App
+amplify_app.add_custom_rule({
+ "source": "/docs/specific-filename.html",
+ "target": "/documents/different-filename.html",
+ "status": amplify.RedirectStatus.TEMPORARY_REDIRECT
+})
+```
+When working with a single page application (SPA), use the
+`CustomRule.SINGLE_PAGE_APPLICATION_REDIRECT` to set up a 200
+rewrite for all files to `index.html` except for the following
+file extensions: css, gif, ico, jpg, js, png, txt, svg, woff,
+ttf, map, json, webmanifest.
+```python
+# my_single_page_app: amplify.App
+my_single_page_app.add_custom_rule(amplify.CustomRule.SINGLE_PAGE_APPLICATION_REDIRECT)
+```
+Add a domain and map sub domains to branches:
+```python
+# amplify_app: amplify.App
+# main: amplify.Branch
+# dev: amplify.Branch
+domain = amplify_app.add_domain("example.com",
+ enable_auto_subdomain=True, # in case subdomains should be auto registered for branches
+ auto_subdomain_creation_patterns=["*", "pr*"]
+)
+domain.map_root(main) # map main branch to domain root
+domain.map_sub_domain(main, "www")
+domain.map_sub_domain(dev)
+```
+## Restricting access
+Password protect the app with basic auth by specifying the `basicAuth` prop.
+Use `BasicAuth.fromCredentials` when referencing an existing secret:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ basic_auth=amplify.BasicAuth.from_credentials("username", SecretValue.secrets_manager("my-github-token"))
+)
+```
+Use `BasicAuth.fromGeneratedPassword` to generate a password in Secrets Manager:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ basic_auth=amplify.BasicAuth.from_generated_password("username")
+)
+```
+Basic auth can be added to specific branches:
+```python
+# amplify_app: amplify.App
+amplify_app.add_branch("feature/next",
+ basic_auth=amplify.BasicAuth.from_generated_password("username")
+)
+```
+## Automatically creating and deleting branches
+Use the `autoBranchCreation` and `autoBranchDeletion` props to control creation/deletion
+of branches:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ auto_branch_creation=amplify.AutoBranchCreation( # Automatically connect branches that match a pattern set
+ patterns=["feature/*", "test/*"]),
+ auto_branch_deletion=True
+)
+```
+## Adding custom response headers
+Use the `customResponseHeaders` prop to configure custom response headers for an Amplify app:
+```python
+amplify_app = amplify.App(self, "App",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ custom_response_headers=[amplify.CustomResponseHeader(
+ pattern="*.json",
+ headers={
+ "custom-header-name-1": "custom-header-value-1",
+ "custom-header-name-2": "custom-header-value-2"
+ }
+ ), amplify.CustomResponseHeader(
+ pattern="/path/*",
+ headers={
+ "custom-header-name-1": "custom-header-value-2"
+ }
+ )
+ ]
+)
+```
+## Deploying Assets
+`sourceCodeProvider` is optional; when this is not specified the Amplify app can be deployed to using `.zip` packages. The `asset` property can be used to deploy S3 assets to Amplify as part of the CDK:
+```python
+import aws_cdk.aws_s3_assets as assets
+# asset: assets.Asset
+# amplify_app: amplify.App
+branch = amplify_app.add_branch("dev", asset=asset)
+```
+
+%package -n python3-aws-cdk.aws-amplify-alpha
+Summary: The CDK Construct Library for AWS::Amplify
+Provides: python-aws-cdk.aws-amplify-alpha
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-aws-cdk.aws-amplify-alpha
+<!--END STABILITY BANNER-->
+The AWS Amplify Console provides a Git-based workflow for deploying and hosting fullstack serverless web applications. A fullstack serverless app consists of a backend built with cloud resources such as GraphQL or REST APIs, file and data storage, and a frontend built with single page application frameworks such as React, Angular, Vue, or Gatsby.
+## Setting up an app with branches, custom rules and a domain
+To set up an Amplify Console app, define an `App`:
+```python
+import aws_cdk.aws_codebuild as codebuild
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ build_spec=codebuild.BuildSpec.from_object_to_yaml({
+ # Alternatively add a `amplify.yml` to the repo
+ "version": "1.0",
+ "frontend": {
+ "phases": {
+ "pre_build": {
+ "commands": ["yarn"
+ ]
+ },
+ "build": {
+ "commands": ["yarn build"
+ ]
+ }
+ },
+ "artifacts": {
+ "base_directory": "public",
+ "files": -"**/*"
+ }
+ }
+ })
+)
+```
+To connect your `App` to GitLab, use the `GitLabSourceCodeProvider`:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitLabSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-gitlab-token")
+ )
+)
+```
+To connect your `App` to CodeCommit, use the `CodeCommitSourceCodeProvider`:
+```python
+import aws_cdk.aws_codecommit as codecommit
+repository = codecommit.Repository(self, "Repo",
+ repository_name="my-repo"
+)
+amplify_app = amplify.App(self, "App",
+ source_code_provider=amplify.CodeCommitSourceCodeProvider(repository=repository)
+)
+```
+The IAM role associated with the `App` will automatically be granted the permission
+to pull the CodeCommit repository.
+Add branches:
+```python
+# amplify_app: amplify.App
+main = amplify_app.add_branch("main") # `id` will be used as repo branch name
+dev = amplify_app.add_branch("dev",
+ performance_mode=True
+)
+dev.add_environment("STAGE", "dev")
+```
+Auto build and pull request preview are enabled by default.
+Add custom rules for redirection:
+```python
+# amplify_app: amplify.App
+amplify_app.add_custom_rule({
+ "source": "/docs/specific-filename.html",
+ "target": "/documents/different-filename.html",
+ "status": amplify.RedirectStatus.TEMPORARY_REDIRECT
+})
+```
+When working with a single page application (SPA), use the
+`CustomRule.SINGLE_PAGE_APPLICATION_REDIRECT` to set up a 200
+rewrite for all files to `index.html` except for the following
+file extensions: css, gif, ico, jpg, js, png, txt, svg, woff,
+ttf, map, json, webmanifest.
+```python
+# my_single_page_app: amplify.App
+my_single_page_app.add_custom_rule(amplify.CustomRule.SINGLE_PAGE_APPLICATION_REDIRECT)
+```
+Add a domain and map sub domains to branches:
+```python
+# amplify_app: amplify.App
+# main: amplify.Branch
+# dev: amplify.Branch
+domain = amplify_app.add_domain("example.com",
+ enable_auto_subdomain=True, # in case subdomains should be auto registered for branches
+ auto_subdomain_creation_patterns=["*", "pr*"]
+)
+domain.map_root(main) # map main branch to domain root
+domain.map_sub_domain(main, "www")
+domain.map_sub_domain(dev)
+```
+## Restricting access
+Password protect the app with basic auth by specifying the `basicAuth` prop.
+Use `BasicAuth.fromCredentials` when referencing an existing secret:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ basic_auth=amplify.BasicAuth.from_credentials("username", SecretValue.secrets_manager("my-github-token"))
+)
+```
+Use `BasicAuth.fromGeneratedPassword` to generate a password in Secrets Manager:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ basic_auth=amplify.BasicAuth.from_generated_password("username")
+)
+```
+Basic auth can be added to specific branches:
+```python
+# amplify_app: amplify.App
+amplify_app.add_branch("feature/next",
+ basic_auth=amplify.BasicAuth.from_generated_password("username")
+)
+```
+## Automatically creating and deleting branches
+Use the `autoBranchCreation` and `autoBranchDeletion` props to control creation/deletion
+of branches:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ auto_branch_creation=amplify.AutoBranchCreation( # Automatically connect branches that match a pattern set
+ patterns=["feature/*", "test/*"]),
+ auto_branch_deletion=True
+)
+```
+## Adding custom response headers
+Use the `customResponseHeaders` prop to configure custom response headers for an Amplify app:
+```python
+amplify_app = amplify.App(self, "App",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ custom_response_headers=[amplify.CustomResponseHeader(
+ pattern="*.json",
+ headers={
+ "custom-header-name-1": "custom-header-value-1",
+ "custom-header-name-2": "custom-header-value-2"
+ }
+ ), amplify.CustomResponseHeader(
+ pattern="/path/*",
+ headers={
+ "custom-header-name-1": "custom-header-value-2"
+ }
+ )
+ ]
+)
+```
+## Deploying Assets
+`sourceCodeProvider` is optional; when this is not specified the Amplify app can be deployed to using `.zip` packages. The `asset` property can be used to deploy S3 assets to Amplify as part of the CDK:
+```python
+import aws_cdk.aws_s3_assets as assets
+# asset: assets.Asset
+# amplify_app: amplify.App
+branch = amplify_app.add_branch("dev", asset=asset)
+```
+
+%package help
+Summary: Development documents and examples for aws-cdk.aws-amplify-alpha
+Provides: python3-aws-cdk.aws-amplify-alpha-doc
+%description help
+<!--END STABILITY BANNER-->
+The AWS Amplify Console provides a Git-based workflow for deploying and hosting fullstack serverless web applications. A fullstack serverless app consists of a backend built with cloud resources such as GraphQL or REST APIs, file and data storage, and a frontend built with single page application frameworks such as React, Angular, Vue, or Gatsby.
+## Setting up an app with branches, custom rules and a domain
+To set up an Amplify Console app, define an `App`:
+```python
+import aws_cdk.aws_codebuild as codebuild
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ build_spec=codebuild.BuildSpec.from_object_to_yaml({
+ # Alternatively add a `amplify.yml` to the repo
+ "version": "1.0",
+ "frontend": {
+ "phases": {
+ "pre_build": {
+ "commands": ["yarn"
+ ]
+ },
+ "build": {
+ "commands": ["yarn build"
+ ]
+ }
+ },
+ "artifacts": {
+ "base_directory": "public",
+ "files": -"**/*"
+ }
+ }
+ })
+)
+```
+To connect your `App` to GitLab, use the `GitLabSourceCodeProvider`:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitLabSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-gitlab-token")
+ )
+)
+```
+To connect your `App` to CodeCommit, use the `CodeCommitSourceCodeProvider`:
+```python
+import aws_cdk.aws_codecommit as codecommit
+repository = codecommit.Repository(self, "Repo",
+ repository_name="my-repo"
+)
+amplify_app = amplify.App(self, "App",
+ source_code_provider=amplify.CodeCommitSourceCodeProvider(repository=repository)
+)
+```
+The IAM role associated with the `App` will automatically be granted the permission
+to pull the CodeCommit repository.
+Add branches:
+```python
+# amplify_app: amplify.App
+main = amplify_app.add_branch("main") # `id` will be used as repo branch name
+dev = amplify_app.add_branch("dev",
+ performance_mode=True
+)
+dev.add_environment("STAGE", "dev")
+```
+Auto build and pull request preview are enabled by default.
+Add custom rules for redirection:
+```python
+# amplify_app: amplify.App
+amplify_app.add_custom_rule({
+ "source": "/docs/specific-filename.html",
+ "target": "/documents/different-filename.html",
+ "status": amplify.RedirectStatus.TEMPORARY_REDIRECT
+})
+```
+When working with a single page application (SPA), use the
+`CustomRule.SINGLE_PAGE_APPLICATION_REDIRECT` to set up a 200
+rewrite for all files to `index.html` except for the following
+file extensions: css, gif, ico, jpg, js, png, txt, svg, woff,
+ttf, map, json, webmanifest.
+```python
+# my_single_page_app: amplify.App
+my_single_page_app.add_custom_rule(amplify.CustomRule.SINGLE_PAGE_APPLICATION_REDIRECT)
+```
+Add a domain and map sub domains to branches:
+```python
+# amplify_app: amplify.App
+# main: amplify.Branch
+# dev: amplify.Branch
+domain = amplify_app.add_domain("example.com",
+ enable_auto_subdomain=True, # in case subdomains should be auto registered for branches
+ auto_subdomain_creation_patterns=["*", "pr*"]
+)
+domain.map_root(main) # map main branch to domain root
+domain.map_sub_domain(main, "www")
+domain.map_sub_domain(dev)
+```
+## Restricting access
+Password protect the app with basic auth by specifying the `basicAuth` prop.
+Use `BasicAuth.fromCredentials` when referencing an existing secret:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ basic_auth=amplify.BasicAuth.from_credentials("username", SecretValue.secrets_manager("my-github-token"))
+)
+```
+Use `BasicAuth.fromGeneratedPassword` to generate a password in Secrets Manager:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ basic_auth=amplify.BasicAuth.from_generated_password("username")
+)
+```
+Basic auth can be added to specific branches:
+```python
+# amplify_app: amplify.App
+amplify_app.add_branch("feature/next",
+ basic_auth=amplify.BasicAuth.from_generated_password("username")
+)
+```
+## Automatically creating and deleting branches
+Use the `autoBranchCreation` and `autoBranchDeletion` props to control creation/deletion
+of branches:
+```python
+amplify_app = amplify.App(self, "MyApp",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ auto_branch_creation=amplify.AutoBranchCreation( # Automatically connect branches that match a pattern set
+ patterns=["feature/*", "test/*"]),
+ auto_branch_deletion=True
+)
+```
+## Adding custom response headers
+Use the `customResponseHeaders` prop to configure custom response headers for an Amplify app:
+```python
+amplify_app = amplify.App(self, "App",
+ source_code_provider=amplify.GitHubSourceCodeProvider(
+ owner="<user>",
+ repository="<repo>",
+ oauth_token=SecretValue.secrets_manager("my-github-token")
+ ),
+ custom_response_headers=[amplify.CustomResponseHeader(
+ pattern="*.json",
+ headers={
+ "custom-header-name-1": "custom-header-value-1",
+ "custom-header-name-2": "custom-header-value-2"
+ }
+ ), amplify.CustomResponseHeader(
+ pattern="/path/*",
+ headers={
+ "custom-header-name-1": "custom-header-value-2"
+ }
+ )
+ ]
+)
+```
+## Deploying Assets
+`sourceCodeProvider` is optional; when this is not specified the Amplify app can be deployed to using `.zip` packages. The `asset` property can be used to deploy S3 assets to Amplify as part of the CDK:
+```python
+import aws_cdk.aws_s3_assets as assets
+# asset: assets.Asset
+# amplify_app: amplify.App
+branch = amplify_app.add_branch("dev", asset=asset)
+```
+
+%prep
+%autosetup -n aws-cdk.aws-amplify-alpha-2.81.0a0
+
+%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-cdk.aws-amplify-alpha -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 31 2023 Python_Bot <Python_Bot@openeuler.org> - 2.81.0a0-1
+- Package Spec generated