---
description: Use Azure DevOps to build your web assets and create bundles on Capawesome Cloud using the Capawesome CLI.
title: Integrate Capawesome Cloud with Azure DevOps - Capawesome
image: https://capawesome.io/docs/assets/images/social/cloud/live-updates/integrations/azure-devops.png
---

<!doctype html> 

[Skip to content ](#azure-devops) 

[🔐 Introducing the **Capacitor Vault** plugin — store secrets behind biometrics or a device passcode. ](/blog/announcing-the-capacitor-vault-plugin/) 

* [ SDKs ](/docs/sdks/)
* [ Formbricks ](/docs/sdks/capacitor/formbricks/)
* [ Geocoder ](/docs/sdks/capacitor/geocoder/)
* [ Google Sign-In ](/docs/sdks/capacitor/google-sign-in/)
* [ Grafana Faro ](/docs/sdks/capacitor/grafana-faro/)
* [ Gyroscope ](/docs/sdks/capacitor/gyroscope/)
* [ Haptics ](/docs/sdks/capacitor/haptics/)
* [ Home Indicator ](/docs/sdks/capacitor/home-indicator/)
* [ In-App Browser ](/docs/sdks/capacitor/in-app-browser/)
* [ Install Referrer ](/docs/sdks/capacitor/install-referrer/)
* [ Keep Awake ](/docs/sdks/capacitor/keep-awake/)
* [ libSQL ](/docs/sdks/capacitor/libsql/)
* [ Light Sensor ](/docs/sdks/capacitor/light-sensor/)
* [ Live Update ](/docs/sdks/capacitor/live-update/)
* [ Localization ](/docs/sdks/capacitor/localization/)
* [ Mail Composer ](/docs/sdks/capacitor/mail-composer/)
* [ Managed Configurations ](/docs/sdks/capacitor/managed-configurations/)
* [ Maps Launcher ](/docs/sdks/capacitor/maps-launcher/)
* [ Media Session ](/docs/sdks/capacitor/media-session/)
* [ ML Kit ](/docs/sdks/capacitor/mlkit/)
* [ Navigation Bar ](/docs/sdks/capacitor/navigation-bar/)
* [ Network ](/docs/sdks/capacitor/network/)
* [ NFC ](/docs/sdks/capacitor/nfc/)
* [ Node.js ](/docs/sdks/capacitor/nodejs/)
* [ OAuth ](/docs/sdks/capacitor/oauth/)
* [ Passkeys ](/docs/sdks/capacitor/passkeys/)
* [ Password Autofill ](/docs/sdks/capacitor/password-autofill/)
* [ PDF Generator ](/docs/sdks/capacitor/pdf-generator/)
* [ PDF Viewer ](/docs/sdks/capacitor/pdf-viewer/)
* [ Pedometer ](/docs/sdks/capacitor/pedometer/)
* [ Permissions ](/docs/sdks/capacitor/permissions/)
* [ Phone Dialer ](/docs/sdks/capacitor/phone-dialer/)
* [ Photo Editor ](/docs/sdks/capacitor/photo-editor/)
* [ Photo Manipulator ](/docs/sdks/capacitor/photo-manipulator/)
* [ PixLive ](/docs/sdks/capacitor/pixlive/)
* [ PostHog ](/docs/sdks/capacitor/posthog/)
* [ Printer ](/docs/sdks/capacitor/printer/)
* [ Privacy Screen ](/docs/sdks/capacitor/privacy-screen/)
* [ Proximity Sensor ](/docs/sdks/capacitor/proximity-sensor/)
* [ Purchases ](/docs/sdks/capacitor/purchases/)
* [ RealtimeKit ](/docs/sdks/capacitor/realtimekit/)
* [ Root Detection ](/docs/sdks/capacitor/root-detection/)
* [ Screen Brightness ](/docs/sdks/capacitor/screen-brightness/)
* [ Screen Orientation ](/docs/sdks/capacitor/screen-orientation/)
* [ Screen Reader ](/docs/sdks/capacitor/screen-reader/)
* [ Screenshot ](/docs/sdks/capacitor/screenshot/)
* [ Secure Preferences ](/docs/sdks/capacitor/secure-preferences/)
* [ Settings Launcher ](/docs/sdks/capacitor/settings-launcher/)
* [ Shake ](/docs/sdks/capacitor/shake/)
* [ Silent Mode ](/docs/sdks/capacitor/silent-mode/)
* [ SIM ](/docs/sdks/capacitor/sim/)
* [ SMS Composer ](/docs/sdks/capacitor/sms-composer/)
* [ Speech Recognition ](/docs/sdks/capacitor/speech-recognition/)
* [ Speech Synthesis ](/docs/sdks/capacitor/speech-synthesis/)
* [ Share Target ](/docs/sdks/capacitor/share-target/)
* [ Square Mobile Payments ](/docs/sdks/capacitor/square-mobile-payments/)
* [ SQLite ](/docs/sdks/capacitor/sqlite/)
* [ Superwall ](/docs/sdks/capacitor/superwall/)
* [ System WebView ](/docs/sdks/capacitor/system-webview/)
* [ Text Interaction ](/docs/sdks/capacitor/text-interaction/)
* [ Text Zoom ](/docs/sdks/capacitor/text-zoom/)
* [ Thermal State ](/docs/sdks/capacitor/thermal-state/)
* [ Toast ](/docs/sdks/capacitor/toast/)
* [ Torch ](/docs/sdks/capacitor/torch/)
* [ Vault ](/docs/sdks/capacitor/vault/)
* [ Volume ](/docs/sdks/capacitor/volume/)
* [ Wallet ](/docs/sdks/capacitor/wallet/)
* [ Wifi ](/docs/sdks/capacitor/wifi/)
* [ Zip ](/docs/sdks/capacitor/zip/)
* [ Cordova ](/docs/sdks/cordova/)
* [ Cloud ](/docs/cloud/)
* [ Integrations ](/docs/cloud/live-updates/integrations/)
* [ Pipeline ](#pipeline)
* [ Bitbucket Pipelines ](/docs/cloud/live-updates/integrations/bitbucket-pipelines/)
* Concepts
* Reference
* [ Troubleshooting ](/docs/cloud/live-updates/troubleshooting/)
* [ FAQ ](/docs/cloud/live-updates/faq/)
* [ Native Builds ](/docs/cloud/native-builds/)
* [ Set Up Environments ](/docs/cloud/native-builds/environments/)
* [ Overwrite Native Configurations ](/docs/cloud/native-builds/native-configurations/)
* [ Auto-Increment Build Numbers ](/docs/cloud/native-builds/auto-incrementing-build-numbers/)
* [ Configure the Web Build Script ](/docs/cloud/native-builds/web-build-script/)
* [ Build from a Monorepo ](/docs/cloud/native-builds/monorepo/)
* [ Use pnpm, Yarn, or bun ](/docs/cloud/native-builds/package-managers/)
* [ Install Private npm Packages ](/docs/cloud/native-builds/npm-private-registry/)
* [ Override the Java Version ](/docs/cloud/native-builds/override-java-version/)
* [ Custom iOS Provisioning Profiles ](/docs/cloud/native-builds/custom-ios-provisioning-profiles/)
* [ Build without Git ](/docs/cloud/native-builds/build-without-git/)
* [ Access Git Behind a Firewall ](/docs/cloud/native-builds/firewall-access/)
* [ Integrations ](/docs/cloud/native-builds/integrations/)
* Reference
* [ Troubleshooting ](/docs/cloud/native-builds/troubleshooting/)
* [ FAQ ](/docs/cloud/native-builds/faq/)
* [ App Store Publishing ](/docs/cloud/app-store-publishing/)
* [ Submit a Build ](/docs/cloud/app-store-publishing/submit-a-build/)
* [ Submit Automatically After a Build ](/docs/cloud/app-store-publishing/submit-automatically/)
* [ Troubleshooting ](/docs/cloud/app-store-publishing/troubleshooting/)
* [ FAQ ](/docs/cloud/app-store-publishing/faq/)
* [ Automations ](/docs/cloud/automations/)
* [ Reference ](/docs/cloud/automations/reference/)
* [ Troubleshooting ](/docs/cloud/automations/troubleshooting/)
* [ FAQ ](/docs/cloud/automations/faq/)
* [ Assist ](/docs/cloud/assist/)
* [ CLI ](/docs/cloud/cli/)
* APIs and SDKs
* [ Webhooks ](/docs/cloud/webhooks/)
* [ Integrations ](/docs/cloud/integrations/)
* Account
* [ Organization ](/docs/cloud/organizations/)
* [ Two-Factor Enforcement ](/docs/cloud/organizations/two-factor-authentication/)
* [ Audit Logs ](/docs/cloud/organizations/audit-logs/)
* [ Billing ](/docs/cloud/organizations/billing/)
* [ License Keys ](/docs/cloud/license-keys/)
* [ AI ](/docs/ai/)
* [ Insiders ](/docs/insiders/)
* [ Billing & Plans ](/docs/insiders/billing-and-plans/)
* [ FAQ ](/docs/insiders/faq/)
* [ License ](https://capawesome.io/legal/eula/)
* [ Support ](/docs/support/)
* [ Contributing ](/docs/contributing/)
* Contributing code
* [ Code of Conduct ](/docs/contributing/code-of-conduct/)
* [ Questions ](https://docs.github.com/en/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion#creating-a-discussion)
* [ Blog ](/blog/)
* Categories

* [ Pipeline ](#pipeline)

# Azure DevOps[¶](#azure-devops "Permanent link")

You can easily publish Live Updates to Capawesome Cloud using [Azure Pipelines](https://azure.microsoft.com/de-de/products/devops/pipelines). In this guide, we will show you how to create a Azure pipeline that builds your web assets and creates a bundle on Capawesome Cloud using the [Capawesome CLI](/docs/cloud/cli/).

## Preparation[¶](#preparation "Permanent link")

Before you start, make sure you have a Capawesome Cloud account and an app set up. Next, you need to create a Capawesome Cloud token and add it to your Azure Pipeline as a secure variable.

### Create a Capawesome Cloud token[¶](#create-a-capawesome-cloud-token "Permanent link")

Create a new Capawesome Cloud token via the [Capawesome Cloud Console](https://console.cloud.capawesome.io/settings/tokens). Just navigate to the `Tokens` page in the settings and click on the `Create Token` button. Choose a name for the token and click on the `Create` button. The token is now copied to your clipboard.

### Create a Azure Pipeline Variable[¶](#create-a-azure-pipeline-variable "Permanent link")

Add the Capawesome Cloud token to your Azure Pipeline as a secure variable with the name `CAPAWESOME_CLOUD_TOKEN` as described in [Set secret variables](https://learn.microsoft.com/en-us/azure/devops/pipelines/process/variables?view=azure-devops&tabs=yaml%2Cbatch#secret-variables).

## Pipeline[¶](#pipeline "Permanent link")

### Create the Pipeline[¶](#create-the-pipeline "Permanent link")

Create a new Azure Pipeline file in your repository under `azure-pipelines.yml` with the following content:

`[](#%5F%5Fcodelineno-0-1)trigger: none
[](#%5F%5Fcodelineno-0-2)
[](#%5F%5Fcodelineno-0-3)parameters:
[](#%5F%5Fcodelineno-0-4)  - name: channel
[](#%5F%5Fcodelineno-0-5)    displayName: Channel
[](#%5F%5Fcodelineno-0-6)    type: string
[](#%5F%5Fcodelineno-0-7)
[](#%5F%5Fcodelineno-0-8)pool:
[](#%5F%5Fcodelineno-0-9)  vmImage: ubuntu-latest
[](#%5F%5Fcodelineno-0-10)
[](#%5F%5Fcodelineno-0-11)jobs:
[](#%5F%5Fcodelineno-0-12)- job: Deploy
[](#%5F%5Fcodelineno-0-13)  displayName: Build web assets
[](#%5F%5Fcodelineno-0-14)  steps:
[](#%5F%5Fcodelineno-0-15)  - checkout: self
[](#%5F%5Fcodelineno-0-16)    displayName: Checkout
[](#%5F%5Fcodelineno-0-17)  - task: UseNode@1
[](#%5F%5Fcodelineno-0-18)    inputs:
[](#%5F%5Fcodelineno-0-19)      version: 20.x
[](#%5F%5Fcodelineno-0-20)    displayName: Install Node.js
[](#%5F%5Fcodelineno-0-21)  - script: npm ci
[](#%5F%5Fcodelineno-0-22)    displayName: Install Dependencies
[](#%5F%5Fcodelineno-0-23)  - script: npm run build
[](#%5F%5Fcodelineno-0-24)    displayName: Build web assets
[](#%5F%5Fcodelineno-0-25)  - script: npm install -g @capawesome/cli@latest
[](#%5F%5Fcodelineno-0-26)    displayName: Install Capawesome CLI
[](#%5F%5Fcodelineno-0-27)  - script: npx @capawesome/cli apps:channels:create --app-id 00000000-0000-0000-0000-000000000000 --name $env:CHANNEL --ignore-errors
[](#%5F%5Fcodelineno-0-28)    displayName: Create a channel on Capawesome Cloud
[](#%5F%5Fcodelineno-0-29)    env:
[](#%5F%5Fcodelineno-0-30)      CAPAWESOME_CLOUD_TOKEN: $(CAPAWESOME_CLOUD_TOKEN)
[](#%5F%5Fcodelineno-0-31)      CHANNEL: ${{ parameters.channel }}
[](#%5F%5Fcodelineno-0-32)  - script: npx @capawesome/cli apps:liveupdates:upload --app-id 00000000-0000-0000-0000-000000000000 --channel $env:CHANNEL --path dist
[](#%5F%5Fcodelineno-0-33)    displayName: Create a bundle on Capawesome Cloud
[](#%5F%5Fcodelineno-0-34)    env:
[](#%5F%5Fcodelineno-0-35)      CAPAWESOME_CLOUD_TOKEN: $(CAPAWESOME_CLOUD_TOKEN)
[](#%5F%5Fcodelineno-0-36)      CHANNEL: ${{ parameters.channel }}
`

This pipeline will build your web assets, log in to Capawesome Cloud, create a channel (if it does not exist yet), and create a bundle for the specified channel.

### Trigger the Pipeline[¶](#trigger-the-pipeline "Permanent link")

You can then trigger the pipeline manually by running it in the Azure Pipelines UI or by using the Azure Pipelines API. You will be prompted to enter the channel name. Of course, you can also trigger the pipeline automatically by specifying a different trigger.

June 8, 2026 

Back to top

```json
{"@context": "https://schema.org", "@graph": [{"@type": "TechArticle", "@id": "https://capawesome.io/docs/cloud/live-updates/integrations/azure-devops/#article", "headline": "Integrate Capawesome Cloud with Azure DevOps", "name": "Integrate Capawesome Cloud with Azure DevOps", "description": "Use Azure DevOps to build your web assets and create bundles on Capawesome Cloud using the Capawesome CLI.", "inLanguage": "en", "url": "https://capawesome.io/docs/cloud/live-updates/integrations/azure-devops/", "mainEntityOfPage": "https://capawesome.io/docs/cloud/live-updates/integrations/azure-devops/", "author": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}, "publisher": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}}]}
```
