24 Commits

Author SHA1 Message Date
Naoto Ono
efc686697e
Launchable: Temporarily remove Launchable integration from Compilatio… (#13759)
Launchable: Temporarily remove Launchable integration from Compilations workflow

Currently, Launchable is unstable, which occationally causes workflow issues. Until this problem is fixed, we'll temporary disable Launchable in the Compilations workflow.
2025-07-02 21:12:48 +09:00
Nobuyoshi Nakada
1b018d96d0
CI: Extract launchable_record_session function 2025-06-19 21:17:56 +09:00
Nobuyoshi Nakada
87d33583af
CI: Store session info in variables directly 2025-06-19 21:17:55 +09:00
Nobuyoshi Nakada
c59f66b61a
CI: Fix spec_opts 2025-06-16 14:33:57 +09:00
Naoto Ono
311aa0dfa7
Launchable: Terminate Launchable CLI process quickly by sending singa… (#13622)
Launchable: Terminate Launchable CLI process quickly by sending singals to a process group

Sometimes, the timeout errors occurred in Compilations workflow, this is because Launchable CLI process was not terminated correctly. To address this issue, we'll send signals to a process group.

https://github.com/ruby/ruby/actions/runs/15614867686
https://github.com/ruby/ruby/actions/runs/15662906947

Co-authored-by: Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
2025-06-16 14:18:57 +09:00
Nobuyoshi Nakada
a66d823c15
CI: Fix launchable timeout
`setup_launchable` needs to run the current shell, not in a subshell.
2025-06-13 19:48:44 +09:00
Nobuyoshi Nakada
180214287e CI: Continue without record if Launchable setup failed 2025-06-06 14:03:32 +09:00
Nobuyoshi Nakada
86eb5f9c05
CI: Trap launchable_record_test in the parent process 2025-06-06 08:52:02 +09:00
Nobuyoshi Nakada
5da3dc88d6
CI: Timeout launchable setup in 3min 2025-06-06 08:00:51 +09:00
Naoto Ono
a4dc778a5e
Launchable: Set env variables to prevent CI slowdowns (#13513)
When Launchable in unstable, the round trip time takes a long time, which slows down CI execution. In this PR I configured the environment variable `LAUNCHABLE_COMMIT_TIMEOUT` to configure the timeout.

https://github.com/launchableinc/cli/pull/1015
2025-06-04 11:59:40 +00:00
Naoto Ono
c68088038f
Launchable: Disable request retries when a timeout exception occurs (#12877)
When a Launchable server is unstable, a ReadTimeoutException occurs in the Launchable CLI. In such case, the Launchable CLI retries requests, which slows down CI execution. In this PR, I configured the environment variable SKIP_TIMEOUT_RETRY to disable retry attempts on requests(Link: https://github.com/launchableinc/cli/pull/992).

```
WARNING:urllib3.connectionpool:Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='api.mercury.launchableinc.com', port=443): Read timed out. (read timeout=15)")': /intake/organizations/ruby/workspaces/ruby/commits/collect/options
  WARNING:urllib3.connectionpool:Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='api.mercury.launchableinc.com', port=443): Read timed out. (read timeout=15)")': /intake/organizations/ruby/workspaces/ruby/commits/collect/options
  WARNING:urllib3.connectionpool:Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='api.mercury.launchableinc.com', port=443): Read timed out. (read timeout=15)")': /intake/organizations/ruby/workspaces/ruby/commits/collect/options
  HTTPSConnectionPool(host='api.mercury.launchableinc.com', port=443): Max retries exceeded with url: /intake/organizations/ruby/workspaces/ruby/commits/collect/options (Caused by ReadTimeoutError("HTTPSConnectionPool(host='api.mercury.launchableinc.com', port=443): Read timed out. (read timeout=15)"))
  Exception in thread "main" javax.net.ssl.SSLException: Connection reset
  	at sun.security.ssl.Alert.createSSLException(Alert.java:127)
  	at sun.security.ssl.TransportContext.fatal(TransportContext.java:331)
  	at sun.security.ssl.TransportContext.fatal(TransportContext.java:274)
  	at sun.security.ssl.TransportContext.fatal(TransportContext.java:269)
  	at sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1572)
  	at sun.security.ssl.SSLSocketImpl.access$400(SSLSocketImpl.java:73)
  	at sun.security.ssl.SSLSocketImpl$AppInputStream.read(SSLSocketImpl.java:982)
  	at org.apache.http.impl.io.SessionInputBufferImpl.streamRead(SessionInputBufferImpl.java:137)
  	at org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer(SessionInputBufferImpl.java:153)
  	at org.apache.http.impl.io.SessionInputBufferImpl.readLine(SessionInputBufferImpl.java:280)
  	at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:138)
  	at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:56)
  	at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:259)
  	at org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection.java:163)
  	at org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader(CPoolProxy.java:157)
  	at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:273)
  	at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:125)
  	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:272)
  	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
  	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
  	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
  	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
  	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
  	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
  	at com.launchableinc.ingest.commits.CommitGraphCollector.transfer(CommitGraphCollector.java:131)
  	at com.launchableinc.ingest.commits.CommitIngester.run(CommitIngester.java:145)
  	at com.launchableinc.ingest.commits.CommitIngester.main(CommitIngester.java:72)
  	Suppressed: java.net.SocketException: Broken pipe (Write failed)
  		at java.net.SocketOutputStream.socketWrite0(Native Method)
  		at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111)
  		at java.net.SocketOutputStream.write(SocketOutputStream.java:155)
  		at sun.security.ssl.SSLSocketOutputRecord.encodeAlert(SSLSocketOutputRecord.java:81)
  		at sun.security.ssl.TransportContext.fatal(TransportContext.java:362)
  		... 25 more
  Caused by: java.net.SocketException: Connection reset
  	at java.net.SocketInputStream.read(SocketInputStream.java:210)
  	at java.net.SocketInputStream.read(SocketInputStream.java:141)
  	at sun.security.ssl.SSLSocketInputRecord.read(SSLSocketInputRecord.java:464)
  	at sun.security.ssl.SSLSocketInputRecord.bytesInCompletePacket(SSLSocketInputRecord.java:68)
  	at sun.security.ssl.SSLSocketImpl.readApplicationRecord(SSLSocketImpl.java:1350)
  	at sun.security.ssl.SSLSocketImpl.access$300(SSLSocketImpl.java:73)
  	at sun.security.ssl.SSLSocketImpl$AppInputStream.read(SSLSocketImpl.java:966)
  	... 20 more
  Couldn't get commit history from `/github/workspace/src`. Do you run command root of git-controlled directory? If not, please set a directory use by --source option.
  HTTPSConnectionPool(host='api.mercury.launchableinc.com', port=443): Read timed out. (read timeout=60)
  Command '['java', '-jar', '/root/.local/pipx/venvs/launchable/lib/python3.10/site-packages/launchable/jar/exe_deploy.jar', 'ingest:commit', '-endpoint', 
```

https://github.com/ruby/ruby/actions/runs/13572112090/job/37939529243
2025-03-12 02:34:03 +00:00
Naoto Ono
6ca8bc8562
Launchable: Fix broken links by passing GITHUB_SERVER_URL (#12704)
@peterzhu2118 mentioned that "View workflow run" button is broken in Launchable. It's because invalid URL is sent from compilers/actions.yaml. Launchable CLI builds URL based on the environment variables. In those variables, GITHUB_SERVER_URL is not set in this case.

Hence, I set GITHUB_SERVER_URL in compilers/actions.yaml in this PR.
2025-02-06 08:57:46 +09:00
Naoto Ono
e0591b666f
Launchable: Exit 0 not to stop CI pipeline (#12449) 2025-01-06 05:49:58 -05:00
Naoto Ono
a652d8b680
Launchable: Start recording test-spec in compilers.yaml (#12364) 2024-12-17 09:28:04 +00:00
Naoto Ono
1d3091b4db
Launchable: Refactor entrypoint.sh (#12314)
* Use `launchable record session` command to split test sessions based on test suites.
* Use BTESTS env instead of RUBY_TESTOPTS for passing CLI option to `make btest`.
* Group Launchable logs
* Add several flavors to identify the relationship between test session and GH workflow.
2024-12-13 07:13:40 +00:00
Naoto Ono
c73552e473
Revert "Launchable: Stop recording tests temporarily" (#12289)
Revert "Launchable: Stop recording tests temporarily (#12268)"

This reverts commit 866f1a1f2d6f0425b1535fb5697a30404e83e7c2.
2024-12-09 11:31:13 +09:00
Naoto Ono
866f1a1f2d
Launchable: Stop recording tests temporarily (#12268)
There is a system trouble in Launchable, so I'm going to stop recording tests temporarily in compilers.yaml
2024-12-05 17:58:46 +09:00
Naoto Ono
de50236c3a
Enable Launchable integration in compilers.yml (#12136) 2024-12-03 15:02:18 +09:00
Hiroshi SHIBATA
6fc8607b7a Skip make install with gmp build 2024-11-21 18:46:27 +09:00
Naoto Ono
c23bf42d79 Fix error "fatal: detected dubious ownership in repository at '/github/workspace/src'" 2024-11-21 16:59:14 +09:00
Peter Zhu
c6c1e111b1 Remove unused shared GC configuration in GitHub Actions
Shared GC CI is no longer running in the compilers workflow, so we can
remove it from .github/actions/compilers/entrypoint.sh.
2024-10-16 08:53:07 -04:00
Hiroshi SHIBATA
4822220e6b Pass MSPECOPT from compilers.yml 2024-10-01 17:35:38 +09:00
Hiroshi SHIBATA
e58c7a9330 Applied https://github.com/ruby/ruby/pull/11574 2024-09-27 14:39:59 +09:00
卜部昌平
52bb90f92d sequential execution of some CI tasks
reduced parallelism from some 50-ish to 10-ish so that other jobs
can run.
2024-09-27 14:39:59 +09:00