A deployment model that relies on Git, Kudu, and Umbraco Deploy core technology to move your changes from one environment to another.
Umbraco Cloud uses a deployment model that relies on Git, Kudu, and Umbraco Deploy core technology to move your changes from one environment to another. Umbraco Cloud uses a classic "left to right" deployment model - changes are first made in the Development or local environment and then deployed to the Live environment.
If your project contains a Staging environment, deployments will be made from Development to Staging and then from Staging to Live.
Left to right model
Umbraco Cloud uses a two-part deployment approach where we keep metadata (Document types, templates, etc) and content (Content nodes and Media) as separate parts of deployment. To be able to distinguish between the two types of deployments, we use the term transfer for content and media deployments and the term deploy for metadata deployments. In summary:
- 1.Metadata such as Document Types, Templates, Forms, Views, and config files are stored in a Git repository and are deployed between environments using either a Git client or the Umbraco Cloud Portal.
- 2.Content and Media items are not stored in the Git repository. These need to be transferred directly from the Umbraco backoffice using the Queue for Transfer option. Once a content editor has all the items needed for a transfer, they will use the Deployment Dashboard in the Content section to transfer the items in the queue.
With this arrangement, you don't need to grant Umbraco Cloud portal access to your content editors. Instead, allow them access only to the required backoffice sections of your sites. This also allows developers to focus on deploying metadata that is stored in the site's Git repository and content editors to focus on transferring content that is stored as Umbraco data.
Learn more about the deployment approach in this video, which will also show you how to deploy metadata as well as how to transfer content and media. Below you'll find links to articles containing step-by-step guides for each approach.
To transfer content and media, the source environment and the target environment needs to have the same setup. They need to be in sync and have the same file structure. To achieve this you need to deploy your metadata changes to the target environment.
Moving your content and media between your environments is done through the Umbraco Backoffice. You can transfer content from one environment to another, e.g. from Local to your Development environment. You also have the option to restore content and media to your Local or Development environment from your Live or Staging environment.
Transferring and restoring content and media is the same whether you are working between Local and Cloud or you are working between two Cloud environments.
All configuration for Umbraco Deploy is held in the
appSettings.jsonfile found at the root of your Umbraco website.
Some deployments can cause an Umbraco Cloud environment to restart. See the table below to learn which actions initiate an application restart.
Config file change
File change - Example: css-file
Content and/or Media transfer
From the Umbraco Cloud Portal, you can manually restart your environments.
Restart an environment
You might notice a file in your cloud project called
umbraco-cloud.json. This file tells the deployment engine where to deploy to, it knows which environment you’re currently on (for example, local or staging) and chooses the next environment in the list to deploy to.
You are free to update the
nameattribute in the
umbraco-cloud.jsonfile to make it clear in the Workspaces dashboard where you’re deploying to. So if you want to name the Development environment to “Everything goes here” then you can do that and the name will be displayed on the dashboard when deploying to that environment.