Skip to content

Commit 2d15e6a

Browse files
Remove skeleton workflows, simplify deploy to single job, add initial deployment guide with Ontology workaround
1 parent aa83247 commit 2d15e6a

9 files changed

Lines changed: 101 additions & 221 deletions

.github/workflows/deploy-prod.yml

Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
# Orchestrator workflow for deploying Fabric items to the Prod workspace.
22
#
3-
# Job 1 deploys all supported items (including Ontology and DataAgent) via
4-
# fabric-cicd. Jobs 2-3 are skeletons reserved for future item types that
5-
# lack fabric-cicd support and require Deployment Pipeline promotion.
3+
# Deploys all supported items via fabric-cicd. The reusable workflow handles
4+
# phased deployment internally (Lakehouse + Ontology first, then everything
5+
# else) to satisfy fabric-cicd dependency resolution.
6+
#
67
# The `prod` GitHub Environment should have protection rules configured
78
# (e.g., required reviewers, branch policy restricting to main only).
89
#
9-
# Jobs run sequentially via `needs:`. The ETL workflow (etl-prod.yml) triggers
10-
# automatically via workflow_run once all 3 jobs complete successfully.
10+
# The ETL workflow (etl-prod.yml) triggers automatically via workflow_run
11+
# once deployment completes successfully.
1112

1213
name: Deploy to Prod
1314

@@ -27,19 +28,3 @@ jobs:
2728
environment: Prod
2829
item_type_in_scope: '["Lakehouse", "Ontology", "VariableLibrary", "Notebook", "SemanticModel", "Report", "DataAgent"]'
2930
secrets: inherit
30-
31-
promote-unsupported:
32-
name: Promote unsupported items
33-
needs: deploy-supported
34-
uses: ./.github/workflows/reusable-deploy-unsupported.yml
35-
with:
36-
environment: Prod
37-
secrets: inherit
38-
39-
deploy-supported-dependent:
40-
name: Deploy dependent supported items
41-
needs: promote-unsupported
42-
uses: ./.github/workflows/reusable-deploy-supported-dependent-on-unsupported.yml
43-
with:
44-
environment: Prod
45-
secrets: inherit

.github/workflows/etl-test.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22
#
33
# Uses workflow_run to decouple deploy and ETL as separate workflow concerns.
44
# The `if` condition ensures ETL only runs when the deploy workflow succeeded —
5-
# if any sandwich job fails, the deploy workflow is marked as failed and this
6-
# workflow skips execution.
5+
# if the deploy workflow fails, this workflow skips execution.
76
#
87
# ETL_ITEM_ID is no longer needed — the notebook is resolved by name at runtime.
98

.github/workflows/reusable-deploy-supported-dependent-on-unsupported.yml

Lines changed: 0 additions & 52 deletions
This file was deleted.

.github/workflows/reusable-deploy-supported.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# to publish all supported item definitions from the Git repo to the target
55
# Fabric workspace, then removes any orphaned items no longer in the repo.
66
#
7-
# Called by: deploy-test.yml, deploy-prod.yml (Job 1 of the sandwich pattern)
7+
# Called by: deploy-test.yml, deploy-prod.yml
88
#
99
# Prerequisites:
1010
# - GitHub Environment secrets: AZURE_TENANT_ID, AZURE_CLIENT_ID,

.github/workflows/reusable-deploy-unsupported.yml

Lines changed: 0 additions & 46 deletions
This file was deleted.

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ Git repo (dev branch)
4545
| Document | Description |
4646
|---|---|
4747
| [CI/CD Release Options](fabric-cicd-release-options.md) | Evaluates all CI/CD release options for Fabric (Deployment Pipelines, Git-based, Build-based, Hybrid) and recommends the Hybrid approach. **Start here** if you're deciding on a strategy. |
48-
| [Hybrid CI/CD Implementation Guide](fabric-hybrid-cicd-guide.md) | Deep dive into the implementation: workflow structure, sandwich pattern, configuration strategy, prerequisites, setup steps, and gotchas. |
48+
| [Hybrid CI/CD Implementation Guide](fabric-hybrid-cicd-guide.md) | Deep dive into the implementation: workflow structure, configuration strategy, prerequisites, setup steps, and gotchas. |
4949
| [Development Process](fabric-development-process.md) | How developers work day-to-day: branch-out workflow, environment bootstrap/reset script, and PR validation. |
5050

5151
---
@@ -66,7 +66,7 @@ Not all Fabric items can be managed the same way. From a lifecycle management pe
6666

6767
> **Important:** Both supported items lists evolve as Microsoft adds capabilities. Always verify against the official documentation before assuming an item falls into a particular category.
6868
69-
This categorization directly impacts your CI/CD strategy. The [Hybrid CI/CD Implementation Guide](fabric-hybrid-cicd-guide.md) uses the "sandwich pattern" to handle the gap between git-tracked and deployment-pipeline-only items, though currently all items in this repository are deployed via fabric-cicd.
69+
This categorization directly impacts your CI/CD strategy. The [Hybrid CI/CD Implementation Guide](fabric-hybrid-cicd-guide.md) describes how to handle the gap between git-tracked and deployment-pipeline-only items if your workspace includes unsupported types. Currently, all items in this repository are deployed via fabric-cicd.
7070

7171
### Variable Libraries: Dynamic vs Static Metadata
7272

assets/hybrid-recommendation-flow.svg

Lines changed: 26 additions & 51 deletions
Loading

0 commit comments

Comments
 (0)