Global Parameters generally available in Azure Data Factory
Published Aug 06 2020 11:53 AM 12.7K Views
Microsoft

Global parameters are now generally available in Azure Data Factory. Global parameters are constants across a data factory that can be consumed by a pipeline in any expression. They are useful when you have multiple pipelines with identical parameter names and values. 

 

Creation and management of global parameters is done in the management hub.

 

create-global-parameter-3.png

In any pipeline expression or dynamic content, global parameters can be referenced by pipeline().globalParameters.<parameterName>. 

 

expression-global-parameters.png

When promoting a data factory using the continuous integration and deployment process (CI/CD), you can override these parameters in each environment.

 

For more information, see the global parameters documentation.

14 Comments
Copper Contributor

Loving this update!

Copper Contributor

Is it possible to override global parameter with the pipeline parameter?

Copper Contributor

This is awesome!

Copper Contributor

Guys, thanks a lot - this is really important feature - we been missing this a lot!!!

Copper Contributor

Since Monday, Aug 18, the global parameter have been showing the following error:

The parameters and expression cannot be resolved for schema operations. Error Message: { "Message": "ErrorCode=InvalidTemplate, ErrorMessage=The expression 'pipeline().globalParameters.DWHD' cannot be evaluated because property 'globalParameters' doesn't exist, available properties are ''.." }.

 

knowing that I tried it last week and it worked fine... has there been any change since last week ?@DanielPerlovsky 

 

Copper Contributor

Will you be able to set these inside a pipeline? e.g. could you use it as a kill switch with come\all pipelines referencing the global parameter(s) for permission to run and certain outcomes flipping that switch to effectively disable other pipelines?

Copper Contributor

Have the same problem as Rami_Hammond as described above.  Am trying to use global parameters in a pipeline (which should be exposed as the parameters are GLOBAL) and get the error "The expression 'pipeline().globalParameters....' cannot be evaluated because property 'globalParameters' doesn't exist, available properties are ''..""

 

Seems like a big in Data Factory @DanielPerlovsky  can you confirm?

Copper Contributor
Microsoft

@Brent_Leslie Can you give an example of where they are not working in the pipeline? Global parameters should be available in any expression in a pipeline context. Feel free to message me privately if you want to share specific pipeline run id/scenario details 

Copper Contributor

@DanielPerlovsky Here's an image of an error I get when trying to use them:

Brent_Leslie_0-1600896210450.png

 

I have set up a linked service which takes a server/database name as a parameter.  I have set up a global parameter for the environment to contain the server/database name for that environment.  I then pass this global parameter through to the linked service and receive this error.  I cannot fathom why this would not work as global parameters should be accessible anywhere in the pipeline.

Copper Contributor

Global Parameters are a great idea and very useful however it's unfortunate that by adding them to an ARM template for CI/CD use it overwrites your GIT configuration. The advice current is to deploy these parameters via powershell but would be nice to see a future release to ensure that factory level settings aren't wiped out when they are added to the ARM template

Microsoft

@smalea I would love to learn more about your use case as we usually recommend customers only have git configured on their source factory. Could you provide a description of your different environments and why you are deploying to a factory with git configured? Thanks!

Copper Contributor

I have this same "issue" too.  Because in the new deployment methodology using the automated publish, you do deploy to the dev environment in which your git integration is set up.  And if you include the global parameters, it will remove the git integration as that's not in the factory section of the ARM template generated.  So, the alternative for me was to use the deploy global parameters powershell script that's downloaded with the npm packages.

Copper Contributor

Check out this video for more results: https://www.youtube.com/watch?v=eF-bgaPZgfg&t=7s

Version history
Last update:
‎Aug 06 2020 11:53 AM
Updated by: