Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Re-enable instant execution test suite

Signed-off-by: Paul Merlin <paul@gradle.com>

Re-enable instant execution test suite

Signed-off-by: Paul Merlin <paul@gradle.com>

Re-enable instant execution test suite

Signed-off-by: Paul Merlin <paul@gradle.com>

Disable the instant execution test suite again, as it seems to be quite flaky.

Rework the discovery and validation of the JVMs used for building, compiling and testing Gradle, so that the implementation is compatible with instant execution.

In particular, model the `AvailableJavaInstallations` as a 'build service', in part to dogfood this API. Also remove some logic that is no longer required.

  1. … 6 more files in changeset.
Rework the discovery and validation of the JVMs used for building, compiling and testing Gradle, so that the implementation is compatible with instant execution.

In particular, model the `AvailableJavaInstallations` as a 'build service', in part to dogfood this API. Also remove some logic that is no longer required.

  1. … 6 more files in changeset.
Rework the discovery and validation of the JVMs used for building, compiling and testing Gradle, so that the implementation is compatible with instant execution.

In particular, model the `AvailableJavaInstallations` as a 'build service', in part to dogfood this API. Also remove some logic that is no longer required.

  1. … 6 more files in changeset.
Merge pull request #11211 from gradle/eskatos/ie/instantIntegTest-prepare-for-ci

Prepare CI pipeline to run integ tests with instant execution enabled

  1. … 4 more files in changeset.
Disable :instantIntegTest tasks for now

Signed-off-by: Paul Merlin <paul@gradle.com>

Re-enable :*:instantIntegTest tasks

Signed-off-by: Paul Merlin <paul@gradle.com>

Re-enable :*:instantIntegTest tasks

Signed-off-by: Paul Merlin <paul@gradle.com>

Disable :instantIntegTest tasks for now

Signed-off-by: Paul Merlin <paul@gradle.com>

Introduce 'instant' Gradle executer for tests, aka. :instantIntegTest

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 2 more files in changeset.
Introduce 'instant' Gradle executer for tests, aka. :instantIntegTest

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 2 more files in changeset.
Split cross version tests at quick feedback stage

Previously we accidentally skipped splitting crossVersionTest at

quick feedback stage, which caused them to be run multiple times.

This comomit fixes this issue.

Split cross version tests at quick feedback stage

Previously we accidentally skipped splitting crossVersionTest at

quick feedback stage, which caused them to be run multiple times.

This comomit fixes this issue.

Split cross version tests at quick feedback stage

Previously we accidentally skipped splitting crossVersionTest at

quick feedback stage, which caused them to be run multiple times.

This comomit fixes this issue.

Split cross version tests at quick feedback stage

Previously we accidentally skipped splitting crossVersionTest at

quick feedback stage, which caused them to be run multiple times.

This comomit fixes this issue.

Split cross version tests at quick feedback stage

Previously we accidentally skipped splitting crossVersionTest at

quick feedback stage, which caused them to be run multiple times.

This comomit fixes this issue.

Don't split integMultiVersionTest

See https://github.com/gradle/gradle-private/issues/2740

Don't split integMultiVersionTest

See https://github.com/gradle/gradle-private/issues/2740

Don't split integMultiVersionTest

See https://github.com/gradle/gradle-private/issues/2740

Split cross version tests by task (#10896)

We didn't split cross version tests before, because some of them have own test class split. However, we see large cross version test timeout frequently.

This PR splits cross version tests by task, not by test class. For example, for version [1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7]:

- -PtestSplit=1/3: [1.0, 1.3, 1.6]

- -PtestSplit=2/3: [1.1, 1.4, 1.7]

- -PtestSplit=3/3: [1.2, 1.5]

  1. … 3 more files in changeset.
Split cross version tests by task (#10896)

We didn't split cross version tests before, because some of them have own test class split. However, we see large cross version test timeout frequently.

This PR splits cross version tests by task, not by test class. For example, for version [1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7]:

- -PtestSplit=1/3: [1.0, 1.3, 1.6]

- -PtestSplit=2/3: [1.1, 1.4, 1.7]

- -PtestSplit=3/3: [1.2, 1.5]

  1. … 3 more files in changeset.
Split cross version tests by task (#10896)

We didn't split cross version tests before, because some of them have own test class split. However, we see large cross version test timeout frequently.

This PR splits cross version tests by task, not by test class. For example, for version [1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7]:

- -PtestSplit=1/3: [1.0, 1.3, 1.6]

- -PtestSplit=2/3: [1.1, 1.4, 1.7]

- -PtestSplit=3/3: [1.2, 1.5]

  1. … 3 more files in changeset.
Split cross version tests by task

  1. … 3 more files in changeset.
Fix incorrect split (#10689)

I made a mistake when splitting the test sets: suppose we have 1000 tests and want to split into 3 buckets, the previous split is [333,333,333,1], so the test include/exclude patterns are:

- include 1..333

- include 334..666

- exclude 1..999

We're missing a large subset of tests! This fixes this issue by correctly splitting the buckets.

  1. … 2 more files in changeset.
Fix split

  1. … 2 more files in changeset.
Count test number

Make buckets in TeamCity configuration (#10552)

Currently, the primary obstacles for us to improve CI feedback time is the long-running jobs: `integTest`/`core`/`dependencyManagement` each takes more than 10 minutes. Without decreasing the time we can't improve CI feedback time.

This PR changes the previous subproject-based TC job to bucket-based TC job: a bucket can contain a split of large subproject, or many tiny subprojects. This makes CI configuration more flexiable and efficient.

For example, all tiny subprojects which only contain unit tests can be merged to `AllUnitTests`, just as before - but now we make this more generic.

`integTest` subproject can be split to 3 jobs: `integTest`/`integTest_2`/`integTest_3`. Splitted project has a special parameter `-PtestSplit=1/3`/`-PtestSplit=2/3`/`-PtestSplit=3/3` so the build can choose only a subset of tests to execute.

  1. … 8 more files in changeset.