Skip to content

Conversation

@dlpierce
Copy link
Member

@dlpierce dlpierce commented Dec 19, 2025

Fixes

Fixes #7119

Summary

Support for bulkrax in Valkyrie w/Fedora applications.

Guidance for testing, such as acceptance criteria or new user interface behaviors:

  • Bulkrax is present and working in dassie, koppie and sirenia

Detailed Description

In order to better support the widely used bulkrax tool, it has been installed in the test applications (and therefore also in the nurax servers).

It was discovered the find_by_property_value custom query provided by bulkrax was written assuming postgres would be the metadata adapter in use. This has been replaced in this PR by a set of custom queries instead utilizing solr.

Changes proposed in this pull request:

  • Install bulkrax in .dassie and .koppie
  • Add FindByPropertyValue custom queries

@samvera/hyrax-code-reviewers

Includes four permutations of query styles, including `find_by_property_value` as a replacement for the one bulkrax currently provides.
Various non-valkyrie code paths are used conditionally if the `Wings` constant is defined. This is not a problem for dassie, but is used there too to stay consistent.
@dlpierce dlpierce added the notes-minor Release Notes: Non-breaking features label Dec 19, 2025
@github-actions
Copy link

github-actions bot commented Dec 19, 2025

Test Results

   13 files  ±    0      8 errors    5 suites   - 8   2h 1m 55s ⏱️ - 47m 33s
6 739 tests  -   238  6 412 ✅  -   259  309 💤 +  3  18 ❌ +18 
8 613 runs   - 9 958  8 235 ✅  - 9 835  345 💤  - 156  33 ❌ +33 

For more details on these parsing errors and failures, see this check.

Results for commit 66d749a. ± Comparison against base commit b29b5e6.

This pull request removes 434 and adds 196 tests. Note that renamed tests count towards both.
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to create #<Hyrax::PermissionTemplate:0x00007f4cb5227d20>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to create #<Hyrax::PermissionTemplate:0x00007f51fbf212d8>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to create #<Hyrax::PermissionTemplate:0x00007fd8609b1cd0>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to create #<Hyrax::PermissionTemplateAccess:0x00007f4cb52f3fd8>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to create #<Hyrax::PermissionTemplateAccess:0x00007f51fbec3840>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to create #<Hyrax::PermissionTemplateAccess:0x00007fd8609d1198>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to destroy AdminSet: f79bf1df-8b53-4bb0-945c-08e35c903a5d
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to destroy Hyrax::AdministrativeSet: dc7e2492-b1bf-4495-b5e3-c5e92001bfa1
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to destroy Hyrax::AdministrativeSet: dcf3956c-4378-43a2-bd65-9a12328c1c5c
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to edit AdminSet: eedac1ea-c5e4-4abb-8c49-785ea941d878
…
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to create #<Hyrax::PermissionTemplate:0x00007fcc02640160>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to create #<Hyrax::PermissionTemplateAccess:0x00007fcc0268a148>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to destroy AdminSet: 65eb9e47-0672-4090-a802-88f234f05a9c
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to edit AdminSet: d4ba65d7-7a7b-4634-8b85-e1fa96d0554f
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates a user without edit access is expected not to be able to update AdminSet: 9cc8b60d-40ad-4ad5-b2ca-403e24565dd2
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates as admin behaves like A user with additional access is expected to be able to create #<Hyrax::PermissionTemplate:0x00007fcc01ca7310>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates as admin behaves like A user with additional access is expected to be able to create #<Hyrax::PermissionTemplateAccess:0x00007fcc0262b918>
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates as admin behaves like A user with additional access is expected to be able to destroy AdminSet: 6420117e-4c03-4619-948d-c12623c96acc
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates as admin behaves like A user with additional access is expected to be able to edit AdminSet: ac015784-7486-4f71-a949-db5d98029f10
spec.abilities.ability_spec ‑ Hyrax::Ability AdminSets and PermissionTemplates as admin behaves like A user with additional access is expected to be able to update AdminSet: 835559d8-3415-439c-b8db-2f820547e72a
…
This pull request skips 16 tests.
spec.controllers.hyrax.dashboard.collections_controller_spec ‑ Hyrax::Dashboard::CollectionsController with model Collection #create when create fails in validations renders json
spec.controllers.hyrax.dashboard.collections_controller_spec ‑ Hyrax::Dashboard::CollectionsController with model Collection #create when create fails in validations renders the form again
spec.controllers.hyrax.dashboard.collections_controller_spec ‑ Hyrax::Dashboard::CollectionsController with model Collection #update when update fails in validations renders json
spec.controllers.hyrax.dashboard.collections_controller_spec ‑ Hyrax::Dashboard::CollectionsController with model Collection #update when update fails in validations renders the form again
spec.controllers.hyrax.dashboard.collections_controller_spec ‑ Hyrax::Dashboard::CollectionsController with model Collection #update with nested collection retains parent collection relationship
spec.jobs.create_work_job_spec ‑ CreateWorkJob#perform with a Valkyrie model it creates a work and a file_set
spec.jobs.create_work_job_spec ‑ CreateWorkJob#perform with a Valkyrie model when there is a validation error logs the failure
spec.services.hyrax.custom_queries.find_access_control_spec ‑ Hyrax::CustomQueries::FindAccessControl#find_access_control for another class purporting to provide access_to raises ObjectNotFoundError
spec.services.hyrax.custom_queries.find_access_control_spec ‑ Hyrax::CustomQueries::FindAccessControl#find_access_control for deleted object raises ObjectNotFoundError
spec.services.hyrax.custom_queries.find_access_control_spec ‑ Hyrax::CustomQueries::FindAccessControl#find_access_control for missing object raises ObjectNotFoundError
…

♻️ This comment has been updated with latest results.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

notes-minor Release Notes: Non-breaking features

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Install Bulkrax into test apps

2 participants