Message ID | b318e317dab97a658b90669a49edc79247716c87.1728231109.git.~@wolfsden.cz |
---|---|
State | New |
Headers |
Return-Path: <guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org> X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id EC7CA27BBE9; Sun, 6 Oct 2024 17:13:27 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.8 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_ADSP_ALL,DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_VALIDITY_CERTIFIED, RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id E68AC27BBE2 for <patchwork@mira.cbaines.net>; Sun, 6 Oct 2024 17:13:25 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <guix-patches-bounces@gnu.org>) id 1sxTsQ-0002LG-RN; Sun, 06 Oct 2024 12:12:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <Debian-debbugs@debbugs.gnu.org>) id 1sxTsO-0002L5-V7 for guix-patches@gnu.org; Sun, 06 Oct 2024 12:12:56 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <Debian-debbugs@debbugs.gnu.org>) id 1sxTsO-0004j7-NI for guix-patches@gnu.org; Sun, 06 Oct 2024 12:12:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:Date:From:To:Subject; bh=2Ois6kUN7m8h8wLmgMX0he6Bg0LO/PDpXPyawLFSZQk=; b=lre/odM6BBiH+Q/ciODA0k0FqCQXsEmbA4bdTD2CHxiE094P4kATNgqxeawgBsq+fVi1cJV/pXNCAY4Nbsh5QpFskwdH8xW3LnZcBpOV0yzX0Grn676qdUUKpmu8wI1TBcd20lA9xkxNAPCTIgQBDQNbGMteZsU9yLZo89ZW72fF/LbzZEjZZghnqv9E/xSVPob6n7G2eMk4d2hGBM2QQwgkLlIGEcImKaY7esPLPGZP+w+1H2JI61lL9l8K3a03OObpXLipAYsiOpE9hX4peV9cFi5jlcC7ktsYXv7VcjfUTlhjvWbImvHmrG+tLpal2p8BZMV10Uw01U/qDybiVQ==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from <Debian-debbugs@debbugs.gnu.org>) id 1sxTsU-0001ul-Mb for guix-patches@gnu.org; Sun, 06 Oct 2024 12:13:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#73664] [PATCH] gnu: libtorrent-rasterbar: Work around hang in test_ssl. Resent-From: Tomas Volf <~@wolfsden.cz> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces@debbugs.gnu.org> Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 06 Oct 2024 16:13:02 +0000 Resent-Message-ID: <handler.73664.B.17282311307241@debbugs.gnu.org> Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 73664 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 73664@debbugs.gnu.org Cc: Tomas Volf <~@wolfsden.cz> X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.17282311307241 (code B ref -1); Sun, 06 Oct 2024 16:13:02 +0000 Received: (at submit) by debbugs.gnu.org; 6 Oct 2024 16:12:10 +0000 Received: from localhost ([127.0.0.1]:42061 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces@debbugs.gnu.org>) id 1sxTre-0001sj-4g for submit@debbugs.gnu.org; Sun, 06 Oct 2024 12:12:10 -0400 Received: from lists.gnu.org ([209.51.188.17]:47272) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <~@wolfsden.cz>) id 1sxTrb-0001sa-UI for submit@debbugs.gnu.org; Sun, 06 Oct 2024 12:12:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <~@wolfsden.cz>) id 1sxTrU-0002Cu-Cz for guix-patches@gnu.org; Sun, 06 Oct 2024 12:12:00 -0400 Received: from wolfsden.cz ([37.205.8.62]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <~@wolfsden.cz>) id 1sxTrR-0004gC-Or for guix-patches@gnu.org; Sun, 06 Oct 2024 12:11:59 -0400 Received: by wolfsden.cz (Postfix, from userid 104) id 5BF28320AF9; Sun, 6 Oct 2024 16:11:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=wolfsden.cz; s=mail; t=1728231113; bh=VVbAdH2zXS/30KAAJ75B5y+I4+i6r7Mke5rwHWxbtkI=; h=From:To:Cc:Subject:Date; b=aWQIPv5TJUCSE1LDq1/E5Q9ImsoIVA/yq5Ea3A6wM1o3wUM1MK+2rLUjMaLFVxUY3 ql4AAdUPTVx2mlM3JdJnG9M2Z/R51JtaWt+YFacFNG8V//DjSXj9IE4Yx1BGBLd/DX Nv+LLrnWQR70JiVstgUAMaM8GV49wF7NbxEIw3Gf4/T5W4qzNSxRQ3IcvgzhNISwpj xAIUM9Q1GCEw5O19DhgVrkTy/hIXRFJF59Fgh6HGCzCYtwgYBCRUL03jJ+5NKGEIxP Zf+Y++0mqmrMaOqHNM9F15RCCYeT99tIzOWiYdCMlYgne/GM1ySjnHjAT17EsH4o/5 IZkIJUJyVHIvLlcImVv3r7urwHcavcWaIz099kYe7XZlpyZcabonh+CvTEnhiTM6NB hW64hcQM/p3WWX/OKikg4EtZJU5VmRnQPbe/7KCn14V1Su6m/mJKoMZK44GZxWUDLF JPlOPvZXYb4Mmqg8IsHqpRTlSkiRbRoHCgYPpBhtvQmjdl6m/2dzrzIjh5SFF8G2dc XqApU9z/I8jyYJA0QJWFTYG4hns0aryOOY1zSHz5cfoxMMGPFjKQOdKrW8jo6ijD7K goB36V/I9fc75I8UyvBzJV9zTL+1sCYlJJQbjjfA5Bclg2lDlgWQ5FzqrXdRVfggVr PTKxkZFWTabhKnyUc50QGCpQ= Received: from localhost (unknown [146.70.134.132]) by wolfsden.cz (Postfix) with ESMTPSA id E1A6C31EAAE; Sun, 6 Oct 2024 16:11:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=wolfsden.cz; s=mail; t=1728231113; bh=VVbAdH2zXS/30KAAJ75B5y+I4+i6r7Mke5rwHWxbtkI=; h=From:To:Cc:Subject:Date; b=aWQIPv5TJUCSE1LDq1/E5Q9ImsoIVA/yq5Ea3A6wM1o3wUM1MK+2rLUjMaLFVxUY3 ql4AAdUPTVx2mlM3JdJnG9M2Z/R51JtaWt+YFacFNG8V//DjSXj9IE4Yx1BGBLd/DX Nv+LLrnWQR70JiVstgUAMaM8GV49wF7NbxEIw3Gf4/T5W4qzNSxRQ3IcvgzhNISwpj xAIUM9Q1GCEw5O19DhgVrkTy/hIXRFJF59Fgh6HGCzCYtwgYBCRUL03jJ+5NKGEIxP Zf+Y++0mqmrMaOqHNM9F15RCCYeT99tIzOWiYdCMlYgne/GM1ySjnHjAT17EsH4o/5 IZkIJUJyVHIvLlcImVv3r7urwHcavcWaIz099kYe7XZlpyZcabonh+CvTEnhiTM6NB hW64hcQM/p3WWX/OKikg4EtZJU5VmRnQPbe/7KCn14V1Su6m/mJKoMZK44GZxWUDLF JPlOPvZXYb4Mmqg8IsHqpRTlSkiRbRoHCgYPpBhtvQmjdl6m/2dzrzIjh5SFF8G2dc XqApU9z/I8jyYJA0QJWFTYG4hns0aryOOY1zSHz5cfoxMMGPFjKQOdKrW8jo6ijD7K goB36V/I9fc75I8UyvBzJV9zTL+1sCYlJJQbjjfA5Bclg2lDlgWQ5FzqrXdRVfggVr PTKxkZFWTabhKnyUc50QGCpQ= From: Tomas Volf <~@wolfsden.cz> Date: Sun, 6 Oct 2024 18:11:49 +0200 Message-ID: <b318e317dab97a658b90669a49edc79247716c87.1728231109.git.~@wolfsden.cz> X-Mailer: git-send-email 2.46.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=37.205.8.62; envelope-from=~@wolfsden.cz; helo=wolfsden.cz X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: <guix-patches.gnu.org> List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-patches>, <mailto:guix-patches-request@gnu.org?subject=unsubscribe> List-Archive: <https://lists.gnu.org/archive/html/guix-patches> List-Post: <mailto:guix-patches@gnu.org> List-Help: <mailto:guix-patches-request@gnu.org?subject=help> List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-patches>, <mailto:guix-patches-request@gnu.org?subject=subscribe> Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches |
Series |
[bug#73664] gnu: libtorrent-rasterbar: Work around hang in test_ssl.
|
|
Commit Message
Tomas Volf
Oct. 6, 2024, 4:11 p.m. UTC
test_ssl does sometimes hang (at least when executed under faketime). It is somewhat unlikely to happen, and (on my machine) required a build with --rounds=32 to reproduce it. The workaround is to set somewhat lower timeout of 240s (expected test duration * 5 rounded up to whole minutes) and retry few times on failure. In this way, --rounds=64 finished successfully (on my machine). At the same time remove the timeout from the other tests, since it is not necessary (they do not hang), and one of them runs for ~270s (almost half the original timeout), so it could pose a problem on slow/overloaded machine. * gnu/packages/bittorrent.scm (libtorrent-rasterbar)[arguments]<#:phases>['check]: Remote test timeout for most tests. Lower the timeout for test_ssl. Retry test_ssl on failure. Change-Id: I535c72fec24658a4b2151d2e8794319055c9a278 --- gnu/packages/bittorrent.scm | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-)
Comments
Hi Tomas, Tomas Volf <~@wolfsden.cz> writes: > test_ssl does sometimes hang (at least when executed under faketime). It is > somewhat unlikely to happen, and (on my machine) required a build with > --rounds=32 to reproduce it. It'd be nice if upstream was made aware of this problem. Perhaps they could come up with a fix for good. > The workaround is to set somewhat lower timeout of 240s (expected test > duration * 5 rounded up to whole minutes) and retry few times on failure. In > this way, --rounds=64 finished successfully (on my machine). > > At the same time remove the timeout from the other tests, since it is not > necessary (they do not hang), and one of them runs for ~270s (almost half the > original timeout), so it could pose a problem on slow/overloaded machine. This means the tests may take up to 20 minutes, which is a bit too much to my taste. [...] > - ;; Note: The test_ssl test times out in the ci. > - ;; Temporarily disable it until that is resolved. > - ;; (invoke "faketime" "2022-10-24" > - ;; "ctest" > - ;; "-R" "^test_ssl$" > - ;; "-j" jobs > - ;; "--timeout" timeout > - ;; "--output-on-failure") > - ))))))) > + (invoke "faketime" "2022-10-24" > + "ctest" > + "-R" "^test_ssl$" > + "-j" jobs > + ;; test_ssl sometimes hangs (at least when run under > + ;; faketime), therefore set a time limit and retry > + ;; few times on failure. > + "--timeout" "240" > + "--repeat" "until-pass:5" > + "--output-on-failure")))))))) I think that a test sometimes hang is a good reason to leave it disabled, report it to upstream, and reference the issue. The test can be re-enabled when the issue is resolved and part of a new release. So in concrete terms, what I'd rather see here is a report of the problems (requirement on faketime + propension to hang) to upstream, the and an updated comment cross-referencing it (with the test kept commented-out/disabled in the mean time). Does that make sense?
Hello! Tomas Volf <~@wolfsden.cz> writes: > test_ssl does sometimes hang (at least when executed under faketime). It is > somewhat unlikely to happen, and (on my machine) required a build with > --rounds=32 to reproduce it. Also worth adding on top of my previous reply, when trying this out, I got a failure: --8<---------------cut here---------------start------------->8--- [...] MALICIOUS PEER TEST: valid-certificate valid-SNI-hash invalid-bittorrent-hash port: 35161 set_password_callback use_certificate_file "../ssl/peer_certificate.pem" use_private_key_file "../ssl/peer_private_key.pem" use_tmp_dh_file "../ssl/dhparams.pem" connecting 127.0.0.1:35161 SNI: e300afcc0aa67a459ec14862a4d0bf930060167a SSL handshake bittorrent handshake 00:00:00.010: ses1: [log] *** peer SSL handshake done [ ip: 127.0.0.1:44976 ec: certificate verify failed (SSL routines) socket: SSL/TCP ] read bittorrent handshake 00:00:00.010: ses1: [peer_error] - peer [ 127.0.0.1:44976 client: Unknown ] peer error [ssl_handshake] [asio.ssl]: certificate verify failed (SSL routines) --- peer_errors: 6 ssl_disconnects: 6 failed to read bittorrent handshake: sslv3 alert bad certificate (SSL routines) 0% tests passed, 1 tests failed out of 1 Total Test time (real) = 405.71 sec The following tests FAILED: 75 - test_ssl (Failed) Errors while running CTest error: in phase 'check': uncaught exception: %exception #<&invoke-error program: "faketime" arguments: ("2022-10-24" "ctest" "-R" "^test_ssl$" "-j" "1" "--timeout" "240" "--repeat" "until-pass:5" "--output-on-failure") exit-status: 8 term-signal: #f stop-signal: #f> phase `check' failed after 1154.0 seconds command "faketime" "2022-10-24" "ctest" "-R" "^test_ssl$" "-j" "1" "--timeout" "240" "--repeat" "until-pass:5" "--output-on-failure" failed with status 8 build process 18 exited with status 256 builder for `/gnu/store/hkji5nzsa32jngg7kii9bg9ch9kdvs84-libtorrent-rasterbar-2.0.10.drv' failed with exit code 1 build of /gnu/store/hkji5nzsa32jngg7kii9bg9ch9kdvs84-libtorrent-rasterbar-2.0.10.drv failed View build log at '/var/log/guix/drvs/hk/ji5nzsa32jngg7kii9bg9ch9kdvs84-libtorrent-rasterbar-2.0.10.drv'. --8<---------------cut here---------------end--------------->8---
Hi Maxim, thank you very much for the review and apologies for the late response, I have kept postponing it. Maxim Cournoyer <maxim.cournoyer@gmail.com> writes: > Hi Tomas, > > Tomas Volf <~@wolfsden.cz> writes: > >> test_ssl does sometimes hang (at least when executed under faketime). It is >> somewhat unlikely to happen, and (on my machine) required a build with >> --rounds=32 to reproduce it. > > It'd be nice if upstream was made aware of this problem. Perhaps they > could come up with a fix for good. My experience with reporting bugs to this specific upstream is not the best, and I admit I expect the answer to "it hangs under faketime" would be "do not run it under faketime". > >> The workaround is to set somewhat lower timeout of 240s (expected test >> duration * 5 rounded up to whole minutes) and retry few times on failure. In >> this way, --rounds=64 finished successfully (on my machine). >> >> At the same time remove the timeout from the other tests, since it is not >> necessary (they do not hang), and one of them runs for ~270s (almost half the >> original timeout), so it could pose a problem on slow/overloaded machine. > > This means the tests may take up to 20 minutes, which is a bit too much > to my taste. During validation of the v2, the run-time of the check phase is: --8<---------------cut here---------------start------------->8--- phase `check' succeeded after 811.0 seconds --8<---------------cut here---------------end--------------->8--- That seems fine? We have software already that takes similar time (or even longer) to build. > > [...] > >> - ;; Note: The test_ssl test times out in the ci. >> - ;; Temporarily disable it until that is resolved. >> - ;; (invoke "faketime" "2022-10-24" >> - ;; "ctest" >> - ;; "-R" "^test_ssl$" >> - ;; "-j" jobs >> - ;; "--timeout" timeout >> - ;; "--output-on-failure") >> - ))))))) >> + (invoke "faketime" "2022-10-24" >> + "ctest" >> + "-R" "^test_ssl$" >> + "-j" jobs >> + ;; test_ssl sometimes hangs (at least when run under >> + ;; faketime), therefore set a time limit and retry >> + ;; few times on failure. >> + "--timeout" "240" >> + "--repeat" "until-pass:5" >> + "--output-on-failure")))))))) > > I think that a test sometimes hang is a good reason to leave it > disabled, report it to upstream, and reference the issue. The test can > be re-enabled when the issue is resolved and part of a new release. > > So in concrete terms, what I'd rather see here is a report of the > problems (requirement on faketime + propension to hang) to upstream, the > and an updated comment cross-referencing it (with the test kept > commented-out/disabled in the mean time). > > Does that make sense? As mentioned above, I do not expect upstream to care about this specific issue (faketime). However what I was successful in was convincing upstream to vastly increase the lifetime of the bundled SSL certificates used for testing. That means that the new version (2.0.11) will run the tests fine until ~end of the year 2297. Honestly I consider that to be an acceptable deadline to find a better long term solution (for example we could explore the use of time namespace for build environment). So I have submitted v2 which updates to the new version and removes all special casing for test_ssl, since it should not be required for more than quarter of a millennium. I hope this approach is acceptable. Have a nice day, Tomas
Hi Tomas, Tomas Volf <~@wolfsden.cz> writes: > Hi Maxim, > > thank you very much for the review and apologies for the late response, > I have kept postponing it. > > Maxim Cournoyer <maxim.cournoyer@gmail.com> writes: > >> Hi Tomas, >> >> Tomas Volf <~@wolfsden.cz> writes: >> >>> test_ssl does sometimes hang (at least when executed under faketime). It is >>> somewhat unlikely to happen, and (on my machine) required a build with >>> --rounds=32 to reproduce it. >> >> It'd be nice if upstream was made aware of this problem. Perhaps they >> could come up with a fix for good. > > My experience with reporting bugs to this specific upstream is not the > best, and I admit I expect the answer to "it hangs under faketime" would > be "do not run it under faketime". Some upstream takes patience to work with, but I still think it's useful to put out a report of this problem, would it only be for other downstreams trying to find a solution. In this case, I'd tell them the goal is to have the tests work reliably in time, even in 2 or 5 years, and this is not possible currently because of expiry on the certs they use in the test suite (right?). Possible options: 1. Remove expiry on certs used. 2. Use faketime, as attempted here; if this is chosen we need to figure out why it hangs. Obviously 1 is the easier/better option (if it's possible). >> >>> The workaround is to set somewhat lower timeout of 240s (expected test >>> duration * 5 rounded up to whole minutes) and retry few times on failure. In >>> this way, --rounds=64 finished successfully (on my machine). >>> >>> At the same time remove the timeout from the other tests, since it is not >>> necessary (they do not hang), and one of them runs for ~270s (almost half the >>> original timeout), so it could pose a problem on slow/overloaded machine. >> >> This means the tests may take up to 20 minutes, which is a bit too much >> to my taste. > > During validation of the v2, the run-time of the check phase is: > > phase `check' succeeded after 811.0 seconds > > That seems fine? We have software already that takes similar time (or > even longer) to build. That's still too long to my taste, but if it succeeds reliably at least, then so be it. >> I think that a test sometimes hang is a good reason to leave it >> disabled, report it to upstream, and reference the issue. The test can >> be re-enabled when the issue is resolved and part of a new release. >> >> So in concrete terms, what I'd rather see here is a report of the >> problems (requirement on faketime + propension to hang) to upstream, the >> and an updated comment cross-referencing it (with the test kept >> commented-out/disabled in the mean time). >> >> Does that make sense? > > As mentioned above, I do not expect upstream to care about this specific > issue (faketime). However what I was successful in was convincing > upstream to vastly increase the lifetime of the bundled SSL certificates > used for testing. That means that the new version (2.0.11) will run the > tests fine until ~end of the year 2297. Honestly I consider that to be > an acceptable deadline to find a better long term solution (for example > we could explore the use of time namespace for build environment). That's good! That's practically the #1 option I hinted at earlier (didn't know they already did that). > So I have submitted v2 which updates to the new version and removes all > special casing for test_ssl, since it should not be required for more > than quarter of a millennium. > > I hope this approach is acceptable. Great! Thanks for engaging with upstream and sending a v2. I'll apply it shortly if everything looks good.
Hi Tomas, Finally pushed. Thanks for the good work!
diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index 2b38c7cb65..1a0735d928 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -452,7 +452,6 @@ (define-public libtorrent-rasterbar (exclude-regex (string-append "^(" (string-join disabled-tests "|") ")$")) - (timeout "600") (jobs (if parallel-tests? (number->string (parallel-job-count)) "1"))) @@ -460,7 +459,6 @@ (define-public libtorrent-rasterbar (invoke "ctest" "-E" exclude-regex "-j" jobs - "--timeout" timeout "--output-on-failure") ;; test_ssl relies on bundled TLS certificates with a fixed ;; expiry date. To ensure succesful builds in the future, @@ -470,16 +468,16 @@ (define-public libtorrent-rasterbar ;; test_fast_extension, test_privacy and test_resolve_links ;; to hang, even with FAKETIME_ONLY_CMDS. Not sure why. So ;; execute only test_ssl under faketime. - ;; - ;; Note: The test_ssl test times out in the ci. - ;; Temporarily disable it until that is resolved. - ;; (invoke "faketime" "2022-10-24" - ;; "ctest" - ;; "-R" "^test_ssl$" - ;; "-j" jobs - ;; "--timeout" timeout - ;; "--output-on-failure") - ))))))) + (invoke "faketime" "2022-10-24" + "ctest" + "-R" "^test_ssl$" + "-j" jobs + ;; test_ssl sometimes hangs (at least when run under + ;; faketime), therefore set a time limit and retry + ;; few times on failure. + "--timeout" "240" + "--repeat" "until-pass:5" + "--output-on-failure")))))))) (inputs (list boost openssl)) (native-inputs (list libfaketime