Project

General

Profile

Misc #13747

MinGW trunk build available on Appveyor

Added by MSP-Greg (Greg L) about 2 years ago. Updated almost 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
[ruby-core:82069]

Description

As many of you know, I have been building MinGW for quite a while, and posting results at Ruby MinGW Test Results.

I recently added a 64-bit build to BinTray, along the three custom MSYS2/MinGW packages I use. Log files for every build are also posted, and all archives containing code are signed. I did so so I or anyone else can use the build for testing on Appveyor.

Since the packages may change (OpenSSL 1.1.0f will change to 1.1.0g sometime), the cmd script for loading the packages is contained in the ruby_trunk.7z file. An example of its use is at appveyor MSP-Greg/appveyor-ruby with the script at MSP-Greg/appveyor_ruby.

Some people are against using a build that is not cloud based. For the time being, I have chosen to do so for the following reasons:

  1. Appveyor issues - see build 1.0.4718 for an example.

  2. Parallel test issues - I still have problems with issues running parallel.

  3. Intermittent Failures - see build 1.0.4678. Once in a while, I see this failure. Always, run the test (parallel) again, and it passes.

  4. Environment issues - there is one test I can run successfully in a straight windows env, but running in a hybrid env (with some *nix commands available), it fails.

  5. Two other Windows/MinGW fails, both of which I opened issues on. See above mentioned results page for info.

  6. Skips aren't fails. I would prefer to see if skips increase dramatically between builds.

  7. If there are new failures/errors, I can easily isolate the them, run non-parallel, run in a make env, run in a 'ruby env', etc.

Lastly, two items:

  1. At present, RubyInstaller2 builds (2.4.1 and snapshot) do not run test-all or test-spec. Also, MSYS2/MinGW updated to gcc 7.1.0 recently (appveyor still has 6.3.0), and I have test issues when using 7.1.0. For the time being, I'm using 6.3.0.

  2. I expect to be doing builds at least five times a week, maybe more.

History

Updated by naruse (Yui NARUSE) almost 2 years ago

Thank you for providing CI for mingw.

I and branch maintainers monitors CI results by http://rubyci.org/
If you output certain index and LTSV files,

The crawler of results is implemented at https://github.com/ruby/rubyci/blob/master/app/models/report.rb#L181
LTSV format is http://ltsv.org/

Supported CRuby CI runner are:

If you support those files, I'll add your site to rubyci.org.

Updated by MSP-Greg (Greg L) almost 2 years ago

naruse (Yui NARUSE) wrote:

Thank you for providing CI for mingw.
...
I'll add your site to rubyci.org.

Thank you, and thank you for the offer. At present, given what time I have for OSS, my priorities are:

  1. Encourage more extension gems to test with MinGW builds based on the RubyInstaller2 runtime.
  2. Cleanup alot of misc files and push the build system I'm using (ruby-loco), so others can try using it for building. Currently, with a local repo, I've built versions of 2.3, 2.4, and trunk. It reads the version, selects patches, runs tests as needed, etc. 7z logs are at BinTray link listed in first message. I haven't done many 32 bit builds, and I need to build/test/check more of those.
  3. Write code so results can be used on RubyCI.org.

Since full testing of both mswin and MinGW is relatively new, and I'm still having intermittent failures, I'll continue to post here or to GitHub when I notice problems.

Thanks again, and thanks for all your work.

As an aside, some people have stated that they wouldn't use a trunk build that didn't have a 'traceable' cloud build. I find that odd, as the RubyInstaller builds (any Appveyor Ruby <= 2.3) appear to be built locally, and the 'knapsack' packages used are certainly built locally...

I'm fine with you closing this whenever you'd like.

Updated by duerst (Martin Dürst) almost 2 years ago

  • Status changed from Open to Closed

MSP-Greg (Greg L) wrote:

I'm fine with you closing this whenever you'd like.

Done.

Also available in: Atom PDF