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

Add multi organization support #1982

Open
wants to merge 13 commits into
base: main
Choose a base branch
from

Conversation

eiffel777
Copy link
Contributor

This PR adds the ability to add multiple organizations in Open XDMoD via the organization.json file. Changes made to the ingestion of organization.json include:

  • Allow option setting of ID value for each organization. Previously, the organization was always given the ID of 1
  • Add new table, mod_shredder.staging_organization_config, that stores the values of the organization.json file.
  • Existing table, mod_shredder.staging_organization, modified to just contain organization_id and organization_name with organization_id being an auto_increment. This table sets the ID value of the organization if one is not specified on organization.json. The use and structure of these two tables is copied from how the resources.json file are ingested.
  • The organization option in xdmod-setup now allows for adding multiple organizations and listing all organizations in organization.json.
  • The format of organization.json has changed to an array of json objects from a single json object. There is a config files migration to update existing installations to this format.

Notes:

  • This is the first in a series of PR's for adding multi organization support to XDMoD and our documentation will need to be updated to reflect that. Those updates will be in later PR's since it is likely that changes made now will need to be changed again in those later PR's.
  • The upgrade regression tests will fail until Adding an order to the Resource Specifications batch export #1979 is merged.

Tests performed

Tested in docker and added a new organization to test adding multiple organizations.

Checklist:

  • The pull request description is suitable for a Changelog entry
  • The milestone is set correctly on the pull request
  • The appropriate labels have been added to the pull request

@eiffel777 eiffel777 added new feature New functionality Category:General General labels Feb 12, 2025
@eiffel777 eiffel777 added this to the 11.5.0 milestone Feb 12, 2025
@eiffel777 eiffel777 self-assigned this Feb 12, 2025
{
parent::execute();

Utilities::runEtlPipeline(['ingest-organizations'], $this->logger);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You shouldn't need to add this php class. The ETLv2 code will automatically run migration pipelines based on their name.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Category:General General new feature New functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants