Ensy 172 add functionality and tests to lambda #10
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.
What does this PR do?
Adds functionality and associated tests for transforming the bursar fine and fee data exported from Alma into the format required for uploading to SFS.
SOURCE_BUCKET
, with the correctSOURCE_PREFIX
, retrieve the file.Helpful background context
This lambda will be invoked by a step function following our pattern of Alma job-end webhook -> webhook lambda -> step function -> this lambda
The data in the webhook POST request from Alma doesn't contain enough information for our lambda to retrieve the correct object from s3 directly. Alma names the export file [bursar transfer job name]-[job id]-[timestamp].xml. The POST data doesn't contain the timestamp, so we have to first get a list of filenames in our source location, filtered based on the job_name and job_id from the webhook POST data. There should only be one matching filename because the job_id is unique.
We are still waiting for confirmation on how to calculate some of the values in the transformed file. see https://mitlibraries.atlassian.net/browse/ENSY-182
We are currently putting the transformed file in the sftp bucket under a different path, this may change depending on the outcome of https://mitlibraries.atlassian.net/browse/ENSY-181
How can a reviewer manually see the effects of these changes?
see readme for local testing instructions
Includes new or updated dependencies?
YES
What are the relevant tickets?
https://mitlibraries.atlassian.net/browse/ENSY-172
Developer
Code Reviewer
(not just this pull request message)