dor-services 9.5.0 → 9.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f696769ddd2ceb91345d4d0b7aa5b3ebdfa1b84a3c990055187f058b2d422a66
4
- data.tar.gz: 0d354e436399a02330fdd07db2fae0b0eddfa14c710d93807aadb925dfa57c0f
3
+ metadata.gz: 4931ca101e0b454ff643b057dcc6d16dfce2b17911bcd41c21e0192872cc1ef9
4
+ data.tar.gz: aea01d39aba817b52ee4da980cb026eedd081aac9297fe4804365a1e0654ff95
5
5
  SHA512:
6
- metadata.gz: 4a645755fe069b45ed3f07f02b742990acc25234214f3968e997b5c76475b70df1c3bccc400f6831aab1fc2a6770d409b3cedcb65f4dd7a36e38fdf0e2752bbe
7
- data.tar.gz: 88a519d69bea0c6a08ea8ce6569468778e10431595e759f8e38ee4c049674125cef29f0425f83f59597ba3b62bd4c7d348c5bc5115b5213167414e1991626db4
6
+ metadata.gz: 5fa6b80e210b418343b34c3e6b2d71746e719e8b453decdf6ce93199d65de93de7e04a37ba02d3790fb9e0b800c2b7a0d717b7fdbd50d0e1ef90e2648b290376
7
+ data.tar.gz: 47cfd01faadf0f4d5420df6a011ef3ea0ed7d75d81cd0260565db2802eeaf784aa2b506672ef7fa95cd8d1e2d0aea2841a0e39052be219c574d45e4827498614
@@ -0,0 +1,29 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIE3zCCAscCCQCcUJVDTu7rPzANBgkqhkiG9w0BAQUFADCBvzELMAkGA1UEBhMC
3
+ VVMxEzARBgNVBAgTCkNhbGlmb3JuaWExETAPBgNVBAcTCFN0YW5mb3JkMRwwGgYD
4
+ VQQKExNTdGFuZm9yZCBVbml2ZXJzaXR5MRIwEAYDVQQLEwlMaWJyYXJpZXMxJTAj
5
+ BgNVBAMTHFNVTCBET1IgKGRldi90ZXN0KSBhY2Nlc3MgQ0ExLzAtBgkqhkiG9w0B
6
+ CQEWIHN1bC13ZWJtYXN0ZXJAbGlzdHMuc3RhbmZvcmQuZWR1MB4XDTEyMDkyNjAw
7
+ Mzg1OFoXDTIyMDkyNDAwMzg1OFowgaIxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpD
8
+ YWxpZm9ybmlhMREwDwYDVQQHEwhTdGFuZm9yZDEcMBoGA1UEChMTU3RhbmZvcmQg
9
+ VW5pdmVyc2l0eTEnMCUGA1UEAxMeZGxzcy1kZXYtcGV0dWNrZXQuc3RhbmZvcmQu
10
+ ZWR1MSQwIgYJKoZIhvcNAQkBFhVwZXR1Y2tldEBzdGFuZm9yZC5lZHUwggEiMA0G
11
+ CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3cqsXN6QQIMD/yqKNI+BFtPBrhV1F
12
+ hRqenXUrqDRhIE6o0WVolJC4pBVXMXZksk/cnsDkb/PrD2JZH4YTS6+B51qRvScg
13
+ cyqioPOJnPNRowogNUwkDiR4OGdKIbdRyYG+SgDuMWN/it7TqtG92KJm78imQS6S
14
+ wOtP8AnqOveMHEdmAzcANGTHCLF8SNxNqGgedXLWfpi4MSYI1io0PCA/gtrotrsL
15
+ xcwOfdkUrImaa0Og/Jyp/GAq6uveYangt3Ox3GLyyToSK4/FJXwxba9+OqR0U2MZ
16
+ qiFbXkTzGzLbx+xhfkG5Qe1eR3u1JigSjS4z3rUmvPz+MIQVQX9ZdAThAgMBAAEw
17
+ DQYJKoZIhvcNAQEFBQADggIBAH0u9ZVNGCXO6a77hTIO6vjJ0MoWzJNY4j+47Dl9
18
+ 2hhDoVtw7VtV5/mKVKAiQB+Gbz/NIfkqfPgJEwyC5vr4330wIC2dMuGNFnSxGTKz
19
+ PlkZAWGUqpkfucPISwPXRgbQIMghRy+EZ05ayv1w+HlV9QGj+hbOt92jL/e1yCpH
20
+ Fd3I/7Ui26vrHqx+5Hg2d4gT2YGHTKBy8LakuoN59fw8sb+Gk0Xp/0pZMD+Sgl6T
21
+ db0HOH4lcC3qG0ZfrNJ2BwDUnzbt8cruc98iu5obnmSK39ezKsSWx6leHzWIQLLT
22
+ guNGOpbWJrNfF/VXpH9t0Q/xd0vZsOWSUkfHpd02PCBFRIWUv6UCldsDByP4IKHE
23
+ bwNa3STPwIWKq2SGE+qGkY5P6t7zqPZ+SFl4kOXUWNuspSY8v5dKFyfFexaX6p6S
24
+ bRRK5CoZq3jvxvHk88VQPTli0EP12r4SSG19UU43Twqqqd2CEW7woL3Z/OPws047
25
+ jV/e8cHA7goo5d9RKwyz/7zivUWqidnp7SeL5/YQRY2bwWOcS/y49Dmi0+FQOJCw
26
+ wjDDUv6Z+SR3NmbGtc0dIroTIWxvS7otIa+dXnH+ubrGAlbUvT1NAeO9mdX9m/qh
27
+ YHm8oRVyJD12Hylc5pmFEBbV02Lzc/D4mB3oNtSVvhNfoTZfyKqwA+kAPol6HDIb
28
+ vJi3
29
+ -----END CERTIFICATE-----
@@ -0,0 +1,18 @@
1
+ -----BEGIN CERTIFICATE REQUEST-----
2
+ MIIC6DCCAdACAQAwgaIxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlh
3
+ MREwDwYDVQQHEwhTdGFuZm9yZDEcMBoGA1UEChMTU3RhbmZvcmQgVW5pdmVyc2l0
4
+ eTEnMCUGA1UEAxMeZGxzcy1kZXYtcGV0dWNrZXQuc3RhbmZvcmQuZWR1MSQwIgYJ
5
+ KoZIhvcNAQkBFhVwZXR1Y2tldEBzdGFuZm9yZC5lZHUwggEiMA0GCSqGSIb3DQEB
6
+ AQUAA4IBDwAwggEKAoIBAQC3cqsXN6QQIMD/yqKNI+BFtPBrhV1FhRqenXUrqDRh
7
+ IE6o0WVolJC4pBVXMXZksk/cnsDkb/PrD2JZH4YTS6+B51qRvScgcyqioPOJnPNR
8
+ owogNUwkDiR4OGdKIbdRyYG+SgDuMWN/it7TqtG92KJm78imQS6SwOtP8AnqOveM
9
+ HEdmAzcANGTHCLF8SNxNqGgedXLWfpi4MSYI1io0PCA/gtrotrsLxcwOfdkUrIma
10
+ a0Og/Jyp/GAq6uveYangt3Ox3GLyyToSK4/FJXwxba9+OqR0U2MZqiFbXkTzGzLb
11
+ x+xhfkG5Qe1eR3u1JigSjS4z3rUmvPz+MIQVQX9ZdAThAgMBAAGgADANBgkqhkiG
12
+ 9w0BAQUFAAOCAQEAdAVri6K2jyMcAJDWohxGVld7HU2ejhN1tx9+HSroK1+7f2LX
13
+ R4i06NLZI0qJA92cd5sC7T5KFG3v1Ad5gPcZfkhmH8uL0v/qNkx/vvZgF9vlUf+L
14
+ 5JEyqzsMIxcRCC9gujsk9ha7oigFWbf1AxNt1KSDcIIID7nm+Tl7b/kSoOTK5z8j
15
+ /Pg8CL54paNtRQ8TDtlvdbziPn4J/Zopx0s5lpgV/pLaSkq+GPih+eV2ST1fpFzu
16
+ RQNQVZ3fa2W3Jz9m6vAtWZP1Ht7ZnLYTdSIJOo0Z2mBjcDE86JqF8bbWYt4THAgv
17
+ DIEKxWpGWz7rmTJJ5DStxFmUK6135FKatnAT4w==
18
+ -----END CERTIFICATE REQUEST-----
@@ -0,0 +1,27 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIIEogIBAAKCAQEAt3KrFzekECDA/8qijSPgRbTwa4VdRYUanp11K6g0YSBOqNFl
3
+ aJSQuKQVVzF2ZLJP3J7A5G/z6w9iWR+GE0uvgedakb0nIHMqoqDziZzzUaMKIDVM
4
+ JA4keDhnSiG3UcmBvkoA7jFjf4re06rRvdiiZu/IpkEuksDrT/AJ6jr3jBxHZgM3
5
+ ADRkxwixfEjcTahoHnVy1n6YuDEmCNYqNDwgP4La6La7C8XMDn3ZFKyJmmtDoPyc
6
+ qfxgKurr3mGp4Ldzsdxi8sk6EiuPxSV8MW2vfjqkdFNjGaohW15E8xsy28fsYX5B
7
+ uUHtXkd7tSYoEo0uM961Jrz8/jCEFUF/WXQE4QIDAQABAoIBAGZR9Q/sHvxH6J5D
8
+ ncrvecYnl/nA1zdReHmEBbimByEtbfJHaTKduuLh0m1hz1F3C4hYm+pOb1RqrkZb
9
+ iOL2Uhw4uJGVWV+GHP+8mlnlSun78Efqsl9h7AGKJEJ6788Uf+NtT3uL3J1lDcgt
10
+ /PLRBDQ6BkaFEL8WD6n0jvMwlKZ2pLOsYaMx29vPVpcf/zL2B4CWr+jsm38OMRNk
11
+ WsQ0aA1XPZuJC/iS8Ky/ccvOLt3BlVVh62/L776XrKpXzAi9O/u3clak3Sel1rxt
12
+ NnTrN+hacsQp4gS1qPiKF656b6WG1tQ29r5rUMPqNltPjmVTe4m5S16NoRv/IEFQ
13
+ 9thtEAECgYEA7WSSNiwbDgXRygEIRAP4M26Bvv8EQ29i7mnv5RnHObiD1y5eu/qQ
14
+ E5/VULqYcHR9C3qpDqdfFf9IVg0CjeuFatG85Jd15vDWtk5RErxLq005qzUsC0o8
15
+ AsCurdb0r6zOo5iWyjk8JwT/LAJ8Tg4JDGARcZnHk9LBbDI8i/FAvqECgYEAxdOo
16
+ 9viFFblcwu9Oua/i67VNGocBgjTHNof15nhnu4Am3vR3g8wRBzjUcJLjxT+kxlMf
17
+ /YwfUSDIs9yviGv2kj8M3UPtCQ8vkzRwPnhbT9gvWxtnc0XxYNq7IVZ8x1cZeBsf
18
+ 8vH6/tCnjgfsN6HP3DSqiJ5cqAjECsJq0fo03kECgYBAIs3FyQC+NyBIvSKojZH/
19
+ AzoWifty5KML2p8vfFlw5MLp3eNGUhme063kE6WfrDkkYs1N4jY0UTYP2Y/5G8p9
20
+ 45BvCeSWsjawJlSNBUZET6bm9ISjwDiaXchTuyF8XOmvFUiX9gKkYBs4nqtKw0v6
21
+ hfHwiSV8cJJFUwU8ob9mQQKBgAh8MqQdNsAeyj7GOu81/xqzFRKNNeBa2Syamk5/
22
+ XZuqPICVpcauaxCPPHVzp3dfanbjO90JNJKrQFCOp6zHTLUrJScccb9Qum6q8iGL
23
+ 0gbTs/xJaZ+FIXxRBXPBnOqD7uC68Rzfii+BzZ4G8vfT5fGBBMuFV14Rui7n9eL5
24
+ w2jBAoGAbh77B0kzLngbs+NmTfwjnYw5qYqwFPAYPYcu0w1wF8oTD38U8FqJ/6LG
25
+ oKaszyYODurPox81kJplNukEmSCDto1i6DJ71i8HcCfitEFXua28WD1+5Wn4o9CS
26
+ AOxLn8jHa7K6lmXZm2hgjWcSI9VGp5En79pGzrtO/d+OswVIJEc=
27
+ -----END RSA PRIVATE KEY-----
@@ -0,0 +1,29 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIE+jCCAuICCQDiT+2CJW52sTANBgkqhkiG9w0BAQUFADCBuTELMAkGA1UEBhMC
3
+ VVMxEzARBgNVBAgTCkNhbGlmb3JuaWExETAPBgNVBAcTCFN0YW5mb3JkMRwwGgYD
4
+ VQQKExNTdGFuZm9yZCBVbml2ZXJzaXR5MRIwEAYDVQQLEwlMaWJyYXJpZXMxHzAd
5
+ BgNVBAMTFlNVTCBET1IgcHJvZCBhY2Nlc3MgQ0ExLzAtBgkqhkiG9w0BCQEWIHN1
6
+ bC13ZWJtYXN0ZXJAbGlzdHMuc3RhbmZvcmQuZWR1MB4XDTEyMTAwODE3MDk1NVoX
7
+ DTIyMTAwNjE3MDk1NVowgcMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9y
8
+ bmlhMREwDwYDVQQHEwhTdGFuZm9yZDEcMBoGA1UEChMTU3RhbmZvcmQgVW5pdmVy
9
+ c2l0eTESMBAGA1UECxMJTGlicmFyaWVzMScwJQYDVQQDEx5kbHNzLWRldi1wZXR1
10
+ Y2tldC5zdGFuZm9yZC5lZHUxMTAvBgkqhkiG9w0BCQEWImRsc3MtZGV2ZWxvcGVy
11
+ c0BsaXN0cy5zdGFuZm9yZC5lZHUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
12
+ AoIBAQDO3bOG2i4DZNnPTt2C6fFM3znmqHIW/n771ntWTzS8k01REksYPlxBNZ3t
13
+ M+aZFy/2lEv7PMMNg2VDDn1TRJd0hy87VW7QOTYTo1SCo2AYgn+qOnujSGqU+RRn
14
+ pM4xTGBnF5BGSXfAi++iMJyyQngF3nev5jAcy9SrwtpXrV4JyNl6LtmodtjBi/3k
15
+ LO6KY9Uc9T8zRcuiC/5zidM1+aymfoymG295aVDc+JsghjWm/UoE+Nvs20zfi+5a
16
+ JB3iL+3RyUr2Hh3N4zdxR6dar/Ivy5WfPTEmtkqiSnnhdDX6fE4f+4P3ewn7bbZN
17
+ LrH2T5Bm4W64bPsnUPP1evgidZ0LAgMBAAEwDQYJKoZIhvcNAQEFBQADggIBAJIZ
18
+ bdwEJQEOKAruCvCwxFNXQUUPzJiuYqlJ61+4Vhs7JugORo+DgNTYL/JkZ6dCR/uj
19
+ 4W0TQyBtA1GtfUYvcXCrvQl51YTMAODkoWNlkP/xaHx02twIoZDsGSVAVZryP0ae
20
+ OzToLSvj+a1OvRS3YX/CO+Gq5t2//kCYrI1h6d/41PjWBRD2A2NWJrBiIj62W1qJ
21
+ muY1YvSiNZ27Pwjp0fA6QwpFY+AxUAei6jKQcUCp6q3wlFaVgMS4SKtIC/rNAAc3
22
+ 2aN2dlk6u81wjKQqMKXzWhwxTqEPQAmxoP8oJVxRwh1gxoBEAbLxse76Cc9+eISn
23
+ CG0RF+bku3ceGrNYWQHGu8xOXAexM77WFSIVrtYJ2Tf/P+un8J+fvb3U8I5hOkGK
24
+ /yMIxRfpYyOx8Qg3IJ6ci6Frg2Jn1Csv7RR8vXgRqWDRrYpeRdm8VjO/MkozGp3X
25
+ r7y8hmoacnaOAcPV+KCMQ4zCobFEfxpIlajNgb4ZJhA4/ZcHlnXCr51n/A3FTLdG
26
+ MR4D2JWw9oKDrf9317IomWQd6B8/+MzBX+vFteq0xQPHVJcCh48NuRkJomfy+m2q
27
+ nMgxRTeRIN0VNFrhOxarv+Xiw9BoBAdKd1JbZX4uPVFs+DdkAcZC8aJRnmsowwfG
28
+ C5+Fxxdx+ucfga5QSZui4uyIXlx1nAy+eeTPwmDc
29
+ -----END CERTIFICATE-----
@@ -0,0 +1,27 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIIEpQIBAAKCAQEAzt2zhtouA2TZz07dgunxTN855qhyFv5++9Z7Vk80vJNNURJL
3
+ GD5cQTWd7TPmmRcv9pRL+zzDDYNlQw59U0SXdIcvO1Vu0Dk2E6NUgqNgGIJ/qjp7
4
+ o0hqlPkUZ6TOMUxgZxeQRkl3wIvvojCcskJ4Bd53r+YwHMvUq8LaV61eCcjZei7Z
5
+ qHbYwYv95CzuimPVHPU/M0XLogv+c4nTNfmspn6MphtveWlQ3PibIIY1pv1KBPjb
6
+ 7NtM34vuWiQd4i/t0clK9h4dzeM3cUenWq/yL8uVnz0xJrZKokp54XQ1+nxOH/uD
7
+ 93sJ+222TS6x9k+QZuFuuGz7J1Dz9Xr4InWdCwIDAQABAoIBAQCSt1jJrtptm8yD
8
+ JKskW2nBnJzDQ/rO5icH1EHboAeGK27trezGwAvMUAu3HVVShMiGuPz+rkSkw+lA
9
+ 2vj14rMMeYh9K4WRdtIssW2Rze+s0nlbMWlZEFZPXC0lqRR4kHPbCjJQN3EQhe8q
10
+ eBHauBvKBdObVMYQ1lv6ihMzlgkZJCtRdwn6DqiN2kkFkHx4mhWoMadYA6xBwN4S
11
+ +YM5O1KwC9nUgRpLFSM8D8fBANzI6takkVDQ6QaJJ11dsur5RE9BsFzl+Op7Evzu
12
+ +zCisC17ZUn07YVvGeTUkIwTk0aeu3HCX83WM8jmg02ijtwqf6pdlLMJ8G8MQURe
13
+ siKh1ZP5AoGBAP5ZJrZ/UcGFR1XLeL6WmgljlF26LQzy/DHMBbWMYpTrwfaxk/sK
14
+ o8wTuVebJGhuffTgYU2VWJ5at7AMasOP6IAT2nP2KvcoCmvG8u3BCTkck57Vde5H
15
+ 86bJ88z6TEzhrElDMjmKx7gEb2P6RIKnDcNdduaR6DE6qJOBJ5F5W3KlAoGBANA1
16
+ nKBEFEXJ4Cuw6OrJeyrgu/aCLFKus/orlfLPHFQAvFJzpqmCONz5H/Wcf+m6uMeR
17
+ MQ6V705h2y+FUmwufpFyqCVunC1zJu6mZG9TNEjXzyFBnb4jcEjsMm6DCrVA6zOx
18
+ 3iWd+rLNxIpN3fhskzclNnhn+WhGo7xktuIrVDHvAoGBAPLWVVLKTllQkWIFaRu2
19
+ GA08yMuP1DFX0JcOrqi+BuUeDkslEh8N8oMGld9hnSojzBg/Hkd/fmN6Q4RO5qQe
20
+ QqH90oUCk9Tzordx9EAxHEgt03dDYFwG0Eb+68lZc/23PNGZ2Vr8+F/lxCAVMtH3
21
+ Avnyw3Gx/pj54zcpiYin8DqNAoGBAKSqcdfSX9Id6ZvES0E83Zs4p486vkEaCB8H
22
+ j4y7veS1vDrdWmbfJYelw1/lSMiaMv8qVgj6DYwJGmdH4rrKPrFbY55PD1dmpdjC
23
+ YdYlkMk3XIopsc6pimkx3GTIYJSe5iU5O762ZYo58IGNOcr6W6eWV7D8UiTlESOy
24
+ 52yR5gGjAoGALfzgCSIAVlOli3a7m3aMWUtGhp+sVi7jGLE9NHTwFXnkYEoXmR+v
25
+ 5CIvK8IzwtATEomoAa2GKGek8MSE+H1/o+SrGL9PIATnzuEZeJOIMnGa5mO26a9/
26
+ eV2Qud4v/7qD2P2VnCVYaAMYqS6l0SxB11/UhuQiWdpITxy44CK1Jk8=
27
+ -----END RSA PRIVATE KEY-----
@@ -0,0 +1,89 @@
1
+ # frozen_string_literal: true
2
+
3
+ cert_dir = File.join(File.dirname(__FILE__), 'certs')
4
+
5
+ # rubocop:disable Metrics/BlockLength
6
+ Dor::Config.configure do
7
+ fedora do
8
+ url 'https://sul-dor-prod.stanford.edu/fedora'
9
+ end
10
+
11
+ ssl do
12
+ cert_file File.join(cert_dir, 'dlss-dev-petucket-dor-prod.crt')
13
+ key_file File.join(cert_dir, 'dlss-dev-petucket-dor-prod.key')
14
+ key_pass ''
15
+ end
16
+
17
+ sdr do
18
+ # url 'https://sdrAdmin:sdrPass@sdr-services-test.stanford.edu/sdr/'
19
+ local_workspace_root '/dor/workspace'
20
+ local_export_home '/dor/export'
21
+ datastreams do
22
+ administrativeMetadata 'optional'
23
+ contentMetadata 'optional'
24
+ descMetadata 'required'
25
+ defaultObjectRights 'optional'
26
+ events 'optional'
27
+ embargoMetadata 'optional'
28
+ identityMetadata 'required'
29
+ provenanceMetadata 'required'
30
+ relationshipMetadata 'required'
31
+ rightsMetadata 'optional'
32
+ roleMetadata 'optional'
33
+ sourceMetadata 'optional'
34
+ technicalMetadata 'optional'
35
+ versionMetadata 'required'
36
+ workflows 'optional'
37
+ geoMetadata 'optional'
38
+ end
39
+ end
40
+
41
+ suri do
42
+ mint_ids true
43
+ id_namespace 'druid'
44
+ url 'http://sul-lyberservices-test.stanford.edu'
45
+ user 'labware'
46
+ pass 'lyberteam'
47
+ end
48
+
49
+ solr.url 'https://sul-solr-tester.stanford.edu/argo_prod'
50
+ workflow.url 'https://sul-lyberservices-prod.stanford.edu/workflow/'
51
+ dor_services.url 'https://dorAdmin:dorAdmin@sul-lyberservices-test.stanford.edu/dor'
52
+
53
+ purl do
54
+ base_url 'https://purl-test.stanford.edu/'
55
+ end
56
+
57
+ remediation do
58
+ check_for_versioning_required false # this MUST be true in production; can be false in development and test if you want to ignore workflow checks
59
+ check_for_in_accessioning false # this MUST be true in production; can be false in development and test if you want to ignore workflow checks
60
+ end
61
+
62
+ dor do
63
+ service_root 'https://dorAdmin:dorAdmin@sul-lyberservices-test.stanford.edu/dor/v1'
64
+ num_attempts 3 # the number of attempts to contact the dor web service before throwing an exception
65
+ sleep_time 2 # sleep time in seconds between attempts to contact the dor service
66
+ default_label 'Untitled' # the default label for an object that is registered when no label is provided in the manifest
67
+ end
68
+
69
+ content do
70
+ content_user 'lyberadmin'
71
+ content_base_dir '/dor/workspace/'
72
+ content_server 'lyberservices-test'
73
+ end
74
+
75
+ status do
76
+ indexer_url 'http://sulstats-raw.stanford.edu//render/?format=json&from=-1minute&until=now&target=stats.gauges.dor-prod.argo.reindexqueue.queue-size.count'
77
+ end
78
+
79
+ stacks do
80
+ document_cache_storage_root '/home/lyberadmin/document_cache'
81
+ document_cache_host 'purl-test.stanford.edu'
82
+ document_cache_user 'lyberadmin'
83
+ local_workspace_root '/dor/workspace'
84
+ storage_root '/stacks'
85
+ host 'stacks-test.stanford.edu'
86
+ user 'lyberadmin'
87
+ end
88
+ end
89
+ # rubocop:enable Metrics/BlockLength
@@ -29,7 +29,7 @@ module Dor
29
29
  @logger ||= if defined?(::Rails) && ::Rails.respond_to?(:logger)
30
30
  Rails.logger
31
31
  else
32
- Logger.new(STDOUT)
32
+ Logger.new($stdout)
33
33
  end
34
34
  end
35
35
  end
@@ -6,7 +6,7 @@ module Dor
6
6
  class ContentMetadataDS < ActiveFedora::OmDatastream
7
7
  set_terminology do |t|
8
8
  t.root path: 'contentMetadata', index_as: [:not_searchable]
9
- t.contentType path: '/contentMetadata/@type', index_as: [:not_searchable]
9
+ t.contentType path: { attribute: 'type' }, index_as: [:not_searchable]
10
10
  t.stacks path: '/contentMetadata/@stacks', index_as: [:not_searchable]
11
11
  t.resource(index_as: [:not_searchable]) do
12
12
  t.id_ path: { attribute: 'id' }
@@ -35,6 +35,10 @@ module Dor
35
35
  t.shelved_file_id proxy: %i[resource shelved_file id], index_as: %i[displayable stored_searchable]
36
36
  end
37
37
 
38
+ def self.xml_template
39
+ Nokogiri::XML.parse('<contentMetadata/>')
40
+ end
41
+
38
42
  ### READ ONLY METHODS
39
43
 
40
44
  # Only use this when you want the behavior of raising an exception if anything besides exactly one matching node
@@ -64,6 +64,7 @@ module Dor
64
64
  'world-nd' => 'World (no-download)',
65
65
  'stanford' => 'Stanford',
66
66
  'stanford-nd' => 'Stanford (no-download)',
67
+ 'cdl-stanford-nd' => 'Controlled Digital Lending (no-download)',
67
68
  'loc:spec' => 'Location: Special Collections',
68
69
  'loc:music' => 'Location: Music Library',
69
70
  'loc:ars' => 'Location: Archive of Recorded Sound',
@@ -98,12 +99,14 @@ module Dor
98
99
  # @param rights_xml [ng_xml] a nokogiri xml (ruby) object that represents the rights xml for a DOR object
99
100
  # @param rights_type [string] a recognized rights type code ('world', 'dark', 'loc:spec', etc)
100
101
  def self.upd_rights_xml_for_rights_type(rights_xml, rights_type)
102
+ # Note: The discover node is either 'none' for a dark object or 'world' for any other rights option
101
103
  label = rights_type == 'dark' ? 'none' : 'world'
102
104
  rights_xml.search('//rightsMetadata/access[@type=\'discover\']/machine').each do |node|
103
105
  node.children.remove
104
106
  node.add_child Nokogiri::XML::Node.new(label, rights_xml)
105
107
  end
106
108
 
109
+ # The read node varies by rights option
107
110
  rights_xml.search('//rightsMetadata/access[@type=\'read\']').each do |node|
108
111
  node.children.remove
109
112
  machine_node = Nokogiri::XML::Node.new('machine', rights_xml)
@@ -121,6 +124,13 @@ module Dor
121
124
  loc_node = Nokogiri::XML::Node.new('location', rights_xml)
122
125
  loc_node.content = rights_type.split(':').last
123
126
  machine_node.add_child(loc_node)
127
+ elsif rights_type.start_with?('cdl')
128
+ cdl_node = Nokogiri::XML::Node.new('cdl', rights_xml)
129
+ group_node = Nokogiri::XML::Node.new('group', cdl_node)
130
+ group_node.content = 'stanford'
131
+ group_node.set_attribute('rule', 'no-download')
132
+ cdl_node.add_child(group_node)
133
+ machine_node.add_child(cdl_node)
124
134
  else # we know it is none or dark by the argument filter (first line)
125
135
  machine_node.add_child Nokogiri::XML::Node.new('none', rights_xml)
126
136
  end
@@ -158,6 +168,8 @@ module Dor
158
168
  'Stanford'
159
169
  elsif xml.search('//rightsMetadata/access[@type=\'read\']/machine/world').length == 1
160
170
  'World'
171
+ elsif xml.search('//rightsMetadata/access[@type=\'read\']/machine/cdl').length == 1
172
+ 'Controlled Digital Lending'
161
173
  elsif xml.search('//rightsMetadata/access[@type=\'discover\']/machine/none').length == 1
162
174
  'Dark'
163
175
  else
@@ -112,7 +112,7 @@ module Dor
112
112
  def current_version_id
113
113
  current_version = current_version_node
114
114
  if current_version.nil?
115
- return '1'
115
+ '1'
116
116
  else
117
117
  current_version[:versionId].to_s
118
118
  end
@@ -157,9 +157,9 @@ module Dor
157
157
  def current_version_closeable?
158
158
  current = current_version_node
159
159
  if current[:tag] && current.at_xpath('description')
160
- return true
160
+ true
161
161
  else
162
- return false
162
+ false
163
163
  end
164
164
  end
165
165
 
@@ -27,9 +27,10 @@ module Dor
27
27
  end
28
28
 
29
29
  def query_by_id(id)
30
- if id.is_a?(Hash) # Single valued: { :google => 'STANFORD_0123456789' }
30
+ case id
31
+ when Hash # Single valued: { :google => 'STANFORD_0123456789' }
31
32
  id = id.collect { |*v| v.join(':') }.first
32
- elsif id.is_a?(Array) # Two values: [ 'google', 'STANFORD_0123456789' ]
33
+ when Array # Two values: [ 'google', 'STANFORD_0123456789' ]
33
34
  id = id.join(':')
34
35
  end
35
36
  q = "{!term f=#{Solrizer.solr_name 'identifier', :symbol}}#{id}"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dor
4
- VERSION = '9.5.0'
4
+ VERSION = '9.6.0'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dor-services
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.5.0
4
+ version: 9.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Klein
@@ -20,7 +20,7 @@ authors:
20
20
  autorequire:
21
21
  bindir: bin
22
22
  cert_chain: []
23
- date: 2020-05-28 00:00:00.000000000 Z
23
+ date: 2020-08-18 00:00:00.000000000 Z
24
24
  dependencies:
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: active-fedora
@@ -338,14 +338,14 @@ dependencies:
338
338
  requirements:
339
339
  - - "~>"
340
340
  - !ruby/object:Gem::Version
341
- version: 0.74.0
341
+ version: '0.74'
342
342
  type: :development
343
343
  prerelease: false
344
344
  version_requirements: !ruby/object:Gem::Requirement
345
345
  requirements:
346
346
  - - "~>"
347
347
  - !ruby/object:Gem::Version
348
- version: 0.74.0
348
+ version: '0.74'
349
349
  - !ruby/object:Gem::Dependency
350
350
  name: rubocop-rspec
351
351
  requirement: !ruby/object:Gem::Requirement
@@ -410,7 +410,13 @@ extensions: []
410
410
  extra_rdoc_files: []
411
411
  files:
412
412
  - config/certs/README
413
+ - config/certs/dlss-dev-petucket-dor-dev.crt
414
+ - config/certs/dlss-dev-petucket-dor-dev.csr
415
+ - config/certs/dlss-dev-petucket-dor-dev.key
416
+ - config/certs/dlss-dev-petucket-dor-prod.crt
417
+ - config/certs/dlss-dev-petucket-dor-prod.key
413
418
  - config/config_defaults.yml
419
+ - config/dev_console_env.rb
414
420
  - config/dev_console_env.rb.example
415
421
  - config/predicate_mappings.yml
416
422
  - lib/dor-services.rb
@@ -483,7 +489,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
483
489
  - !ruby/object:Gem::Version
484
490
  version: 1.3.6
485
491
  requirements: []
486
- rubygems_version: 3.0.3
492
+ rubygems_version: 3.1.2
487
493
  signing_key:
488
494
  specification_version: 4
489
495
  summary: Ruby implmentation of DOR services used by the SULAIR Digital Library