From: jaruga@... Date: 2018-10-12T16:51:49+00:00 Subject: [ruby-core:89390] [Ruby trunk Misc#15220] Adding OpenSSL 1.1.1 on Travis CI gcc-8 case Issue #15220 has been updated by jaruga (Jun Aruga). * As an another idea to run the heavy task such as installing openssl from source or running the docker. If we are running on Travis's cron mode too, we can run the heavy tasks for only cron running. .travis.yml ``` script: | if [ "${TRAVIS_EVENT_TYPE}" = "cron" ]; then a heavy task else a light task fi ``` ---------------------------------------- Misc #15220: Adding OpenSSL 1.1.1 on Travis CI gcc-8 case https://bugs.ruby-lang.org/issues/15220#change-74430 * Author: jaruga (Jun Aruga) * Status: Open * Priority: Normal * Assignee: ---------------------------------------- Currently Travis CI test cases are running on OpenSSL 1.0.1f as the default setting. I want to add the latest version OpenSSL 1.1.1 to the gcc-8 test case on Travis CI. I sent pull-request for that. https://github.com/ruby/ruby/pull/1980 ## Motivation The motivation is that ruby/openssl has very good CI environment covering the supported SSL collections. However the benefits to enable OpenSSL 1.1.1 for the main repository (ruby/ruby) are 1. To make us check the entire logic on the latest OpenSSL as early as possible. For example, I can find this kind of issue [1] as early as possible. 2. We can check it on ruby-2.5 branch too. That is related to #15219 [2] As we are working for OpenSSL 1.1.1 on Windows CI [3] and python project is testing on the custom OpenSSL built from the source code [4], I think that we can adapt it to Travis CI. ## Detail of implementation In the new process, the OpenSSL is built from source code. That takes 134.63 sec = 2 min 14 sec I could not find the better idea than that. I found the binary openssl package that someone is managing [5]. But it might not be valid for Trusty. And it seems that the repository is quite personal one. I am using `cache/directories` element [6]. I created `tool/install_openssl.sh` script. But some logic might be moved to `configure.ac` like [7]. How do you think? * [1] net/http, net/ftp: fix session resumption with TLS 1.3: https://github.com/ruby/ruby/commit/1dfc377 * [2] Ruby 2.5.X supporting OpenSSL 1.1.1 and TLS 1.3: https://bugs.ruby-lang.org/issues/15219 * [3] OpenSSL 1.1.1 soon available from MSYS2: https://bugs.ruby-lang.org/issues/15171 * [4] Python with custom OpenSSL: https://github.com/python/cpython/blob/master/.travis.yml#L15 * [5] Personal(?) openssl repository: https://launchpad.net/~xnox/+archive/ubuntu/openssl * [6] Travis cache: https://docs.travis-ci.com/user/caching/#arbitrary-directories * [7] deduce versioned tools from CC: https://github.com/ruby/ruby/commit/f677ba8 -- https://bugs.ruby-lang.org/ Unsubscribe: