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

Single target testing #6556

Merged
merged 8 commits into from
Dec 28, 2020
Merged

Single target testing #6556

merged 8 commits into from
Dec 28, 2020

Conversation

ppenzin
Copy link
Member

@ppenzin ppenzin commented Dec 27, 2020

Enable building and testing via a single target (check) - require chakracore
library to be built before the test run.

For #6547

Enable building and testing via a single target (check) - require chakracore
library to be built before the test run.
@ppenzin ppenzin requested a review from rhuanjl December 27, 2020 02:11
@ppenzin
Copy link
Member Author

ppenzin commented Dec 27, 2020

The idea is that we can invoke one target, which would be check for debug builds, and default for release builds, this would keep CI build steps for all builds mostly identical.

Manipulate build target: run tests for debug builds and simply build for release.
Expand CI matrix to include OSX.
@ppenzin
Copy link
Member Author

ppenzin commented Dec 27, 2020

Three Linux builds are working, trying to add OSX. I am going to make sure all basic varieties work, then will try to replicate some of the testing old CI used to do. I am not going to wait for this - will check tomorrow.

With this much variety we are getting close to the number of jobs Azure allows for free - after 10 jobs are launched the rest would have to wait their turn.

@rhuanjl
Copy link
Collaborator

rhuanjl commented Dec 27, 2020

The macOS debug build is failing all the tests but rather than saying it's failed it's carrying on failing over and over.

Two problems to solve:

  1. Why is it failing everything (some failures look like missing ICU but there are others which that doesn't explain)?
  2. Why is it carrying on when it's failed? Is there anything we can change/set to make it stop when it fails?

EDIT: the test failures are this issue: #5876 it's a long standing problem with PAL that surfaces in macOS shared debug builds - the old CI dodged it by using a static build.

@ppenzin
Copy link
Member Author

ppenzin commented Dec 27, 2020

The test runner tries to run until the end. I will set up a timeout - I was hoping Azure would kill it, but it did not.

EDIT: the test failures are this issue: #5876 it's a long standing problem with PAL that surfaces in macOS shared debug builds - the old CI dodged it by using a static build.

Thank you for finding it! Converting the build to static should be a relatively easy fix.

@rhuanjl
Copy link
Collaborator

rhuanjl commented Dec 27, 2020

The test runner tries to run until the end. I will set up a timeout - I was hoping Azure would kill it, but it did not.

EDIT: the test failures are this issue: #5876 it's a long standing problem with PAL that surfaces in macOS shared debug builds - the old CI dodged it by using a static build.

Thank you for finding it! Converting the build to static should be a relatively easy fix.

I wonder if we could/should add a "terminate on failure" flag to runtests.py or even make that the default behaviour with a flag to cancel it if you want to find multiple failures offline. I could have a look at how to do that.

azure-pipelines.yml Outdated Show resolved Hide resolved
azure-pipelines.yml Show resolved Hide resolved
@ppenzin
Copy link
Member Author

ppenzin commented Dec 28, 2020

I wonder if we could/should add a "terminate on failure" flag to runtests.py or even make that the default behaviour with a flag to cancel it if you want to find multiple failures offline. I could have a look at how to do that.

Maybe - I think it is useful to see all failures, though we can fail on the first one if it is too expensive to keep running. I wondering why the 'nix testing is slower - maybe we can improve the script somehow.

@ppenzin
Copy link
Member Author

ppenzin commented Dec 28, 2020

This does not seem to help, not sure what I am doing wrong.

Prevent tests from failing on OSX debug builds, by setting timeouts and
forcing static library build.

Shared library issue is described in chakra-core#5876.
Fix environment variable reference. Remove debug output.
@ppenzin
Copy link
Member Author

ppenzin commented Dec 28, 2020

Turns out I had brackets around an environment variable name :)

@ppenzin ppenzin merged commit dab7603 into chakra-core:master Dec 28, 2020
@ppenzin ppenzin deleted the ci-single-target branch December 28, 2020 06:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants