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

Auto updating end date tag #21

Open
marksparkza opened this issue Jan 24, 2024 · 0 comments
Open

Auto updating end date tag #21

marksparkza opened this issue Jan 24, 2024 · 0 comments
Assignees

Comments

@marksparkza
Copy link
Member

marksparkza commented Jan 24, 2024

Implement an ODP package tag to enable automatic updating of date ranges for continuously updated datasets - such as the SOMISANA ocean model outputs.

The idea originally was for this to be a record tag, which would cause the relevant date field (depending on metadata schema) within the record's metadata to be automatically updated. But actually it makes sense for such updates to be done on the packaging side, because (a) it's an input-driven change, (b) updating a package daterange tag does not depend on metadata schema, and (c) change tracking is focused on a specific tag instead of an entire metadata record.

This capability requires the following development:

  • Definition of a new Package.DateRangeInc tag type with cardinality one, in odp-server/migrate/systemdata/tags.yml
  • Corresponding tag schema supporting an end property whose value is controlled by an enum ["current_date"]
  • Attachment of tag instances of this type to packages with data {"end": "current_date"} [Note: for the time being, this can be done as needed using Swagger, there are very few use cases and no need for any UI support]
  • A new ODP packaging module that will support automated packaging features, under odp.package in odp-server
  • A new bin script to trigger running of this module, in odp-server/bin/package
  • Scheduling of this bin script via cron (similar to deploy/odp-publish)

The odp.package module should, for now, just search for packages with a Package.DateRange and a Package.DateRangeInc tag, and where found, update the Package.DateRange end date via the ODP package API.

This functionality should be subjected to testing in the ODP package API tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants