Dave-8967 avatar image
0 Votes"
Dave-8967 asked ·

ADF - Question about Git and IR sharing


I have an issue where I need to share an IR that's hosted on our prod data factory with our dev data factory. Our group does not have the permissions to do this, so I have to put in a ticket to my client's cloud team. The issue is when they try to share the IR back to the dev data factory, they are getting git errors, as they do not have a github license to our private org.

Are there any concerns I need to be aware of if I disable git integration, let them share the IR, then turn git integration back on with the repo? I assume it restore all the branches and the pipelines/datasets/linked services? Will git automatically detect there was a new linked/shared IR created in non-git mode and automatically create a json file for that in the git repo?

My main concern is if the shared IR is not in the git's JSON, that when I switch it back to using git integration, the shared IR won't show up. I'm concerned If I publish from master to adf_publish without there being any JSON for the shared IR, that it will overwrite and delete the shared IR in the adf_publish branch. Like would I need to export an ARM template after the IR has been shared in Live Mode, grab the JSON file for it, then switch back to Git mode, and manually add the shared IR's JSON file to the git repo manually?

Or is it just better to get them a Github license? It seems kind of overkill just for sharing an Integration Runtime. I'm also wondering if they would be willing to grant us some elevated permissions to do this ourselves (I'm not sure what grangular RBAC permission would need to be granted)

· 1
10 |1000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

Any thoughts?

0 Votes 0 ·

1 Answer

MartinJaffer-MSFT avatar image
0 Votes"
MartinJaffer-MSFT answered ·

Hello @Dave-8967 and welcome to Microsoft Q&A.

I did a test where I tooke a factory without Git Integration. I then set up repository. Then I disconnected the repository. Then I added a new Azure Integration Runtime. Then I re-added the the repository. Comparing, I saw the IR was included.

I left most of the settings to default for this.


However, this alone is not a solution if Self-Hosted Integration Runtimes are involved (SHIR).

Self-Hosted Integration Runtimes must be "owned" by exactly one Data Factory. This means you cannot simply copy over the definition of the SHIR and consider it done.
The definitions of a Shared SHIR ("owner") and Linked SHIR ("borrower") are different. This is similar to how an apartment landlord and apartment renter both lay claim to the same apartment, but in different ways. If there were two landlords, the renter would not know who to pay rent to.
By copying the Shared SHIR definition, you are effectively setting up two landlords.

However there is something going on in your situation that leaves me confused.

image.png (126.0 KiB)
· 1 ·
10 |1000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

I understand the SHIR is only actually hosted on one data factory.

So are you saying for the data factory that only contains the linked IR (the borrower), there is no JSON needed in that data factory in order for it to appear?

0 Votes 0 ·