8383 # stack_env: ${{ steps.set-env.outputs.stack_env }}
8484 # env_vars: AWS_REGION=${{ secrets.AWS_REGION }},AWS_ACCOUNT_ID=${{ secrets.AWS_ACCOUNT_ID }},DATABRICKS_ACCOUNT_ID=${{ secrets.DATABRICKS_ACCOUNT_ID }},DATABRICKS_AWS_ACCOUNT_ID=${{ secrets.DATABRICKS_AWS_ACCOUNT_ID }}
8585
86+ - name : Setup StackQL
87+ uses : stackql/setup-stackql@v2.2.3
88+
89+ - name : Get and parse workspace outputs
90+ id : parse-workspace
91+ run : |
92+ # stackql should be in PATH after setup
93+ RESULT=$(stackql exec "SELECT
94+ workspace_name,
95+ workspace_id,
96+ deployment_name,
97+ workspace_status
98+ FROM databricks_account.provisioning.workspaces
99+ WHERE account_id = '${{ env.DATABRICKS_ACCOUNT_ID }}'
100+ AND workspace_name = 'databricks-lakeflow-jobs-demo-${{ steps.set-env.outputs.stack_env }}-workspace'
101+ " --output json)
102+
103+ echo "Query returned: $RESULT"
104+
105+ # Parse and set outputs
106+ echo "workspace_name=$(echo "$RESULT" | jq -r '.[0].workspace_name')" >> $GITHUB_OUTPUT
107+ echo "workspace_id=$(echo "$RESULT" | jq -r '.[0].workspace_id')" >> $GITHUB_OUTPUT
108+ echo "deployment_name=$(echo "$RESULT" | jq -r '.[0].deployment_name')" >> $GITHUB_OUTPUT
109+ echo "workspace_status=$(echo "$RESULT" | jq -r '.[0].workspace_status')" >> $GITHUB_OUTPUT
110+ env :
111+ DATABRICKS_CLIENT_ID : ${{ secrets.DATABRICKS_CLIENT_ID }}
112+ DATABRICKS_CLIENT_SECRET : ${{ secrets.DATABRICKS_CLIENT_SECRET }}
113+
114+
86115 - name : Get workspace outputs
87116 id : get-workspace
88117 uses : stackql/stackql-exec@v2.2.3
@@ -100,31 +129,6 @@ jobs:
100129 DATABRICKS_CLIENT_ID : ${{ secrets.DATABRICKS_CLIENT_ID }}
101130 DATABRICKS_CLIENT_SECRET : ${{ secrets.DATABRICKS_CLIENT_SECRET }}
102131
103- - name : Debug - Show all outputs
104- run : |
105- echo "Output keys available:"
106- echo "data: ${{ steps.get-workspace.outputs.data }}"
107- echo "json: ${{ steps.get-workspace.outputs.json }}"
108- echo "output: ${{ steps.get-workspace.outputs.output }}"
109- echo "result: ${{ steps.get-workspace.outputs.result }}"
110-
111- - name : Parse workspace outputs
112- id : parse-workspace
113- run : |
114- # The stackql-exec action stores output in steps.get-workspace.outputs.result
115- RESULT='${{ steps.get-workspace.outputs.result }}'
116-
117- # Parse JSON and extract fields
118- WORKSPACE_NAME=$(echo "$RESULT" | jq -r '.[0].workspace_name')
119- WORKSPACE_ID=$(echo "$RESULT" | jq -r '.[0].workspace_id')
120- DEPLOYMENT_NAME=$(echo "$RESULT" | jq -r '.[0].deployment_name')
121- WORKSPACE_STATUS=$(echo "$RESULT" | jq -r '.[0].workspace_status')
122-
123- # Set as outputs
124- echo "workspace_name=$WORKSPACE_NAME" >> $GITHUB_OUTPUT
125- echo "workspace_id=$WORKSPACE_ID" >> $GITHUB_OUTPUT
126- echo "deployment_name=$DEPLOYMENT_NAME" >> $GITHUB_OUTPUT
127- echo "workspace_status=$WORKSPACE_STATUS" >> $GITHUB_OUTPUT
128132
129133 - name : Display workspace info
130134 run : |
0 commit comments