Care to share any of your project details or code? In general, sharing this additional information makes it significantly easier for people to assist you.
i even have it working on our staging server, but when i make updates to the admin project, it doesn't seem to get updated when i publish the site
I assume you have a dedicated Xperience "Admin" project in your .NET solution to extend the Xperience administration. Are you saying:
- These administration behavior and UI extensions work in your staging environment, but don't work in another environment?
- You actually have the source code running in your staging environment using
dotnet run but you are building and publishing the application to another environment where you use dotnet MyApp.dll to run the application?
I have to go and clean and rebuild and publish and clean and rebuild and publish over and over and eventually it works.
I think you are missing some fundamentals about .NET and ASP.NET Core applications that are not unique to Xperience by Kentico.
We cover deployments to private cloud (e.g. your own servers) in our documentation.
When you run dotnet publish it builds the application and creates an output artifact containing only .dlls files and static artifacts (ex: client assets and images).
This publish output (or at least the .dll files) needs to completely replace the files you have running on your server. This means stopping the application in IIS (or Azure App Service), replacing the files, and then starting the application again.
You need to run additional commands to apply updates to content and object types, or apply a hotfix or Refresh to your deployed application.
There are plenty of ways to eliminate the downtime you experience during a deployment, like Xperience by Kentico SaaS. But you can also use your own load balancing or Azure App Service deployment slots combined with Xperience readonly deployments.
If you want to see deployment automation for an Xperience by Kentico SaaS project, the Kentico Community Portal's GitHub workflow is open source.