Skip to content

Add support for Azure App Configuration#1249

Draft
Copilot wants to merge 2 commits intomasterfrom
copilot/add-azure-app-configuration
Draft

Add support for Azure App Configuration#1249
Copilot wants to merge 2 commits intomasterfrom
copilot/add-azure-app-configuration

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 17, 2026

Adds an Azure App Configuration builder covering configuration stores, feature flags, and key-value items. Builds on the approach from PR #1244 (Ryan-Palmer) with fixes, additional properties, tests, and documentation.

New files

  • Arm/ConfigurationStore.fs — ARM types: ConfigurationStore, ConfigFeatureFlag, KeyValue
  • Builders/Builders.ConfigurationStore.fsconfigurationStore builder with FeatureFlagConfig and KeyValueConfig record types
  • Tests/ConfigurationStore.fs — 15 unit tests
  • docs/.../app-configuration.md — full documentation page

Changes vs PR #1244

  • Types (Sku, DataPlaneAuthenticationMode) moved to Common.fs per Farmer convention
  • Renamed AzFeatureFlagConfigFeatureFlag to avoid shadowing Farmer.FeatureFlag
  • All optional properties (disableLocalAuth, enablePurgeProtection, publicNetworkAccess, softDeleteRetentionInDays, dataPlaneProxy) default to None rather than being hardcoded
  • feature_flags replaced by additive add_feature_flag / add_feature_flags operations
  • Added generic key-value support (add_key_value / add_key_values) with optional labels, content type, and per-item tags
  • Added Endpoint member returning an ARM expression for the data plane endpoint

I have read the contributing guidelines and have completed the following:

  • Tested my code end-to-end against a live Azure subscription.
  • Updated the documentation in the docs folder for the affected changes.
  • Written unit tests against the modified code that I have made.
  • Updated the release notes with a new entry for this PR.
  • Checked the coding standards outlined in the contributions guide and ensured my code adheres to them.

If I haven't completed any of the tasks above, I include the reasons why here:

End-to-end Azure subscription testing not performed in this automated environment.

Below is a minimal example configuration that includes the new features, which can be used to deploy to Azure:

open Farmer
open Farmer.Builders
open Farmer.ConfigurationStore

let myConfig = configurationStore {
    name "my-app-config"
    sku Standard
    disable_local_auth
    add_tags [ "env", "prod" ]

    add_feature_flags [
        { Name = "DarkMode"; Description = "Enable dark mode"; Label = ""; State = true }
        { Name = "Beta"; Description = "Beta feature"; Label = "beta"; State = false }
    ]

    add_key_values [
        { Key = "Api:BaseUrl"; Label = Some "prod"; Value = "https://api.example.com"; ContentType = None; KeyValueTags = Map.empty }
        { Key = "Settings"; Label = None; Value = """{"timeout":30}"""; ContentType = Some "application/json"; KeyValueTags = Map.empty }
    ]
}

let deployment = arm {
    location Location.NorthEurope
    add_resource myConfig
}

Copilot AI linked an issue Apr 17, 2026 that may be closed by this pull request
…and documentation

Agent-Logs-Url: https://github.com/CompositionalIT/farmer/sessions/2dd27535-b488-4936-9edc-e1733dfe024c

Co-authored-by: ninjarobot <1520226+ninjarobot@users.noreply.github.com>
Copilot AI changed the title [WIP] Add support for Azure App Configuration Add support for Azure App Configuration Apr 17, 2026
Copilot AI requested a review from ninjarobot April 17, 2026 02:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for Azure App Configuration

2 participants