Azure Resource Manager and ARM Templates has been a little light since their release. ARM Template support is great. We can now setup an Azure Resource Group full of resources, export an ARM Template for it, then take that template and deploy to a different Resource Group.
I would like to achieve Continuous deployment using Azure. I am not sure where to position my templates in source control or in Azure templates storage, or X.
What is the best practice?
Parameters change from time to time, how can I sync it with my codebase if help in SCM ?
I think it really depends on what engine you want to use for CI/CD. Template deployment is just pushing a JSON file to Azure, you can do that using the REST APIs, PowerShell, CLI, etc.
Here's an example using VSTS: https://learn.microsoft.com/en-us/azure/vs-azure-tools-resource-groups-ci-in-vsts - it shows 2 different approaches, one using an Azure Resource Group project in VS and the other just using a PowerShell script like the ones find in the quickstart repo.