County IT wants pipeline confidence that the clinic SQL Database Project deploys cleanly before API smoke checks. Which approach should they implement?
Select an answer to reveal the explanation.
Short Explanation
Integration tests that stand up SQL, deploy the project, then poke the API are a dress rehearsal for clinic go-live—better a fake stage than discovering breakage in production.
Full Explanation
County IT gains pipeline confidence by spinning up containerized SQL in CI, deploying the clinic SQL Database Project to that instance, and then running integration API checks against the deployed schema. That sequence proves the project builds, the dacpac/publish applies cleanly, and clinic APIs still function—catching deployment and contract breaks before production smoke tests are the first signal. Relying only on manual SSMS clicks after each merge is slow, non-repeatable, and easy to skip under pressure. Committing only compiled dacpac binaries without building from source loses reviewable DDL history and reproducible builds from the project model. Skipping database deployment and testing only static HTML for the clinic portal never validates SQL objects the APIs depend on. Exam caveat: containerized SQL in CI must match engine compatibility expectations closely enough for the project (collation, features used). Integration tests need secrets injected from a secret store, not from the repo. Ephemeral CI databases should be destroyed each run to avoid false confidence from leftover state. Operational check: add a pipeline job that starts SQL container/service, publishes the clinic project, applies any static reference data, runs API integration tests, and fails the build on migrate or test errors; verify a broken foreign key in a PR fails CI before merge; measure job time so clinic developers still get timely feedback.