With the Azure App Service Actions for GitHub, you can automate your workflow to deploy Azure Web Apps using GitHub Actions.
Get started today with a free Azure account!
A repo for Sample apps and sample workflows.
This repository contains the GitHub Action for building Azure Web Apps on Linux using the Oryx build system. Currently, the following platforms can be built using this GitHub Action:
- .NET Core
- Node
- PHP
- Python
If you are looking for a GitHub Action to deploy your Azure Web App, consider using azure/webapps-deploy
.
The definition of this GitHub Action is in action.yml
.
V2 version v2
is released. It's using a new dockerfile for GitHub Actions
to significantly reduce the time for building your app.
actions/checkout
- Checkout your Git repository content into the GitHub Actions agent
azure/webapps-deploy
- Deploy a web app to Azure
The following is a sample of a workflow that builds a web app in a repository whenever a commit is pushed:
on: push
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Cloning repository
uses: actions/checkout@v1
- name: Building web app
uses: azure/appservice-build@v2
with:
platform: <PLATFORM_NAME>
platform-version: <PLATFORM_VERSION>
source-directory: <SOURCE_DIR>
output-directory: <OUTPUT_DIR>
The following is a sample workflow that builds a web app in a repository and then deploys it to Azure whenever a commit is pushed:
on: push
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Cloning repository
uses: actions/checkout@v1
- name: Building web app
uses: azure/appservice-build@v2
with:
platform: <PLATFORM_NAME>
platform-version: <PLATFORM_VERSION>
source-directory: <SOURCE_DIR>
output-directory: <OUTPUT_DIR>
- name: Deploying web app to Azure
uses: azure/webapps-deploy@v1
with:
app-name: <WEB_APP_NAME>
publish-profile: ${{ secrets.AZURE_WEB_APP_PUBLISH_PROFILE }}
The following variable should be replaced in your workflow:
-
<PLATFORM_NAME>
- Programming platform used by the web app that's being deployed, optional.
-
<PLATFORM_VERSION>
- Version of programming platform used by the web app, optional.
- Oryx will determine the version from source files if version was not set.
- Default version of each platform if version was not set and Oryx couldn't determine version :
- .NET Core 3.1
- Node 12.16
- PHP 7.3
- Python 3.8
-
<SOURCE_DIR>
- Relative path (within the repo) to the source directory of the web app that's being deployed, optional.
-
<OUTPUT_DIR>
- Directory where the build output has to be put, optional.
-
<WEB_APP_NAME>
- Name of the web app that's being deployed
The following variable should be set in the GitHub repository's secrets store:
AZURE_WEB_APP_PUBLISH_PROFILE
- The contents of the publish profile file (
.publishsettings
) used to deploy the web app; for more information on setting this secret, please see theazure/webapps-deploy
action
- The contents of the publish profile file (
For more information about Microsoft's privacy policy, please see the PRIVACY.md
file.
Microsoft takes the security of our software products and services seriously, which includes all source code repositories managed through our GitHub organizations, which include Microsoft, Azure, DotNet, AspNet, Xamarin, and our GitHub organizations.
For more information about Microsoft's privacy policy, please see the SECURITY.md
file.
To disable this GitHub Action from collecting any data, please set the environment variable ORYX_DISABLE_TELEMETRY
to true
, as seen below:
- name: Building web app
uses: azure/appservice-build@v2
env:
ORYX_DISABLE_TELEMETRY: true
For more information on contributing to this project, please see the CONTRIBUTING.md
file.
For more information on contributing to this project, please see the LICENSE.md
file.