I needed to deploy Drupal 8 CMS to an Azure App Service running within an Azure App Service Environment (ASE) and becuase my Azure Subscription does not allow for Marketplace installations I needed to get the code from another place, ex: GitHub. Although I mention that I deployed this to an ASE environment, the setup is the same for the multi-tenant environment within Azure App Services.
Note some things:
- If you can deploy the code or feature from the Azure Market place then do that instead of GitHub
- If you can or have a GitHub Organization account, then credentials can be shared and you won’t have to go through what I am explaining below, see here.
- If you do not have the credentials to the GitHub repository, you cannot setup the deployment in the Azure App Service
Here is how I deployed a GitHub repository owned by someone else:
- Fork it
- Configure it
- Use it
If I try to configure the deployment option before forking the repository into my GitHub, then I will not see it in my list of repositories in the Azure portal, Figure 1.
Figure 1, deploy someone elses GitHub repository to an Azure App Service
See Figure 3 and you will see the forked reposiroty in the portal.
Fork it
The trick is to fork the repository. I knew that a colleague of mine had the Drupal version I needed so I when there and forked it. Click on the Fork button as shown in Figure 2.
Figure 2, deploy someone elses GitHub repository to an Azure App Service
Configure it
Then, when you go back into the deployment options you will see the project, see Figure 3.
Figure 3, deploy someone elses GitHub repository to an Azure App Service
And I will also see the repository on my GitHub account, Figure 4.
Figure 4, deploy someone elses GitHub repository to an Azure App Service
Use it
Once you click ok to configure the GitHub as the deployment source, the deployment is automatically triggered, Wait for some time and then access the Azure App Service Web App and you will see the site rendered as expected, in this case a Drupal 8.2.6 CMS on an ASE. Figure 5.
Figure 4, deploy someone elses GitHub repository to an Azure App Service, Drupal on Azure App Service Web App