sul-dlss / folio-tasks

Migration and data-loading tasks for FOLIO
MIT License
2 stars 0 forks source link

Pull locations from folio-test to load to different envs instead of using locations.tsv #249

Closed shelleydoljack closed 11 months ago

shelleydoljack commented 11 months ago

SearchWorks is using a locations details field, which takes an object. In testing trying to post to dev a locations.tsv where the details column contains some json data, it errors, e.g.:

code    name    id  isActive    description discoveryDisplayName    institutionCode campusCode  libraryCode details primaryServicePointCode
TAN-DETAILS-TEST    Tanner Stacks       true        Tanner Stacks   SU  SUL TANNER  {"isDefaultPickup":true}    TANNER

Cannot construct instance of `org.folio.rest.jaxrs.model.Details` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('{"isDefaultPickup":true}')
 at [Source: (String)"{"code":"TAN-DETAILS-TEST","name":"Tanner Stacks","isActive":"true","discoveryDisplayName":"Tanner Stacks","details":"{\"isDefaultPickup\":true}","institutionId":"8d433cdd-4e8f-4dc1-aa24-8a4ddb7dc929","libraryId":"e5f23316-85ce-440c-886c-eff410f66f26","campusId":"c365047a-51f2-45ce-8601-e421ca3615c5","primaryServicePoint":"7af3d617-e9e9-4241-8dd7-93827112d3ab","servicePointIds":["7af3d617-e9e9-4241-8dd7-93827112d3ab"]}"; line: 1, column: 118] (through reference chain: org.folio.rest.jaxrs.model.Location["details"])

However, we can post the location details when passing json data. There are also many updates to the discoveryDisplayName that haven't been put in the locations.tsv yet. Add a pull locations rake task to get the json data (from folio-test) and refactor tenant:load_locations rake task to use the json.