Skip to content

[GPCAPIM-323] Keep Bruno collection in sync #170

Open
davidhamill1-nhs wants to merge 19 commits intomainfrom
feature/GPCAPIM-323-add-bruno-cli-to-pipeline-v2
Open

[GPCAPIM-323] Keep Bruno collection in sync #170
davidhamill1-nhs wants to merge 19 commits intomainfrom
feature/GPCAPIM-323-add-bruno-cli-to-pipeline-v2

Conversation

@davidhamill1-nhs
Copy link
Copy Markdown
Contributor

@davidhamill1-nhs davidhamill1-nhs commented Apr 13, 2026

Description

Add a new test step that executes the collections against the Preview Env.

I have also moved Bruno files to the opencollection specification that they promote and support.

The place where the workflow runs will probably change with @neil-sproston 's work on GitHub Actions, GPCAPIM-339.

Context

Bruno CLI (https://docs.usebruno.com/bru-cli/overview) + Brunos unlimited executions of collections can be leveraged so that our manual API test collections stay in sync with the API at the point changes are made (ie in the PR pipeline).

Once this change has been made any changes to the API that havent been applied in the Bruno API test collections will cause pipeline failures and prevent PR merge - forcing the dev/test to maintain them and therefore keep them true to the API

Type of changes

  • Refactoring (non-breaking change)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would change existing functionality)
  • Bug fix (non-breaking change which fixes an issue)

Checklist

  • I have followed the code style of the project
  • I have added tests to cover my changes
  • I have updated the documentation accordingly
  • This PR is a result of pair or mob programming
  • Exceptions/Exclusions to coding standards (e.g. #noqa or #NOSONAR) are included within this Pull Request.

Sensitive Information Declaration

To ensure the utmost confidentiality and protect your and others privacy, we kindly ask you to NOT including PII (Personal Identifiable Information) / PID (Personal Identifiable Data) or any other sensitive data in this PR (Pull Request) and the codebase changes. We will remove any PR that do contain any sensitive information. We really appreciate your cooperation in this matter.

  • I confirm that neither PII/PID nor sensitive data are included in this PR and the codebase changes.

@davidhamill1-nhs davidhamill1-nhs requested review from a team as code owners April 13, 2026 12:40
Copilot AI review requested due to automatic review settings April 13, 2026 12:40
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates the Steel Thread Bruno collection from legacy .bru/bruno.json files to OpenCollection YAML format and adds a GitHub Actions workflow to run the collection in CI to keep it in sync.

Changes:

  • Converted the Steel_Thread collection and environments from .bru format to OpenCollection YAML (opencollection.yml, request .yml, environment .yml).
  • Removed legacy Bruno files (collection.bru, *.bru env/request files, bruno.json).
  • Added a PR-triggered GitHub Actions workflow to run Bruno against the local app and publish reports.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
bruno/gateway-api/collections/Steel_Thread/opencollection.yml Adds OpenCollection collection metadata, default headers, and OAuth2 auth configuration.
bruno/gateway-api/collections/Steel_Thread/environments/PR_Proxy.yml Adds YAML environment for PR proxy base URL composition.
bruno/gateway-api/collections/Steel_Thread/environments/PR_Proxy.bru Removes legacy Bruno environment format.
bruno/gateway-api/collections/Steel_Thread/environments/local.yml Adds YAML environment for local base URL.
bruno/gateway-api/collections/Steel_Thread/environments/local.bru Removes legacy Bruno environment format.
bruno/gateway-api/collections/Steel_Thread/collection.bru Removes legacy collection-level headers/auth/vars.
bruno/gateway-api/collections/Steel_Thread/bruno.json Removes legacy Bruno collection metadata file.
bruno/gateway-api/collections/Steel_Thread/Access_Structured_Record.yml Adds YAML request definition for $gpc.getstructuredrecord.
bruno/gateway-api/collections/Steel_Thread/Access_Structured_Record.bru Removes legacy request format.
.github/workflows/test-bruno-collection.yaml Adds CI workflow to start the app and run the Bruno collection with report publishing.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sonarqubecloud
Copy link
Copy Markdown

@github-actions
Copy link
Copy Markdown

Deployment Complete

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.

2 participants