hyrax 3.0.0.pre.rc4 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +41 -8
- data/.dassie/Gemfile +10 -5
- data/.dassie/config/cable.yml +1 -1
- data/.dassie/config/environments/development.rb +2 -0
- data/.dassie/config/environments/production.rb +1 -1
- data/.dassie/config/initializers/hyrax.rb +5 -0
- data/.dassie/config/initializers/riiif.rb +22 -20
- data/.dassie/config/redis.yml +1 -0
- data/.dassie/config/role_map.yml +2 -0
- data/.dassie/db/seeds.rb +9 -1
- data/.dassie/package.json +3 -5
- data/.dockerignore +4 -0
- data/.env +1 -2
- data/.rubocop.yml +4 -0
- data/CONTAINERS.md +21 -1
- data/Dockerfile +46 -17
- data/Gemfile +21 -27
- data/app/actors/hyrax/actors/base_actor.rb +1 -1
- data/app/actors/hyrax/actors/create_with_remote_files_actor.rb +89 -41
- data/app/actors/hyrax/actors/create_with_remote_files_ordered_members_actor.rb +7 -42
- data/app/actors/hyrax/actors/file_actor.rb +4 -2
- data/app/actors/hyrax/actors/file_set_actor.rb +18 -11
- data/app/controllers/concerns/hyrax/collections_controller_behavior.rb +20 -8
- data/app/controllers/concerns/hyrax/embargoes_controller_behavior.rb +21 -9
- data/app/controllers/concerns/hyrax/leases_controller_behavior.rb +14 -5
- data/app/controllers/concerns/hyrax/works_controller_behavior.rb +38 -8
- data/app/controllers/hyrax/admin/permission_template_accesses_controller.rb +0 -4
- data/app/controllers/hyrax/admin/workflows_controller.rb +8 -2
- data/app/controllers/hyrax/dashboard/collection_members_controller.rb +13 -9
- data/app/controllers/hyrax/dashboard/collections_controller.rb +14 -14
- data/app/controllers/hyrax/file_sets_controller.rb +49 -13
- data/app/controllers/hyrax/permissions_controller.rb +3 -4
- data/app/controllers/hyrax/workflow_actions_controller.rb +3 -1
- data/app/forms/hyrax/forms/collection_form.rb +12 -6
- data/app/forms/hyrax/forms/dashboard/nest_collection_form.rb +24 -2
- data/app/forms/hyrax/forms/file_set_form.rb +46 -0
- data/app/forms/hyrax/forms/permission.rb +23 -0
- data/app/forms/hyrax/forms/permission_template_form.rb +8 -2
- data/app/forms/hyrax/forms/resource_form.rb +31 -13
- data/app/forms/hyrax/forms/work_form.rb +5 -2
- data/app/helpers/hyrax/batch_edits_helper.rb +3 -1
- data/app/helpers/hyrax/collections_helper.rb +88 -2
- data/app/helpers/hyrax/dashboard_helper_behavior.rb +16 -5
- data/app/helpers/hyrax/embargo_helper.rb +4 -0
- data/app/helpers/hyrax/file_set_helper.rb +25 -6
- data/app/helpers/hyrax/hyrax_helper_behavior.rb +8 -0
- data/app/helpers/hyrax/lease_helper.rb +4 -0
- data/app/helpers/hyrax/url_helper.rb +4 -1
- data/app/helpers/hyrax/work_form_helper.rb +53 -0
- data/app/indexers/hyrax/administrative_set_indexer.rb +18 -0
- data/app/indexers/hyrax/valkyrie_file_set_indexer.rb +118 -0
- data/app/indexers/hyrax/valkyrie_indexer.rb +10 -4
- data/app/indexers/hyrax/valkyrie_work_indexer.rb +3 -1
- data/app/inputs/controlled_vocabulary_input.rb +2 -5
- data/app/jobs/attach_files_to_work_job.rb +19 -10
- data/app/jobs/attach_files_to_work_with_ordered_members_job.rb +6 -5
- data/app/jobs/embargo_expiry_job.rb +7 -5
- data/app/jobs/file_set_attached_event_job.rb +6 -1
- data/app/jobs/ingest_local_file_job.rb +18 -2
- data/app/jobs/inherit_permissions_job.rb +9 -5
- data/app/jobs/lease_expiry_job.rb +6 -4
- data/app/models/admin_set.rb +6 -25
- data/app/models/collection_branding_info.rb +25 -9
- data/app/models/concerns/hyrax/ability.rb +14 -1
- data/app/models/concerns/hyrax/collection_behavior.rb +17 -44
- data/app/models/concerns/hyrax/embargoable.rb +24 -0
- data/app/models/concerns/hyrax/file_set/characterization.rb +18 -12
- data/app/models/concerns/hyrax/solr_document_behavior.rb +9 -46
- data/app/models/concerns/hyrax/suppressible.rb +5 -0
- data/app/models/concerns/hyrax/user.rb +9 -3
- data/app/models/concerns/hyrax/work_behavior.rb +1 -1
- data/app/models/hyrax/file_set.rb +7 -0
- data/app/models/hyrax/pcdm_collection.rb +1 -0
- data/app/models/hyrax/permission_template.rb +98 -12
- data/app/models/hyrax/virus_scanner.rb +27 -18
- data/app/models/hyrax/work.rb +2 -0
- data/app/models/job_io_wrapper.rb +1 -1
- data/app/models/sipity/agent.rb +1 -0
- data/app/models/sipity/entity.rb +30 -8
- data/app/models/sipity/workflow.rb +1 -0
- data/app/models/sipity.rb +42 -0
- data/app/presenters/hyrax/admin_set_options_presenter.rb +12 -8
- data/app/presenters/hyrax/admin_set_presenter.rb +5 -1
- data/app/presenters/hyrax/admin_set_selection_presenter.rb +116 -0
- data/app/presenters/hyrax/collection_presenter.rb +41 -20
- data/app/presenters/hyrax/file_set_presenter.rb +6 -1
- data/app/presenters/hyrax/file_usage.rb +3 -2
- data/app/presenters/hyrax/pcdm_member_presenter_factory.rb +119 -0
- data/app/presenters/hyrax/stats_usage_presenter.rb +2 -1
- data/app/presenters/hyrax/trophy_presenter.rb +33 -4
- data/app/presenters/hyrax/user_profile_presenter.rb +11 -1
- data/app/presenters/hyrax/version_list_presenter.rb +19 -0
- data/app/presenters/hyrax/version_presenter.rb +3 -2
- data/app/presenters/hyrax/work_show_presenter.rb +30 -5
- data/app/presenters/hyrax/work_usage.rb +5 -3
- data/app/renderers/hyrax/renderers/attribute_renderer.rb +10 -2
- data/app/search_builders/hyrax/admin_set_search_builder.rb +1 -1
- data/app/search_builders/hyrax/collection_member_search_builder.rb +6 -1
- data/app/search_builders/hyrax/my/collections_search_builder.rb +2 -2
- data/app/search_builders/hyrax/nested_collections_parent_search_builder.rb +1 -1
- data/app/search_builders/hyrax/single_collection_search_builder.rb +1 -1
- data/app/services/hyrax/access_control_list.rb +1 -1
- data/app/services/hyrax/adapters/nesting_index_adapter.rb +1 -1
- data/app/services/hyrax/admin_set_create_service.rb +3 -1
- data/app/services/hyrax/collections/collection_member_search_service.rb +72 -0
- data/app/services/hyrax/collections/collection_member_service.rb +112 -27
- data/app/services/hyrax/collections/migration_service.rb +4 -2
- data/app/services/hyrax/collections/nested_collection_persistence_service.rb +12 -13
- data/app/services/hyrax/collections/nested_collection_query_service.rb +2 -0
- data/app/services/hyrax/collections/permissions_create_service.rb +6 -4
- data/app/services/hyrax/contextual_path.rb +24 -1
- data/app/services/hyrax/custom_queries/find_file_metadata.rb +7 -5
- data/app/services/hyrax/custom_queries/navigators/parent_collections_navigator.rb +46 -0
- data/app/services/hyrax/edit_permissions_service.rb +74 -41
- data/app/services/hyrax/embargo_manager.rb +1 -1
- data/app/services/hyrax/find_objects_via_solr_service.rb +31 -0
- data/app/services/hyrax/graph_exporter.rb +1 -1
- data/app/services/hyrax/listeners/member_cleanup_listener.rb +26 -0
- data/app/services/hyrax/listeners/metadata_index_listener.rb +18 -1
- data/app/services/hyrax/listeners/object_lifecycle_listener.rb +1 -1
- data/app/services/hyrax/listeners/trophy_cleanup_listener.rb +17 -0
- data/app/services/hyrax/listeners.rb +2 -0
- data/app/services/hyrax/multiple_membership_checker.rb +53 -29
- data/app/services/hyrax/persist_derivatives.rb +3 -1
- data/app/services/hyrax/resource_status.rb +7 -0
- data/app/services/hyrax/search_service.rb +4 -2
- data/app/services/hyrax/solr_query_builder_service.rb +45 -8
- data/app/services/hyrax/solr_query_service.rb +224 -0
- data/app/services/hyrax/solr_service.rb +8 -1
- data/app/services/hyrax/statistics/depositors/summary.rb +2 -1
- data/app/services/hyrax/thumbnail_path_service.rb +1 -1
- data/app/services/hyrax/versioning_service.rb +1 -1
- data/app/services/hyrax/visibility_intention.rb +20 -2
- data/app/services/hyrax/visibility_propagator.rb +30 -1
- data/app/services/hyrax/work_uploads_handler.rb +22 -4
- data/app/services/hyrax/workflow/actionable_objects.rb +70 -0
- data/app/services/hyrax/workflow/object_in_workflow_decorator.rb +31 -0
- data/app/services/hyrax/workflow/status_list_service.rb +43 -13
- data/app/views/hyrax/admin/admin_sets/_show_document_list_row.html.erb +1 -1
- data/app/views/hyrax/base/_form_child_work_relationships.html.erb +1 -1
- data/app/views/hyrax/base/_form_relationships.html.erb +1 -2
- data/app/views/hyrax/base/_form_rendering.html.erb +1 -1
- data/app/views/hyrax/base/_form_representative.html.erb +1 -1
- data/app/views/hyrax/base/_form_share.html.erb +1 -5
- data/app/views/hyrax/base/_form_thumbnail.html.erb +1 -1
- data/app/views/hyrax/base/_form_visibility_error.html.erb +2 -0
- data/app/views/hyrax/base/_guts4form.html.erb +3 -3
- data/app/views/hyrax/base/_representative_media.html.erb +1 -1
- data/app/views/hyrax/base/_show_actions.html.erb +2 -2
- data/app/views/hyrax/base/_work_button_row.html.erb +1 -1
- data/app/views/hyrax/base/_workflow_actions.html.erb +1 -1
- data/app/views/hyrax/batch_edits/edit.html.erb +2 -2
- data/app/views/hyrax/batch_uploads/_form.html.erb +1 -1
- data/app/views/hyrax/collections/_list_collections.html.erb +1 -1
- data/app/views/hyrax/collections/_search_form.html.erb +1 -1
- data/app/views/hyrax/collections/show.html.erb +1 -1
- data/app/views/hyrax/dashboard/collections/_form.html.erb +3 -3
- data/app/views/hyrax/dashboard/collections/_form_branding.html.erb +1 -1
- data/app/views/hyrax/dashboard/collections/_list_collections.html.erb +1 -1
- data/app/views/hyrax/dashboard/collections/edit.html.erb +4 -2
- data/app/views/hyrax/dashboard/collections/new.html.erb +4 -2
- data/app/views/hyrax/dashboard/collections/show.html.erb +1 -1
- data/app/views/hyrax/file_sets/_actions.html.erb +10 -0
- data/app/views/hyrax/file_sets/edit.html.erb +1 -1
- data/app/views/hyrax/file_sets/media_display/_audio.html.erb +1 -1
- data/app/views/hyrax/file_sets/media_display/_default.html.erb +1 -1
- data/app/views/hyrax/file_sets/media_display/_image.html.erb +1 -1
- data/app/views/hyrax/file_sets/media_display/_office_document.html.erb +1 -1
- data/app/views/hyrax/file_sets/media_display/_pdf.html.erb +1 -1
- data/app/views/hyrax/file_sets/media_display/_video.html.erb +1 -1
- data/app/views/hyrax/file_sets/show.html.erb +1 -1
- data/app/views/hyrax/my/_admin_set_action_menu.html.erb +0 -11
- data/app/views/hyrax/my/_collection_action_menu.html.erb +1 -2
- data/app/views/hyrax/my/collections/_list_collections.html.erb +1 -1
- data/app/views/hyrax/my/collections/_modal_add_subcollection.html.erb +3 -5
- data/app/views/hyrax/stats/file.html.erb +1 -1
- data/app/views/hyrax/stats/work.html.erb +1 -1
- data/app/views/hyrax/uploads/_js_templates.html.erb +4 -4
- data/app/views/hyrax/uploads/_js_templates_versioning.html.erb +4 -4
- data/app/views/hyrax/users/_contributions.html.erb +1 -1
- data/app/views/hyrax/users/_profile_tabs.html.erb +2 -2
- data/app/views/hyrax/users/_search_form.html.erb +1 -1
- data/app/views/hyrax/users/_user.html.erb +1 -1
- data/app/views/hyrax/users/_user_info.html.erb +9 -9
- data/bin/db-migrate-seed.sh +6 -2
- data/bin/hyrax-entrypoint.sh +0 -14
- data/bin/solrcloud-assign-configset.sh +35 -0
- data/bin/solrcloud-upload-configset.sh +42 -0
- data/chart/hyrax/Chart.yaml +12 -8
- data/chart/hyrax/README.md +94 -11
- data/chart/hyrax/templates/NOTES.txt +1 -1
- data/chart/hyrax/templates/_helpers.tpl +98 -0
- data/chart/hyrax/templates/branding-pvc.yaml +14 -0
- data/chart/hyrax/templates/configmap-env.yaml +21 -11
- data/chart/hyrax/templates/cron-embargo.yaml +24 -0
- data/chart/hyrax/templates/cron-lease.yaml +24 -0
- data/chart/hyrax/templates/deployment-worker.yaml +129 -0
- data/chart/hyrax/templates/deployment.yaml +125 -4
- data/chart/hyrax/templates/derivatives-pvc.yaml +14 -0
- data/chart/hyrax/templates/ingress.yaml +13 -4
- data/chart/hyrax/templates/secrets.yaml +12 -2
- data/chart/hyrax/templates/uploads-pvc.yaml +14 -0
- data/chart/hyrax/values.yaml +186 -2
- data/config/brakeman.ignore +2 -2
- data/config/features.rb +47 -43
- data/config/initializers/listeners.rb +4 -0
- data/config/initializers/valkryrie_storage.rb +7 -0
- data/config/locales/hyrax.de.yml +1 -1
- data/config/locales/hyrax.en.yml +1 -1
- data/config/locales/hyrax.es.yml +1 -1
- data/config/locales/hyrax.fr.yml +1 -1
- data/config/locales/hyrax.it.yml +1 -1
- data/config/locales/hyrax.pt-BR.yml +1 -1
- data/config/locales/hyrax.zh.yml +1 -1
- data/docker-compose.yml +39 -8
- data/documentation/developing-your-hyrax-based-app.md +4 -4
- data/documentation/legacyREADME.md +3 -3
- data/lib/generators/hyrax/templates/config/initializers/hyrax.rb +5 -0
- data/lib/generators/hyrax/templates/config/initializers/riiif.rb +22 -20
- data/lib/hyrax/active_fedora_dummy_model.rb +62 -0
- data/lib/hyrax/configuration.rb +28 -0
- data/lib/hyrax/engine.rb +3 -1
- data/lib/hyrax/errors.rb +2 -0
- data/lib/hyrax/resource_name.rb +1 -0
- data/lib/hyrax/specs/capybara.rb +5 -3
- data/lib/hyrax/specs/shared_specs/valkyrie_storage_versions.rb +9 -0
- data/lib/hyrax/transactions/container.rb +32 -1
- data/lib/hyrax/transactions/file_set_destroy.rb +21 -0
- data/lib/hyrax/transactions/steps/add_file_sets.rb +3 -2
- data/lib/hyrax/transactions/steps/add_to_parent.rb +36 -0
- data/lib/hyrax/transactions/steps/delete_resource.rb +38 -0
- data/lib/hyrax/transactions/steps/destroy_work.rb +1 -0
- data/lib/hyrax/transactions/steps/remove_file_set_from_work.rb +47 -0
- data/lib/hyrax/transactions/work_create.rb +2 -1
- data/lib/hyrax/transactions/work_destroy.rb +20 -0
- data/lib/hyrax/valkyrie_can_can_adapter.rb +3 -0
- data/lib/hyrax/valkyrie_simple_path_generator.rb +20 -0
- data/lib/hyrax/version.rb +1 -1
- data/lib/hyrax.rb +9 -0
- data/lib/tasks/collection_type_global_id.rake +1 -1
- data/lib/tasks/embargo_lease.rake +27 -0
- data/lib/tasks/regenerate_derivatives.rake +12 -0
- data/lib/wings/active_fedora_converter/default_work.rb +19 -0
- data/lib/wings/attribute_transformer.rb +29 -19
- data/lib/wings/converter_value_mapper.rb +2 -2
- data/lib/wings/model_transformer.rb +21 -20
- data/lib/wings/orm_converter.rb +42 -23
- data/lib/wings/setup.rb +2 -0
- data/lib/wings/valkyrie/persister.rb +8 -5
- data/lib/wings/valkyrie/query_service.rb +96 -41
- data/lib/wings/valkyrie/storage.rb +56 -1
- data/lib/wings.rb +0 -21
- data/template.rb +1 -1
- metadata +41 -21
- data/chart/fcrepo/.gitignore +0 -2
- data/chart/fcrepo/.helmignore +0 -23
- data/chart/fcrepo/Chart.yaml +0 -11
- data/chart/fcrepo/README.md +0 -50
- data/chart/fcrepo/templates/NOTES.txt +0 -21
- data/chart/fcrepo/templates/_helpers.tpl +0 -68
- data/chart/fcrepo/templates/configmap-env.yaml +0 -19
- data/chart/fcrepo/templates/deployment.yaml +0 -109
- data/chart/fcrepo/templates/ingress.yaml +0 -41
- data/chart/fcrepo/templates/pvc.yaml +0 -20
- data/chart/fcrepo/templates/secret.yaml +0 -12
- data/chart/fcrepo/templates/service.yaml +0 -15
- data/chart/fcrepo/templates/serviceaccount.yaml +0 -12
- data/chart/fcrepo/templates/tests/test-connection.yaml +0 -15
- data/chart/fcrepo/values.yaml +0 -79
- data/chart/hyrax/templates/fcrepo-secret.yaml +0 -13
@@ -19,6 +19,7 @@ module Wings
|
|
19
19
|
DEFAULT_CTYPE = 'application/octet-stream'
|
20
20
|
LINK_HEADER = "<http://www.w3.org/ns/ldp#NonRDFSource>; rel=\"type\""
|
21
21
|
FILES_PATH = 'files'
|
22
|
+
VERSIONS_SLUG = '/fcr:versions'
|
22
23
|
|
23
24
|
attr_reader :sha1
|
24
25
|
|
@@ -27,6 +28,14 @@ module Wings
|
|
27
28
|
super
|
28
29
|
end
|
29
30
|
|
31
|
+
##
|
32
|
+
# @param key [Symbol] the key for plugin behavior to check support for
|
33
|
+
#
|
34
|
+
# @return [Boolean] whether
|
35
|
+
def supports?(key)
|
36
|
+
key == :versions
|
37
|
+
end
|
38
|
+
|
30
39
|
def upload(file:, original_filename:, resource:, content_type: DEFAULT_CTYPE, # rubocop:disable Metrics/ParameterLists
|
31
40
|
resource_uri_transformer: default_resource_uri_transformer, use: Hydra::PCDM::Vocab::PCDMTerms.File,
|
32
41
|
id_hint: 'original', **extra_arguments)
|
@@ -41,7 +50,49 @@ module Wings
|
|
41
50
|
id_hint: id_hint, **extra_arguments)
|
42
51
|
end
|
43
52
|
|
44
|
-
find_by(id:
|
53
|
+
find_by(id: cast_to_valkyrie_id(id))
|
54
|
+
end
|
55
|
+
|
56
|
+
##
|
57
|
+
# @return [Enumerable<Version> ordered list of versions
|
58
|
+
def find_versions(id:)
|
59
|
+
response = connection.http.get(fedora_identifier(id: id) + VERSIONS_SLUG)
|
60
|
+
return [] if response.status == 404
|
61
|
+
|
62
|
+
reader = RDF::Reader.for(content_type: response.headers['content-type'])
|
63
|
+
version_graph = RDF::Graph.new << reader.new(response.body)
|
64
|
+
|
65
|
+
version_graph.query(predicate: RDF::Vocab::Fcrepo4.hasVersion).objects.map do |uri|
|
66
|
+
timestamp =
|
67
|
+
version_graph.query([uri, RDF::Vocab::Fcrepo4.created, :created])
|
68
|
+
.first_object
|
69
|
+
.object
|
70
|
+
Version.new(cast_to_valkyrie_id(uri.to_s), timestamp, self)
|
71
|
+
end.sort
|
72
|
+
end
|
73
|
+
|
74
|
+
##
|
75
|
+
# abstractly, {Version} objects should have an {#id} and be orderable
|
76
|
+
# over {#<=>} (allowing e.g. `#sort` to define a consistent order---
|
77
|
+
# oldest to newest---for a collection of versions). the {#id} should be a
|
78
|
+
# globally unique identifier for the version.
|
79
|
+
#
|
80
|
+
# this implementation uses an orderable {#version_token}. in practice
|
81
|
+
# the token is the fcrepo created date for the version, as extracted from
|
82
|
+
# the versions graph.
|
83
|
+
Version = Struct.new(:id, :version_token, :adapter) do
|
84
|
+
include Comparable
|
85
|
+
|
86
|
+
##
|
87
|
+
# @return [#read]
|
88
|
+
def io
|
89
|
+
adapter.find_by(id: id)
|
90
|
+
end
|
91
|
+
|
92
|
+
def <=>(other)
|
93
|
+
raise ArgumentError unless other.respond_to?(:version_token)
|
94
|
+
version_token <=> other.version_token
|
95
|
+
end
|
45
96
|
end
|
46
97
|
|
47
98
|
private
|
@@ -87,6 +138,10 @@ module Wings
|
|
87
138
|
|
88
139
|
Hyrax.config.translate_id_to_uri.call(created_file.id)
|
89
140
|
end
|
141
|
+
|
142
|
+
def cast_to_valkyrie_id(id)
|
143
|
+
::Valkyrie::ID.new(id.to_s.sub(/^.+\/\//, PROTOCOL))
|
144
|
+
end
|
90
145
|
end
|
91
146
|
end
|
92
147
|
|
data/lib/wings.rb
CHANGED
@@ -98,27 +98,6 @@ require 'wings/valkyrie/persister'
|
|
98
98
|
require 'wings/valkyrie/storage'
|
99
99
|
require 'wings/valkyrie/query_service'
|
100
100
|
|
101
|
-
Hydra::AccessControl.send(:define_method, :valkyrie_resource) do
|
102
|
-
attrs = attributes.symbolize_keys
|
103
|
-
attrs[:new_record] = new_record?
|
104
|
-
attrs[:created_at] = create_date
|
105
|
-
attrs[:updated_at] = modified_date
|
106
|
-
|
107
|
-
attrs[:permissions] = permissions.map do |permission|
|
108
|
-
agent = permission.type == 'group' ? "group/#{permission.agent_name}" : permission.agent_name
|
109
|
-
|
110
|
-
Hyrax::Permission.new(id: permission.id,
|
111
|
-
mode: permission.access.to_sym,
|
112
|
-
agent: agent,
|
113
|
-
access_to: Valkyrie::ID.new(permission.access_to_id),
|
114
|
-
new_record: permission.new_record?)
|
115
|
-
end
|
116
|
-
|
117
|
-
attrs[:access_to] = attrs[:permissions].find { |p| p.access_to&.id&.present? }&.access_to
|
118
|
-
|
119
|
-
Hyrax::AccessControl.new(**attrs)
|
120
|
-
end
|
121
|
-
|
122
101
|
begin
|
123
102
|
require 'wings/setup'
|
124
103
|
rescue NameError, Hyrax::SimpleSchemaLoader::UndefinedSchemaError => err
|
data/template.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
# Hack for https://github.com/rails/rails/issues/35153
|
3
3
|
gsub_file 'Gemfile', /^gem ["']sqlite3["']$/, 'gem "sqlite3", "~> 1.3.0"'
|
4
|
-
gem 'hyrax', '3.
|
4
|
+
gem 'hyrax', '3.1.0'
|
5
5
|
run 'bundle install'
|
6
6
|
generate 'hyrax:install', '-f'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hyrax
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justin Coyne
|
@@ -14,7 +14,7 @@ authors:
|
|
14
14
|
autorequire:
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
|
-
date: 2021-
|
17
|
+
date: 2021-09-09 00:00:00.000000000 Z
|
18
18
|
dependencies:
|
19
19
|
- !ruby/object:Gem::Dependency
|
20
20
|
name: rails
|
@@ -1178,6 +1178,8 @@ executables:
|
|
1178
1178
|
- db-migrate-seed.sh
|
1179
1179
|
- db-wait.sh
|
1180
1180
|
- hyrax-entrypoint.sh
|
1181
|
+
- solrcloud-assign-configset.sh
|
1182
|
+
- solrcloud-upload-configset.sh
|
1181
1183
|
extensions: []
|
1182
1184
|
extra_rdoc_files: []
|
1183
1185
|
files:
|
@@ -1720,6 +1722,8 @@ files:
|
|
1720
1722
|
- app/forms/hyrax/forms/failed_submission_form_wrapper.rb
|
1721
1723
|
- app/forms/hyrax/forms/file_manager_form.rb
|
1722
1724
|
- app/forms/hyrax/forms/file_set_edit_form.rb
|
1725
|
+
- app/forms/hyrax/forms/file_set_form.rb
|
1726
|
+
- app/forms/hyrax/forms/permission.rb
|
1723
1727
|
- app/forms/hyrax/forms/permission_template_form.rb
|
1724
1728
|
- app/forms/hyrax/forms/resource_form.rb
|
1725
1729
|
- app/forms/hyrax/forms/widgets/admin_set_embargo_period.rb
|
@@ -1762,6 +1766,7 @@ files:
|
|
1762
1766
|
- app/indexers/concerns/hyrax/indexes_basic_metadata.rb
|
1763
1767
|
- app/indexers/concerns/hyrax/indexes_linked_metadata.rb
|
1764
1768
|
- app/indexers/hyrax/admin_set_indexer.rb
|
1769
|
+
- app/indexers/hyrax/administrative_set_indexer.rb
|
1765
1770
|
- app/indexers/hyrax/basic_metadata_indexer.rb
|
1766
1771
|
- app/indexers/hyrax/collection_indexer.rb
|
1767
1772
|
- app/indexers/hyrax/collection_with_basic_metadata_indexer.rb
|
@@ -1773,6 +1778,7 @@ files:
|
|
1773
1778
|
- app/indexers/hyrax/repository_reindexer.rb
|
1774
1779
|
- app/indexers/hyrax/resource_indexer.rb
|
1775
1780
|
- app/indexers/hyrax/valkyrie_collection_indexer.rb
|
1781
|
+
- app/indexers/hyrax/valkyrie_file_set_indexer.rb
|
1776
1782
|
- app/indexers/hyrax/valkyrie_indexer.rb
|
1777
1783
|
- app/indexers/hyrax/valkyrie_work_indexer.rb
|
1778
1784
|
- app/indexers/hyrax/visibility_indexer.rb
|
@@ -1832,6 +1838,7 @@ files:
|
|
1832
1838
|
- app/models/concerns/hyrax/collection_behavior.rb
|
1833
1839
|
- app/models/concerns/hyrax/collection_nesting.rb
|
1834
1840
|
- app/models/concerns/hyrax/core_metadata.rb
|
1841
|
+
- app/models/concerns/hyrax/embargoable.rb
|
1835
1842
|
- app/models/concerns/hyrax/file_set/belongs_to_works.rb
|
1836
1843
|
- app/models/concerns/hyrax/file_set/characterization.rb
|
1837
1844
|
- app/models/concerns/hyrax/file_set/derivatives.rb
|
@@ -1935,6 +1942,7 @@ files:
|
|
1935
1942
|
- app/presenters/hyrax/admin/workflow_roles_presenter.rb
|
1936
1943
|
- app/presenters/hyrax/admin_set_options_presenter.rb
|
1937
1944
|
- app/presenters/hyrax/admin_set_presenter.rb
|
1945
|
+
- app/presenters/hyrax/admin_set_selection_presenter.rb
|
1938
1946
|
- app/presenters/hyrax/admin_stats_presenter.rb
|
1939
1947
|
- app/presenters/hyrax/characterization_behavior.rb
|
1940
1948
|
- app/presenters/hyrax/collapsable_section_presenter.rb
|
@@ -1956,6 +1964,7 @@ files:
|
|
1956
1964
|
- app/presenters/hyrax/model_icon.rb
|
1957
1965
|
- app/presenters/hyrax/model_proxy.rb
|
1958
1966
|
- app/presenters/hyrax/page_title_decorator.rb
|
1967
|
+
- app/presenters/hyrax/pcdm_member_presenter_factory.rb
|
1959
1968
|
- app/presenters/hyrax/permission_badge.rb
|
1960
1969
|
- app/presenters/hyrax/presenter_factory.rb
|
1961
1970
|
- app/presenters/hyrax/presenter_renderer.rb
|
@@ -2047,6 +2056,7 @@ files:
|
|
2047
2056
|
- app/services/hyrax/collection_thumbnail_path_service.rb
|
2048
2057
|
- app/services/hyrax/collection_types/create_service.rb
|
2049
2058
|
- app/services/hyrax/collection_types/permissions_service.rb
|
2059
|
+
- app/services/hyrax/collections/collection_member_search_service.rb
|
2050
2060
|
- app/services/hyrax/collections/collection_member_service.rb
|
2051
2061
|
- app/services/hyrax/collections/managed_collections_service.rb
|
2052
2062
|
- app/services/hyrax/collections/migration_service.rb
|
@@ -2069,6 +2079,7 @@ files:
|
|
2069
2079
|
- app/services/hyrax/custom_queries/navigators/child_works_navigator.rb
|
2070
2080
|
- app/services/hyrax/custom_queries/navigators/collection_members.rb
|
2071
2081
|
- app/services/hyrax/custom_queries/navigators/find_files.rb
|
2082
|
+
- app/services/hyrax/custom_queries/navigators/parent_collections_navigator.rb
|
2072
2083
|
- app/services/hyrax/database_migrator.rb
|
2073
2084
|
- app/services/hyrax/default_middleware_stack.rb
|
2074
2085
|
- app/services/hyrax/derivative_path.rb
|
@@ -2082,6 +2093,7 @@ files:
|
|
2082
2093
|
- app/services/hyrax/file_set_fixity_check_service.rb
|
2083
2094
|
- app/services/hyrax/file_set_type_service.rb
|
2084
2095
|
- app/services/hyrax/file_set_visibility_propagator.rb
|
2096
|
+
- app/services/hyrax/find_objects_via_solr_service.rb
|
2085
2097
|
- app/services/hyrax/fixity/active_fedora_fixity_service.rb
|
2086
2098
|
- app/services/hyrax/fixity/missing_content_error.rb
|
2087
2099
|
- app/services/hyrax/fixity_check_failure_service.rb
|
@@ -2105,9 +2117,11 @@ files:
|
|
2105
2117
|
- app/services/hyrax/listeners/batch_notification_listener.rb
|
2106
2118
|
- app/services/hyrax/listeners/file_set_lifecycle_listener.rb
|
2107
2119
|
- app/services/hyrax/listeners/file_set_lifecycle_notification_listener.rb
|
2120
|
+
- app/services/hyrax/listeners/member_cleanup_listener.rb
|
2108
2121
|
- app/services/hyrax/listeners/metadata_index_listener.rb
|
2109
2122
|
- app/services/hyrax/listeners/object_lifecycle_listener.rb
|
2110
2123
|
- app/services/hyrax/listeners/proxy_deposit_listener.rb
|
2124
|
+
- app/services/hyrax/listeners/trophy_cleanup_listener.rb
|
2111
2125
|
- app/services/hyrax/listeners/workflow_listener.rb
|
2112
2126
|
- app/services/hyrax/local_file_service.rb
|
2113
2127
|
- app/services/hyrax/lock_manager.rb
|
@@ -2133,6 +2147,7 @@ files:
|
|
2133
2147
|
- app/services/hyrax/search_service.rb
|
2134
2148
|
- app/services/hyrax/simple_schema_loader.rb
|
2135
2149
|
- app/services/hyrax/solr_query_builder_service.rb
|
2150
|
+
- app/services/hyrax/solr_query_service.rb
|
2136
2151
|
- app/services/hyrax/solr_service.rb
|
2137
2152
|
- app/services/hyrax/statistics/collections/over_time.rb
|
2138
2153
|
- app/services/hyrax/statistics/depositors/summary.rb
|
@@ -2164,6 +2179,7 @@ files:
|
|
2164
2179
|
- app/services/hyrax/work_uploads_handler.rb
|
2165
2180
|
- app/services/hyrax/workflow/abstract_notification.rb
|
2166
2181
|
- app/services/hyrax/workflow/action_taken_service.rb
|
2182
|
+
- app/services/hyrax/workflow/actionable_objects.rb
|
2167
2183
|
- app/services/hyrax/workflow/activate_object.rb
|
2168
2184
|
- app/services/hyrax/workflow/changes_required_notification.rb
|
2169
2185
|
- app/services/hyrax/workflow/deactivate_object.rb
|
@@ -2175,6 +2191,7 @@ files:
|
|
2175
2191
|
- app/services/hyrax/workflow/notification_configuration_parameter.rb
|
2176
2192
|
- app/services/hyrax/workflow/notification_generator.rb
|
2177
2193
|
- app/services/hyrax/workflow/notification_service.rb
|
2194
|
+
- app/services/hyrax/workflow/object_in_workflow_decorator.rb
|
2178
2195
|
- app/services/hyrax/workflow/pending_review_notification.rb
|
2179
2196
|
- app/services/hyrax/workflow/permission_generator.rb
|
2180
2197
|
- app/services/hyrax/workflow/permission_query.rb
|
@@ -2597,36 +2614,28 @@ files:
|
|
2597
2614
|
- bin/db-migrate-seed.sh
|
2598
2615
|
- bin/db-wait.sh
|
2599
2616
|
- bin/hyrax-entrypoint.sh
|
2600
|
-
-
|
2601
|
-
-
|
2602
|
-
- chart/fcrepo/Chart.yaml
|
2603
|
-
- chart/fcrepo/README.md
|
2604
|
-
- chart/fcrepo/templates/NOTES.txt
|
2605
|
-
- chart/fcrepo/templates/_helpers.tpl
|
2606
|
-
- chart/fcrepo/templates/configmap-env.yaml
|
2607
|
-
- chart/fcrepo/templates/deployment.yaml
|
2608
|
-
- chart/fcrepo/templates/ingress.yaml
|
2609
|
-
- chart/fcrepo/templates/pvc.yaml
|
2610
|
-
- chart/fcrepo/templates/secret.yaml
|
2611
|
-
- chart/fcrepo/templates/service.yaml
|
2612
|
-
- chart/fcrepo/templates/serviceaccount.yaml
|
2613
|
-
- chart/fcrepo/templates/tests/test-connection.yaml
|
2614
|
-
- chart/fcrepo/values.yaml
|
2617
|
+
- bin/solrcloud-assign-configset.sh
|
2618
|
+
- bin/solrcloud-upload-configset.sh
|
2615
2619
|
- chart/hyrax/.gitignore
|
2616
2620
|
- chart/hyrax/.helmignore
|
2617
2621
|
- chart/hyrax/Chart.yaml
|
2618
2622
|
- chart/hyrax/README.md
|
2619
2623
|
- chart/hyrax/templates/NOTES.txt
|
2620
2624
|
- chart/hyrax/templates/_helpers.tpl
|
2625
|
+
- chart/hyrax/templates/branding-pvc.yaml
|
2621
2626
|
- chart/hyrax/templates/configmap-env.yaml
|
2627
|
+
- chart/hyrax/templates/cron-embargo.yaml
|
2628
|
+
- chart/hyrax/templates/cron-lease.yaml
|
2629
|
+
- chart/hyrax/templates/deployment-worker.yaml
|
2622
2630
|
- chart/hyrax/templates/deployment.yaml
|
2623
|
-
- chart/hyrax/templates/
|
2631
|
+
- chart/hyrax/templates/derivatives-pvc.yaml
|
2624
2632
|
- chart/hyrax/templates/hpa.yaml
|
2625
2633
|
- chart/hyrax/templates/ingress.yaml
|
2626
2634
|
- chart/hyrax/templates/secrets.yaml
|
2627
2635
|
- chart/hyrax/templates/service.yaml
|
2628
2636
|
- chart/hyrax/templates/serviceaccount.yaml
|
2629
2637
|
- chart/hyrax/templates/tests/test-connection.yaml
|
2638
|
+
- chart/hyrax/templates/uploads-pvc.yaml
|
2630
2639
|
- chart/hyrax/values.yaml
|
2631
2640
|
- config/brakeman.ignore
|
2632
2641
|
- config/features.rb
|
@@ -2636,6 +2645,7 @@ files:
|
|
2636
2645
|
- config/initializers/listeners.rb
|
2637
2646
|
- config/initializers/nesting_indexer_initializer.rb
|
2638
2647
|
- config/initializers/simple_form.rb
|
2648
|
+
- config/initializers/valkryrie_storage.rb
|
2639
2649
|
- config/initializers/valkyrie_id_equality.rb
|
2640
2650
|
- config/locales/hyrax.de.yml
|
2641
2651
|
- config/locales/hyrax.en.yml
|
@@ -2798,6 +2808,7 @@ files:
|
|
2798
2808
|
- lib/generators/hyrax/work_resource/templates/work_spec.rb.erb
|
2799
2809
|
- lib/generators/hyrax/work_resource/work_resource_generator.rb
|
2800
2810
|
- lib/hyrax.rb
|
2811
|
+
- lib/hyrax/active_fedora_dummy_model.rb
|
2801
2812
|
- lib/hyrax/arkivo.rb
|
2802
2813
|
- lib/hyrax/arkivo/actor.rb
|
2803
2814
|
- lib/hyrax/arkivo/config.rb
|
@@ -2847,6 +2858,7 @@ files:
|
|
2847
2858
|
- lib/hyrax/specs/shared_specs/identifiers.rb
|
2848
2859
|
- lib/hyrax/specs/shared_specs/indexers.rb
|
2849
2860
|
- lib/hyrax/specs/shared_specs/metadata.rb
|
2861
|
+
- lib/hyrax/specs/shared_specs/valkyrie_storage_versions.rb
|
2850
2862
|
- lib/hyrax/specs/shared_specs/workflow_method.rb
|
2851
2863
|
- lib/hyrax/specs/spy_listener.rb
|
2852
2864
|
- lib/hyrax/transactions.rb
|
@@ -2854,14 +2866,18 @@ files:
|
|
2854
2866
|
- lib/hyrax/transactions/container.rb
|
2855
2867
|
- lib/hyrax/transactions/create_work.rb
|
2856
2868
|
- lib/hyrax/transactions/destroy_work.rb
|
2869
|
+
- lib/hyrax/transactions/file_set_destroy.rb
|
2857
2870
|
- lib/hyrax/transactions/steps/add_file_sets.rb
|
2858
2871
|
- lib/hyrax/transactions/steps/add_to_collections.rb
|
2872
|
+
- lib/hyrax/transactions/steps/add_to_parent.rb
|
2859
2873
|
- lib/hyrax/transactions/steps/apply_collection_permission_template.rb
|
2860
2874
|
- lib/hyrax/transactions/steps/apply_permission_template.rb
|
2861
2875
|
- lib/hyrax/transactions/steps/apply_visibility.rb
|
2876
|
+
- lib/hyrax/transactions/steps/delete_resource.rb
|
2862
2877
|
- lib/hyrax/transactions/steps/destroy_work.rb
|
2863
2878
|
- lib/hyrax/transactions/steps/ensure_admin_set.rb
|
2864
2879
|
- lib/hyrax/transactions/steps/ensure_permission_template.rb
|
2880
|
+
- lib/hyrax/transactions/steps/remove_file_set_from_work.rb
|
2865
2881
|
- lib/hyrax/transactions/steps/save.rb
|
2866
2882
|
- lib/hyrax/transactions/steps/save_access_control.rb
|
2867
2883
|
- lib/hyrax/transactions/steps/save_work.rb
|
@@ -2873,7 +2889,9 @@ files:
|
|
2873
2889
|
- lib/hyrax/transactions/transaction.rb
|
2874
2890
|
- lib/hyrax/transactions/update_work.rb
|
2875
2891
|
- lib/hyrax/transactions/work_create.rb
|
2892
|
+
- lib/hyrax/transactions/work_destroy.rb
|
2876
2893
|
- lib/hyrax/valkyrie_can_can_adapter.rb
|
2894
|
+
- lib/hyrax/valkyrie_simple_path_generator.rb
|
2877
2895
|
- lib/hyrax/version.rb
|
2878
2896
|
- lib/hyrax/zotero.rb
|
2879
2897
|
- lib/hyrax/zotero/config.rb
|
@@ -2881,10 +2899,12 @@ files:
|
|
2881
2899
|
- lib/tasks/controlled_vocabularies.rake
|
2882
2900
|
- lib/tasks/default_admin_set.rake
|
2883
2901
|
- lib/tasks/default_collection_type.rake
|
2902
|
+
- lib/tasks/embargo_lease.rake
|
2884
2903
|
- lib/tasks/hyrax.rake
|
2885
2904
|
- lib/tasks/hyrax_user.rake
|
2886
2905
|
- lib/tasks/install.rake
|
2887
2906
|
- lib/tasks/migrate.rake
|
2907
|
+
- lib/tasks/regenerate_derivatives.rake
|
2888
2908
|
- lib/tasks/reindex.rake
|
2889
2909
|
- lib/tasks/stats_tasks.rake
|
2890
2910
|
- lib/tasks/universal_viewer.rake
|
@@ -2954,11 +2974,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
2954
2974
|
version: '2.5'
|
2955
2975
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
2956
2976
|
requirements:
|
2957
|
-
- - "
|
2977
|
+
- - ">="
|
2958
2978
|
- !ruby/object:Gem::Version
|
2959
|
-
version:
|
2979
|
+
version: '0'
|
2960
2980
|
requirements: []
|
2961
|
-
rubygems_version: 3.1.
|
2981
|
+
rubygems_version: 3.1.6
|
2962
2982
|
signing_key:
|
2963
2983
|
specification_version: 4
|
2964
2984
|
summary: Hyrax is a front-end based on the robust Samvera framework, providing a user
|
data/chart/fcrepo/.gitignore
DELETED
data/chart/fcrepo/.helmignore
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
# Patterns to ignore when building packages.
|
2
|
-
# This supports shell glob matching, relative path matching, and
|
3
|
-
# negation (prefixed with !). Only one pattern per line.
|
4
|
-
.DS_Store
|
5
|
-
# Common VCS dirs
|
6
|
-
.git/
|
7
|
-
.gitignore
|
8
|
-
.bzr/
|
9
|
-
.bzrignore
|
10
|
-
.hg/
|
11
|
-
.hgignore
|
12
|
-
.svn/
|
13
|
-
# Common backup files
|
14
|
-
*.swp
|
15
|
-
*.bak
|
16
|
-
*.tmp
|
17
|
-
*.orig
|
18
|
-
*~
|
19
|
-
# Various IDEs
|
20
|
-
.project
|
21
|
-
.idea/
|
22
|
-
*.tmproj
|
23
|
-
.vscode/
|
data/chart/fcrepo/Chart.yaml
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
apiVersion: v2
|
2
|
-
name: fcrepo
|
3
|
-
description: Fedora Commons Repository 4
|
4
|
-
type: application
|
5
|
-
version: 0.4.1
|
6
|
-
appVersion: 4.7
|
7
|
-
dependencies:
|
8
|
-
- name: postgresql
|
9
|
-
version: 9.3.3
|
10
|
-
repository: https://charts.bitnami.com/bitnami
|
11
|
-
condition: postgresql.enabled
|
data/chart/fcrepo/README.md
DELETED
@@ -1,50 +0,0 @@
|
|
1
|
-
Fedora Commons Helm Chart
|
2
|
-
=========================
|
3
|
-
|
4
|
-
Fedora is the flexible, modular, open source repository platform with native
|
5
|
-
linked data support.
|
6
|
-
|
7
|
-
## Installation
|
8
|
-
|
9
|
-
```sh
|
10
|
-
helm dep up chart/fcrepo
|
11
|
-
helm install fcrepo chart/fcrepo
|
12
|
-
```
|
13
|
-
|
14
|
-
## Configuration
|
15
|
-
|
16
|
-
By default, this chart deploys with Postgresql as the backend for Fedora.
|
17
|
-
Without other configuration, it will deploy a new Postgresql instance/database
|
18
|
-
as a service available to the `fcrepo` deployment.
|
19
|
-
|
20
|
-
In practice, users may want to forego installing postgres for two reasons:
|
21
|
-
|
22
|
-
_First_, when you are deploying Fedora into a more complex application
|
23
|
-
environment you may wish to reuse an existing Postgres instance already
|
24
|
-
maintained with that environment.
|
25
|
-
|
26
|
-
In this case, `fcrepo` should be deployed with postgresql explictly disabled, an
|
27
|
-
`exernalDatabaseUsername`, and an `fcrepoSecretName`. `fcrepoSecretName` must
|
28
|
-
correspond to an existing secret providing `DATABASE_PASSWORD`, `DATABASE_HOST`,
|
29
|
-
and `JAVA_OPTS`.
|
30
|
-
|
31
|
-
Optionally, a `externalDatabaseName` may be given to avoid collissions in the
|
32
|
-
case that the default `fcrepo` is not an acceptable database name.
|
33
|
-
|
34
|
-
This is usually done in the context of a parent chart which provides the postgresql instance, for example:
|
35
|
-
|
36
|
-
```yaml
|
37
|
-
fcrepo:
|
38
|
-
enabled: true
|
39
|
-
fcrepoSecretName: "mychart.fcrepo.fullname"
|
40
|
-
externalDatabaseUsername: "mydbuser"
|
41
|
-
servicePort: 8080
|
42
|
-
postgresql:
|
43
|
-
enabled: false
|
44
|
-
```
|
45
|
-
|
46
|
-
_Second_, because they want to use another backend for Fedora. This use case is broadly unsupported here. In theory, you can get a default (Infinispan) configuration by setting `postgresql.enabled` to `false`. **THIS CONFIGURATION IS UNTESTED AND UNSUPPORTED**:
|
47
|
-
|
48
|
-
```sh
|
49
|
-
helm install --set postgresql.enabled=false fcrepo-test chart/fcrepo
|
50
|
-
```
|