dor-services 4.12.2 → 4.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,18 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIC3zCCAccCCQC3NmcDpol4lzANBgkqhkiG9w0BAQUFADBtMQswCQYDVQQGEwJV
3
+ UzETMBEGA1UECBMKQ2FsaWZvcm5pYTERMA8GA1UEBxMIU3RhbmZvcmQxETAPBgNV
4
+ BAoTCFN0YW5mb3JkMQ0wCwYDVQQLEwRETFNTMRQwEgYDVQQDEwtMeWJlclRlc3RD
5
+ QTAeFw0xMTAyMjMxNjUzNTlaFw0yMTAyMjAxNjUzNTlaMHoxCzAJBgNVBAYTAlVT
6
+ MRMwEQYDVQQIEwpDYWxpZm9ybmlhMREwDwYDVQQHEwhTdGFuZm9yZDEcMBoGA1UE
7
+ ChMTU3RhbmZvcmQgVW5pdmVyc2l0eTENMAsGA1UECxMERExTUzEWMBQGA1UEAxMN
8
+ ZGxzcy1kZXYtdGVzdDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAl70WWl1c
9
+ eC50SwKDCr+vhNFH9N+YdTzh3rIRVKzJFPKvNqkye0jwq9MApyEtQzdyk3eDInlK
10
+ dOwKX0XpoLnzm9SgBIY714ojYKZMRPPaIc2k5D7mYgyAUYyWLTJnO93KH3PhMbZY
11
+ 79BrNIMaYu7FGu/SVqQB44j9VnlG36mpmUUCAwEAATANBgkqhkiG9w0BAQUFAAOC
12
+ AQEAlAn5InW1y7GCH/I4t9FgL3nkaOkaO9EzdU8EGtQpQ3YuNqy7IWfqFUm0r06w
13
+ C9CkvEeaZe2GhzQ0ppKXFGI/oWOxETQhgr50HUlXp6hb+zvgrgD1daKbeBCseYF3
14
+ yni37BoPrmQbfA+kmrskRTPpxNnTyQqXCLF2IY+1oAsLC9LyZ3wit/x6oTHwFB6a
15
+ ME/9gJ49UkXaHqvfXy76/qWCBjDZOgMlR0O2y4gi1NPR4+EvEuxcyaXqu9wvAnm2
16
+ z+UPjqi8dBji8T5eWxtiqnawBN5457L80z9EGHCEADHzlyVFUVmHFbFCs/lTzQj7
17
+ fDH+2wlD4o4TMaztLAE3IR6Gtg==
18
+ -----END CERTIFICATE-----
@@ -0,0 +1,15 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIICXAIBAAKBgQCXvRZaXVx4LnRLAoMKv6+E0Uf035h1POHeshFUrMkU8q82qTJ7
3
+ SPCr0wCnIS1DN3KTd4MieUp07ApfRemgufOb1KAEhjvXiiNgpkxE89ohzaTkPuZi
4
+ DIBRjJYtMmc73cofc+Extljv0Gs0gxpi7sUa79JWpAHjiP1WeUbfqamZRQIDAQAB
5
+ AoGAT5Rgm8XpEDK01P4dQc7kO5ES3u9BYwMqJoRXKIRx9SWOFOnJyvSnHEZOSljR
6
+ BzaWRZbhVHwuO4HrsqnU7HF5vAqWQvWfMFVnImIFnIY2hIai4MlB3HMljuosJ5jE
7
+ RRWng6FcalWq5AeWM5hjNG0yhULhKN5y+AI9mHkzIlpWSsECQQDILiA2uSh7zLBa
8
+ hcq2ODPfB42G9xJVXn4oxLdn2zlyKXWvVXoYWGMQWZnnxvrt75n4Iif1y6G/Imhq
9
+ C6DenWXRAkEAwgz1QYd7Ei+Sl3adTtKRVe6jtXrD3JEA7/JtY+mcgCpD8fbUynsS
10
+ 7rFA4c8dIa5BkOSvp8kQWJ/Dl3uwnpt1NQJAKSZSOO2XBNvu5KzcHtku0Ioc7cGc
11
+ YzApfvfxO8g05uLe7kwD7T0+H/5LRPoCWycF35wl2sEhXskT7bi2OQziAQJAWtak
12
+ DMv2MdoxPlQZaaeqv1ZaLn9Mprj+flS3HpliWKDwc5l/nVWl1DUH0W0aDwU6zjAv
13
+ hlTaIRKRBh2x3V2arQJBAIwzwimH6SDiXqZUZ5pBxX1GETNvegHeeIj0Bmu+jFhN
14
+ 0KDbvoWrJe0Hw1UpBlWiZdrD9Ht3mQdNiPyorL+DDJs=
15
+ -----END RSA PRIVATE KEY-----
@@ -0,0 +1,29 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIE9zCCAt8CCQCcUJVDTu7rTjANBgkqhkiG9w0BAQUFADCBvzELMAkGA1UEBhMC
3
+ VVMxEzARBgNVBAgTCkNhbGlmb3JuaWExETAPBgNVBAcTCFN0YW5mb3JkMRwwGgYD
4
+ VQQKExNTdGFuZm9yZCBVbml2ZXJzaXR5MRIwEAYDVQQLEwlMaWJyYXJpZXMxJTAj
5
+ BgNVBAMTHFNVTCBET1IgKGRldi90ZXN0KSBhY2Nlc3MgQ0ExLzAtBgkqhkiG9w0B
6
+ CQEWIHN1bC13ZWJtYXN0ZXJAbGlzdHMuc3RhbmZvcmQuZWR1MB4XDTEyMDkyNjE1
7
+ NTQzNVoXDTIyMDkyNDE1NTQzNVowgboxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpD
8
+ YWxpZm9ybmlhMREwDwYDVQQHEwhTdGFuZm9yZDEcMBoGA1UEChMTU3RhbmZvcmQg
9
+ VW5pdmVyc2l0eTEyMDAGA1UEAxQpcm9ib3RzQHN1bC1seWJlcnNlcnZpY2VzLWRl
10
+ di5zdGFuZm9yZC5lZHUxMTAvBgkqhkiG9w0BCQEWImRsc3MtZGV2ZWxvcGVyc0Bs
11
+ aXN0cy5zdGFuZm9yZC5lZHUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
12
+ AQC1t+PPhLTDFQBuAf4f1GOj7jHdXMN0tvSHL1OCaibe0d8iKbXCMMIE0z8lbBpZ
13
+ 1pA+8terIvxoTlly92EEvGkywZb+DIxnjyG0b9ftDJ64pARJMcnvwJMW/w3WdHCd
14
+ 5uJ5HVM8ZCbEItUfskFukS6tfNBpG8ri6cIQ2ulJzOWYxPV5R2eRneM6vtFD0xtu
15
+ RJb/uMwiOwB79qk4QazbEQtkeZsrvomDFkIuHO/nf9wmgYG99H7q1kXplIrzDDX+
16
+ fvD+JHvuMr5YXfmBQ9wmaZf6YIL7CXj79HUF4uG/a0SjrLZyLh262zWJQFVpjSW8
17
+ Brl/fAyjeZvWJMyCDXRqsedjAgMBAAEwDQYJKoZIhvcNAQEFBQADggIBAG0jIfTj
18
+ 1FJsxTzcD938vtKuNo5XEIX8phqW1MA2eJ5Ojgu1hpW5Jf7fmUHKVnamm7eya5QR
19
+ 356KCJzZzwdCS4xVFq/l43gCA2j8TYrwO6/0EfM/5psUZS3ecwahzcJXfHPHvd9u
20
+ qaXRqbjJYi+Ls70uStTC/JBIIu48atDF0DeXJ21hAbstZ1OKKNzAcYgZk14GKxCi
21
+ ArgAzdg8UDtC4KsdqgxP6vF8Vc/gcHSu9AkVHgPVXbITjV0/kaKNgFi0bVqP7bJD
22
+ hrUFYrS+S+hflQJCmVrDwW0JU2HnJ3EJOFX5F4FYHL4vt6ZjVsMzucraMqiLyUaO
23
+ s6DVaWO8WMlphmFUfb3ChQjrKxFZZ6vKJPD/ExnQHa0kWwOELyMJuXw2PLk7k+qD
24
+ rmjX+K3Ed+JiJuiDG5k8f1BDZE24lvxDwye5fQyDWPfib1yTClYYy4PRh4AI688f
25
+ qgMyv51Qx82o0IJ1On1rNg5/iB7OEVcYSol3U5xiY9gRUd3vq637agZzMuRQnKXs
26
+ Uj0+Vl4OrZ54F8MVsUKfi7Je1oVUEhuHqFt/tSOGlHg1XyR/ExwulCNBKIVdhhrF
27
+ rxZCYrGDSUCF6tteJXpOBTtFT9b7hbMmBohKyS4XjfPSPRh9QHx7wepqSp3aHpmR
28
+ 4gY8Go40mS83xHCKBooqsy2/Z9vQlSb9Cr8u
29
+ -----END CERTIFICATE-----
@@ -0,0 +1,27 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIIEpQIBAAKCAQEAtbfjz4S0wxUAbgH+H9Rjo+4x3VzDdLb0hy9Tgmom3tHfIim1
3
+ wjDCBNM/JWwaWdaQPvLXqyL8aE5ZcvdhBLxpMsGW/gyMZ48htG/X7QyeuKQESTHJ
4
+ 78CTFv8N1nRwnebieR1TPGQmxCLVH7JBbpEurXzQaRvK4unCENrpSczlmMT1eUdn
5
+ kZ3jOr7RQ9MbbkSW/7jMIjsAe/apOEGs2xELZHmbK76JgxZCLhzv53/cJoGBvfR+
6
+ 6tZF6ZSK8ww1/n7w/iR77jK+WF35gUPcJmmX+mCC+wl4+/R1BeLhv2tEo6y2ci4d
7
+ uts1iUBVaY0lvAa5f3wMo3mb1iTMgg10arHnYwIDAQABAoIBAQCmlDzsZZ2C24S6
8
+ U29OZFc21kq1vqyaGIEOT48BFSguyDsAyTWKH0IsRC41suRxCGTQn7KeegLh5zjO
9
+ UAGK4uCYm6g7mOs4n5fpHUHWVuRFJG2dX1vbQTBVO1fHCJSX2ygumHhN+w0ibT/r
10
+ v2+F2ObuOGWghM62tkylQNfsRD0QjalE8ST2xp9p4xwPrAwEuURlA04qnLYNi4+6
11
+ qexDtrLG8E6JV/dd3dY95WjKPscadR1fAKm9sebD0XO31Lu6BGCvpmBU0OmYVfrY
12
+ BN/ofhEmJh+Xgwfxx6PicRDvu9bPnffqbGhDO4ckGDlqXp1fDBgf1I7CclXdrVMH
13
+ Qsxunh5pAoGBAN7929V1aw0S7Rqvuf4N+o1XwBExa2DL7EYI1Oea/nuBMPqvfeNh
14
+ SrbM0gYejEzLmeRUUKRhMMoAgXQnxcg3Kz/5pUXT3b4YtzeskX8nkJ6/2gEU3M7E
15
+ lJj7c5wW1otqMH19+iDNR4N8vjPh98kDJW1HZUHSAcdyE+dZiFP2ofMfAoGBANCe
16
+ AJgA9EkdwZsom+I7Ty9LSrTWx6cKmNEbLVn1iSlyJx1kHoWyTMtuZszCWBjiXx70
17
+ 84WpX2B4MuJBq6sSoEiUahNsphks82glOd6i+eoE/I+NtZehOFnkAMyGux+FbMyG
18
+ q/9ZlQgsbWpFHxS59vX/kvlNun2RpJkaF6QPBuc9AoGBAIGdscCb5cPNsoCGkGf6
19
+ HB84WG4l+bJkFkyHKaoOT8neSGgOxe/7R4CGAbaI3yhsWGF+GPnTfJaOQLERxUch
20
+ ukQPil/STNwIZcc4ycHNb6S3A7MJO2f8oBtkXcjnBYI4EUOAjHmwmNb3FV/3Ax6W
21
+ c5TXoSXnOh2CU8twIWwcufolAoGATqnFf4uckZVu05rUbNIAYcz6NoZmck5EoVSm
22
+ HS3Asqggp6yA9djtrCfNC5icr4VsaLfku5nKJQ4t4bLxkGhNmBCejwSA/S09+x9O
23
+ Wu0JX3zR3y+IMczQ+tRGmNiU5qXhCJ4fbQHSeGqIN3Io7h/RR6E/QlJU59RrRG/a
24
+ SjqAV+ECgYEA2mA5VFK3jECnLde+biEaXidIOuBMcqaP0VG6sBwz2wTGSTBE1WkG
25
+ 6prCD0McWVAgDTm3MMKxeuMaoW5eEi83+G+CywLaTBpc8Hz7qgRhBpKhRirCfHMW
26
+ EfQV5k32vEGoSI+eG8zcGb9mwDeb/EWXAMGXrx2YuYFu7txtwC2mZXc=
27
+ -----END RSA PRIVATE KEY-----
@@ -0,0 +1,66 @@
1
+ # Copied from common-accessioning config/environments
2
+
3
+ cert_dir = File.join(File.dirname(__FILE__), ".", "certs")
4
+
5
+ Dor::Config.configure do
6
+ fedora do
7
+ url 'https://sul-dor-dev.stanford.edu/fedora'
8
+ end
9
+
10
+ ssl do
11
+ cert_file File.join(cert_dir,"robots-dor-dev.crt")
12
+ key_file File.join(cert_dir,"robots-dor-dev.key")
13
+ key_pass ''
14
+ end
15
+
16
+ suri do
17
+ mint_ids true
18
+ id_namespace 'druid'
19
+ url 'https://lyberservices-dev.stanford.edu'
20
+ user 'labware'
21
+ pass 'lyberteam'
22
+ end
23
+
24
+ metadata do
25
+ exist.url 'http://viewer:l3l%40nd@lyberapps-dev.stanford.edu/exist/rest/'
26
+ catalog.url 'http://lyberservices-prod.stanford.edu/catalog/mods'
27
+ end
28
+
29
+ stacks do
30
+ document_cache_host 'purl-dev.stanford.edu'
31
+ document_cache_user 'lyberadmin'
32
+ local_workspace_root '/dor/workspace'
33
+ storage_root '/stacks'
34
+ host 'stacks-dev.stanford.edu'
35
+ user 'lyberadmin'
36
+ local_stacks_root '/stacks'
37
+ local_document_cache_root '/purl/document_cache'
38
+ end
39
+
40
+ gsearch.url 'https://dor-dev.stanford.edu/solr/gsearch'
41
+ solrizer.url 'https://dor-dev.stanford.edu/solr'
42
+ workflow.url 'https://lyberservices-dev.stanford.edu/workflow/'
43
+ dor_services.url 'https://dorAdmin:dorAdmin@sul-lyberservices-dev.stanford.edu/dor/v1'
44
+
45
+ cleanup do
46
+ local_workspace_root '/dor/workspace'
47
+ local_export_home '/dor/export'
48
+ end
49
+
50
+ sdr do
51
+ local_workspace_root '/dor/workspace'
52
+ local_export_home '/dor/export'
53
+ datastreams do
54
+ contentMetadata 'required'
55
+ descMetadata 'required'
56
+ identityMetadata 'required'
57
+ provenanceMetadata 'required'
58
+ relationshipMetadata 'required'
59
+ rightsMetadata 'optional'
60
+ sourceMetadata 'optional'
61
+ end
62
+ end
63
+
64
+ accessioning_robot_sleep_time 30
65
+
66
+ end
data/lib/dor-services.rb CHANGED
@@ -139,7 +139,8 @@ module Dor
139
139
  autoload :ProvenanceMetadataService, 'dor/services/provenance_metadata_service'
140
140
  autoload :TechnicalMetadataService, 'dor/services/technical_metadata_service'
141
141
  autoload :MergeService, 'dor/services/merge_service'
142
- autoload :ArchiveWorkspaceService, 'dor/services/archive_workspace_service'
142
+ autoload :ResetWorkspaceService, 'dor/services/reset_workspace_service'
143
+ autoload :CleanupResetService, 'dor/services/cleanup_reset_service'
143
144
 
144
145
  # Versioning Classes
145
146
  module Versioning
@@ -120,28 +120,28 @@ module Dor
120
120
  end
121
121
  end
122
122
  def groups_which_manage_item
123
- ['dor-administrator','dor-apo-manager', 'dor-apo-depositor']
123
+ ['dor-administrator', 'sdr-administrator', 'dor-apo-manager', 'dor-apo-depositor']
124
124
  end
125
125
  def groups_which_manage_desc_metadata
126
- ['dor-administrator','dor-apo-manager', 'dor-apo-depositor', 'dor-apo-metadata']
126
+ ['dor-administrator', 'sdr-administrator', 'dor-apo-manager', 'dor-apo-depositor', 'dor-apo-metadata']
127
127
  end
128
128
  def groups_which_manage_system_metadata
129
- ['dor-administrator','dor-apo-manager', 'dor-apo-depositor']
129
+ ['dor-administrator', 'sdr-administrator', 'dor-apo-manager', 'dor-apo-depositor']
130
130
  end
131
131
  def groups_which_manage_content
132
- ['dor-administrator','dor-apo-manager', 'dor-apo-depositor']
132
+ ['dor-administrator', 'sdr-administrator', 'dor-apo-manager', 'dor-apo-depositor']
133
133
  end
134
134
  def groups_which_manage_rights
135
- ['dor-administrator','dor-apo-manager', 'dor-apo-depositor']
135
+ ['dor-administrator', 'sdr-administrator', 'dor-apo-manager', 'dor-apo-depositor']
136
136
  end
137
137
  def groups_which_manage_embargo
138
- ['dor-administrator','dor-apo-manager', 'dor-apo-depositor']
138
+ ['dor-administrator', 'sdr-administrator', 'dor-apo-manager', 'dor-apo-depositor']
139
139
  end
140
140
  def groups_which_view_content
141
- ['dor-administrator','dor-apo-manager', 'dor-apo-depositor', 'dor-viewer']
141
+ ['dor-administrator', 'sdr-administrator', 'dor-apo-manager', 'dor-apo-depositor', 'dor-viewer', 'sdr-viewer']
142
142
  end
143
143
  def groups_which_view_metadata
144
- ['dor-administrator','dor-apo-manager', 'dor-apo-depositor', 'dor-viewer']
144
+ ['dor-administrator', 'sdr-administrator', 'dor-apo-manager', 'dor-apo-depositor', 'dor-viewer', 'sdr-viewer']
145
145
  end
146
146
  def intersect arr1, arr2
147
147
  return (arr1 & arr2).length > 0
@@ -0,0 +1,101 @@
1
+ require 'pathname'
2
+
3
+ module Dor
4
+
5
+ # Remove all traces of the object's data files from the workspace and export areas
6
+ class CleanupResetService
7
+
8
+ # @param [String] druid The identifier for the object whose reset data is to be removed
9
+ # @return [void] remove copy of the reset data that was exported to preservation core
10
+ def self.cleanup_by_reset_druid(druid)
11
+ last_version = get_druid_last_version(druid)
12
+ cleanup_reset_workspace_content(druid, last_version, Config.cleanup.local_workspace_root)
13
+ cleanup_reset_workspace_content(druid, last_version, Config.cleanup.local_assembly_root)
14
+ cleanup_reset_export(druid, last_version)
15
+ end
16
+
17
+ def self.get_druid_last_version(druid)
18
+ druid_obj = Dor::Item.find(druid)
19
+ last_version = druid_obj.current_version.to_i
20
+
21
+ #if the current version is still open, avoid this versioned directory
22
+ if Dor::WorkflowService.get_lifecycle('dor', druid, 'accessioned').nil? then
23
+ last_version = last_version - 1
24
+ end
25
+ return last_version
26
+ end
27
+
28
+ # @param [String] druid The identifier for the object whose reset data is to be removed
29
+ # @param [String] base The base directory to delete from
30
+ # @param [Integer] last_version The last version that the data should be removed until version 1
31
+ # @return [void] remove all the object's reset data files from the workspace area equal to less than the last_version
32
+ def self.cleanup_reset_workspace_content(druid,last_version, base)
33
+ base_druid = DruidTools::Druid.new(druid, base)
34
+ base_druid_tree = base_druid.pathname.to_s
35
+ #if it is truncated tree /aa/111/aaa/1111/content,
36
+ #we should follow the regular cleanup technique
37
+
38
+ reset_directories = get_reset_dir_list(last_version, base_druid_tree)
39
+ reset_directories.each do |path|
40
+ FileUtils.rm_rf(path)
41
+ end
42
+ base_druid.prune_ancestors(base_druid.pathname.parent)
43
+ end
44
+
45
+
46
+ # @param [String] druid The identifier for the object whose reset data is to be removed
47
+ # @param [String] base The base directory to delete from
48
+ # @param [Integer] last_version The last version that the data should be removed until version 1
49
+ # @return [void] prepares a list of reset directories that should be removed
50
+ def self.get_reset_dir_list(last_version, base_druid_tree)
51
+ reset_directories = []
52
+ for i in 1..last_version
53
+ reset_path = "#{base_druid_tree}_v#{i}"
54
+ reset_directories.append(reset_path) if File.exists?(reset_path)
55
+ end
56
+ return reset_directories
57
+ end
58
+
59
+ # @param [String] druid The identifier for the object whose reset bags data is to be removed
60
+ # @return [void] remove copy of the reset data that was exported to preservation core
61
+ def self.cleanup_reset_export(druid, last_version)
62
+ id = druid.split(':').last
63
+ base_bag_directory = File.join(Config.cleanup.local_export_home, id)
64
+
65
+ bag_dir_list = get_reset_bag_dir_list(last_version, base_bag_directory)
66
+ bag_dir_list.each do |bag_dir|
67
+ Pathname(bag_dir).rmtree
68
+ end
69
+
70
+ bag_tar_list = get_reset_bag_tar_list(last_version, base_bag_directory)
71
+ bag_tar_list.each do |bag_tar|
72
+ Pathname(bag_tar).rmtree
73
+ end
74
+ end
75
+
76
+ # @param [Integer] last_version The last version that the data should be removed until version 1
77
+ # @param [String] base_bag_directory The base bag directory including the export home and druid id
78
+ # @return [void] prepares a list of reset bag directories that should be removed
79
+ def self.get_reset_bag_dir_list(last_version, base_bag_directory)
80
+ reset_bags = []
81
+ for i in 1..last_version do
82
+ reset_path = "#{base_bag_directory}_v#{i}"
83
+ reset_bags.append(reset_path) if File.exists?(reset_path)
84
+ end
85
+ return reset_bags
86
+ end
87
+
88
+ # @param [String] base_bag_directory The base bag directory including the export home and druid id
89
+ # @param [Integer] last_version The last version that the data should be removed until version 1
90
+ # @return [void] prepares a list of reset bag tars that should be removed
91
+ def self.get_reset_bag_tar_list(last_version, base_bag_directory)
92
+ reset_bags = []
93
+ for i in 1..last_version do
94
+ reset_path = "#{base_bag_directory}_v#{i}.tar"
95
+ reset_bags.append(reset_path) if File.exists?(reset_path)
96
+ end
97
+ return reset_bags
98
+ end
99
+
100
+ end
101
+ end
@@ -18,31 +18,13 @@ module Dor
18
18
  cleanup_export(druid)
19
19
  end
20
20
 
21
- # Tries to remove any exsitence of the object in our systems
22
- # Does the following:
23
- # - Removes item from Dor/Fedora/Solr
24
- # - Removes content from dor workspace
25
- # - Removes content from assembly workspace
26
- # - Removes content from sdr export area
27
- # - Removes content from stacks
28
- # - Removes content from purl
29
- # - Removes active workflows
30
- # @param [String] druid id of the object you wish to remove
31
- def self.nuke!(druid)
32
- cleanup_by_druid druid
33
- cleanup_stacks druid
34
- cleanup_purl_doc_cache druid
35
- remove_active_workflows druid
36
- delete_from_dor druid
37
- end
38
-
39
21
  # @param [String] druid The identifier for the object whose data is to be removed
40
22
  # @param [String] base The base directory to delete from
41
23
  # @return [void] remove the object's data files from the workspace area
42
24
  def self.cleanup_workspace_content(druid, base)
43
25
  DruidTools::Druid.new(druid, base).prune!
44
26
  end
45
-
27
+
46
28
  # @param [String] druid The identifier for the object whose data is to be removed
47
29
  # @return [void] remove copy of the data that was exported to preservation core
48
30
  def self.cleanup_export(druid)
@@ -60,6 +42,24 @@ module Dor
60
42
  pathname.rmtree if pathname.exist?
61
43
  end
62
44
 
45
+ # Tries to remove any exsitence of the object in our systems
46
+ # Does the following:
47
+ # - Removes item from Dor/Fedora/Solr
48
+ # - Removes content from dor workspace
49
+ # - Removes content from assembly workspace
50
+ # - Removes content from sdr export area
51
+ # - Removes content from stacks
52
+ # - Removes content from purl
53
+ # - Removes active workflows
54
+ # @param [String] druid id of the object you wish to remove
55
+ def self.nuke!(druid)
56
+ cleanup_by_druid druid
57
+ cleanup_stacks druid
58
+ cleanup_purl_doc_cache druid
59
+ remove_active_workflows druid
60
+ delete_from_dor druid
61
+ end
62
+
63
63
  def self.cleanup_stacks(druid)
64
64
  DruidTools::StacksDruid.new(druid, Config.stacks.local_storage_root).prune!
65
65
  end
@@ -83,7 +83,9 @@ module Dor
83
83
  Dor::SearchService.solr.delete_by_id(pid)
84
84
  Dor::SearchService.solr.commit
85
85
  end
86
+ end
87
+
88
+ end
86
89
 
87
- end
88
90
 
89
- end
91
+
@@ -0,0 +1,35 @@
1
+ module Dor
2
+
3
+ # Rename the druid trees at the end of the accessionWF in order to be cleaned/deleted later.
4
+ class ResetWorkspaceService
5
+
6
+ def self.reset_workspace_druid_tree(druid, version, workspace_root)
7
+
8
+ druid_tree_path = DruidTools::Druid.new(druid, workspace_root).pathname.to_s
9
+
10
+ raise "The archived directory #{druid_tree_path}_v#{version} already existed." if File.exists?("#{druid_tree_path}_v#{version}")
11
+
12
+ if File.exists?(druid_tree_path)
13
+ FileUtils.mv(druid_tree_path, "#{druid_tree_path}_v#{version}")
14
+ end #Else is a truncated tree where we shouldn't do anything
15
+
16
+ end
17
+
18
+ def self.reset_export_bag(druid, version, export_root)
19
+
20
+ id = druid.split(':').last
21
+ bag_dir = File.join(export_root, id)
22
+
23
+ raise "The archived bag #{bag_dir}_v#{version} already existed." if File.exists?("#{bag_dir}_v#{version}")
24
+
25
+ if File.exists?(bag_dir)
26
+ FileUtils.mv(bag_dir, "#{bag_dir}_v#{version}")
27
+ end
28
+
29
+ if File.exists?("#{bag_dir}.tar")
30
+ FileUtils.mv("#{bag_dir}.tar", "#{bag_dir}_v#{version}.tar")
31
+ end
32
+ end
33
+
34
+ end
35
+ end
data/lib/dor/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Dor
2
- VERSION = '4.12.2'
2
+ VERSION = '4.12.3'
3
3
  end
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dor-services
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.12.2
4
+ version: 4.12.3
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Michael Klein
@@ -12,11 +13,12 @@ authors:
12
13
  autorequire:
13
14
  bindir: bin
14
15
  cert_chain: []
15
- date: 2014-07-25 00:00:00.000000000 Z
16
+ date: 2014-08-06 00:00:00.000000000 Z
16
17
  dependencies:
17
18
  - !ruby/object:Gem::Dependency
18
19
  name: active-fedora
19
20
  requirement: !ruby/object:Gem::Requirement
21
+ none: false
20
22
  requirements:
21
23
  - - ~>
22
24
  - !ruby/object:Gem::Version
@@ -24,6 +26,7 @@ dependencies:
24
26
  type: :runtime
25
27
  prerelease: false
26
28
  version_requirements: !ruby/object:Gem::Requirement
29
+ none: false
27
30
  requirements:
28
31
  - - ~>
29
32
  - !ruby/object:Gem::Version
@@ -31,6 +34,7 @@ dependencies:
31
34
  - !ruby/object:Gem::Dependency
32
35
  name: activesupport
33
36
  requirement: !ruby/object:Gem::Requirement
37
+ none: false
34
38
  requirements:
35
39
  - - ~>
36
40
  - !ruby/object:Gem::Version
@@ -41,6 +45,7 @@ dependencies:
41
45
  type: :runtime
42
46
  prerelease: false
43
47
  version_requirements: !ruby/object:Gem::Requirement
48
+ none: false
44
49
  requirements:
45
50
  - - ~>
46
51
  - !ruby/object:Gem::Version
@@ -51,6 +56,7 @@ dependencies:
51
56
  - !ruby/object:Gem::Dependency
52
57
  name: confstruct
53
58
  requirement: !ruby/object:Gem::Requirement
59
+ none: false
54
60
  requirements:
55
61
  - - ~>
56
62
  - !ruby/object:Gem::Version
@@ -58,6 +64,7 @@ dependencies:
58
64
  type: :runtime
59
65
  prerelease: false
60
66
  version_requirements: !ruby/object:Gem::Requirement
67
+ none: false
61
68
  requirements:
62
69
  - - ~>
63
70
  - !ruby/object:Gem::Version
@@ -65,6 +72,7 @@ dependencies:
65
72
  - !ruby/object:Gem::Dependency
66
73
  name: equivalent-xml
67
74
  requirement: !ruby/object:Gem::Requirement
75
+ none: false
68
76
  requirements:
69
77
  - - ~>
70
78
  - !ruby/object:Gem::Version
@@ -72,6 +80,7 @@ dependencies:
72
80
  type: :runtime
73
81
  prerelease: false
74
82
  version_requirements: !ruby/object:Gem::Requirement
83
+ none: false
75
84
  requirements:
76
85
  - - ~>
77
86
  - !ruby/object:Gem::Version
@@ -79,6 +88,7 @@ dependencies:
79
88
  - !ruby/object:Gem::Dependency
80
89
  name: json
81
90
  requirement: !ruby/object:Gem::Requirement
91
+ none: false
82
92
  requirements:
83
93
  - - ~>
84
94
  - !ruby/object:Gem::Version
@@ -86,6 +96,7 @@ dependencies:
86
96
  type: :runtime
87
97
  prerelease: false
88
98
  version_requirements: !ruby/object:Gem::Requirement
99
+ none: false
89
100
  requirements:
90
101
  - - ~>
91
102
  - !ruby/object:Gem::Version
@@ -93,6 +104,7 @@ dependencies:
93
104
  - !ruby/object:Gem::Dependency
94
105
  name: net-sftp
95
106
  requirement: !ruby/object:Gem::Requirement
107
+ none: false
96
108
  requirements:
97
109
  - - ~>
98
110
  - !ruby/object:Gem::Version
@@ -100,6 +112,7 @@ dependencies:
100
112
  type: :runtime
101
113
  prerelease: false
102
114
  version_requirements: !ruby/object:Gem::Requirement
115
+ none: false
103
116
  requirements:
104
117
  - - ~>
105
118
  - !ruby/object:Gem::Version
@@ -107,6 +120,7 @@ dependencies:
107
120
  - !ruby/object:Gem::Dependency
108
121
  name: net-ssh
109
122
  requirement: !ruby/object:Gem::Requirement
123
+ none: false
110
124
  requirements:
111
125
  - - ~>
112
126
  - !ruby/object:Gem::Version
@@ -114,6 +128,7 @@ dependencies:
114
128
  type: :runtime
115
129
  prerelease: false
116
130
  version_requirements: !ruby/object:Gem::Requirement
131
+ none: false
117
132
  requirements:
118
133
  - - ~>
119
134
  - !ruby/object:Gem::Version
@@ -121,6 +136,7 @@ dependencies:
121
136
  - !ruby/object:Gem::Dependency
122
137
  name: nokogiri
123
138
  requirement: !ruby/object:Gem::Requirement
139
+ none: false
124
140
  requirements:
125
141
  - - ~>
126
142
  - !ruby/object:Gem::Version
@@ -128,6 +144,7 @@ dependencies:
128
144
  type: :runtime
129
145
  prerelease: false
130
146
  version_requirements: !ruby/object:Gem::Requirement
147
+ none: false
131
148
  requirements:
132
149
  - - ~>
133
150
  - !ruby/object:Gem::Version
@@ -135,6 +152,7 @@ dependencies:
135
152
  - !ruby/object:Gem::Dependency
136
153
  name: om
137
154
  requirement: !ruby/object:Gem::Requirement
155
+ none: false
138
156
  requirements:
139
157
  - - ~>
140
158
  - !ruby/object:Gem::Version
@@ -142,6 +160,7 @@ dependencies:
142
160
  type: :runtime
143
161
  prerelease: false
144
162
  version_requirements: !ruby/object:Gem::Requirement
163
+ none: false
145
164
  requirements:
146
165
  - - ~>
147
166
  - !ruby/object:Gem::Version
@@ -149,6 +168,7 @@ dependencies:
149
168
  - !ruby/object:Gem::Dependency
150
169
  name: progressbar
151
170
  requirement: !ruby/object:Gem::Requirement
171
+ none: false
152
172
  requirements:
153
173
  - - ~>
154
174
  - !ruby/object:Gem::Version
@@ -156,6 +176,7 @@ dependencies:
156
176
  type: :runtime
157
177
  prerelease: false
158
178
  version_requirements: !ruby/object:Gem::Requirement
179
+ none: false
159
180
  requirements:
160
181
  - - ~>
161
182
  - !ruby/object:Gem::Version
@@ -163,6 +184,7 @@ dependencies:
163
184
  - !ruby/object:Gem::Dependency
164
185
  name: rdf
165
186
  requirement: !ruby/object:Gem::Requirement
187
+ none: false
166
188
  requirements:
167
189
  - - ~>
168
190
  - !ruby/object:Gem::Version
@@ -170,6 +192,7 @@ dependencies:
170
192
  type: :runtime
171
193
  prerelease: false
172
194
  version_requirements: !ruby/object:Gem::Requirement
195
+ none: false
173
196
  requirements:
174
197
  - - ~>
175
198
  - !ruby/object:Gem::Version
@@ -177,6 +200,7 @@ dependencies:
177
200
  - !ruby/object:Gem::Dependency
178
201
  name: rest-client
179
202
  requirement: !ruby/object:Gem::Requirement
203
+ none: false
180
204
  requirements:
181
205
  - - ~>
182
206
  - !ruby/object:Gem::Version
@@ -184,6 +208,7 @@ dependencies:
184
208
  type: :runtime
185
209
  prerelease: false
186
210
  version_requirements: !ruby/object:Gem::Requirement
211
+ none: false
187
212
  requirements:
188
213
  - - ~>
189
214
  - !ruby/object:Gem::Version
@@ -191,6 +216,7 @@ dependencies:
191
216
  - !ruby/object:Gem::Dependency
192
217
  name: rsolr-ext
193
218
  requirement: !ruby/object:Gem::Requirement
219
+ none: false
194
220
  requirements:
195
221
  - - ~>
196
222
  - !ruby/object:Gem::Version
@@ -198,6 +224,7 @@ dependencies:
198
224
  type: :runtime
199
225
  prerelease: false
200
226
  version_requirements: !ruby/object:Gem::Requirement
227
+ none: false
201
228
  requirements:
202
229
  - - ~>
203
230
  - !ruby/object:Gem::Version
@@ -205,6 +232,7 @@ dependencies:
205
232
  - !ruby/object:Gem::Dependency
206
233
  name: ruby-cache
207
234
  requirement: !ruby/object:Gem::Requirement
235
+ none: false
208
236
  requirements:
209
237
  - - ~>
210
238
  - !ruby/object:Gem::Version
@@ -212,6 +240,7 @@ dependencies:
212
240
  type: :runtime
213
241
  prerelease: false
214
242
  version_requirements: !ruby/object:Gem::Requirement
243
+ none: false
215
244
  requirements:
216
245
  - - ~>
217
246
  - !ruby/object:Gem::Version
@@ -219,6 +248,7 @@ dependencies:
219
248
  - !ruby/object:Gem::Dependency
220
249
  name: ruby-graphviz
221
250
  requirement: !ruby/object:Gem::Requirement
251
+ none: false
222
252
  requirements:
223
253
  - - ~>
224
254
  - !ruby/object:Gem::Version
@@ -226,6 +256,7 @@ dependencies:
226
256
  type: :runtime
227
257
  prerelease: false
228
258
  version_requirements: !ruby/object:Gem::Requirement
259
+ none: false
229
260
  requirements:
230
261
  - - ~>
231
262
  - !ruby/object:Gem::Version
@@ -233,6 +264,7 @@ dependencies:
233
264
  - !ruby/object:Gem::Dependency
234
265
  name: rubydora
235
266
  requirement: !ruby/object:Gem::Requirement
267
+ none: false
236
268
  requirements:
237
269
  - - ~>
238
270
  - !ruby/object:Gem::Version
@@ -240,6 +272,7 @@ dependencies:
240
272
  type: :runtime
241
273
  prerelease: false
242
274
  version_requirements: !ruby/object:Gem::Requirement
275
+ none: false
243
276
  requirements:
244
277
  - - ~>
245
278
  - !ruby/object:Gem::Version
@@ -247,6 +280,7 @@ dependencies:
247
280
  - !ruby/object:Gem::Dependency
248
281
  name: solrizer
249
282
  requirement: !ruby/object:Gem::Requirement
283
+ none: false
250
284
  requirements:
251
285
  - - ~>
252
286
  - !ruby/object:Gem::Version
@@ -254,6 +288,7 @@ dependencies:
254
288
  type: :runtime
255
289
  prerelease: false
256
290
  version_requirements: !ruby/object:Gem::Requirement
291
+ none: false
257
292
  requirements:
258
293
  - - ~>
259
294
  - !ruby/object:Gem::Version
@@ -261,6 +296,7 @@ dependencies:
261
296
  - !ruby/object:Gem::Dependency
262
297
  name: systemu
263
298
  requirement: !ruby/object:Gem::Requirement
299
+ none: false
264
300
  requirements:
265
301
  - - ~>
266
302
  - !ruby/object:Gem::Version
@@ -268,6 +304,7 @@ dependencies:
268
304
  type: :runtime
269
305
  prerelease: false
270
306
  version_requirements: !ruby/object:Gem::Requirement
307
+ none: false
271
308
  requirements:
272
309
  - - ~>
273
310
  - !ruby/object:Gem::Version
@@ -275,6 +312,7 @@ dependencies:
275
312
  - !ruby/object:Gem::Dependency
276
313
  name: uuidtools
277
314
  requirement: !ruby/object:Gem::Requirement
315
+ none: false
278
316
  requirements:
279
317
  - - ~>
280
318
  - !ruby/object:Gem::Version
@@ -282,6 +320,7 @@ dependencies:
282
320
  type: :runtime
283
321
  prerelease: false
284
322
  version_requirements: !ruby/object:Gem::Requirement
323
+ none: false
285
324
  requirements:
286
325
  - - ~>
287
326
  - !ruby/object:Gem::Version
@@ -289,6 +328,7 @@ dependencies:
289
328
  - !ruby/object:Gem::Dependency
290
329
  name: validatable
291
330
  requirement: !ruby/object:Gem::Requirement
331
+ none: false
292
332
  requirements:
293
333
  - - ~>
294
334
  - !ruby/object:Gem::Version
@@ -296,6 +336,7 @@ dependencies:
296
336
  type: :runtime
297
337
  prerelease: false
298
338
  version_requirements: !ruby/object:Gem::Requirement
339
+ none: false
299
340
  requirements:
300
341
  - - ~>
301
342
  - !ruby/object:Gem::Version
@@ -303,6 +344,7 @@ dependencies:
303
344
  - !ruby/object:Gem::Dependency
304
345
  name: dor-workflow-service
305
346
  requirement: !ruby/object:Gem::Requirement
347
+ none: false
306
348
  requirements:
307
349
  - - ~>
308
350
  - !ruby/object:Gem::Version
@@ -313,6 +355,7 @@ dependencies:
313
355
  type: :runtime
314
356
  prerelease: false
315
357
  version_requirements: !ruby/object:Gem::Requirement
358
+ none: false
316
359
  requirements:
317
360
  - - ~>
318
361
  - !ruby/object:Gem::Version
@@ -323,20 +366,23 @@ dependencies:
323
366
  - !ruby/object:Gem::Dependency
324
367
  name: druid-tools
325
368
  requirement: !ruby/object:Gem::Requirement
369
+ none: false
326
370
  requirements:
327
371
  - - ~>
328
372
  - !ruby/object:Gem::Version
329
- version: 0.3.0
373
+ version: 0.3.1
330
374
  type: :runtime
331
375
  prerelease: false
332
376
  version_requirements: !ruby/object:Gem::Requirement
377
+ none: false
333
378
  requirements:
334
379
  - - ~>
335
380
  - !ruby/object:Gem::Version
336
- version: 0.3.0
381
+ version: 0.3.1
337
382
  - !ruby/object:Gem::Dependency
338
383
  name: lyber-utils
339
384
  requirement: !ruby/object:Gem::Requirement
385
+ none: false
340
386
  requirements:
341
387
  - - ~>
342
388
  - !ruby/object:Gem::Version
@@ -344,6 +390,7 @@ dependencies:
344
390
  type: :runtime
345
391
  prerelease: false
346
392
  version_requirements: !ruby/object:Gem::Requirement
393
+ none: false
347
394
  requirements:
348
395
  - - ~>
349
396
  - !ruby/object:Gem::Version
@@ -351,6 +398,7 @@ dependencies:
351
398
  - !ruby/object:Gem::Dependency
352
399
  name: moab-versioning
353
400
  requirement: !ruby/object:Gem::Requirement
401
+ none: false
354
402
  requirements:
355
403
  - - '='
356
404
  - !ruby/object:Gem::Version
@@ -358,6 +406,7 @@ dependencies:
358
406
  type: :runtime
359
407
  prerelease: false
360
408
  version_requirements: !ruby/object:Gem::Requirement
409
+ none: false
361
410
  requirements:
362
411
  - - '='
363
412
  - !ruby/object:Gem::Version
@@ -365,6 +414,7 @@ dependencies:
365
414
  - !ruby/object:Gem::Dependency
366
415
  name: stanford-mods
367
416
  requirement: !ruby/object:Gem::Requirement
417
+ none: false
368
418
  requirements:
369
419
  - - ~>
370
420
  - !ruby/object:Gem::Version
@@ -372,6 +422,7 @@ dependencies:
372
422
  type: :runtime
373
423
  prerelease: false
374
424
  version_requirements: !ruby/object:Gem::Requirement
425
+ none: false
375
426
  requirements:
376
427
  - - ~>
377
428
  - !ruby/object:Gem::Version
@@ -379,6 +430,7 @@ dependencies:
379
430
  - !ruby/object:Gem::Dependency
380
431
  name: fakeweb
381
432
  requirement: !ruby/object:Gem::Requirement
433
+ none: false
382
434
  requirements:
383
435
  - - ~>
384
436
  - !ruby/object:Gem::Version
@@ -386,6 +438,7 @@ dependencies:
386
438
  type: :development
387
439
  prerelease: false
388
440
  version_requirements: !ruby/object:Gem::Requirement
441
+ none: false
389
442
  requirements:
390
443
  - - ~>
391
444
  - !ruby/object:Gem::Version
@@ -393,6 +446,7 @@ dependencies:
393
446
  - !ruby/object:Gem::Dependency
394
447
  name: haml
395
448
  requirement: !ruby/object:Gem::Requirement
449
+ none: false
396
450
  requirements:
397
451
  - - ~>
398
452
  - !ruby/object:Gem::Version
@@ -400,6 +454,7 @@ dependencies:
400
454
  type: :development
401
455
  prerelease: false
402
456
  version_requirements: !ruby/object:Gem::Requirement
457
+ none: false
403
458
  requirements:
404
459
  - - ~>
405
460
  - !ruby/object:Gem::Version
@@ -407,6 +462,7 @@ dependencies:
407
462
  - !ruby/object:Gem::Dependency
408
463
  name: jhove-service
409
464
  requirement: !ruby/object:Gem::Requirement
465
+ none: false
410
466
  requirements:
411
467
  - - ~>
412
468
  - !ruby/object:Gem::Version
@@ -414,6 +470,7 @@ dependencies:
414
470
  type: :development
415
471
  prerelease: false
416
472
  version_requirements: !ruby/object:Gem::Requirement
473
+ none: false
417
474
  requirements:
418
475
  - - ~>
419
476
  - !ruby/object:Gem::Version
@@ -421,6 +478,7 @@ dependencies:
421
478
  - !ruby/object:Gem::Dependency
422
479
  name: rake
423
480
  requirement: !ruby/object:Gem::Requirement
481
+ none: false
424
482
  requirements:
425
483
  - - ~>
426
484
  - !ruby/object:Gem::Version
@@ -428,6 +486,7 @@ dependencies:
428
486
  type: :development
429
487
  prerelease: false
430
488
  version_requirements: !ruby/object:Gem::Requirement
489
+ none: false
431
490
  requirements:
432
491
  - - ~>
433
492
  - !ruby/object:Gem::Version
@@ -435,6 +494,7 @@ dependencies:
435
494
  - !ruby/object:Gem::Dependency
436
495
  name: rdoc
437
496
  requirement: !ruby/object:Gem::Requirement
497
+ none: false
438
498
  requirements:
439
499
  - - ~>
440
500
  - !ruby/object:Gem::Version
@@ -442,6 +502,7 @@ dependencies:
442
502
  type: :development
443
503
  prerelease: false
444
504
  version_requirements: !ruby/object:Gem::Requirement
505
+ none: false
445
506
  requirements:
446
507
  - - ~>
447
508
  - !ruby/object:Gem::Version
@@ -449,6 +510,7 @@ dependencies:
449
510
  - !ruby/object:Gem::Dependency
450
511
  name: rspec
451
512
  requirement: !ruby/object:Gem::Requirement
513
+ none: false
452
514
  requirements:
453
515
  - - ~>
454
516
  - !ruby/object:Gem::Version
@@ -456,6 +518,7 @@ dependencies:
456
518
  type: :development
457
519
  prerelease: false
458
520
  version_requirements: !ruby/object:Gem::Requirement
521
+ none: false
459
522
  requirements:
460
523
  - - ~>
461
524
  - !ruby/object:Gem::Version
@@ -463,6 +526,7 @@ dependencies:
463
526
  - !ruby/object:Gem::Dependency
464
527
  name: yard
465
528
  requirement: !ruby/object:Gem::Requirement
529
+ none: false
466
530
  requirements:
467
531
  - - ~>
468
532
  - !ruby/object:Gem::Version
@@ -470,6 +534,7 @@ dependencies:
470
534
  type: :development
471
535
  prerelease: false
472
536
  version_requirements: !ruby/object:Gem::Requirement
537
+ none: false
473
538
  requirements:
474
539
  - - ~>
475
540
  - !ruby/object:Gem::Version
@@ -532,7 +597,7 @@ files:
532
597
  - lib/dor/models/upgradable.rb
533
598
  - lib/dor/models/versionable.rb
534
599
  - lib/dor/models/workflow_object.rb
535
- - lib/dor/services/archive_workspace_service.rb
600
+ - lib/dor/services/cleanup_reset_service.rb
536
601
  - lib/dor/services/cleanup_service.rb
537
602
  - lib/dor/services/digital_stacks_service.rb
538
603
  - lib/dor/services/merge_service.rb
@@ -540,6 +605,7 @@ files:
540
605
  - lib/dor/services/metadata_handlers/mdtoolkit_handler.rb
541
606
  - lib/dor/services/metadata_service.rb
542
607
  - lib/dor/services/registration_service.rb
608
+ - lib/dor/services/reset_workspace_service.rb
543
609
  - lib/dor/services/sdr_ingest_service.rb
544
610
  - lib/dor/services/search_service.rb
545
611
  - lib/dor/services/suri_service.rb
@@ -558,34 +624,40 @@ files:
558
624
  - lib/gsearch/schema.xml
559
625
  - lib/tasks/dor.rake
560
626
  - lib/tasks/rdoc.rake
627
+ - config/certs/dlss-dev-test.crt
628
+ - config/certs/dlss-dev-test.key
561
629
  - config/certs/README
630
+ - config/certs/robots-dor-dev.crt
631
+ - config/certs/robots-dor-dev.key
562
632
  - config/config_defaults.yml
633
+ - config/dev_console_env.rb
563
634
  - config/dev_console_env.rb.example
564
635
  - config/predicate_mappings.yml
565
636
  - bin/dor-indexer
566
637
  - bin/dor-indexerd
567
638
  homepage:
568
639
  licenses: []
569
- metadata: {}
570
640
  post_install_message:
571
641
  rdoc_options: []
572
642
  require_paths:
573
643
  - lib
574
644
  required_ruby_version: !ruby/object:Gem::Requirement
645
+ none: false
575
646
  requirements:
576
647
  - - ! '>='
577
648
  - !ruby/object:Gem::Version
578
649
  version: '0'
579
650
  required_rubygems_version: !ruby/object:Gem::Requirement
651
+ none: false
580
652
  requirements:
581
653
  - - ! '>='
582
654
  - !ruby/object:Gem::Version
583
655
  version: 1.3.6
584
656
  requirements: []
585
657
  rubyforge_project:
586
- rubygems_version: 2.1.2
658
+ rubygems_version: 1.8.25
587
659
  signing_key:
588
- specification_version: 4
660
+ specification_version: 3
589
661
  summary: Ruby implmentation of DOR services used by the SULAIR Digital Library
590
662
  test_files: []
591
663
  has_rdoc:
checksums.yaml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MTI2ZjBkOTExNzRmMGZhNTlmYzNjOTg0MzUyYWFlMzAyYzMwMjMzMA==
5
- data.tar.gz: !binary |-
6
- MDNmMjQzNzU1YTBhYzIwMmJmNzcwNzEzNmUwNWUyYThjYzY2Njg1YQ==
7
- SHA512:
8
- metadata.gz: !binary |-
9
- MjNmY2RhNmVkZGVkNTRjMWU3NzU4ZTlhZjY2OTkxMTg2ZmI5OWIxMGNhMTU5
10
- M2QyYzE1OGM1MzA4NmNjY2M4ZDE3ZDY5ZDEwZDQwNmNkMmYyYWY5Y2UzYjNk
11
- MWM4OTFkMDFlOWZjMzUwODM0MmU4NzBmMzI2OTllMGEyMDE5MTg=
12
- data.tar.gz: !binary |-
13
- MzQ0YzQ2OGQ5M2Q0NGQ1MmIwMzY0NjgzOGIwMmI3MDc3OGZmMGNiMTllZWQ1
14
- YjlmZTQ4MzUyNmQ0NzZjYjgzNzI3MjY4ODFhZjZiZTUyZWM4MTJkMzM5NjAy
15
- MTdhNGJiMGVlNGU4NmRhYTQzZjRmYzAzNjc1ZDVkODc1YjY4MTY=
@@ -1,19 +0,0 @@
1
- module Dor
2
-
3
- # Rename the druid trees at the end of the accessionWF in order to be cleaned/deleted later.
4
- class ArchiveWorkspaceService
5
-
6
- def self.archive_workspace_druid_tree(druid, version, workspace_root)
7
-
8
- druid_tree_path = DruidTools::Druid.new(druid, workspace_root).pathname.to_s
9
-
10
- raise "The archived directory #{druid_tree_path}_v#{version} already existed." if File.exists?("#{druid_tree_path}_v#{version}")
11
-
12
- if File.exists?(druid_tree_path)
13
- FileUtils.mv(druid_tree_path, "#{druid_tree_path}_v#{version}")
14
- end #Else is a truncated tree where we shouldn't do anything
15
-
16
- end
17
-
18
- end
19
- end