This project demonstrates the deployment of a Platform as a Service (PaaS) solution using Pulumi and Azure. It includes the creation of various Azure resources such as a resource group, virtual network, subnets, DNS zone, cognitive services account, private endpoint, app service plan, and a web app.
- Node.js and npm installed
- Pulumi CLI installed
- Azure CLI installed
- An Azure account
index.js
: Contains the Pulumi JavaScript code for resource provisioning.Pulumi.yaml
: Configuration file for the Pulumi project.
- Resource Group
- Virtual Network
- Subnets
- Private DNS Zone
- Cognitive Services Account
- Private Endpoint
- App Service Plan
- Web App
- Source Control Integration
- Budget
Ensure you have the following configuration variables set in your environment or Pulumi.yaml
:
azure-native:location
: The Azure region to deploy resources.my:repoUrl
: The URL of the GitHub repository.my:branch
: The branch of the GitHub repository.
-
Clone the repository:
git https://github.com/floholzer/clco_project1 cd clco_project1
-
Install dependencies:
npm install
-
Login to Azure:
az login
-
Initialize Pulumi:
pulumi login pulumi stack init dev
-
Deploy the stack:
pulumi up
After deployment, Pulumi will output the following:
- Resource Group Name
- Virtual Network Name
- Private DNS Zone Name
- Cognitive Account Name
- Web App Name
- Web App URL
To remove all resources created by this project:
pulumi destroy