Skip to content
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

Run ci.jenkins.io tests in parallel #294

Merged
merged 1 commit into from
Sep 18, 2023

Conversation

MarkEWaite
Copy link
Contributor

Run ci.jenkins.io tests in parallel

Save time and money by testing in parallel with all the cores available on agents of ci.jenkins.io.

Allow developer control of parallel testing

Developers are allowed to configure the amount of parallel testing based on the configuration and use of their computer. This allows developers to configure test parallelism based on their environment and still allow ci.jenkins.io to reduce costs by running tests in parallel.

Developers can adjust parallel execution by passing a command line argument to Maven like this:

mvn clean -DforkCount=1C verify

Developers can define a Maven profile that sets the forkCount in their ~/.m2/settings.xml like this:

faster true .45C

With that entry in the settings.xml file, then 0.45C will be used for:

mvn clean verify

Supersedes #283

Testing done

Confirmed tests pass on Java 11, Java 17, and Java 21 with forkCount=1C on my Linux computer.

Rely on ci.jenkins.io to test Windows.

Submitter checklist

  • Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
  • Ensure that the pull request title represents the desired changelog entry
  • Please describe what you did
  • Link to relevant issues in GitHub or Jira
  • Link to relevant pull requests, esp. upstream and downstream changes
  • Ensure you have provided tests - that demonstrates feature works or fixes the issue

Save time and money by testing in parallel with all the cores available
on agents of ci.jenkins.io.

Allow developer control of parallel testing

Developers are allowed to configure the amount of parallel testing based
on the configuration and use of their computer.  This allows developers
to configure test parallelism based on their environment and still allow
ci.jenkins.io to reduce costs by running tests in parallel.

Developers can adjust parallel execution by passing a command line
argument to Maven like this:

  mvn clean -DforkCount=1C verify

Developers can define a Maven profile that sets the forkCount in their
~/.m2/settings.xml like this:

  <profile>
    <id>faster</id>
    <activation>
      <activeByDefault>true</activeByDefault>
    </activation>
    <properties>
      <forkCount>.45C</forkCount>
    </properties>
  </profile>

With that entry in the settings.xml file, then 0.45C will be used for:

  mvn clean verify

Supersedes jenkinsci#283
@MarkEWaite MarkEWaite requested a review from a team as a code owner September 16, 2023 11:57
@alecharp alecharp added this pull request to the merge queue Sep 18, 2023
Merged via the queue into jenkinsci:master with commit e4bc9ef Sep 18, 2023
14 checks passed
@MarkEWaite MarkEWaite deleted the run-ci-tests-in-parallel branch September 18, 2023 12:08
@alecharp alecharp added the chore label Sep 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
2 participants