{ "name": "GetFeatureFlag", "properties": { "activities": [ { "name": "Get Feature Flag", "type": "WebActivity", "dependsOn": [], "policy": { "timeout": "0.12:00:00", "retry": 0, "retryIntervalInSeconds": 30, "secureOutput": false, "secureInput": false }, "userProperties": [], "typeProperties": { "url": { "value": "@concat('https://', pipeline().parameters.AppConfigurationStoreName, '.azconfig.io/kv?key=.appconfig.featureflag/', pipeline().parameters.FeatureFlagName, '&api-version=1.0')", "type": "Expression" }, "connectVia": { "referenceName": "AutoResolveIntegrationRuntime", "type": "IntegrationRuntimeReference" }, "method": "GET", "authentication": { "type": "MSI", "resource": { "value": "@concat('https://', pipeline().parameters.AppConfigurationStoreName, '.azconfig.io')", "type": "Expression" } } } }, { "name": "If Feature Flag Exists", "type": "IfCondition", "dependsOn": [ { "activity": "Get Feature Flag", "dependencyConditions": [ "Succeeded" ] } ], "userProperties": [], "typeProperties": { "expression": { "value": "@not(empty(activity('Get Feature Flag').output.items))", "type": "Expression" }, "ifFalseActivities": [ { "name": "Return Fallback", "type": "SetVariable", "dependsOn": [], "userProperties": [], "typeProperties": { "variableName": "pipelineReturnValue", "value": [ { "key": "Enabled", "value": { "type": "Expression", "content": "@pipeline().parameters.FallbackValue" } } ], "setSystemVariable": true } } ], "ifTrueActivities": [ { "name": "Return Flag State", "type": "SetVariable", "dependsOn": [], "userProperties": [], "typeProperties": { "variableName": "pipelineReturnValue", "value": [ { "key": "Enabled", "value": { "type": "Expression", "content": "@json(activity('Get Feature Flag').output.items[0].value).enabled" } } ], "setSystemVariable": true } } ] } }, { "name": "Return Fallback Value", "type": "SetVariable", "dependsOn": [ { "activity": "Get Feature Flag", "dependencyConditions": [ "Failed" ] } ], "userProperties": [], "typeProperties": { "variableName": "pipelineReturnValue", "value": [ { "key": "Enabled", "value": { "type": "Expression", "content": "@pipeline().parameters.FallbackValue" } } ], "setSystemVariable": true } } ], "parameters": { "AppConfigurationStoreName": { "type": "string", "defaultValue": "" }, "FeatureFlagName": { "type": "string" }, "FallbackValue": { "type": "string", "defaultValue": "false" } }, "variables": { "CoolNewFeatureUsed": { "type": "Boolean" } }, "annotations": [], "lastPublishTime": "2023-06-27T01:42:02Z" }, "type": "Microsoft.Synapse/workspaces/pipelines" }