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

CARDS-2317: Split CARDS into multiple projects #1694

Merged
merged 11 commits into from
Feb 15, 2024
Merged

CARDS-2317: Split CARDS into multiple projects #1694

merged 11 commits into from
Feb 15, 2024

Conversation

sdumitriu
Copy link
Member

@sdumitriu sdumitriu commented Feb 12, 2024

Splitting #1652 in two. This is just the all the improvements to the startup scripts, without any project removal.

To test: running with start_cards.sh and compose-cluster still works as before.

In docker_entry.sh, add the project codename specified by the /external_project/project_code.txt file to the VALID_CARDS_PROJECTS list if such file exists
Add the generic CARDS logo as /metadata/logo.png in the built Docker images
When CARDS is starting, it should also look for required JARs in the /root/.cards-generic-m2/repository directory. This directory, by default, is empty but can be volume-mounted with the JARs from the generic CARDS platform (--cards_generic_jars_repo flag for generate_compose_yaml.py)
distribution/docker_entry.sh: Rename PROJECT_ARTIFACTID variable to CARDS_ARTIFACTID
distribution/docker_entry.sh: Rename PROJECT_VERSION variable to CARDS_VERSION
distribution/docker_entry.sh: The version of the CARDS-based project (eg. HERACLES, SPARC, etc...), as opposed to the version of the CARDS core platform, to be launched is now determined by the CARDS_PROJECT_VERSION environment variable and not the CARDS_VERSION environment variable
distribution/docker_entry.sh: Display the values of the CARDS_PROJECT and CARDS_PROJECT_VERSION environment variables upon startup
Rename CARDS_PROJECT_VERSION to PROJECT_VERSION
Allow interpreting $PROJECT_VERSION variables in the ADDITIONAL_SLING_FEATURES env variable
Allow interpreting variables in the passed arguments, and allow definining a separate PROJECT_VERSION variable as the version for external projects
Add support for separate versions for the base CARDS platform and the specific project on top of it
Remove support for the deprecated run modes handling
Remove custom support for specific projects
Copy link
Member

@IntegralProgrammer IntegralProgrammer left a comment

Choose a reason for hiding this comment

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

Tested as follows, all worked as expected:

  • ./start_cards.sh
    • Generic mode
    • Cards4LFS
    • Cards4Prems
    • Cards4Proms
    • Cards4Heracles
  • generate_compose_yaml.py
    • Generic mode
    • Cards4LFS mode
    • Cards4Prems mode
      • Tested and can confirm that SMTPS emails and Clarity SQL imports work
    • Cards4Proms mode
      • Tested and can confirm that SMTPS emails and Clarity SQL imports work
    • Cards4Heracles mode
      • Tested and can confirm that pushing data to a test S3 bucket works

It is important to note that, given that the CARDS_PROJECT environment variable has been renamed to PROJECT_NAME, we will need to make this change manually to all our deployments next time that a container image is deployed which contain these changes.

@sdumitriu sdumitriu merged commit f86e5cc into dev Feb 15, 2024
@sdumitriu sdumitriu deleted the CARDS-2317-base branch February 15, 2024 17:31
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

Successfully merging this pull request may close these issues.

2 participants