Skip to content
This repository was archived by the owner on Oct 14, 2020. It is now read-only.
This repository was archived by the owner on Oct 14, 2020. It is now read-only.

TODO #1

@jmartin-sul

Description

@jmartin-sul

brain dump, will shape up into individual tickets as-is warranted, just want to move a possibly useful TODO list out of my personal notes:

  • test on dlss-dev-suntzu (as dor user)
  • add burndown box notes to README
  • finish adding fedora settings to prod shared configs
    • host
    • proper cert location
  • put current list of pids from sul-dor-prod on dlss-dev-suntzu (in the cocina-food-inspector deployment dir, see file starting with all_pids_, use whatever's latest)
    • load druid list into dlss-dev-suntzu "prod" database
  • initial sketch of codebase
    • a service class that hits DSA object show endpoint to retrieve cocina representation of object
      • retrieves cocina representation for a druid
      • shunts output to success or failure dir depending on whether response is 200 OK or not
      • logs result of attempt
      • ability to pull object directly from fedora also (Dor.find using dor-services gem). flag to indicate whether that is done always, never, or only if cocina retrieval fails? default to last of those options? (include dor-services version when logging that this was done, also how to serialize?)
    • a model class that represents a DB record for a druid -- unique by druid, requires prefix, other fields: last_attempted_cocina_retrieval, last_attempted_fedora_retrieval, cocina_outcome (success/fail), fedora_outcome (success/fail)
    • a model class that represents a DB record for an attempt to retrieve a druid -- could then get rid of all the non-druid fields in the druid model and have attempted_on, cocina_outcome, fedora_outcome
    • an ActiveJob class that takes a druid and uses the service class to do a retrieval and write the result to DB using model class (delayed_job is already installed)
    • some canned queries and code fragments in README for queueing up jobs, reading a druid list to add new ones to the DB, etc
  • rotate logs. but keep old logs around for a while (duration of this testing?), since they will be helpful in our analysis work. after loading fedora's current druid list into cocina-food-inspector's DB on sul-dev-suntzu, the prod log is 1.2 GB.
  • would be nice to make this more of a real app. deploy to real VM, use shared configs for real, use PG instead of sqlite, sidekiq instead of delayed_job, extract DSC method per TODO, add rubocop, add tests, add badges (priority order?) (turn this into a real app #4)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions