- ServicePlan/WebApp: Support for enabling ZoneDedundant
- Functions: Make
connection_string
available for Azure Functions in addition to WebApps. - WebApps/Functions: Add support for ip-restriction rules
- WebApps/Functions: Don't turn on Logging Extension for Linux App Service.
- WebApps: Allow multiple custom domains
- WebApps: Support custom port for docker container with
docker_port
- WebApps/Functions: Fix .NET 5/6 on Linux deployments.
- CosmosDb: Add support for serverless capacity mode.
- WebApps/Functions: Fix autoSwapSlotName for app slots.
- WebApps/Functions: Fix zip deployments for web app with slots.
- WebApp: Create App-managed certificates in the same resource group as the ASP to avoid ARM bug
- ContainerApps: Eagerly validate whether all containers in an app have a valid CPU/RAM combination.
- ContainerApps: Correctly round CPU to 2DP.
- Revert back to targetting NET Standard 2 only.
- ContainerApps: Adds support for containerApps.
- WebApps/Functions: Added support for .NET 6 runtimes with new Runtime.DotNet60.
- Log Analytics: Add CustomerId configuration member to Log Analytics
- Service Bus: Added additional overloads for topic.duplicate_detection and queue.duplicate_detection
- WebApp: Fixed deployment name for nested template in app-managed certificate deployments
- Alerts: Extend a list of possible criteria for time aggregations and operators
- Alerts: Support of custom metric alerts
- CDN: Adds new SKU types for Azure Front Door Standard/Premium
- Functions: Fix for .NET isolated functions hosted on Linux
- Key Vaults: Fixed bug where adding vnetRules to KeyVault did not work.
- Support for GPUs in Azure Container Instances
- CDN rules: Only make CacheDuration required for Override and SetIfMissing and not BypassCache when creating cache_expiration action
- Virtual Machine: Adds support for the
AADSSHLoginForLinux
extension for Azure AD login over SSH on Linux VM's. - Virtual Machine: Enables a VM to be deployed on an existing virtual network.
- WebApps/Functions: Fixed bug preventing references to AppInsights or storage accounts in other resource groups
- WebApps: Supports custom domains with app service managed certificates
- Application Gateways: support for creating application gateways.
- Container Service (AKS): support for various addons, including the application gateway ingress controller.
- ExpressRoute: create authorization keys on newly created circuits.
- Key Vaults: Add keys to new or existing key vaults.
- ServiceBus: Allow Service Bus Queues/Topics/Subscriptions to be linked to unmanaged namespaces
- ServiceBus: Allow adding custom dependencies to Subscriptions
- WebApp/Functions: Adds 'ftp_state' for controlling FTP access for deployments.
- Resource Groups: Add support for multiple nested deployments targetting the same resource group
- Resource Groups: Provide input parameters and key vault references to nested deployments.
- Container Groups: Use an ARM expression to populate a secure environment variable.
- Resource Groups: Specify the target subscription for nested deployments.
- Traffic Manager: allow priority and weight to be optional for endpoints.
- Key Vaults: Allow deploying standalone secrets without a KeyVault in the same deployment
- WebApp/Functions: no longer overwrites production slot settings when using a multi-slot deploy
- WebApp: Supports custom domains with app service managed certificates
- Container Service (AKS): Adds
kubelet_identity
operator to suppor a user assigned identity for kubelet.
- Alerts: Initial support for Alerts
- Container Groups: Fix to generate parameters for secure environment variables on
initContainers
. - Container Service (AKS): Simplify
aks
builder with defaults for node pool and DNS prefix. - Dashboads: Fixes for complex dashboards: custom parts and monitor parts.
- Key Vaults: Support for adding access policies on an existing key vault with
keyVaultAddPolicies
. - Virtual Networks: support for adding subnets to existing virtual networks.
- Custom FarmerException raised for all exceptions.
- Dashboards: Changed the API to use non-anonymous record.
- Improve validation error messages.
- SQL Server: geo_replicate changed the API to use non-anonymous record.
- WebApp/Functions: Web Apps and Functions now 'health_check_path' support.
- Container Groups: Use
ip_config
to name the IP configuration for a container group's subnet. - DNS Zone: Added configuration member of NameServers
- DNS Zone: Support for delegating a subdomain to another DNS Zone with
add_nsd_reference
. - Functions: Validation on functions name.
- Resource groups: Added
outputs
keyword - Virtual Machine: Added configuration member PublicIpAddress
- WebApp: Validation on site name.
- Azure SQL Server: geo_replicate parameter to geo-replicate the server databases
- App Insights: Support for Availability tests, VS WebTests
- Resource Groups: Support for creating resource groups for deployments targeting a subscription.
- WebApp: Slots now inherit user assigned identities from their owning webApp
- SQL Azure and Postgres:
add_firewall_rules
to take list of rules - Virtual Machine: Support for adding Network Security Group (NSG) to Virtual Machine (VM)
- Container Groups: Reference Azure container registry credentials.
- DNS Zone: Support for adding records to existing zones.
- DNS Zone: zone and record 'depends_on' support.
- DNS Zone: DNS record 'target_resource' fix to emit correct resource Id.
- Web App, Functions: Refactored Web App and Functions builders to simplify adding new common properties
- Azure Firewall: Support for 'link_to_firewall_policy' to link to a builder as well as a resource.
- Container Groups: Support for 'depends_on' to add dependencies.
- Functions: Added support for deployment slots
- KeyVault: Enable VaultUri configuration member for use as output parameter.
- KeyVault: Fix emitted
enablePurgeProtection
. - Storage Account: Add support for data protection policies,
- Storage Account: Add support for versioning.
- Virtual Network: Specify the network security group for a subnet.
- Virtual Network: Subnet support for enabling or disabling Private Link Service Network Policies to allow assigning the IP for a private endpoint connection.
- Virtual Machine: Added support for Private IP on NIC
- WebApp: Added support for deployment slots
- Azure Firewall: Bug fix for link_to_vhub and added depends_on to builder
- Functions: Add support for keyvault reference user identity
- VirtualHubs/hubRouteTables : Add support for labels
- Virtual Machine: Add option to static IP allocation
- Web App: Add support for keyvault reference user identity
- DNS Zone: Added SOA and SRV record support
- Azure Firewall: Added support for Azure Firewalls
- Service Bus: Support max queue and topic sizes.
- Service Bus: Set default message TTL for subscriptions.
- Virtual Hubs: Support for virtualHubs and hubRouteTables
- Virtual Machine: Added Identity support
- Virtual Machine: Added a PasswordParameterARM member
- Container Service (AKS): Support basic SKU for the cluster's load balancer (default is standard).
- Container Service (AKS): Support for private Kubernetes API access.
- Container Service (AKS): Support for restricting IP ranges for Kubernetes API access.
- Functions: Support publishing as a docker container
- Service bus: Add support for authorization rules.
- Virtual Machine: Added disable password authentication to Virtual Machine linux configuration
- Virtual Machine: Added sshKeys and paths to Virtual Machine linux configuration
- Functions: Support Elastic Premium SKUs for Functions service plans.
- SQL Azure: Support for minimum TLS version.
- Storage: Support for minimum TLS version.
- Virtual Machine: Provide control over the public IP
- Virtual Machine: Support for customData on osProfile Properties
- Virtual Network: Add support for vnet peering
- WebApp: Added support for PrivateEndpoints
- Web App: Workaround ARM regression when Identity is set to "None".
- Added support for nesting resource groups
- Storage: Support for firewall to restrict storage account network access to virtual network subnets, IP addresses, and CIDR prefixes.
- Virtual Network: Support for creating service endpoints on subnets.
- Virtual Network: Support for assigning existing service endpoint policies to subnets.
- CDN: Support for CDN rules
- Container Service (AKS): Support for using managed identity (msi) for the service principal.
- LoadBalancer: Adds support for public and internal load balancers.
- Traffic Manager: initial release.
- ServiceBus: TopicConfig implements IBuilder and supports link_to_unmanaged_namespace.
- ServiceBus: Support for forwarding messages delivered to a subscription.
- Communication Services: add builder.
- ExpressRoute: Adds ServiceKey property to generate an expression for the service key on a new circuit.
- Network Security Groups: Enable builder to create outbound rules.
- ServiceBus: Fix an issue with Premium Sku ARM Writer
- ServiceBus: Fix an issue with Rules depends on ARM Writer
- Storage Accounts: Support for CORS.
- Virtual WAN: add builder
-
Container Groups: Support for init containers.
-
Container Groups: Support for liveliness and readiness probes on containers.
-
Container Groups: Connect network profile to an existing virtual network.
-
Container Groups: Bugfix for outputs.
-
CosmosDb: Add support for MongoDB as a database kind.
-
Event Grid: Ensure destination Queues are created as a dependency
-
Event Grid: Add ServiceBus Queue and Topic as supported destinations
-
Functions: Support for 64 bits.
-
Functions: Add option to use managed Key Vault
-
Functions: Add support for dotnet-isolated runtime (NET5)
-
KeyVault: Fix an issue with adding tags on main KeyVault builder.
-
KeyVault: Support Azure RBAC for data plane access.
-
ServiceBus: update namespace validation rules to follow Microsoft documentation
-
Storage: Add support for tables
-
Web App: Disables the automatic addition of the logging site extension when
docker_image
is used -
Web App: Add dotnet 5.0 runtime option
-
Framework: Updated DeterministicGuid for RFC 4122 compatibility
-
Framework: Add support for NET5, upgrade to F#5.
-
Framework: Simplify Event Grid builder
-
Framework: Use System.Text.Json instead of Newtonsoft.Json
-
Bing Search: Support for Bing Search (migrated from Cognitive Services).
-
Container Registry: Added ARM expressions for admin account credentials
-
Databricks Workspace: Support for creating Databricks Workspaces
-
Diagnostic Settings: Support for creating Diagnostic Settings on other resources.
-
Event Hub: Update built-in expression paths for default key.
-
Functions: Added some extra keywords which were already present on Web App.
-
Storage: Support for setting default blob access tier at account level with "default_blob_access_tier"
-
SQL Azure: Validation and fail fast on account names instead of silently fixing them (breaking run-time change).
-
Web App: Improved KeyVault integration.
-
Web App: Add PremiumV3 SKU.
-
Web App: Automatically add Logging extension for ASP.NET Core apps (additive change to ARM).
-
Web App: Added Instrumentation Key Setting for Linux WebApp.
-
Web App: Automatically add Client Id setting for user assigned identities.
-
Web App: Support for 64 bits.
-
Azure CLI: Ensure JSON output.
-
Framework: Extension methods for Taggable and Dependable to simplify boilerplate keywords.
-
Framework: Common keywords between Functions and Web Apps factored out.
- Storage: Revert User Assigned Identity scope to ResourceGroup
- User Assigned Identity: Allow explicitly setting dependencies
- CosmosDB: Fix an issue whereby dependent resource paths were sometimes incorrectly generated.
-
ARM generation: Smarter emitting of "raw" ARM expressions.
-
CDN: Fix issues around custom domain host names.
-
CDN: Improved integration with Storage Accounts.
-
Container Instance: Support for secure parameters for environment variables and secret volumes.
-
Container Instance: Support for command line arguments.
-
Deployment Scripts: Support for secure parameters for environment variables (minor breaking change).
-
Deployment Scripts: Specifies cleanup on expiration when retention interval is set, and enables cleanup on success only.
-
Deployment Scripts: Support for running the script after other resources are deployed.
-
Deployment Scripts: Run Azure CLI commands as part of an ARM deployment (PowerShell or AzCli).
-
Functions: Support for external unmanaged storage accounts.
-
Functions: Support for user-assigned managed identity.
-
Key Vault: Support for setting tags on key vault secrets.
-
Storage Account: Support for the full set of Storage Account Kind and SKUs (minor breaking change).
-
Storage Account: Improved integration with CDN.
-
Web App: Support for site extensions.
-
Web App: Unmanaged Server Farm uses Resource Id for fully-qualified path.
-
Log Analytics: Initial release.
-
Static Web Apps: Initial release.
-
Managed Identity: Initial release.
-
SQL Azure: Connection string owner now has the correct path.
-
SQL Azure: New PasswordParameter returns the name of the Password parameter.
-
Functions: Ability to override the auto-generated storage account name.
-
Functions: Ability to add multiple ARM Expressions as settings.
-
Functions: Ability to add a Resource Name as a setting.
-
Key Vault: Grant access to managed identities.
-
Service Bus: Fix an issue whereby duplicate topics across different subscriptions were silently removed.
-
Service Bus: Set message TTL
-
Web App: Ability to add multiple ARM Expressions as settings.
-
Web App: Full support for Managed Identity (minor breaking change).
-
Web App: Easy Key Vault integration.
-
Storage Account: WebsitePrimaryEndpoint is now a generated ARM expression.
-
Storage Account: Upgrade API version to 2019-04-01 to support RA-GZRS.
-
Storage Account: WebsitePrimaryEndpoint depends on storage account name instead of being hardcoded.
-
Storage Account: Grant access to managed identities.
-
Container Service (AKS): Support for Managed Identity.
-
Container Groups: Support for creating group without public IP Address.
-
Container Groups: Support for image registry credentials for private registries.
-
Container Groups: Support for partial CPU cores.
-
Container Groups: Support for Managed Identity.
-
Event Hubs: Remove redundant kafka flag (minor breaking change).
-
Gateway: Add VPN Client configuration
-
Bastion Hosts: Create bastion hosts for accessing resources on a virtual network
-
DNS Zones: Basic Azure DNS support
-
Provide all Roles for managed identity purposes.
-
Support for implicitly adding dependencies based on usage e.g. add settings, connection strings etc.
-
Internal: ARM Expression refernces now add the Resource Id as the Owner.
-
Internal: Changes to better capture full resource IDs.
- SQL Azure: Fix a bug whereby firewall rule IP addresses were inverted.
- AKS: Basic AKS support
- App Insights:
- Create key expressions
- Support for IP Masking and Sampling
- Container Instance: Change modelling from an anonymous type to a discriminated union (interop) (CompositionalIT#372)
- Cognitive Services: Retrieve ARM expression to the Key of the Cognitive Services instance.
- CosmosDB: Create connection string and key expressions.
- Functions: Fix an issue with incorrect Service Plan linking
- Gateway: Add VPN Client configuration
- SQL Azure:
- Small updates to type naming
- Support for VCore model
- Support for specifying disk size
- Storage:
- Create connection string expressions.
- Data Lake support is now optional and off by default
- Support for lifecycle policies
- Web App / Functions: Allow CORS enable credentials (CompositionalIT#265)
- Web App: Support for Connection Strings
- Azure CLI: Better error message when Azure CLI be found (CompositionalIT#369)
- Fix a bug whereby optional Location, Tags and DependsOn were set to empty lists instead of null when not required.
- Internal updates to ARM resource construction
- Support for adding a list of dependencies to resources
- Formal release
- Fix an issue with CosmosDB tags being set twice
- ACI dropped support for assigning static private IP
- Postgres API redesign
- Network Security Group API redesign
- Validation for all Storage Account resources
- Prevent supplying VM custom script files without a custom script
- Basic Validation helper functions
- More documentation
- Simplified Service Bus filtering
- Tagging support for most ARM resources
- Fix incorrect PostgresSQL template generation caused by a breaking change in F#
- Fix a bug in Redis SKU generation
- KeyVault now supports dependencies
- Eager Storage Account Name validation
- Fix documentation
- Volume Mount support for Container Groups
- Network Security Group (NSG) support
- Data Lake on Storage Account support
- Static Website on Storage Account enhancements
- Filter support on Service Bus Subscriptions
- Storage Account validation on account name enhancements
- Web Apps can now connect to externally-managed Server Farms
- Simplified Resource References and better distinguish resource relationships
- Improved test coverage
- Cosmos DB: More keys exposed as properties
- Deployment: Display currently selected subscription id when deploying
- Event Hub: Dependency support
- Event Grid: Initial support
- Functions: Zip deploy support
- Storage Account: Static website support
- Storage Account: File Share support
- Storage Account: Queue support
- Internal: More automated test coverage
- Internal: Refactoring of ARM resources to use strongly-typed resource path generation
- VNet Gateway support
- Event Hub Capture support
- Virtual Machine script support
- Fix a bug where some ARM Expressions were sometimes incorrectly formed
- Fix a bug in KeyVault where key validation was applied incorrectly
- Allow optionally setting AccessPolicy permissions using the create helper
- Set LIST and GET as the default AccessPolicy permission set using the create helper
- Support for safely building resourceId expressions
- Simplify construction of ARM resources
- Better error handling on JSON deserialization
- CDN support added
- Split Container Instance builder back to two
- Environment variable support for Container Instances
- Support for public and internal ports on Container Instances
- Improved subnet and address space support for virtual networks
- Add S0 SKU for Cognitive Services
- Automatically create the path if it does not exist when writing ARM templates
- Improved Subnet and VNet support
- Validation checks on CosmosDB
- Source Control support in Web Apps
- Ability to assign users and groups to KeyVault access policies
- Ability to add multiple KeyVault secrets
- Workaround for issue with FSharp.Core 4.7.2 and DU stringify
- Enhance access policy maintenance in KeyVault
- Data Lake support
- Managed Identity support for Web Apps and Functions
- CORS support for Web Apps and Functions
- Secret settings support for Web Apps and Functions
- Improved typing around Cosmos DB
- Simplified Key Vault support for adding secrets and simple policies
- Ability to inject raw JSON ARM resources into the Farmer pipeline
- Support for more locations
- Minimum Azure CLI version now 2.5.0
- Promote some types into the top-level Farmer namespace
- Extra settings for Functions and Web Apps
- Rationalise depends_on so any resource is dependable
- Redesign SQL Server builder
- Better support for SQL Server Elastic Pools
- Clean up documentation
- Improvements to PostgreSQL
- Unique Key support in CosmosDB
- Azure Maps support
- Service Bus topic support
- SignalR support
- Elastic Pool SQL Azure support
- More tests
- Better VNet and Subnet support in VMs
- Make any Builder a dependency
- Respect HTTPSOnly flag in Functions
- Support for extensible plugin-model
- Express Route support
- Service Bus queue support
- IOT Hub support
- PostreSQL support
- Support for executing a deployment with fast fail
- ARM template Validation support
- Service Bus Queues support
- Azure Container Registry support
- Refactor some values to improve type safety
- Improve support for Azure CLI on Linux
- More resilient version checking
- Better parameterisation for Docker credentials
- Avoid duplicate parameters
- Minimum version check on Azure CLI (2.3.1)
- List all subscriptions
- Set minimum subscription
- Rename "db_name" keywords to just "name" (consistency)
- Improve CLI access on Windows
- Better CLI error handling on Linux & Mac
- Azure Container Registry support for Web Apps
- Support for providing multiple settings at once on WebApp and Functions
- Fix a bug with deploy parameterisation
- Remove REST API support
- Enhance Azure CLI support
- Support for optional Azure CLI authentication
- Allow supplying an explicit related service plan
- Support for HTTPS-only on web app
- Block when deploying via Azure CLI
- Put all deploy transient files in a folder
- Server Farm builder
- Don't login on Azure CLI unless needed
- Fix a bug with WebApp builder causing a stack overflow
- Support for Cognitive Services
- Ensure Functions Runtime is correct set (lower-case)
- Support for Docker Hub on Web Apps
- Improved support for What-If API
- Post-deployment Web Deploy for App Service
- Minor bug fixes
- Simplify API for hierarchical resources e.g. Containers, Cosmos, SQL Azure, WebApps and Functions
- Support for Validation API before deploying
- Basic support for What-If API
- Error handling on deployment status updates
- Client Secret is now a string
- Sanitise storage accounts automatically
- Improvements to Redis and Event Hub
- Restrict adding resources to supported types
- Support for Redis Cache
- Support for Event Hub
- Fixes for Web Apps on Linux
- Remove unnecessary site extension for App Insights on Web Apps
- Upgrade to netcore3.1
- Support for REST API deployment using SPI credentials
- Refactor code to simplify and separate writing and deployment
- Fix a couple of small bugs with overloads of keywords in builders
- Quick deploy support for Linux and Mac
- Automatic password generation for quick deploy
- SQL Connection String property on database
- Re-introduced limited support for parameter expressions
- Support for configuration of Functions runtime
- KeyVault support
- Location type
- Fixed a bug regarding Worker Size
- Null elements are now omitted from generated templates
- Initial Release