-
Notifications
You must be signed in to change notification settings - Fork 461
Run check task on CI
#3808
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 check task on CI
#3808
Conversation
|
Hm, running And looks like there is no good way to tell both Gradle and IDEA that we want to have |
|
@whyoleg maybe you should structure your tests using Gradle test-suite plugin and then via Gradle properties just disable some suites |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this approach is fine, although I have some suggestions:
-
Instead of disabling the entire task, what about adding JUnit tags to the integration test and excluding them via a filter? This would help with test reporting, as the tests would be reported as 'skipped' in places like Build Scan and TeamCity.
-
It's strange that
testandtestDescriptorsare identical tests.dokka/build-logic/src/main/kotlin/dokkabuild.test-k2.gradle.kts
Lines 62 to 63 in 7733051
// Create a new target for _only_ running test compatible with descriptor-analysis (K1). // Note: this target is the same as the regular test target, it is only created to provide a more descriptive name. -
Instead of another custom workaround, maybe just remove
testDescriptors? -
Alternatively, try removing the
testDescriptorstest suite target, creating a lifecycle task namedtestDescriptorsthat depends ontest, and addidea.internal.test=trueto trick IntelliJ into thinkingtestDescriptorsis a test task.
-
-
Rather than dynamically enabling/disabling tasks, I think it'd be more clear to explicitly list the tasks to be executed in GitHub CI.
For example:
- name: Run tests run: > ./gradlew test testSymbols --stacktrace --continue
just curious: this is needed to understand if the test is
I've decided to just skip
Let's run |
Yeah, fair enough. I think adding a I'm working on fixing the failing Windows tests in #3811 |
|
|
||
| # !!! ATTENTION: do not commit this !!! | ||
| # Uncomment next line to skip running Dokka integration tests | ||
| #org.jetbrains.dokka.integration_test.skip=true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI: @atyrin / @vmishenev after merging this PR you can uncomment this line locally to not run integration tests when running build/check tasks
|
@adam-enko There is still one more test failure on Windows. Do you think may be it will be better to merge this PR and then fix the test, so that the fix will be properly tested on CI? |
It's a strange failure, I'm really not sure what's wrong. Let's suppress the test in this PR and fix it later. |
… on Windows KT-71851
fixes #3805
Introduce a Gradle property to skip integration tests, which could be set on CI/locally to be able to run
checktask without running all integration tests.If we will enable running integration tests unconditionally we will increase GA tests time from 10-15 minutes to more than an hour (example).
Note: all tests are red in the above example because most of them failed with OOM or "not enough space" when downloading K/N toolchain for different version of Kotlin.
So enabling integration tests unconditionally on GA is not an option also for reasons other than "slow tests".
Note: running
checkon CI exposed issue with Windows and DGPv2 function tests. This should be fixed before the merging of this PR.Additionally after the PR is merged we could change TC setup for
Dokka Teststo also usecheckwithintegration_test.skip=trueflag. Or even drop it, as it doesn't cover other OS like we have on GA.