Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automatic checks on integrity #2131

Open
14 tasks
only1chunts opened this issue Dec 16, 2024 · 0 comments
Open
14 tasks

Automatic checks on integrity #2131

only1chunts opened this issue Dec 16, 2024 · 0 comments

Comments

@only1chunts
Copy link
Member

only1chunts commented Dec 16, 2024

User story

As a curator
I want some basic data integrity checks on the database done regularly
So that I can ensure the data doesn't have integrity issue

Acceptance criteria

Given a dataset must have authors associated with it
When I run the integrity check
Then Any dataset that do not have any author associated should be reported

Given a dataset must have at least one type
When I run the integrity check
Then Any dataset that do not have any type associated should be reported

Given a dataset must have at a title
When I run the integrity check
Then any dataset that do not have a title should be reported

Given a dataset must have at least one file associated with (not counting the readme_DOI.txt)
When I run the integrity check
Then any dataset that do not have any file associated (except for the readme_DOI.txt) should be reported

Given a dataset's funding information must have a funding body name filled in
When I run the integrity check
Then any dataset with funding associated which has no funding body name filled in should be reported

Additional Info

  • Bash script to wrap a Yii2 console
  • The checks are SQL queries made to the database, if the query has result, it is written to the report
  • Result should mention affected DOIs
  • Should run once a month , at a time when not too much work is done.
  • Get the report sent by email to database@ and tech@
  • Update bastion playbook to deploy the check to the bastion server

Prerequisite: Have migrated email library from SwiftMailer to Symfony mail. (see #982)

Product Backlog Item Ready Checklist

  • Business value is clearly articulated
  • Item is understood enough by the IT team so it can make an informed decision as to whether it can complete this item
  • Dependencies are identified and no external dependencies would block this item from being completed
  • At the time of the scheduled sprint, the IT team has the appropriate composition to complete this item
  • This item is estimated and small enough to comfortably be completed in one sprint
  • Acceptance criteria are clear and testable
  • Performance criteria, if any, are defined and testable
  • The Scrum team understands how to demonstrate this item at the sprint review

Product Backlog Item Done Checklist

  • Item(s) in increment pass all Acceptance Criteria
  • Code is refactored to best practices and coding standards
  • Documentation is updated as needed
  • Data security has not been compromised (with particular reference to the personal information we hold in GigaDB)
  • No deviation from the team technology stack and software architecture has been introduced
  • The product is in a releasable state (i.e. the increment has not broken anything)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

2 participants