Seems like expanding the scope of projects requires knowledge of different configs, like knowing what you can do and what you want to do.
In the context of me and today, I like to define a new scope of development and deployment as I am using Azure as my cloud provider and using .NET as my main choice of making Apps.
Frontend Blazor, HTML, CSS
Backend APIs and databases
Any code associates with the business functions
Dev Containers for the dev environment
VM in Azure, whichever makes the most sense of storing the code and running the code in cloud.
DevOps Pipelines, justified based on preference.
- Bicep or terraform to specify the resource you like.
After the core layer is finished, we want to expand the project's scope a bit to make it work better.
Wherever you store your code, just to make sure it works for your pipeline. I like GitHub and GitHub Actions.
Take the services offered by your cloud service provider. Use the GUI portal to deploy the resources in your mind. If it's one Azure, make sure all your related resources are in the same Resource Group.
Now, go to the ARM template view of the Resource Group. Copy the file, and paste it to your Visual Studio Code.
Use the following command to convert the JSON file to bicep file.
az bicep decompile --file main.json
- You have the basic bicep file to be further proceeded.