fabric-cli

gateway examples

Type: .Gateway

Supported commands: fab desc .Gateway

Permissions:

Navigate to a gateway using cd command. Gateways are included in .gateways. You can use relative and absolute paths based on current context.

# use absolute path
fab:/ws1.Workspace$ cd /.gateways
* Switched to '.gateways'

# use relative path
fab:/ws1.Workspace$ cd ../.gateways/gw1.Gateway
* Switched to 'gw1.Gateway'

Checking if a gateway exists

Verify if a gateway exists. Using exists on .gateways has no effect.

fab:/$ exists .gateways/gw1.Gateway
* true

fab:/$ exists .gateways/gw1_.Gateway
* false

Getting and querying gateway details

Retrieve and query gateway details with -q (JMESPath query).

# get JSON properties
fab:/$ get .gateways/gw1.Gateway

# query using JMESPath
fab:/$ get .gateways/gw1.Gateway -q . -o /tmp

Listing gateways

List existing gateways and their details using -l.

fab:/$ ls .gateways
fab:/$ ls .gateways -l

Creating a gateway

Create a gateway synchronously. Use optional parameters with -P as needed; defaults apply if unspecified — see config set.

# use only required params
fab:/$ create .gateways/conn2.Connection -P capacity=mycapacityname,virtualNetworkName=west-us-2-fabric-test-vnet,subnetName=vnet-gateway

# inline params
fab:/$ create .gateways/conn4.Connection -P capacity=mycapacityname,resourceGroupName=my-rg,subscriptionId=25bdf70e-..f192,virtualNetworkName=fabric-vnet-name,subnetName=fabric-subnet-name,inactivityMinutesBeforeSleep=60,numberOfMemberGateways=2,

Note: If resourceGroupName and subscriptionIdare not provided, the CLI will use the users Azure credentials to search for them using the provided vnet/subnet names.

Important: Before creating a VNet Gateway, be sure to check all necessary requirements. Amongst them you should check that the feature is suported in your region and that the subnet follows all requirements and its properly delegated. Check the documentation for more information.

Removing a gateway

Remove a gateway synchronously. Use -f to force.

fab:/$ rm .gateways/gw1.Gateway
fab:/$ rm .gateways/gw2.Gateway -f

Setting and updating gateway properties

Modify the gateway properties. Use -f to force. Properties are case sensitive.

# change display name
fab:/$ set .gateways/gw1.Gateway -q displayName -i "RenamedGateway"
! Modifying properties may lead to unintended consequences
? Are you sure? Yes
Setting new property for 'gw1.Gateway'...
* Gateway updated

Getting and querying gateway permissions

Retrieve and query gateway permissions with -q (JMESPath query). Output the result to a local path or Lakehouse/Files with -o.

# get JSON properties
fab:/$ acl get .gateways/gw1.Gateway

# query using JMESPath
fab:/$ acl get .gateways/gw1.Gateway -q [*].principal

# export JMESPath query result
fab:/$ acl get .gateways/gw1.Gateway -q [*].principal -o /tmp 

# export to lakehouse using absolute path
fab:/$ cd .gateways/gw1.Gateway
* Switched to 'gw1.Gateway'
fab:/.gateways/gw1.Gateway$ acl get . -q [*].principal -o /ws1.Workspace/lh1.Lakehouse/Files

Listing gateway permissions

List gateway permissions and their details using -l.

fab:/$ acl ls .gateways/gw1.Gateway
fab:/$ acl ls .gateways/gw1.Gateway -l

See all examples