Skip to content

Refactor publish-options in user settings to support multiple endpoints #726

@hmaier-fws

Description

@hmaier-fws

Issue Description:

Refactor how the user specified "Publishing Settings" are stored in the "type": "settings" object. The settings are currently stored as a single object, but should be stored as an ARRAY of objects.

Currently, the "Publishing Settings" is only configured for ScienceBase. However, it is possible that other publishing end points may be added in the future. To support potential extension, and to provide consistency with how other settings are stored (e.g., "Metadata Repositories", "custom-schemas"), the publishing-options should be refactored as an array, that could support several objects.

This would also allow for the possibility of each publishing endpoint to specify any number of settings.

Current structure:

"repository-defaults": [
    {"repository": "data.gov", "title": "repo data.gov"},
    {"repository": "ScienceBase", "title": "repo Science Base"}
],
"publish-options": {
    "sb-publishEndpoint": "https://sbmd-service.djcase.com/", "sb-defaultParent": "12345"
},
"custom-schemas": []

Updated structure:

"repository-defaults": [
    {"repository": "data.gov", "title": "repo data.gov"},
    {"repository": "ScienceBase", "title": "repo Science Base"}
],
"publish-options": [
    {"sb-publishEndpoint": "https://sbmd-service.djcase.com/", "sb-defaultParent": "12345"},
    {"some other publisher": "https://pub.org", "pub-optionA": "option-1", "pub-optionB": "option-2"},
    {etc...}
"custom-schemas": []

Metadata

Metadata

Assignees

Labels

enhancementImprove or modify an existing feature

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions