kjaymiller / cookiecutter-relecloud

Cookiecutter template for the Cloud Advocacy Relecloud Demo Application
MIT License
7 stars 5 forks source link
azure cookiecutter python

[!IMPORTANT] Cookiecutter Relecloud is now the Azure Python Standardization Template Generator! This project will now be maintained at https://github.com/Azure-Samples/Azure-Python-Standardization-Template-Generator

Cookiecutter Relecloud

Github Build Status

Table of Contents

What is Cookiecutter-Relecloud?

Cookiecutter is a command-line utility that creates projects from cookiecutters (project templates), e.g. creating a Python package project from a Python package project template.

Relecloud is a sample web app created by the Microsoft Python Cloud Advocacy team.

While most cookiecutter generated projects are designed to build with a particular stack, Cookiecutter-Relecloud allows you to create a relecloud project with your choice of web framework, database, and deployment options.

https://github.com/kjaymiller/cookiecutter-relecloud/assets/8632637/872a41ad-a48e-49ad-956e-370e302508d2

Features

Deployment Options

Feature Django FastAPI Flask
Deployment - - -
Deploys via AZD
Deploys via Terraform
Deploys via ACA
Deploys with Azure App Service
Databases - - -
Azure ACA Postgres Plugin
Azure Cosmos DB (Postgres Adapter)
Azure Cosmos DB (MongoDB)
Azure Postgres Flexible Server
Azure Add-ons - - -
Azure vNet
Azure Secret KeyVault

|✅ (Developed)|🛠️ (In Development)|❌ (Currently Not Supported)|

To request support please create a new discussion.

Deployed Project Examples

Django


FastAPI


Flask


Deploying your cookiecutter template

  1. Create a new folder
  2. Create a virtual environment
python -m venv venv
source venv/bin/activate
  1. Install necessary files
python -m pip install cruft packaging ruff 
  1. Generate the project using this template
python -m cruft create https://github.com/kjaymiller/cookiecutter-relecloud

Getting Updates from this Template

Cruft allows you to update your project with the latest changes from this template. To do so, run the following command:

cruft update

Running your Deployment via DevContainer/Github Codespaces

This template is designed to work with DevContainers and GitHub Codespaces. You can deploy the Github Codespaces instance by clicking the green code button and creating a new codespace.

To deploy the dev container locally you can do so with a compatible code editor like Visual Studio Code.

Deploy your template to Azure

These templates are configured to deploy to Microsoft Azure via the Azure Developer CLI. You can deploy your project immediately using azd up