Giter Club home page Giter Club logo

appservice-build's Introduction

GitHub Action for building Azure Web Apps

With the Azure App Service Actions for GitHub, you can automate your workflow to deploy Azure Web Apps using GitHub Actions.

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:

  • Golang
  • Java
  • .NET Core
  • Node
  • PHP
  • Python
  • Ruby

Note: as this list may become out of date, please refer to this document in the Oryx repository for a more accurate list of platforms and their versions that can be built.

If you are looking for a GitHub Action to deploy your Azure Web App, consider using azure/webapps-deploy.

If you are looking for a GitHub Action to build and deploy Azure Container Apps, consider using azure/container-apps-deploy-action

The definition of this GitHub Action is in action.yml.

End-to-End Sample Workflows

Dependencies on other GitHub Actions

  • actions/checkout
    • Checkout your Git repository content into the GitHub Actions agent

Other GitHub Actions

Sample workflow to build a web app

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@v3
        with:
          platform: <PLATFORM_NAME>
          platform-version: <PLATFORM_VERSION>
          source-directory: <SOURCE_DIR>
          output-directory: <OUTPUT_DIR>

Sample workflow to build and deploy an Azure Web App

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@v3
        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 variables should be replaced in your workflow:

  • <WEB_APP_NAME>

    • Name of the web app that's being deployed
    • Required - Used only for the azure/webapps-deploy GitHub Action
  • <PLATFORM_NAME>

    • Programming platform used by the web app that's being deployed
    • Optional - Oryx will detect the provided application's platform if not provided
  • <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.
    • The following are the default versions used per platform if a version cannot be detected by Oryx:
  • <SOURCE_DIR>

    • Relative path (within the repo) to the source directory of the web app that's being deployed
    • Optional - The value of GITHUB_WORKSPACE environment variable will be used if not provided
  • <OUTPUT_DIR>

    • The directory where the build output will be copied to
    • Optional - The build output will not be copied to a separate directory if not provided

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 the azure/webapps-deploy action

Privacy

For more information about Microsoft's privacy policy, please see the PRIVACY.md file.

Security

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.

Disable Data Collection

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@v3
  env:
    ORYX_DISABLE_TELEMETRY: true

Contributing

For more information on contributing to this project, please see the CONTRIBUTING.md file.

License

For more information on contributing to this project, please see the LICENSE.md file.

appservice-build's People

Contributors

arroyc avatar cormacpayne avatar kichalla avatar microsoft-github-operations[bot] avatar qianz2 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.