Skip to content

Commit a66d823

Browse files
committed
CI: Fix launchable timeout
`setup_launchable` needs to run the current shell, not in a subshell.
1 parent 583ce06 commit a66d823

1 file changed

Lines changed: 8 additions & 9 deletions

File tree

.github/actions/compilers/entrypoint.sh

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,6 @@ setup_launchable() {
8585
export LAUNCHABLE_SESSION_DIR=${builddir}
8686
local github_ref="${GITHUB_REF//\//_}"
8787
local build_name="${github_ref}"_"${GITHUB_PR_HEAD_SHA}"
88-
btests+=--launchable-test-reports="${btest_report_path}"
8988
launchable record build --name "${build_name}" || true
9089
launchable record session \
9190
--build "${build_name}" \
@@ -98,9 +97,8 @@ setup_launchable() {
9897
--flavor cppflags="${INPUT_CPPFLAGS}" \
9998
--test-suite btest \
10099
> "${builddir}"/${btest_session_file} \
101-
|| true
100+
&& btests+=--launchable-test-reports="${btest_report_path}" || :
102101
if [ "$INPUT_CHECK" = "true" ]; then
103-
tests+=--launchable-test-reports="${test_report_path}"
104102
launchable record session \
105103
--build "${build_name}" \
106104
--flavor test_task=test-all \
@@ -112,9 +110,8 @@ setup_launchable() {
112110
--flavor cppflags="${INPUT_CPPFLAGS}" \
113111
--test-suite test-all \
114112
> "${builddir}"/${test_all_session_file} \
115-
|| true
113+
&& tests+=--launchable-test-reports="${test_report_path}" || :
116114
mkdir "${builddir}"/"${test_spec_report_path}"
117-
spec_opts+=--launchable-test-reports="${test_spec_report_path}"
118115
launchable record session \
119116
--build "${build_name}" \
120117
--flavor test_task=test-spec \
@@ -126,7 +123,7 @@ setup_launchable() {
126123
--flavor cppflags="${INPUT_CPPFLAGS}" \
127124
--test-suite test-spec \
128125
> "${builddir}"/${test_spec_session_file} \
129-
|| true
126+
spec_opts+=--launchable-test-reports="${test_spec_report_path}" || :
130127
fi
131128
}
132129
launchable_record_test() {
@@ -145,11 +142,13 @@ if [ "$LAUNCHABLE_ENABLED" = "true" ]; then
145142
test_all_session_file='launchable_test_all_session.txt'
146143
btest_session_file='launchable_btest_session.txt'
147144
test_spec_session_file='launchable_test_spec_session.txt'
148-
setup_launchable & setup_pid=$!
149-
(sleep 180; echo "setup_launchable timed out; killing"; kill "$setup_pid" 2> /dev/null) & sleep_pid=$!
145+
setup_pid=$$
146+
(sleep 180; echo "setup_launchable timed out; killing"; kill -INT "$setup_pid" 2> /dev/null) & sleep_pid=$!
150147
launchable_failed=false
151-
wait -f "$setup_pid" || launchable_failed=true
148+
trap "launchable_failed=true" INT
149+
setup_launchable
152150
kill "$sleep_pid" 2> /dev/null
151+
trap - INT
153152
echo "::endgroup::"
154153
$launchable_failed || trap launchable_record_test EXIT
155154
fi

0 commit comments

Comments
 (0)