Dev/Prod environments with PSU?

I feel like not many people are talking about dev environments much, or I am not looking at right places. Haven’t been active lately and noticed that the new UD 3.x came out and is now integrated within this new PSU product that I never heard of. Super excited, I am browsing through docs trying to wrap my head around what’s going on, but I ended up with more questions than before.

Bit of background:
I’ve been using UD since for around 8 months now, and due to some dev environment limitations at a time, I built a “UD launcher”. It’s basically a boilerplate framework that have ability to reload pages and functions live so I could rapidly develop pages without restarting dashboard.
Coupled with Azure DevOps pipelines, this allowed me to write my dashboard locally, commit to master and Azure pipelines would sync git changes on server and restart windows service in prod. I say sync, because users uploaded files in prod and I need to keep both dev/prod environments consistent.

The new UD 3.x is now part of PSU, which pretty much completely breaks my current environment. So instead of trying to rewrite it, I think I’ll just join the rest of you and follow your practices. But what are they?

If you guys could answer at least one question with your own experience or opinion, I would greatly appreciate it.

Questions:

I am still torn between Windows Service and IIS hosting method. IIS seems to be better choice in a long run and gives more control, but service method is easier to update when new UD version comes out. What do you use and why?

If using IIS hosting method in prod, do you also install IIS locally in your dev environment and match them?

Do you have a separate dev/prod environment or do you develop live? What is your process - e.g. do you use devops automation, if so what is your process? Or do you work directly in UNC share or manually upload via FTP, etc?

Does PSU provide authentication and/or does it rely on licensed UD for it to work?

Can UD 3.x detect changes in pages/scripts and reload them, or is this feature still limited to dashboard.ps1?

Thank you for taking your time answering this.

I’ll let others answer the IIS vs Windows Service decision. The IIS integration is better now with PSU as we can now host InProcess so you won’t have to proxy requests to the out-of-process UD PS instance. But I could go either way. IIS does seem like the preferred method.

I haven’t been staging for prod\dev so I can’t really comment there. The idea with PSU was to make the instances repeatable by putting all the configs in PS1 files that you could then source control, deploy and stand up without having to develop in prod live. That’s the dream at least.

Does PSU provide authentication and/or does it rely on licensed UD for it to work?

PSU provides authentication but you will need to have a licensed UD to enable authentication for your dashboard. Same as with UD.

Can UD 3.x detect changes in pages/scripts and reload them, or is this feature still limited to dashboard.ps1?

Yes. PSU detects changes in the entire directory and will reload settings for the entire platform if they change.

1 Like

Yes. PSU detects changes in the entire directory and will reload settings for the entire platform if they change.

That’s great, man, definitely a welcome addition in my current position.
Does it support exclusions based on path or folder names? I don’t want the dashboard to reload if user uploads a picture, for example.

Right now, it reloads when anything changes in the configurable “repository” directory. You could have a separate data directory that you stored stuff like that in and then it wouldnt reload