-
Notifications
You must be signed in to change notification settings - Fork 8
Add Search API with OpenSearch Domain and VPC Resources #1219
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
137 commits
Select commit
Hold shift + click to select a range
e968b41
Add VPC stack with tests
c7a6fd0
PR feedback
100b125
Add encryption to VPC flow logs
3d4054a
PR feedback - fix docs
f513430
Add search persistent stack with OpenSearch Domain
90b57f8
remove 'beta release' from the IT docs
6097f5c
Set explicit CIDR blocks
d72fea4
Set explicit subnet for non-prod OpenSearch domain
fad5fb0
Fix cloudwatch policy
7c6fb81
Add alarms for domain monitoring
e1bcd0e
Tweak alarms thresholds
ae50c5a
Add advanced option to prevent specifying index in queries for security
5bfbfde
Add custom resource to manage OpenSearch indices
9028af0
Add requirements for search lambda directory
56f6ff8
Add domain access policy to restrict access to lambda roles
2d066ce
formatting
8c143b4
apply vpc policy to all lambdas
f411f6d
PR feedback
a30147c
Add needed nag suppressions
7bd9344
Use custom analyzer to support ascii folding in name searches
4078df0
Add needed HEAD permission for checking if an index exists
4dc665c
Add HEAD permission to access policy for search lambda role
6a965de
PR feedback
8f79d4d
fix commment
ad4cca8
Add Search API Stack with resources
6fff21a
Formatting
91236e5
WIP - add lambda to index provider documents
fc20257
add lambda runtime logic to index provider documents
7bfafe7
PR feedback
391d57b
serialize provider documents before indexing
6ebb48d
Do not specify index in bulk index body
6eb717b
Restrict api access to search operation
e13a875
Add search api spec
c552bec
update download spec script
bf8e6da
remove lines added from merge conflict
4117c1c
update requirements to latest
98cb664
Add test coverage for search related logic
6939625
update domain engine version to latest
e6f21d5
Extract domain definition into separate construct
da4e5e2
PR feedback
a7d7b70
support pagination for large data sets
21ef219
formatting
4324249
Add retry logic to handle read timeout errors
558efa1
update doc to match current behavior
85d8a5b
Add military status fields to mapping
c34ab1b
Formatting/linter
d552e57
update dev requirement
7a3be2b
Update node dependency
f42e001
Update PR feedback
9f390df
Update engine to latest
1f49f71
Add endpoint to search privileges
31f605d
logging/formatting
5737ccf
Update purchase requirements
a23b092
Update requirements to latest
509438a
Add notes about blue/green deployments
9d3f59b
PR feedback
8e572aa
Add documentation for search functionality
ded27a0
fix snapshot for test
8997a96
update requirements to latest
64b51eb
PR feedback
7d0bf76
remove unused vars
68b4fe5
Only return matching privileges on nested searches
e403c09
formatting
65181e3
Support privilege CSV exports
0421b2a
formatting
c4f3077
update comment
74d3361
PR feedback
d2394d7
Return 404 if no matches found
2ecead7
Search for all matches within a single query
87a323e
Add export request schema
dd8f133
formatting
687a825
Add runtime auth check for search endpoints
02a1ace
set endpoints to member variables
05cd632
fix test comments
9e300b5
Increase memory size of search handler
da5c523
Add DynamoDB stream ingest handler
4cd7897
PR feedback
afbac70
correct docstring
9900d88
Handle deletion of documents if all provider records are removed from…
72588e2
add test case where document has already been deleted
d1b6acc
clarify log markers
cb2fbcd
Track ingest failures for retries
59428bc
write failures in batch
ba5b861
Retry failed ingest events
19ba6b5
Add table name env var to handler
553ce7d
reduce duplication
213333c
remove unused var
934d2af
remove documents from index on retry if provider not found
face0a3
Using event bridge pipe to process dynamodb stream
ee4e033
Remove unneeded search event state table
9f5505a
linter/logs
c5d0783
Add comments to clarify SQS retry behavior
de916a7
Reduce ingest batch size to 2000
77cac60
PR feedback - deserialize records
105dc7c
Add query definitions for ingest and search
58b4d36
Tweak ingest config based on load tests
7e2c26d
PR feedback
2f278ec
Update bootstrap stack permission boundary to allow new services
59b7266
Add opensearch service link role to bootstrap templates
5d3b007
update multi-account project requirements to latest
9ac7c16
Add additional domain config settings based on testing
a5b222d
Tweak master node instance type based on testing
899a9a2
Fix PROD index shard configuration
46f0045
Set ingest pipeline to latest starting position
eaa5406
Add upgrade strategy notes based on findings from testing
ec0d65f
PR feedback
2a86ea5
simplify check for prod env
16ac231
remove unused params
3d449e5
Check for cross-index queries
d9e4be8
remove outdated comment
dd9f7bb
Return query errors to client
d759714
Add domain health check logic to index manager to avoid timeouts
c2ad9fa
Returning specific client error message
ba3f2b8
Handling search timeouts
26c16bb
linter
6e790b1
update comments
1c863ff
Check compact fields to prevent multi-index reaching
8b582b9
Add error alarms for search and ingest
34cf9e3
Cleanup/update docs with latest information
506e042
Reduce complexity of migrations
10de04e
PR feedback
84f113e
enable search api deployment for prod
da2a72e
Instantiating opensearch client outside of lambda handler
1898a21
update requirements to latest
d9b16c6
update multi-account folder requirements to latest
0f9b1ef
update purchases folder requirements to latest
dbfb621
Add comment about purpose of logging request body
e1f6055
Initial PR feedback
62d13cb
PR feedback - redact request body in log
3f4cc88
formatting/linter
68a2b25
update purchase dev dependency
2fa4833
PR feedback - docs/comments
2987a08
PR feedback - remove unused field from test setup
1f49ca8
PR feedback - add note of race condition when indexing records
150d165
PR feedback - clarify test comment
abd1228
update other test comment
eb63ee8
filter mismatched records from search results
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| PROD_ENV_NAME = 'prod' | ||
| BETA_ENV_NAME = 'beta' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.