Skip to content

[CERT-210] On Pull Request workflows#74

Merged
roberthunterjr merged 15 commits intomainfrom
github-actions-lint-n-tests
Dec 9, 2025
Merged

[CERT-210] On Pull Request workflows#74
roberthunterjr merged 15 commits intomainfrom
github-actions-lint-n-tests

Conversation

@josephcampos-gap
Copy link
Contributor

@josephcampos-gap josephcampos-gap commented Dec 2, 2025

This pull request (previously PR #58 ) introduces significant improvements to CI/CD workflows, security scanning, dependency management, and test automation for the repository. It adds new GitHub Actions workflows for linting, QA scenario testing, and security/dependency analysis, refines configuration and ownership files, and improves test case parameterization for better clarity and maintainability.

CI/CD Workflow Enhancements

  • Added .github/workflows/on-pullrequest-lint-bruno.yml and .github/workflows/on-pullrequest-run-tests.yml to automate Bruno linting and QA scenario testing on pull requests, with artifact upload and PR summary commenting. These workflows use pinned action versions for security and reliability. [1] [2] [3] [4]
  • Introduced .github/workflows/on-pullrequest.yml to orchestrate BIDI Trojan scan, dependency review, and CodeQL analysis on PRs and pushes.

Security and Dependency Management

  • Added .github/workflows/bidi-config.json for configuring BIDI Trojan file exclusions.
  • Added .github/dependabot.yml to enable automated npm dependency updates for both the root and bruno directories.
  • Updated .codeql-config.yml to exclude test, build, and dependency directories from CodeQL analysis for more focused security scans.

Documentation and Ownership

  • Added .github/TESTING_ACTIONS_LOCALLY.md with detailed instructions for local testing of GitHub Actions workflows using act.
  • Updated .github/CODEOWNERS to assign ownership of all .github files to the appropriate team.

Test Case Improvements

  • Refactored multiple Bruno test files to use parameter placeholders (e.g., [ENTER_SCHOOL_ID]) instead of hardcoded IDs, improving test reusability and clarity. [1] [2] [3] [4]
  • Fixed table formatting in bruno/SIS/v4/MasterSchedule/BellSchedules/folder.bru for improved documentation readability.

@github-actions
Copy link

github-actions bot commented Dec 2, 2025

Bruno Lint Report

Files Scanned: 334
Problems: 0 (Errors: 0, Warnings: 0)
✅ No blocking errors.

Triggered by workflow: lint-bruno.yml

@github-actions
Copy link

github-actions bot commented Dec 2, 2025

QA Scenarios Summary

Status: PASS
Entities Processed: 1
Assertions: Passed 19, Failed 0, Total 19

Entity Passed Failed Total
BellSchedules 19 0 19

@github-advanced-security
Copy link

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

"private": true,
"version": "1.0.0",
"description": "Local dependencies for Tests Bruno collection (sandbox-safe).",
"license": "UNLICENSED",
Copy link
Contributor

Choose a reason for hiding this comment

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

Apache-2, although it is not very important to have that here.

@@ -0,0 +1,179 @@
# run-scenarios Script Usage
Copy link
Contributor

Choose a reason for hiding this comment

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

It looks like this script is connecting to api.ed-fi.org. That's OK in the short term, but in the longer term it might be better to start up the ODS/API containers to have a local copy.

FYI, @vimayya

Copy link
Contributor

Choose a reason for hiding this comment

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

Correct me if I'm wrong, but I believe this is something @josephcampos-gap and @jpardogrowthaccelerationpartners have already starting looking at?

Choose a reason for hiding this comment

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

Yes, but we haven't implemented anything yet... I do have it running locally for my local tests.

@stephenfuqua
Copy link
Contributor

I love this PR's introduction of test automation, among other things. I hope this gets merged soon.

@github-actions
Copy link

github-actions bot commented Dec 8, 2025

Bruno Lint Report

Files Scanned: 334
Problems: 0 (Errors: 0, Warnings: 0)
✅ No blocking errors.

Triggered by workflow: lint-bruno.yml

@github-actions
Copy link

github-actions bot commented Dec 8, 2025

QA Scenarios Summary

Status: PASS
Entities Processed: 1
Assertions: Passed 19, Failed 0, Total 19

Entity Passed Failed Total
BellSchedules 19 0 19

@josephcampos-gap josephcampos-gap force-pushed the github-actions-lint-n-tests branch from d619df0 to e813a3e Compare December 8, 2025 22:53
@github-actions
Copy link

github-actions bot commented Dec 8, 2025

Bruno Lint Report

Files Scanned: 334
Problems: 0 (Errors: 0, Warnings: 0)
✅ No blocking errors.

Triggered by workflow: lint-bruno.yml

@github-actions
Copy link

github-actions bot commented Dec 8, 2025

QA Scenarios Summary

Status: PASS
Entities Processed: 1
Assertions: Passed 19, Failed 0, Total 19

Entity Passed Failed Total
BellSchedules 19 0 19

@roberthunterjr roberthunterjr merged commit dea719b into main Dec 9, 2025
8 checks passed
@roberthunterjr roberthunterjr deleted the github-actions-lint-n-tests branch December 9, 2025 04:13
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.

4 participants