Picasso, Harmony, Drydock over Grove?

Hey @team,

As part of SE-6511, based on the conversation on SE-6460, Serenity investigated how could we use upstream/3rd-party solutions over Grove for our hosting that involves the community more deeply. Based on the recommendation of @braden we were checking Picasso to build our Open edX images.

Following that idea, we did a discovery on how we could move the whole hosting stack we have to new foundations. We found out that we could use Picasso, Harmony, and Drydock combined with ArgoCD to host Open edX instances.

I invite you (especially @kaustav and @Agrendalath) to review the discovery. It would be the best to review it as soon as possible, so we can move forward timely.

Ticket to log time on for both reviewing and reading this post: SE-6511.

5 Likes

Check in: @team if anyone have anything to comment on, this is the right time.

2 Likes

@gabor Thanks for the nudge, I replied on the main discovery ticket.

@gabor Hi, I recently had a brush with configuring something in Grove and was left wanting a better way to write these YAML files a bit easily. Since right now the composition of YAML config using terraform and applying them means, there is almost no way to debug it. I just got messages that the YAML is invalid when tf apply fails.

So, I started looking for a better ways to do it and bumped into 2 things

  1. CUE Lang - It’s a pretty cool language where config can be typed, constrains verified and composed from multiple objects making it really nice. Removes a lot of boilerplate and provides a way to debug things.
  2. cdk8s - It’s a framwork for writing k8s config using programming languges like TypeScript and Python that can improve the ergonomics greatly.

Would any of these things make our lives easier in the context of Grove/PHD…etc.,?

I know it’s a very generic question. But I don’t have enough experience to ask a better question. Just wanted to throw it into the discussion and see if there is something to be gained from here.

1 Like

This would be lovely, but as I understand, we would need to apply these tools on Tutor-level, otherwise, we would struggle always because plugins can define anything anyhow.

1 Like

As I see no concerns were raised. Even sandboxes could be created with Argo Workflows + ArgoCD. So, I’m going to move the related task to delivered.

1 Like

@gabor nice, congrats!

Is there an expected timeline for this, and/or any immediate side effects? (eg. do we stop work on anything Grove-related now?)

@samuel I started working on this yesterday. I’ll see way more clearer by the end of the week. I would say that critical things should be fixed in Grove; we will use it for a while, but I wouldn’t spend tooooo much time on new features.

1 Like

I see. Thanks for the clarification. :)