Deploy as Azure Web App

Official Content
This documentation is valid for:

The Build -> Deploy Application menu option allows you to deploy a web application as an Azure WebApp (formerly known as an Azure WebSite).

The following document explains the process of creating an Azure WebApp from the Azure portal and deploying your GeneXus web application there.

Step-by-step guide

If you are deploying a .NET Environment, make sure that you have MSDeploy installed on your machine. 

1. Go to the Azure portal and follow the instructions provided there to create a new WebApp:

Create1_png

2. Under the Runtime Stack combo use the following table to select the right stack for your environment.

Environment Runtime stack
.NET (C#) ASP.NET V4.7
Java Tomcat 9.0
.NET Core .NET Core 3.1 (LTS)

i02-RuntimeStack_png

3. It will take a few seconds for the WebApp to be created. After that, you will have the settings and data of your recently created WebApp.
Click on the "Get Publish Profile" link to download the .PublishSettings file, which contains the credentials needed to deploy the recently created WebApp. Remember that GeneXus will ask for that file afterward.

AzureWebAppPublishProfile

4. That's it from the Azure portal. Now, go to GeneXus and click on Build -> Deploy Application

GenexusDEPLOYWebApp

5. You will be prompted for the .publishProfile file you downloaded in step 3 of this document. Select that file and that's it: GeneXus will gather all the necessary information to transfer your web app to the cloud.

Note that you can then manage other app settings at the Azure portal.

Note: If you are deploying to .NET Core you need to set the Startup Command under the Configuration pane to:

dotnet bin/GxNetCoreStartup.dll

i03-StartUp_png

6. Run the application.

Once the application gets deployed you can access it by going to your web app URL plus your object. For instance, if you have deployed a WebPanel called Hello, add hello.aspx to your url if your deploy was either .NET or .NET Core. If it's Java, make sure you add servlet/<java package name>.<object name>