Skip to content
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

BCDA-7900: Add integration test validation for opt-out import #963

Merged
merged 53 commits into from
Jul 10, 2024
Merged
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
7c188d7
update lambda integration test to verify file ingestion
laurenkrugen-navapbc Jun 24, 2024
a75f2ae
updating filename var
laurenkrugen-navapbc Jun 25, 2024
c2c729b
update output syntax
laurenkrugen-navapbc Jun 25, 2024
c771940
missing region var
laurenkrugen-navapbc Jun 25, 2024
a5df812
install postgres client
laurenkrugen-navapbc Jun 25, 2024
1e5f760
switch to yum since using AL2 for runner
laurenkrugen-navapbc Jun 25, 2024
3817cd2
pass user interaction for yum
laurenkrugen-navapbc Jun 25, 2024
b1deae0
pass user interaction for yum again
laurenkrugen-navapbc Jun 25, 2024
955fc41
fix postgres client package name
laurenkrugen-navapbc Jun 25, 2024
9db30f4
install from amazon extras
laurenkrugen-navapbc Jun 25, 2024
1dd0f33
testing database script: not happy path 1st query
laurenkrugen-navapbc Jul 1, 2024
6a19930
sed missing closing slash
laurenkrugen-navapbc Jul 1, 2024
890f907
sanity check
laurenkrugen-navapbc Jul 1, 2024
bda1c04
happy path to unhappy path
laurenkrugen-navapbc Jul 1, 2024
bfd1d87
wrap up conditional
laurenkrugen-navapbc Jul 1, 2024
9e1bc0b
test
laurenkrugen-navapbc Jul 1, 2024
1d0b5ca
Merge branch 'main' into lauren/BCDA-7900
laurenkrugen-navapbc Jul 1, 2024
f955103
testing full script
laurenkrugen-navapbc Jul 1, 2024
f8e2362
get aws region
laurenkrugen-navapbc Jul 2, 2024
187c911
aws role
laurenkrugen-navapbc Jul 2, 2024
e421be8
github actions v4 failing
laurenkrugen-navapbc Jul 2, 2024
791d52f
downgrade actions version
laurenkrugen-navapbc Jul 2, 2024
d93326b
update workflow host
laurenkrugen-navapbc Jul 2, 2024
73d2d53
remove role
laurenkrugen-navapbc Jul 2, 2024
73aad29
update aws region name
laurenkrugen-navapbc Jul 2, 2024
b16e5d5
update psql installation for unbuntu instead of Amazon linux
laurenkrugen-navapbc Jul 2, 2024
59e8a93
uppercase aws region
laurenkrugen-navapbc Jul 2, 2024
dd845a1
revert to self-hosted
laurenkrugen-navapbc Jul 2, 2024
05b5c47
add role back in
laurenkrugen-navapbc Jul 2, 2024
1ae1077
action version
laurenkrugen-navapbc Jul 2, 2024
47aced4
config aws version
laurenkrugen-navapbc Jul 2, 2024
e068e55
try without configured role
laurenkrugen-navapbc Jul 2, 2024
26f64b0
attempt describe in previous step
laurenkrugen-navapbc Jul 3, 2024
483f89e
test
laurenkrugen-navapbc Jul 3, 2024
3755bea
testing
laurenkrugen-navapbc Jul 3, 2024
e7b3e6a
sanity check
laurenkrugen-navapbc Jul 3, 2024
525b3ac
use unsecure node version
laurenkrugen-navapbc Jul 9, 2024
c41c84f
self hosted role
laurenkrugen-navapbc Jul 9, 2024
0534d8a
var name update
laurenkrugen-navapbc Jul 9, 2024
7caa591
test file naming
laurenkrugen-navapbc Jul 9, 2024
dd8f756
test file naming
laurenkrugen-navapbc Jul 9, 2024
91de106
test file naming
laurenkrugen-navapbc Jul 9, 2024
dbb2b5e
test file naming
laurenkrugen-navapbc Jul 9, 2024
3c75b7b
test file naming
laurenkrugen-navapbc Jul 9, 2024
eb0b753
test file naming
laurenkrugen-navapbc Jul 9, 2024
bc8f086
test file naming
laurenkrugen-navapbc Jul 9, 2024
0161c65
test successful filename
laurenkrugen-navapbc Jul 10, 2024
1fb3dfc
test github output
laurenkrugen-navapbc Jul 10, 2024
a94538b
outputs
laurenkrugen-navapbc Jul 10, 2024
f24a933
suppress errors from verify steps
laurenkrugen-navapbc Jul 10, 2024
9572893
Merge branch 'main' into lauren/BCDA-7900
laurenkrugen-navapbc Jul 10, 2024
302414d
aws copy testing
laurenkrugen-navapbc Jul 10, 2024
b163db5
add subfolder
laurenkrugen-navapbc Jul 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 49 additions & 5 deletions .github/workflows/opt-out-import-test-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ concurrency:
group: opt-out-import-test-integration

jobs:

# Deploy first if triggered by pull_request
deploy:
if: ${{ github.event_name == 'pull_request' }}
Expand All @@ -29,6 +30,8 @@ jobs:
defaults:
run:
working-directory: ./optout
outputs:
filename: ${{ steps.createfile.outputs.FILENAME }}
steps:
- uses: actions/checkout@v4
- uses: aws-actions/configure-aws-credentials@v4
Expand All @@ -43,9 +46,50 @@ jobs:
role-chaining: true
role-skip-session-tagging: true
- name: Upload test file to the BFD bucket to trigger lambda function via SNS message
id: createfile
run: |
aws s3 cp --no-progress ../shared_files/synthetic1800MedicareFiles/test/T\#EFT.ON.ACO.NGD1800.DPRF.D181120.T1000009 \
s3://bfd-test-eft/bfdeft01/bcda/in/T.NGD.DPC.RSP.D$(date +'%y%m%d').T$(date +'%H%M%S')1.IN
# TODO Check bucket for response file
# TODO Run another job to check database for update
fname=T\#EFT.ON.ACO.NGD1800.DPRF.D$(date +'%y%m%d').T$(date +'%H%M%S')1
echo "FILENAME=$fname" >> "$GITHUB_OUTPUT"
aws s3 cp ../shared_files/synthetic1800MedicareFiles/test/T\#EFT.ON.ACO.NGD1800.DPRF.D181120.T1000009 \
s3://bfd-test-eft/bfdeft01/bcda/in/test/$fname
verify:
needs: trigger
runs-on: self-hosted
Copy link
Member

@gsf gsf Jul 8, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add the following here to continue to use node16 instead of node20 for the time being on the runner (see actions/checkout#1809):

    env:
      ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: "true"

env:
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: "true"
steps:
- uses: actions/checkout@v3
- uses: aws-actions/configure-aws-credentials@v3
with:
aws-region: ${{ vars.AWS_REGION }}
role-to-assume: arn:aws:iam::${{ secrets.ACCOUNT_ID }}:role/delegatedadmin/developer/bcda-test-github-actions
- name: Install psql
run: |
sudo amazon-linux-extras install postgresql14
- name: Get database credentials
uses: cmsgov/ab2d-bcda-dpc-platform/actions/aws-params-env-action@main
env:
AWS_REGION: ${{ vars.AWS_REGION }}
with:
params: |
CONNECTION_INFO=/bcda/test/api/DATABASE_URL
- name: Verify suppression file was ingested
env:
FILENAME: ${{needs.trigger.outputs.filename}}
# CAUTION: if changing the script below, validate that sensitive information is not printed in the workflow
run: |
HOST=$(aws rds describe-db-instances --db-instance-identifier bcda-test-rds 2>&1 | jq -r '.DBInstances[0].Endpoint.Address' 2>&1)
CONNECTION_URL=$(echo $CONNECTION_INFO 2>&1 | sed -E "s/@.*\/bcda/\@$HOST\/bcda/" 2>&1)
SUPPRESSION_FILE=`psql -t "$CONNECTION_URL" -c "SELECT id FROM suppression_files WHERE name = '$FILENAME' LIMIT 1" 2>&1`
if [[ $? -ne 0 || -z $SUPPRESSION_FILE ]]; then
echo "suppression_file query returned zero results or command failed"
exit 1
else
SUPPRESSIONS=`psql -t "$CONNECTION_URL" -c "SELECT count(mbi) FROM suppressions WHERE file_id = $SUPPRESSION_FILE" 2>&1`
if [[ $? -ne 0 || -z $SUPPRESSIONS ]]; then
echo "suppressions query returned zero results or command failed"
exit 1
fi
fi
Loading