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

CI/azure: fix flakiness by avoiding libtool wrappers on Windows #6049

Closed
wants to merge 1 commit into from

Conversation

mback2k
Copy link
Member

@mback2k mback2k commented Oct 7, 2020

Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be the root cause of the following issues:

  1. Process output can be lost in the wrapper process chain.
  2. Killing the wrapper process does not kill the real one.

Derived from #5904

@mback2k mback2k added tests Windows Windows-specific CI Continuous Integration labels Oct 7, 2020
@mback2k mback2k self-assigned this Oct 7, 2020
@ghost
Copy link

ghost commented Oct 7, 2020

Congratulations 🎉. DeepCode analyzed your code in 0.781 seconds and we found no issues. Enjoy a moment of no bugs ☀️.

👉 View analysis in DeepCode’s Dashboard | Configure the bot

@mback2k
Copy link
Member Author

mback2k commented Oct 7, 2020

@bagder do you think it would be possible to also "install" the testsuite binaries (libtests, servers and unittests) in order to avoid the libtool wrappers which I think are the root cause for the Windows CI flakiness? At the moment there is unfortunately no Makefile target for this.

AppVeyor is basically out of scope for this, because it is building and testing within the MSYS2 environment, but the Azure DevOps builds are native cross-compiled Windows binaries which don't depend on such an environment for execution.

@bagder
Copy link
Member

bagder commented Oct 7, 2020

Possible? sure! Tricky? Probably!

As we don't want them installed by regular users who do 'make install' in the root build dir, we can't use the normal automake targets for install but we have to do something more special-purpose.

mback2k added a commit to mback2k/curl that referenced this pull request Oct 8, 2020
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be the root cause of the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Reviewed-by: Daniel Stenberg

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch from c54dfff to 027adea Compare October 8, 2020 19:49
mback2k added a commit to mback2k/curl that referenced this pull request Oct 9, 2020
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be the root cause of the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Reviewed-by: Daniel Stenberg

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch from 0a5a52b to 1cf7664 Compare October 9, 2020 19:46
mback2k added a commit to mback2k/curl that referenced this pull request Oct 9, 2020
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be the root cause of the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Reviewed-by: Daniel Stenberg

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch from 1cf7664 to adca2ae Compare October 9, 2020 20:26
@mback2k
Copy link
Member Author

mback2k commented Oct 10, 2020

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mback2k
Copy link
Member Author

mback2k commented Oct 10, 2020

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

mback2k added a commit to mback2k/curl that referenced this pull request Oct 11, 2020
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be one of the root causes for the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch from adca2ae to 9a87c7e Compare October 11, 2020 19:33
mback2k added a commit to mback2k/curl that referenced this pull request Oct 12, 2020
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be one of the root causes for the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch from 9a87c7e to fb01c53 Compare October 12, 2020 04:23
mback2k added a commit to mback2k/curl that referenced this pull request Oct 12, 2020
Avoid using our own, potentially installed, curl for
the test reporting APIs in case it is broken.

Follow up to curl#6049
@mback2k mback2k marked this pull request as ready for review October 12, 2020 07:12
mback2k added a commit that referenced this pull request Oct 13, 2020
Avoid using our own, potentially installed, curl for
the test reporting APIs in case it is broken.

Reviewed-by: Daniel Stenberg

Preparation for #6049
Closes #6063
mback2k added a commit to mback2k/curl that referenced this pull request Oct 13, 2020
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be one of the root causes for the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch from fb01c53 to 957458b Compare October 13, 2020 05:00
mback2k added a commit to mback2k/curl that referenced this pull request Oct 14, 2020
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be one of the root causes for the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch from f431c26 to b722111 Compare October 14, 2020 05:22
mback2k added a commit to mback2k/curl that referenced this pull request Oct 14, 2020
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be one of the root causes for the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch 2 times, most recently from 1731d0a to 4b50250 Compare October 14, 2020 20:48
Install curl binaries into MinGW bin folder and use that
for the tests in order to avoid libtool wrapper binaries.

The libtool wrapper binaries (not scripts) on Windows seem
to be one of the root causes for the following issues:

1. Process output can be lost in the wrapper process chain.
2. Killing the wrapper process does not kill the real one.

Derived from curl#5904
Closes curl#6049
@mback2k mback2k force-pushed the azure-ci-avoid-libtool-wrappers branch 2 times, most recently from 97b9248 to 957c519 Compare October 16, 2020 18:09
@mback2k mback2k closed this in 354afc8 Oct 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI Continuous Integration tests Windows Windows-specific
Development

Successfully merging this pull request may close these issues.

None yet

2 participants