A modern ASP.NET Core web application built with Razor Pages, deployed to Azure App Service using GitHub Actions CI/CD pipeline.
- ASP.NET Core 8.0 Razor Pages
- Responsive design with custom styling
- Automated deployment to Azure Web App
- GitHub Actions CI/CD pipeline
- Production-ready architecture
git clone https://github.com/GaffarProjects/AzureProjects.git
cd AzureProjects/DoomSkillsWeb
dotnet restore
dotnet build
dotnet run
git clone https://github.com/GaffarProjects/AzureProjects.git
cd AzureProjects/DoomSkillsWeb
### Run Locally
dotnet restore
dotnet build
dotnet run
text
Visit `http://localhost:5006` in your browser.
## βοΈ Azure Deployment
### Manual Deployment via Azure CLI
1. **Login to Azure:**
az login
2. **Create Resource Group:**
3. **Create App Service Plan:**
4. **Create Web App:**
5. **Deploy Application:**
dotnet publish -c Release -o ./publish
cd publish
zip -r publish.zip .
az webapp deployment source config-zip --resource-group DoomSkillsRG --name doomskills --src publish.zip
### Automated Deployment via GitHub Actions
This project uses GitHub Actions for continuous deployment.
#### Setup Instructions:
1. **Download Publish Profile:**
- Go to Azure Portal β Your Web App β Overview
- Click "Get publish profile" and download the file
2. **Add GitHub Secret:**
- Go to your GitHub repository β Settings β Secrets and variables β Actions
- Click "New repository secret"
- Name: `AZURE_WEBAPP_PUBLISH_PROFILE`
- Value: Paste the entire contents of the publish profile file
3. **GitHub Actions Workflow:**
- The workflow file is located at `.github/workflows/deploy.yml`
- Triggers automatically on push to `main` branch
- Builds, tests, and deploys to Azure Web App
## π Project Structure
DoomSkillsWeb/
βββ Pages/
β βββ Index.cshtml # Homepage
β βββ _Layout.cshtml # Layout template
β βββ _ViewStart.cshtml
βββ wwwroot/ # Static files
βββ Program.cs # Application entry point
βββ appsettings.json # Configuration
βββ DoomSkillsWeb.csproj # Project file
## π§ Configuration
### Application Settings
Update `appsettings.json` for environment-specific configurations.
### Azure Configuration
Set environment variables in Azure Portal:
- Go to Web App β Configuration β Application settings
- Add custom app settings as needed
## π§ͺ Testing
dotnet test
## π¦ Build & Publish
Build
dotnet build --configuration Release
Publish
dotnet publish --configuration Release --output ./publish
## π Live Application
Visit the live application at: `https://doomskills.azurewebsites.net`
## π€ Author
**Gaffar**
- GitHub: [@GaffarProjects](https://github.com/GaffarProjects)
- Portfolio: Building cloud solutions with Azure and .NET
## π License
This project is open source and available under the MIT License.
## π€ Contributing
Contributions, issues, and feature requests are welcome!
1. Fork the project
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
---
**Built with β€οΈ using ASP.NET Core and Azure Cloud**