Skip to content

Move DocC and integration tests into separate CI pipelines #23

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 12, 2023

Conversation

simonjbeaumont
Copy link
Collaborator

Motivation

Like many other projects, we have a soundness script which runs in CI. It started out with some fast policy and style tests but has grown over time. It currently has:

  1. Check for broken symlinks
  2. Check for unacceptable language
  3. Check all files have a license headers
  4. Run swift-format lint
  5. Check DocC compiliation has no warnings
  6. Run integration test

On my machine, (5) takes 11s and (6) takes 1m13s.

The soundness script should be cheap to run so as not to disclosure running it often—potentially even adding it to a precommit hook.

Removing (5) and (6) from the soundness suite means it takes 3s, which is more reasonable.

Modifications

  • Add integration-test to Compose file.
  • Add docc-test to Compose file.
  • Stop running DocC and integration tests in soundness.sh.

Result

Running soundness.sh takes 3s (was ~1m30s).

Test Plan

The following commands all succeed when run locally:

  • ./scripts/soundness.sh
  • docker-compose -f docker/docker-compose.yaml run soundness
  • docker-compose -f docker/docker-compose.yaml run docc-test
  • docker-compose -f docker/docker-compose.yaml run integration-test

Notes

This PR should be used to stand up the new CI pipelines and shouldn't be merged
until we see them passing.

@simonjbeaumont
Copy link
Collaborator Author

@yim-lee (same again please...) would you be so kind as to help us set up two additional pipelines for this project on the CI server? One for each of the following Compose targets:

  • docc-test
  • integration-test

Thanks in advance 🙏

@simonjbeaumont simonjbeaumont marked this pull request as draft July 12, 2023 09:06
@yim-lee
Copy link
Member

yim-lee commented Jul 12, 2023

@swift-server-bot test this please

Copy link
Member

@yim-lee yim-lee left a comment

Choose a reason for hiding this comment

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

CI should be all set up!

@simonjbeaumont simonjbeaumont marked this pull request as ready for review July 12, 2023 19:08
@simonjbeaumont simonjbeaumont merged commit fbd56ae into apple:main Jul 12, 2023
@czechboy0 czechboy0 added the semver/none No version bump required. label Jul 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
semver/none No version bump required.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants