Getting Started¶
Installation¶
To install fabric-cicd, run:
Authentication¶
- You can optionally provide your own credential object that aligns with the
TokenCredentialclass. For more details, see the TokenCredential documentation. -
If you do not provide a
token_credentialparameter, the library will use the Azure SDK'sDefaultAzureCredentialfor authentication.- Refer to the Azure SDK documentation for the order in which credential types are attempted.
-
For local development with a User Principal Name (UPN), install either the Azure CLI or the Az.Accounts PowerShell module.
-
Note: When no credential is provided, the
DefaultAzureCredentialmay select an unexpected identity. For example, if you log in to the Azure CLI with a Service Principal Name (SPN) but log in to Az.Accounts with a UPN, theDefaultAzureCredentialwill prioritize the CLI authentication.
Directory Structure¶
This library deploys from a directory containing files and directories committed via the Fabric Source Control UI. Ensure the repository_directory includes only these committed items, with the exception of the parameter.yml file.
/<your-directory>
/<item-name>.<item-type>
...
/<item-name>.<item-type>
...
/<workspace-subfolder>
/<item-name>.<item-type>
...
/<item-name>.<item-type>
...
/parameter.yml
GIT Flow¶
The flow pictured below is the hero scenario for this library and is the recommendation if you're just starting out.
Deployedbranches are not connected to workspaces via GIT SyncFeaturebranches are connected to workspaces via GIT SyncDeployedworkspaces are only updated through script-based deployments, such as through the fabric-cicd libraryFeaturebranches are created from the default branch, merged back into the defaultDeployedbranch, and cherry picked into the upperDeployedbranches- Each deployment is a full deployment and does not consider commit diffs
