Best Practices for UAT and "Staging" Env

Hey all! First post here, been a developer on Foundry on and off for over 3 years now.

I’m curious with what the community believes are the best practices to develop features/applications that are to be tested by a select number of users before going to prod.

In the past, my team’s approach was to create a duplicate of every single object (and its respective backing dataset), ontology action and workshop app related to a specific project. After UAT passed, we would need to copy over every single item into production, which was an error prone method and, most importantly, super boring.

On more “loose projects” I just shared unpublished workshop versions and occasionally copied some ontology actions, but most ontology work was done “live”. For bigger changes I would follow the same “copy everything” process for PoCs and stuff.

With Foundry Branching, even though its in beta, I see a lot of potential where the same overall process could be followed, with the benefit of not needing to copy things over and being able to just merge the changes. But unfortunately, external actions (like using a LLM API) are not supported on Foundry Branches, so I cant really flesh out every feature I want.

What are your approaches for processes like these? What war stories do you have and lessons you have learned?

1 Like

Quick answer: Did you consider Foundry Devops as it is a dedicated way of developing and deploying the resources (packaged as “marketplace product”) on Foundry ?

Branches are definitely a way to handle this kind of workflow, or even a combination of both.

1 Like

I have the same issue, I am using branching logic for now.

Suggest using Spaces to model environments: one Space for each Environment.

Organize work into Projects, use DevOps to package your Projects into Products, and then use Marketplace to promote Products into your environments.

1 Like

Thank you all! I think that DevOps seems like the legit way to go, but the time sync that we need to invest into learning about that is a bit more than we are willing to give up. I will use branching for now.

A suggestion for Palantir is to create a walkthrough on this so people in my position can quickly understand the process and apply to existing applications within their orgs.