PerformanceTest.kt

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Rerun distributed performance test in RERUNNER step (#8801)

After the improvement of automatically rerunning and tagging, we want to manage performance test in the same way:

- Only run each performance test scenario once.

- If it fails, `GRADLE_RERUNNER` will kick in and rerun the failed scenario. The good thing is that it might be scheduled to another build agent, which mitigates the effect of bad agent.

This PR does:

- Remove all `Retry` from performance tests.

- Add `GRADLE_RERUNNER` to performance tests and refactor some code.

- Add tests for `PerformanceTest`.

- Since `GRADLE_RERUNNER` depends on reading of test binary result, write binary test result file in `RerunableDistributedPerformanceTest`.

  1. … 23 more files in changeset.
Use the same exact TeamCity build configuration from master

  1. … 61 more files in changeset.
Extract common code for AdHoc Coordinator Job

  1. … 10 more files in changeset.
Merge pull request #8709 from gradle/wolfs/tc-config/convert-promotion-to-kotlin-dsl

Refactor promotion project

  1. … 1 more file in changeset.
Extract common build logic

  1. … 20 more files in changeset.
Always use daemon for build tagging

Some tagging command lines have not been adjusted, so the daemon was not

used as TC disables it by default.

  1. … 1 more file in changeset.
Don't run coordinator on ec2 (#8621)

Our H2 performance database has an ancient configuration and is incompatible with JDK11.0.2. We're using a patched JDK11.0.2 version (https://github.com/gradle/gradle-private/issues/1861) on Hetzner agents. But EC2 agents are not patched, performance coordinator builds will fail on EC2 agents. Before fixing H2 db issue, let's not run performance coordinators on EC2 agents.

Don't run coordinator on ec2 (#8621)

Our H2 performance database has an ancient configuration and is incompatible with JDK11.0.2. We're using a patched JDK11.0.2 version (https://github.com/gradle/gradle-private/issues/1861) on Hetzner agents. But EC2 agents are not patched, performance coordinator builds will fail on EC2 agents. Before fixing H2 db issue, let's not run performance coordinators on EC2 agents.

  1. … 2 more files in changeset.
Re-enable daemon on CI (#8263)

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

Previously we disabled daemon in some CI builds as a workaround of https://github.com/gradle/gradle-private/issues/1352 . Now that issue has been fixed, so we re-enable disabled daemons.

Also, there seems no reason to enable daemon in performance tests, so we enable them as well.

  1. … 6 more files in changeset.
Update TeamCity DSL package to 2018.2 (#8248)

  1. … 21 more files in changeset.
Add BUILD_BRANCH environment variable to performance tests

  1. … 1 more file in changeset.
Switch build JDK to OpenJDK 11

This PR does:

- Switch build JDK from Oracle JDK 9 to OpenJDK 11.

- Remove all unnecessary java7Home and java9Home system properties.

  1. … 22 more files in changeset.
Remove some more reference to buildTagging.gradle

  1. … 5 more files in changeset.
Revert 24172d78f03fc5413adc4c46ee1e083d217ced41 and 76fff830089abd9dd7ac38b1630a480a0f5384bd

Seems like TeamCity doesn't support empty string parameter well. This reverts previous two commits.

  1. … 4 more files in changeset.
Add quotes around baselines parameter

  1. … 3 more files in changeset.
Migrate TeamCity builds to Java 9 (#6555)

This attempts to migrate the whole build to Java 9.

  1. … 14 more files in changeset.
Disable daemon conditionally (#6106)

This is a follow-up of https://github.com/gradle/gradle-private/issues/1352. The asciidoctor plugin

we're using has a serious issue that its native library sometimes cause the daemon JVM crash.

As a workaround, we identify the following builds need to run `docs:docs` task because they depend on

`binZip` task:

- wrapper

- toolingApi

- distributions

- performance test coordinators because they're running in the default pool

This commit disables daemon by removing `--daemon` from build parameter list. (TeamCity would automatically

add `-Dorg.gradle.daemon=false` at the end of the parameter list.)

  1. … 8 more files in changeset.
Update Kotlin DSL to 2018.1 for Gradle_check

  1. … 19 more files in changeset.
Revert "TeamCity change in 'Gradle / Check' project: Synchronization with own VCS root is enabled"

This reverts commit 84c4874bfac6e29b9d2f15319d8c118a913edff7.

  1. … 1101 more files in changeset.
TeamCity change in 'Gradle / Check' project: Synchronization with own VCS root is enabled

  1. … 1101 more files in changeset.
Stop limiting parallel performance tests

We often have coordinator builds just waiting for one last test to complete

while other coordinator builds are waiting in the queue, even though 18 of

our performance agents are ready to do some work.

Fix escaping for build cache password on Windows

  1. … 5 more files in changeset.
Move gradleParameters to front

To avoid https://youtrack.jetbrains.com/issue/TW-47055.

  1. … 2 more files in changeset.
Only archive performance report

All the other reports/logs are not useful for the performance

coordinator.

Change parameter order in BaseGradleBuildType

  1. … 9 more files in changeset.
Add more tags and custom values

We now tag the stages, the type of builds and add custom values for

OS, JVM vendor and version for the test coverage.

  1. … 14 more files in changeset.
Dedupe default Gradle build step settings

By introducing custom Gradle build step factories.

  1. … 4 more files in changeset.
Avoid the default `-b build.gradle` behaviour

By explicitly setting `buildFile` to the empty string after the Team

City upgrade with the fix for

[TW-53037](https://youtrack.jetbrains.com/issue/TW-53037).

  1. … 4 more files in changeset.
Remove (failed) workarounds for `-b` TC behaviour

  1. … 2 more files in changeset.
Try to work around `-b` TC behaviour

By explicitly setting `buildFile` to a blank (non-empty) string.

  1. … 2 more files in changeset.