Default output dir for integration tests causes issues with pre-commit checks
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 210
- Forks
- 36
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 2
Description
The default output directory for integration tests is output/ directory, which can cause issues when these tests are run locally.
As part of integration tests we clone Git repository under output/. Now if we run make check without removing output/, pre-commit picks up files in these cloned repositories (even though output is part of Macaron's .gitignore) based on their individual .gitignore files.
I can think of two solutions:
- Use a path outside the current workspace for integration test output directory, but picking a path that would also work on GitHub Actions Runner might not be straightforward.
- Clean up and remove the integration tests output directory after tests finish (which will make tests slower as we won't cache the cloned repositories anymore).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with scripts/dev_scripts/integration_tests.sh, especially the default output/ path, then inspect .gitignore behavior and the make check pre-commit flow. Compare the two proposed approaches against local runs and GitHub Actions; done means integration-test clones no longer cause unrelated files to be checked by make check.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, shell
- Domain
- ci-cd, developer-experience, testing-qa
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100