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

update config for 24.1 #1225

Merged
merged 7 commits into from
Jul 10, 2024
Merged

update config for 24.1 #1225

merged 7 commits into from
Jul 10, 2024

Conversation

bgruening
Copy link
Member

No description provided.

@@ -0,0 +1,5 @@
- include: ./lib/galaxy/files/templates/examples/production_azure.yml
Copy link
Member Author

Choose a reason for hiding this comment

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

we need to decide what we do with those templates ...
Do we copy them into a specific location? How do we handle version updates to those files then? I don't think we need to template them out, but we need to decide where to store them.

Copy link
Member Author

Choose a reason for hiding this comment

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

a few thoughts:

  • we might want to add new templates, and those are then most likely not in the Galaxy source tree
  • upstream might add updates - a new version of the file-source with a new version number
    • those we could sync like we sync now other config files
  • I assume those templates need to be accessible by celery and other services - so on a shared filesystem

Maybe a separate folder under mutable-config/file-source-templates and mutable-config/object-store-templates/ ?

Copy link
Member Author

Choose a reason for hiding this comment

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

@jmchilton any thoughts?

Copy link
Member

@sanjaysrikakulam sanjaysrikakulam Jul 3, 2024

Choose a reason for hiding this comment

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

I think that is a good solution. We can have a separate directory and append it to the lists here. We can add a couple of variables there and let the ansible-galaxy role copy everything and handle these files.

Also, rsync already syncs the mutable-config dirs to the NFS, and Celery and other services that need them can access it from the NFS.

Copy link
Contributor

Choose a reason for hiding this comment

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

I am sorry I missed this ping - I just landed up here from that PR review. I would start by not copying them out - just link use the links to link the ones in the code base. Y'all are going to be way ahead of any other instance on this so if you have fixes for the templates - try to upstream them and we will try to be very open to that.

@sanjaysrikakulam
Copy link
Member

sanjaysrikakulam commented Jul 5, 2024

I have added a new commit that:

  1. Adds object store and file source templates and the catalog for the same.
  2. Updates galaxy upgrade diff script to include the compare for these templates.
  3. Enables the file source and object store template variables in the galaxy conf.
  4. Updates sn06 group vars to allow the creation of the new dirs file_source_templates and object_store_templates under galaxy_mutable_config_dir. Also, copies the file source and object store templates along with the catalog files to the respective locations on the server.

I deployed the same in the ESG instance, and the object store and file source options are now available for the users in the user preferences.

@@ -51,3 +51,19 @@ compare files/$folder/config/user_preferences_extra_conf.yml $GALAXY/config/user
#compare templates/$folder/config/build_sites.yml.j2 $GALAXY/config/build_sites.yml.sample.sample

compare group_vars/gxconfig${ext}.yml $GALAXY/config/galaxy.yml.sample

# Compare file source templates
compare files/$folder/config/file_source_templates/production_aws_private_bucket.yml $GALAXY/files/templates/examples/production_aws_private_bucket.yml
Copy link
Member Author

Choose a reason for hiding this comment

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

Any idea how we remember to add new templates here if we add new ones?

Copy link
Member

Choose a reason for hiding this comment

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

I will update our operations here and add additional checkpoints there that this script should updated if and when new templates from upstream are added.

Copy link
Member

@sanjaysrikakulam sanjaysrikakulam Jul 5, 2024

Choose a reason for hiding this comment

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

Additionally, we can loop over all the files in our directory, compare them to the files in the respective templates dir in the upstream, and compare them during the upgrade cycle (looping over files might not cover all cases.).

Copy link
Member

Choose a reason for hiding this comment

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

unfortunately not because the upstream has more templates; we picked only the ones that are "production" ready.

Copy link
Member

Choose a reason for hiding this comment

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

Documentation PR

@sanjaysrikakulam
Copy link
Member

BTW: I created an issue in the upstream related to the object store galaxyproject/galaxy#18500

We either have to wait a bit or proceed with the rollout without the object stores and deploy object stores later.

@sanjaysrikakulam
Copy link
Member

Things to set in the galaxy config for the object store:

  1. object_store_cache_path: We need a Universal path for all user object stores (I guess we need to get a dedicated NFS share or create a dedicated user_object_store_cache dir in one of the JWDs. I don't know how big this should be and how well this feature is going to be used by our users).
  2. object_store_cache_size: Set this to the max size of the object_store_cache_path NFS share.

BTW: I have added version: 0 to all the templates part of this PR, so the templates in this PR are the same as the ones in my PR here

ping @bgruening.

@bgruening
Copy link
Member Author

We can disable this feature for the time being.

@bgruening
Copy link
Member Author

A new NFS is ordered and we will use that when we advertise this feature broadly.

@bgruening
Copy link
Member Author

So lets disable this feature then.

@sanjaysrikakulam
Copy link
Member

I have now disabled copying the object store and file source template catalogs.

I think the PR is ready for review. Please check.

@bgruening
Copy link
Member Author

Good for me. I'm I allowed to do the update this evening or better tomorrow evening?

@sanjaysrikakulam
Copy link
Member

sanjaysrikakulam commented Jul 9, 2024

Tomorrow evening is better.

By the way, this patch fixes the object store issue. When we have the new NFS box, we can deploy the user file source and the object store features.

@bgruening bgruening marked this pull request as ready for review July 10, 2024 13:57
@bgruening
Copy link
Member Author

So any last comments before I deploy it this evening?

Removes all the user file sources and object store conf along with the catalog, templates and ansible copy stuff for now. This can be added when this feature is going to be rolled out.
@bgruening bgruening merged commit 261da2e into master Jul 10, 2024
2 checks passed
@bgruening bgruening deleted the release_24.1 branch July 10, 2024 18:28
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.

4 participants