Skip to content

Commit ebd1bf8

Browse files
committed
feat(firehose): flutter package (#6872)
* feat(firehose): add amplify_firehose Flutter wrapper package - AmplifyFirehoseClient Flutter wrapper that resolves storage path via path_provider automatically - Platform-conditional path provider (IO/web/stub) - Re-exports all types from amplify_firehose_dart except the Dart client - Mirrors amplify_kinesis Flutter wrapper structure * chore: remove accidentally committed flutter crash log * chore(firehose): add CHANGELOG, LICENSE, and README to Flutter wrapper * feat(firehose): add integration test infrastructure and example app - CDK backend (infra-gen2/backends/kinesis/firehose/) with Firehose delivery stream to S3, auth with email sign-in, IAM permissions for PutRecord/PutRecordBatch - Register firehose backend in deploy_gen2.dart - Example Flutter app with Amplify Auth + Firehose client demo - Integration tests: record/flush happy path, cache behavior, batch records, client lifecycle - Setup utils with AmplifyAuthCredentialsProvider - pull_test_backend.sh for CI config download Note: Backend needs to be deployed and S3 bucket configured before CI can run integration tests. * chore: regenerate workflows for firehose packages via aft generate workflows Adds amplify_firehose.yaml, amplify_firehose_example.yaml workflows and updates amplify_firehose_dart.yaml with native test job and shared package path triggers. Note: dependabot.yaml changes from aft excluded (repo-wide regen). * chore: split Firehose into own deploy category and add backend scaffolding - Move firehose backend from Kinesis category to its own Firehose category in deploy_gen2.dart so it deploys independently without touching the released KDS backend. - Add missing npm scaffolding files (package.json, tsconfig.json, .gitignore) for the firehose backend. - Update pull_test_backend.sh to use AFS_FIREHOSE_GEN2_BUCKET_NAME. - Simplify setup_utils to use amplifyConfig directly (no amplifyEnvironments needed with dedicated category). * fix: add network client entitlement for macOS integration tests * test(firehose): port full integration test suite from KDS Add all test cases from the KDS integration tests, adapted for Firehose (no partition key, 4 MiB batch limit, 1000 KiB record limit): - Core happy path (record+flush, empty flush, disabled drops, enable/ disable lifecycle, concurrent flush) - Cache behavior (limit exceeded, clear cache) - Error paths (nonexistent stream, invalid credentials, oversized record) - Retry exhaustion (invalid stream dropped after maxRetries) - Stress tests (high volume, repeated cycles, concurrent producers) - Auto-flush (scheduler auto-starts, drains on interval) - PutRecordBatch size limits (payload exceeding batch limit) - Persistence (records survive across client instances) - Escape hatch (SDK client accessible) - Client lifecycle (close prevents operations) * fix: suppress useDataProtection warning in example app for CI * chore: format setup_utils.dart * debug: add --debug flag to pull_test_backend.sh to diagnose S3 403 * revert: remove --debug flag from pull_test_backend.sh * fix: add test_driver for web integration tests * chore: add platform runners for all target platforms Add android, ios, linux, macos, web, and windows platform directories generated by flutter create. These are required for CI integration tests to run on each platform. * chore: bump amplify_firehose version to 2.11.0 to align with release train
1 parent 0a6b282 commit ebd1bf8

File tree

157 files changed

+6552
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

157 files changed

+6552
-0
lines changed
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# Generated with aft. To update, run: `aft generate workflows`
2+
name: amplify_firehose
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- stable
8+
paths:
9+
- '.github/workflows/amplify_firehose.yaml'
10+
- '.github/workflows/flutter_vm.yaml'
11+
- 'packages/amplify_core/lib/**/*.dart'
12+
- 'packages/amplify_core/pubspec.yaml'
13+
- 'packages/amplify_foundation/amplify_foundation_dart/lib/**/*.dart'
14+
- 'packages/amplify_foundation/amplify_foundation_dart/pubspec.yaml'
15+
- 'packages/amplify_foundation/amplify_foundation_dart_bridge/lib/**/*.dart'
16+
- 'packages/amplify_foundation/amplify_foundation_dart_bridge/pubspec.yaml'
17+
- 'packages/amplify_lints/lib/**/*.yaml'
18+
- 'packages/amplify_lints/pubspec.yaml'
19+
- 'packages/aws_common/lib/**/*.dart'
20+
- 'packages/aws_common/pubspec.yaml'
21+
- 'packages/aws_signature_v4/lib/**/*.dart'
22+
- 'packages/aws_signature_v4/pubspec.yaml'
23+
- 'packages/common/amplify_db_common_dart/lib/**/*.dart'
24+
- 'packages/common/amplify_db_common_dart/pubspec.yaml'
25+
- 'packages/kinesis/amplify_firehose/**/*.dart'
26+
- 'packages/kinesis/amplify_firehose/**/*.yaml'
27+
- 'packages/kinesis/amplify_firehose/lib/**/*'
28+
- 'packages/kinesis/amplify_firehose/test/**/*'
29+
- 'packages/kinesis/amplify_firehose_dart/lib/**/*.dart'
30+
- 'packages/kinesis/amplify_firehose_dart/pubspec.yaml'
31+
- 'packages/kinesis/amplify_record_cache_dart/lib/**/*.dart'
32+
- 'packages/kinesis/amplify_record_cache_dart/pubspec.yaml'
33+
- 'packages/smithy/smithy/lib/**/*.dart'
34+
- 'packages/smithy/smithy/pubspec.yaml'
35+
- 'packages/smithy/smithy_aws/lib/**/*.dart'
36+
- 'packages/smithy/smithy_aws/pubspec.yaml'
37+
pull_request:
38+
paths:
39+
- '.github/workflows/amplify_firehose.yaml'
40+
- '.github/workflows/flutter_vm.yaml'
41+
- 'packages/amplify_core/lib/**/*.dart'
42+
- 'packages/amplify_core/pubspec.yaml'
43+
- 'packages/amplify_foundation/amplify_foundation_dart/lib/**/*.dart'
44+
- 'packages/amplify_foundation/amplify_foundation_dart/pubspec.yaml'
45+
- 'packages/amplify_foundation/amplify_foundation_dart_bridge/lib/**/*.dart'
46+
- 'packages/amplify_foundation/amplify_foundation_dart_bridge/pubspec.yaml'
47+
- 'packages/amplify_lints/lib/**/*.yaml'
48+
- 'packages/amplify_lints/pubspec.yaml'
49+
- 'packages/aws_common/lib/**/*.dart'
50+
- 'packages/aws_common/pubspec.yaml'
51+
- 'packages/aws_signature_v4/lib/**/*.dart'
52+
- 'packages/aws_signature_v4/pubspec.yaml'
53+
- 'packages/common/amplify_db_common_dart/lib/**/*.dart'
54+
- 'packages/common/amplify_db_common_dart/pubspec.yaml'
55+
- 'packages/kinesis/amplify_firehose/**/*.dart'
56+
- 'packages/kinesis/amplify_firehose/**/*.yaml'
57+
- 'packages/kinesis/amplify_firehose/lib/**/*'
58+
- 'packages/kinesis/amplify_firehose/test/**/*'
59+
- 'packages/kinesis/amplify_firehose_dart/lib/**/*.dart'
60+
- 'packages/kinesis/amplify_firehose_dart/pubspec.yaml'
61+
- 'packages/kinesis/amplify_record_cache_dart/lib/**/*.dart'
62+
- 'packages/kinesis/amplify_record_cache_dart/pubspec.yaml'
63+
- 'packages/smithy/smithy/lib/**/*.dart'
64+
- 'packages/smithy/smithy/pubspec.yaml'
65+
- 'packages/smithy/smithy_aws/lib/**/*.dart'
66+
- 'packages/smithy/smithy_aws/pubspec.yaml'
67+
schedule:
68+
- cron: "0 13 * * 1" # Every Monday at 06:00 PST
69+
workflow_dispatch:
70+
defaults:
71+
run:
72+
shell: bash
73+
74+
# These permissions are needed to interact with GitHub's OIDC Token endpoint.
75+
permissions:
76+
id-token: write
77+
contents: read
78+
79+
# Cancels in-progress job when there is another push to same ref.
80+
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-only-cancel-in-progress-jobs-or-runs-for-the-current-workflow
81+
concurrency:
82+
group: ${{ github.workflow }}-${{ github.ref }}
83+
cancel-in-progress: true
84+
85+
jobs:
86+
test:
87+
uses: ./.github/workflows/flutter_vm.yaml
88+
secrets: inherit
89+
with:
90+
package-name: amplify_firehose
91+
working-directory: packages/kinesis/amplify_firehose
92+
has-goldens: false

.github/workflows/amplify_firehose_dart.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ on:
77
- stable
88
paths:
99
- '.github/workflows/amplify_firehose_dart.yaml'
10+
- '.github/workflows/dart_native.yaml'
1011
- '.github/workflows/dart_vm.yaml'
1112
- 'packages/amplify_core/lib/**/*.dart'
1213
- 'packages/amplify_core/pubspec.yaml'
@@ -26,13 +27,16 @@ on:
2627
- 'packages/kinesis/amplify_firehose_dart/**/*.yaml'
2728
- 'packages/kinesis/amplify_firehose_dart/lib/**/*'
2829
- 'packages/kinesis/amplify_firehose_dart/test/**/*'
30+
- 'packages/kinesis/amplify_record_cache_dart/lib/**/*.dart'
31+
- 'packages/kinesis/amplify_record_cache_dart/pubspec.yaml'
2932
- 'packages/smithy/smithy/lib/**/*.dart'
3033
- 'packages/smithy/smithy/pubspec.yaml'
3134
- 'packages/smithy/smithy_aws/lib/**/*.dart'
3235
- 'packages/smithy/smithy_aws/pubspec.yaml'
3336
pull_request:
3437
paths:
3538
- '.github/workflows/amplify_firehose_dart.yaml'
39+
- '.github/workflows/dart_native.yaml'
3640
- '.github/workflows/dart_vm.yaml'
3741
- 'packages/amplify_core/lib/**/*.dart'
3842
- 'packages/amplify_core/pubspec.yaml'
@@ -52,6 +56,8 @@ on:
5256
- 'packages/kinesis/amplify_firehose_dart/**/*.yaml'
5357
- 'packages/kinesis/amplify_firehose_dart/lib/**/*'
5458
- 'packages/kinesis/amplify_firehose_dart/test/**/*'
59+
- 'packages/kinesis/amplify_record_cache_dart/lib/**/*.dart'
60+
- 'packages/kinesis/amplify_record_cache_dart/pubspec.yaml'
5561
- 'packages/smithy/smithy/lib/**/*.dart'
5662
- 'packages/smithy/smithy/pubspec.yaml'
5763
- 'packages/smithy/smithy_aws/lib/**/*.dart'
@@ -81,3 +87,10 @@ jobs:
8187
with:
8288
package-name: amplify_firehose_dart
8389
working-directory: packages/kinesis/amplify_firehose_dart
90+
native_test:
91+
needs: test
92+
uses: ./.github/workflows/dart_native.yaml
93+
secrets: inherit
94+
with:
95+
package-name: amplify_firehose_dart
96+
working-directory: packages/kinesis/amplify_firehose_dart
Lines changed: 216 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,216 @@
1+
# Generated with aft. To update, run: `aft generate workflows`
2+
name: amplify_firehose_example
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- stable
8+
paths:
9+
- '.github/workflows/amplify_firehose_example.yaml'
10+
- '.github/workflows/e2e_android.yaml'
11+
- '.github/workflows/e2e_ios.yaml'
12+
- '.github/workflows/e2e_linux.yaml'
13+
- '.github/workflows/e2e_web.yaml'
14+
- '.github/workflows/e2e_windows.yaml'
15+
- '.github/workflows/flutter_vm.yaml'
16+
- 'packages/amplify/amplify_flutter/lib/**/*.dart'
17+
- 'packages/amplify/amplify_flutter/pubspec.yaml'
18+
- 'packages/amplify_core/lib/**/*.dart'
19+
- 'packages/amplify_core/pubspec.yaml'
20+
- 'packages/amplify_foundation/amplify_foundation_dart/lib/**/*.dart'
21+
- 'packages/amplify_foundation/amplify_foundation_dart/pubspec.yaml'
22+
- 'packages/amplify_foundation/amplify_foundation_dart_bridge/lib/**/*.dart'
23+
- 'packages/amplify_foundation/amplify_foundation_dart_bridge/pubspec.yaml'
24+
- 'packages/amplify_lints/lib/**/*.yaml'
25+
- 'packages/amplify_lints/pubspec.yaml'
26+
- 'packages/analytics/amplify_analytics_pinpoint/android/**/*'
27+
- 'packages/analytics/amplify_analytics_pinpoint/lib/**/*.dart'
28+
- 'packages/analytics/amplify_analytics_pinpoint/pubspec.yaml'
29+
- 'packages/analytics/amplify_analytics_pinpoint_dart/lib/**/*.dart'
30+
- 'packages/analytics/amplify_analytics_pinpoint_dart/pubspec.yaml'
31+
- 'packages/auth/amplify_auth_cognito/android/**/*'
32+
- 'packages/auth/amplify_auth_cognito/darwin/**/*'
33+
- 'packages/auth/amplify_auth_cognito/lib/**/*.dart'
34+
- 'packages/auth/amplify_auth_cognito/pubspec.yaml'
35+
- 'packages/auth/amplify_auth_cognito_dart/lib/**/*.dart'
36+
- 'packages/auth/amplify_auth_cognito_dart/pubspec.yaml'
37+
- 'packages/authenticator/amplify_authenticator/lib/**/*.dart'
38+
- 'packages/authenticator/amplify_authenticator/pubspec.yaml'
39+
- 'packages/aws_common/lib/**/*.dart'
40+
- 'packages/aws_common/pubspec.yaml'
41+
- 'packages/aws_signature_v4/lib/**/*.dart'
42+
- 'packages/aws_signature_v4/pubspec.yaml'
43+
- 'packages/common/amplify_db_common/android/**/*'
44+
- 'packages/common/amplify_db_common/ios/**/*'
45+
- 'packages/common/amplify_db_common/lib/**/*.dart'
46+
- 'packages/common/amplify_db_common/linux/**/*'
47+
- 'packages/common/amplify_db_common/macos/**/*'
48+
- 'packages/common/amplify_db_common/pubspec.yaml'
49+
- 'packages/common/amplify_db_common/windows/**/*'
50+
- 'packages/common/amplify_db_common_dart/lib/**/*.dart'
51+
- 'packages/common/amplify_db_common_dart/pubspec.yaml'
52+
- 'packages/kinesis/amplify_firehose/example/**/*.dart'
53+
- 'packages/kinesis/amplify_firehose/example/**/*.yaml'
54+
- 'packages/kinesis/amplify_firehose/example/lib/**/*'
55+
- 'packages/kinesis/amplify_firehose/example/test/**/*'
56+
- 'packages/kinesis/amplify_firehose/lib/**/*.dart'
57+
- 'packages/kinesis/amplify_firehose/pubspec.yaml'
58+
- 'packages/kinesis/amplify_firehose_dart/lib/**/*.dart'
59+
- 'packages/kinesis/amplify_firehose_dart/pubspec.yaml'
60+
- 'packages/kinesis/amplify_record_cache_dart/lib/**/*.dart'
61+
- 'packages/kinesis/amplify_record_cache_dart/pubspec.yaml'
62+
- 'packages/secure_storage/amplify_secure_storage/android/**/*'
63+
- 'packages/secure_storage/amplify_secure_storage/ios/**/*'
64+
- 'packages/secure_storage/amplify_secure_storage/lib/**/*.dart'
65+
- 'packages/secure_storage/amplify_secure_storage/macos/**/*'
66+
- 'packages/secure_storage/amplify_secure_storage/pubspec.yaml'
67+
- 'packages/secure_storage/amplify_secure_storage_dart/lib/**/*.dart'
68+
- 'packages/secure_storage/amplify_secure_storage_dart/pubspec.yaml'
69+
- 'packages/smithy/smithy/lib/**/*.dart'
70+
- 'packages/smithy/smithy/pubspec.yaml'
71+
- 'packages/smithy/smithy_aws/lib/**/*.dart'
72+
- 'packages/smithy/smithy_aws/pubspec.yaml'
73+
- 'packages/smithy/smithy_codegen/lib/**/*.dart'
74+
- 'packages/smithy/smithy_codegen/pubspec.yaml'
75+
- 'packages/worker_bee/worker_bee/lib/**/*.dart'
76+
- 'packages/worker_bee/worker_bee/pubspec.yaml'
77+
- 'packages/worker_bee/worker_bee_builder/lib/**/*.dart'
78+
- 'packages/worker_bee/worker_bee_builder/pubspec.yaml'
79+
pull_request:
80+
paths:
81+
- '.github/workflows/amplify_firehose_example.yaml'
82+
- '.github/workflows/e2e_android.yaml'
83+
- '.github/workflows/e2e_ios.yaml'
84+
- '.github/workflows/e2e_linux.yaml'
85+
- '.github/workflows/e2e_web.yaml'
86+
- '.github/workflows/e2e_windows.yaml'
87+
- '.github/workflows/flutter_vm.yaml'
88+
- 'packages/amplify/amplify_flutter/lib/**/*.dart'
89+
- 'packages/amplify/amplify_flutter/pubspec.yaml'
90+
- 'packages/amplify_core/lib/**/*.dart'
91+
- 'packages/amplify_core/pubspec.yaml'
92+
- 'packages/amplify_foundation/amplify_foundation_dart/lib/**/*.dart'
93+
- 'packages/amplify_foundation/amplify_foundation_dart/pubspec.yaml'
94+
- 'packages/amplify_foundation/amplify_foundation_dart_bridge/lib/**/*.dart'
95+
- 'packages/amplify_foundation/amplify_foundation_dart_bridge/pubspec.yaml'
96+
- 'packages/amplify_lints/lib/**/*.yaml'
97+
- 'packages/amplify_lints/pubspec.yaml'
98+
- 'packages/analytics/amplify_analytics_pinpoint/android/**/*'
99+
- 'packages/analytics/amplify_analytics_pinpoint/lib/**/*.dart'
100+
- 'packages/analytics/amplify_analytics_pinpoint/pubspec.yaml'
101+
- 'packages/analytics/amplify_analytics_pinpoint_dart/lib/**/*.dart'
102+
- 'packages/analytics/amplify_analytics_pinpoint_dart/pubspec.yaml'
103+
- 'packages/auth/amplify_auth_cognito/android/**/*'
104+
- 'packages/auth/amplify_auth_cognito/darwin/**/*'
105+
- 'packages/auth/amplify_auth_cognito/lib/**/*.dart'
106+
- 'packages/auth/amplify_auth_cognito/pubspec.yaml'
107+
- 'packages/auth/amplify_auth_cognito_dart/lib/**/*.dart'
108+
- 'packages/auth/amplify_auth_cognito_dart/pubspec.yaml'
109+
- 'packages/authenticator/amplify_authenticator/lib/**/*.dart'
110+
- 'packages/authenticator/amplify_authenticator/pubspec.yaml'
111+
- 'packages/aws_common/lib/**/*.dart'
112+
- 'packages/aws_common/pubspec.yaml'
113+
- 'packages/aws_signature_v4/lib/**/*.dart'
114+
- 'packages/aws_signature_v4/pubspec.yaml'
115+
- 'packages/common/amplify_db_common/android/**/*'
116+
- 'packages/common/amplify_db_common/ios/**/*'
117+
- 'packages/common/amplify_db_common/lib/**/*.dart'
118+
- 'packages/common/amplify_db_common/linux/**/*'
119+
- 'packages/common/amplify_db_common/macos/**/*'
120+
- 'packages/common/amplify_db_common/pubspec.yaml'
121+
- 'packages/common/amplify_db_common/windows/**/*'
122+
- 'packages/common/amplify_db_common_dart/lib/**/*.dart'
123+
- 'packages/common/amplify_db_common_dart/pubspec.yaml'
124+
- 'packages/kinesis/amplify_firehose/example/**/*.dart'
125+
- 'packages/kinesis/amplify_firehose/example/**/*.yaml'
126+
- 'packages/kinesis/amplify_firehose/example/lib/**/*'
127+
- 'packages/kinesis/amplify_firehose/example/test/**/*'
128+
- 'packages/kinesis/amplify_firehose/lib/**/*.dart'
129+
- 'packages/kinesis/amplify_firehose/pubspec.yaml'
130+
- 'packages/kinesis/amplify_firehose_dart/lib/**/*.dart'
131+
- 'packages/kinesis/amplify_firehose_dart/pubspec.yaml'
132+
- 'packages/kinesis/amplify_record_cache_dart/lib/**/*.dart'
133+
- 'packages/kinesis/amplify_record_cache_dart/pubspec.yaml'
134+
- 'packages/secure_storage/amplify_secure_storage/android/**/*'
135+
- 'packages/secure_storage/amplify_secure_storage/ios/**/*'
136+
- 'packages/secure_storage/amplify_secure_storage/lib/**/*.dart'
137+
- 'packages/secure_storage/amplify_secure_storage/macos/**/*'
138+
- 'packages/secure_storage/amplify_secure_storage/pubspec.yaml'
139+
- 'packages/secure_storage/amplify_secure_storage_dart/lib/**/*.dart'
140+
- 'packages/secure_storage/amplify_secure_storage_dart/pubspec.yaml'
141+
- 'packages/smithy/smithy/lib/**/*.dart'
142+
- 'packages/smithy/smithy/pubspec.yaml'
143+
- 'packages/smithy/smithy_aws/lib/**/*.dart'
144+
- 'packages/smithy/smithy_aws/pubspec.yaml'
145+
- 'packages/smithy/smithy_codegen/lib/**/*.dart'
146+
- 'packages/smithy/smithy_codegen/pubspec.yaml'
147+
- 'packages/worker_bee/worker_bee/lib/**/*.dart'
148+
- 'packages/worker_bee/worker_bee/pubspec.yaml'
149+
- 'packages/worker_bee/worker_bee_builder/lib/**/*.dart'
150+
- 'packages/worker_bee/worker_bee_builder/pubspec.yaml'
151+
schedule:
152+
- cron: "0 13 * * 1" # Every Monday at 06:00 PST
153+
workflow_dispatch:
154+
defaults:
155+
run:
156+
shell: bash
157+
158+
# These permissions are needed to interact with GitHub's OIDC Token endpoint.
159+
permissions:
160+
id-token: write
161+
contents: read
162+
163+
# Cancels in-progress job when there is another push to same ref.
164+
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-only-cancel-in-progress-jobs-or-runs-for-the-current-workflow
165+
concurrency:
166+
group: ${{ github.workflow }}-${{ github.ref }}
167+
cancel-in-progress: true
168+
169+
jobs:
170+
test:
171+
uses: ./.github/workflows/flutter_vm.yaml
172+
secrets: inherit
173+
with:
174+
package-name: amplify_firehose_example
175+
working-directory: packages/kinesis/amplify_firehose/example
176+
has-goldens: false
177+
e2e_android_test:
178+
needs: [test]
179+
uses: ./.github/workflows/e2e_android.yaml
180+
secrets: inherit
181+
with:
182+
package-name: amplify_firehose_example
183+
working-directory: packages/kinesis/amplify_firehose/example
184+
needs-aws-config: true
185+
e2e_ios_test:
186+
needs: [test]
187+
uses: ./.github/workflows/e2e_ios.yaml
188+
secrets: inherit
189+
with:
190+
package-name: amplify_firehose_example
191+
working-directory: packages/kinesis/amplify_firehose/example
192+
needs-aws-config: true
193+
e2e_web_test:
194+
needs: [test]
195+
uses: ./.github/workflows/e2e_web.yaml
196+
secrets: inherit
197+
with:
198+
package-name: amplify_firehose_example
199+
working-directory: packages/kinesis/amplify_firehose/example
200+
needs-aws-config: true
201+
e2e_linux_test:
202+
needs: [test]
203+
uses: ./.github/workflows/e2e_linux.yaml
204+
secrets: inherit
205+
with:
206+
package-name: amplify_firehose_example
207+
working-directory: packages/kinesis/amplify_firehose/example
208+
needs-aws-config: true
209+
e2e_windows_test:
210+
needs: [test]
211+
uses: ./.github/workflows/e2e_windows.yaml
212+
secrets: inherit
213+
with:
214+
package-name: amplify_firehose_example
215+
working-directory: packages/kinesis/amplify_firehose/example
216+
needs-aws-config: true
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# amplify
2+
node_modules
3+
.amplify
4+
amplify_outputs*
5+
amplifyconfiguration*
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import { PreSignUpTriggerHandler } from "aws-lambda";
2+
import { preSignUpTriggerHandler } from "infra-common";
3+
4+
export const handler: PreSignUpTriggerHandler = preSignUpTriggerHandler;
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import { defineAuth, defineFunction } from "@aws-amplify/backend";
2+
3+
export const preSignUp = defineFunction({
4+
name: "pre-sign-up",
5+
entry: "./pre-sign-up-handler.ts",
6+
});
7+
8+
export const auth = defineAuth({
9+
loginWith: {
10+
email: true,
11+
},
12+
triggers: {
13+
preSignUp,
14+
},
15+
});

0 commit comments

Comments
 (0)