Skip to content

Run the complete SQL Server lab in GitHub Actions - #5

Merged
DataTideHH merged 5 commits into
mainfrom
feat/github-actions-integration
Jul 28, 2026
Merged

Run the complete SQL Server lab in GitHub Actions#5
DataTideHH merged 5 commits into
mainfrom
feat/github-actions-integration

Conversation

@DataTideHH

@DataTideHH DataTideHH commented Jul 28, 2026

Copy link
Copy Markdown
Owner

Summary

This PR adds an end-to-end GitHub Actions workflow for the complete SQL Server lab. The workflow provisions SQL Server through the existing Docker Compose configuration, executes the shared PowerShell bootstrap, validates the relational model, integrity suite and dimensional reporting model, and then runs the complete workflow a second time to prove repeatability.

Workflow coverage

  • checks out the repository with read-only contents permission
  • disables persisted checkout credentials after source retrieval
  • runs on pinned ubuntu-24.04
  • reports PowerShell, Docker and Docker Compose versions
  • parses every PowerShell script before execution
  • creates a temporary CI-only .env with a generated SQL Server password
  • pulls and starts the pinned SQL Server image
  • executes Initialize-Lab.ps1 against a fresh runner
  • executes the complete workflow again with -SkipImagePull
  • writes a compact validation summary to the GitHub Actions job summary
  • surfaces container state and SQL Server logs on failures
  • removes containers and the Compose network without using volume deletion
  • removes the temporary .env

Triggers

The workflow runs for relevant changes on pull requests to main, relevant pushes to main, and manual workflow_dispatch runs.

First GitHub-hosted validation

The first pull-request workflow run completed successfully on 28 July 2026.

Observed runner and permission evidence:

  • GitHub-hosted Ubuntu 24.04.4
  • repository token limited to contents: read
  • actions/checkout@v6
  • all PowerShell scripts parsed successfully

Observed execution evidence:

  • fresh SQL Server provisioning succeeded
  • source-model setup verification succeeded
  • all seven negative integrity tests succeeded
  • dimensional reporting load and reconciliation succeeded
  • second complete initialization succeeded
  • cleanup succeeded

Validated dataset results remained:

  • 5 / 5 / 5 dimension rows
  • 25 fact rows
  • 21 passed fact rows
  • average score percentage 68.12
  • source reconciliation 1
  • reporting-model verification 1

Documentation

  • README now includes a workflow badge and CI evidence
  • docs/ci-workflow.md documents triggers, permissions, temporary configuration, diagnostics and cleanup
  • project notes record the CI design decisions and verified runtime behaviour

Safety and scope

  • no repository secret is required
  • the generated database password is temporary
  • repository access is read-only
  • no persistent local Docker volume is removed
  • only synthetic data is used
  • this is an integration-test workflow, not a deployment or release pipeline

@DataTideHH
DataTideHH merged commit f3fa3f3 into main Jul 28, 2026
1 check passed
@DataTideHH
DataTideHH deleted the feat/github-actions-integration branch July 28, 2026 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant