Skip to content

Commit

Permalink
Merge pull request #157 from RockefellerArchiveCenter/development
Browse files Browse the repository at this point in the history
Add changes from development

Includes fixes to #153 and #149
  • Loading branch information
bonniegee authored Sep 7, 2021
2 parents 4ca4ce1 + 27b9445 commit 23ae85a
Show file tree
Hide file tree
Showing 34 changed files with 1,838 additions and 2,957 deletions.
821 changes: 0 additions & 821 deletions fixtures/cassettes/process_accessions.json

This file was deleted.

694 changes: 0 additions & 694 deletions fixtures/cassettes/process_digital.json

This file was deleted.

364 changes: 0 additions & 364 deletions fixtures/cassettes/process_grouping.json

This file was deleted.

364 changes: 0 additions & 364 deletions fixtures/cassettes/process_transfers.json

This file was deleted.

200 changes: 0 additions & 200 deletions fixtures/cassettes/send_accession_update.json

This file was deleted.

200 changes: 0 additions & 200 deletions fixtures/cassettes/send_update.json

This file was deleted.

7 changes: 0 additions & 7 deletions fixtures/data/d33ff643-0f1b-4fa8-9105-08d2e6a9e0d5.json

This file was deleted.

7 changes: 0 additions & 7 deletions fixtures/data/e33ff643-0f1b-4fa8-9105-08d2e6a9e0d5.json

This file was deleted.

5 changes: 0 additions & 5 deletions fixtures/data/f33ff643-0f1b-4fa8-9105-08d2e6a9e0d5.json

This file was deleted.

3 changes: 1 addition & 2 deletions requirements.in
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,11 @@ ArchivesSnake==0.9.1
asterism==0.7.2
Django==3.2.5
djangorestframework==3.12.4
ElectronBonder==0.7.2
ElectronBonder==0.8
health-check==3.4.1
iso-639==0.4.5
iso8601==0.1.14
odin==1.7.0
psycopg2-binary==2.9.1
PyYAML==5.4.1
uritemplate==3.0.1
vcrpy==4.1.1
19 changes: 3 additions & 16 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ boltons==21.0.0
# via archivessnake
certifi==2021.5.30
# via requests
charset-normalizer==2.0.1
charset-normalizer==2.0.4
# via requests
clinner==1.12.3
# via health-check
Expand All @@ -33,7 +33,7 @@ djangorestframework==3.12.4
# via
# -r requirements.in
# asterism
electronbonder==0.7.2
electronbonder==0.8
# via -r requirements.in
gitdb==4.0.7
# via gitpython
Expand All @@ -42,17 +42,13 @@ gitpython==3.1.18
health-check==3.4.1
# via -r requirements.in
idna==3.2
# via
# requests
# yarl
# via requests
iso-639==0.4.5
# via -r requirements.in
iso8601==0.1.14
# via -r requirements.in
more-itertools==8.8.0
# via archivessnake
multidict==5.1.0
# via yarl
odin==1.7.0
# via
# -r requirements.in
Expand All @@ -68,7 +64,6 @@ pyyaml==5.4.1
# -r requirements.in
# archivessnake
# health-check
# vcrpy
rapidfuzz==1.4.1
# via archivessnake
requests==2.26.0
Expand All @@ -79,7 +74,6 @@ six==1.16.0
# via
# electronbonder
# odin
# vcrpy
smmap==4.0.0
# via gitdb
sqlparse==0.4.1
Expand All @@ -91,14 +85,7 @@ typing-extensions==3.10.0.0
# asgiref
# gitpython
# structlog
# yarl
uritemplate==3.0.1
# via -r requirements.in
urllib3==1.26.6
# via requests
vcrpy==4.1.1
# via -r requirements.in
wrapt==1.12.1
# via vcrpy
yarl==1.6.3
# via vcrpy
15 changes: 11 additions & 4 deletions transformer/clients.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ def find_bag_by_id(self, identifier, **kwargs):
if count != 1:
raise UrsaMajorClientError("Found {} bags matching id {}, expected 1".format(count, identifier))
bag_url = bag_resp.get("results")[0]["url"]
return self.send_request("get", bag_url)
return self.retrieve(bag_url)
except Exception as e:
raise UrsaMajorClientError("Error finding bag by id: {}".format(e))

Expand All @@ -148,9 +148,16 @@ def __init__(self, baseurl, username, password):
if not self.client.authorize():
raise AuroraClientError("Could not authorize {} in Aurora".format(username))

def update(self, url, data, **kwargs):
resp = self.client.put(url, data=json.dumps(data), headers={"Content-Type": "application/json"}, **kwargs)
def update(self, raw_url, data, **kwargs):
"""Sends a PATCH request.
URL parsing strips the hostname off the URL so that the hostname
configured for AuroraClient is always used."""
identifier = raw_url.rstrip("/").split("/")[-1]
prefix = raw_url.rstrip("/").split("/")[-2]
url = "/{}/{}/".format(prefix.lstrip("/"), identifier.lstrip("/"))
resp = self.client.patch(url, data=json.dumps(data), headers={"Content-Type": "application/json"}, **kwargs)
if resp.status_code == 200:
return resp.json()
else:
raise AuroraClientError("Error sending request {} to Aurora: {}".format(url, resp.json()))
raise AuroraClientError("Error sending request {} to Aurora: {}".format(url, resp.text))
106 changes: 106 additions & 0 deletions transformer/fixtures/archivesspace_archival_object.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
{
"lock_version": 19,
"position": 14,
"publish": true,
"ref_id": "f87164e3d5c24a0b86f823528c0a42b5",
"title": "American Foundation for the Blind - Drama",
"display_string": "American Foundation for the Blind - Drama",
"restrictions_apply": false,
"created_by": "admin",
"last_modified_by": "admin",
"create_time": "2014-12-06T03:44:11Z",
"system_mtime": "2021-08-18T15:59:07Z",
"user_mtime": "2021-08-18T15:59:07Z",
"suppressed": false,
"is_slug_auto": false,
"level": "file",
"jsonmodel_type": "archival_object",
"external_ids": [
{
"external_id": "728884",
"source": "Archivists Toolkit Database::RESOURCE_COMPONENT",
"created_by": "admin",
"last_modified_by": "admin",
"create_time": "2021-08-18T15:59:27Z",
"system_mtime": "2021-08-18T15:59:27Z",
"user_mtime": "2021-08-18T15:59:27Z",
"jsonmodel_type": "external_id"
}
],
"subjects": [],
"linked_events": [],
"extents": [],
"lang_materials": [],
"dates": [],
"external_documents": [],
"rights_statements": [],
"linked_agents": [],
"ancestors": [
{
"ref": "/repositories/2/archival_objects/12330",
"level": "subseries"
},
{
"ref": "/repositories/2/archival_objects/12062",
"level": "series"
},
{
"ref": "/repositories/2/resources/93",
"level": "collection"
}
],
"instances": [
{
"lock_version": 0,
"created_by": "admin",
"last_modified_by": "admin",
"create_time": "2021-08-18T15:59:27Z",
"system_mtime": "2021-08-18T15:59:27Z",
"user_mtime": "2021-08-18T15:59:27Z",
"instance_type": "mixed materials",
"jsonmodel_type": "instance",
"is_representative": false,
"sub_container": {
"lock_version": 0,
"indicator_2": "876",
"created_by": "admin",
"last_modified_by": "admin",
"create_time": "2021-08-18T15:59:27Z",
"system_mtime": "2021-08-18T15:59:27Z",
"user_mtime": "2021-08-18T15:59:27Z",
"type_2": "folder",
"jsonmodel_type": "sub_container",
"top_container": {
"ref": "/repositories/2/top_containers/11192"
}
}
}
],
"notes": [
{
"jsonmodel_type": "note_multipart",
"persistent_id": "c0225216f8cc5a0773e2cb3b7b98da1f",
"label": "Scope and Contents note",
"type": "scopecontent",
"subnotes": [
{
"jsonmodel_type": "note_text",
"content": "Theater, performing arts, Children, disabilities.\n\n",
"publish": true
}
],
"publish": true
}
],
"uri": "/repositories/2/archival_objects/12345",
"repository": {
"ref": "/repositories/2"
},
"resource": {
"ref": "/repositories/2/resources/93"
},
"parent": {
"ref": "/repositories/2/archival_objects/12330"
},
"has_unpublished_ancestor": false
}
6 changes: 6 additions & 0 deletions transformer/fixtures/package_data/aurora-aip.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/30576005-bd3a-41eb-bb60-feac49804814",
"identifier": "69ef97fe-c837-418a-9c3c-7246a4a36e5b",
"package_type": "aip",
"origin": "aurora"
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/fdec6c9b-f1c7-4d04-a5a3-68e018e4d66a",
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/0b626fe8-52c0-4b73-b243-b33f2c552f35",
"identifier": "69ef97fe-c837-418a-9c3c-7246a4a36e5b",
"package_type": "dip",
"origin": "aurora"
}
}
7 changes: 7 additions & 0 deletions transformer/fixtures/package_data/digitization-aip.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/e6421665-e5ec-498a-9505-0e51c6a9e4a3",
"identifier": "69ef97fe-c837-418a-9c3c-7246a4a36e5b",
"archivesspace_uri": "/repositories/2/archival_objects/1234",
"package_type": "aip",
"origin": "digitization"
}
7 changes: 7 additions & 0 deletions transformer/fixtures/package_data/digitization-dip.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/801d883c-f1b3-4e3f-a280-92feff0666ad",
"identifier": "69ef97fe-c837-418a-9c3c-7246a4a36e5b",
"archivesspace_uri": "/repositories/2/archival_objects/1234",
"package_type": "dip",
"origin": "digitization"
}
7 changes: 7 additions & 0 deletions transformer/fixtures/package_data/legacy-digital-aip.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/237c875d-9072-4495-9875-9e1837dab2a8",
"identifier": "69ef97fe-c837-418a-9c3c-7246a4a36e5b",
"archivesspace_uri": "/repositories/2/archival_objects/1234",
"package_type": "aip",
"origin": "legacy_digital"
}
7 changes: 7 additions & 0 deletions transformer/fixtures/package_data/legacy-digital-dip.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/ac15614d-3a59-4281-9d41-51e38fcc84c3",
"identifier": "69ef97fe-c837-418a-9c3c-7246a4a36e5b",
"archivesspace_uri": "/repositories/2/archival_objects/1234",
"package_type": "dip",
"origin": "legacy_digital"
}
5 changes: 5 additions & 0 deletions transformer/fixtures/package_data/no-origin-aip.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/8a57b436-a6b1-4d49-9119-2a88b1c41a2b",
"identifier": "69ef97fe-c837-418a-9c3c-7246a4a36e5b",
"package_type": "aip"
}
5 changes: 5 additions & 0 deletions transformer/fixtures/package_data/no-origin-dip.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"uri": "http://fedora.dev.rockarch.org:8080/fedora/rest/d990131c-2bca-45f2-99fc-02f1a0134eab",
"identifier": "69ef97fe-c837-418a-9c3c-7246a4a36e5b",
"package_type": "dip"
}
Loading

0 comments on commit 23ae85a

Please sign in to comment.