Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh: Fix windows and kernel tests for gh actions #7525

Merged
merged 5 commits into from
Aug 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/dockerfiles/Dockerfile.clang
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ ENV MAKEFLAGS=$MAKEFLAGS \
ERL_TOP=/buildroot/otp \
PATH=/otp/bin:/buildroot/otp/bin:$PATH

RUN sudo apt-get install -y clang
RUN sudo apt-get update && sudo apt-get install -y clang

ARG ARCHIVE=./otp.tar.gz
COPY $ARCHIVE /buildroot/otp.tar.gz
Expand Down
15 changes: 14 additions & 1 deletion .github/workflows/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,12 @@ jobs:
export ERTS_SKIP_DEPEND=true
eval `./otp_build env_win32 x64`
./otp_build configure
if cat erts/CONF_INFO || cat lib/*/CONF_INFO || cat lib/*/SKIP || cat lib/SKIP-APPLICATIONS; then exit 1; fi
if cat erts/CONF_INFO ||
grep -v "Static linking with OpenSSL 3.0" lib/*/CONF_INFO ||
cat lib/*/SKIP ||
cat lib/SKIP-APPLICATIONS; then
exit 1
fi
./otp_build boot -a
./otp_build release -a
cp /mnt/c/opt/local64/pgm/wxWidgets-${{ env.WXWIDGETS_VERSION }}/3rdparty/webview2/runtimes/win-x64/native/WebView2Loader.dll $ERL_TOP/release/win32/erts-*/bin/
Expand Down Expand Up @@ -384,6 +389,14 @@ jobs:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Cleanup GH Runner
run: |
## Delete large files from runner to get more disk space
## See https://github.com/actions/runner-images/issues/2840
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf "/usr/local/share/boost"
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
- name: Cache BASE image
uses: actions/cache@v3
if: matrix.type == 'clang'
Expand Down
2 changes: 1 addition & 1 deletion lib/kernel/test/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,7 @@ release_tests_spec: make_emakefile
$(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)"
$(INSTALL_DATA) $(APP_FILES) $(EXTRA_FILES) "$(RELSYSDIR)"
$(INSTALL_DATA) \
kernel.spec kernel_smoke.spec kernel_bench.spec logger.spec \
kernel.spec kernel_smoke.spec kernel_bench.spec kernel_gh.spec logger.spec \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this a list determining test execution scope?
is there unnecessary overlap between kernel.spec and kernel_gh.spec?
same question. for stdlib below.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is a list of all files to be copied when releasing tests. There is an overlap between kernel.spec and kernel_gh.spec because it is not possible to include specs into each other (as far as I know).

$APP.spec is what is normally run, while in GH actions we run $APP_gh.spec if it exists.

$(EMAKEFILE) $(COVERFILE) "$(RELSYSDIR)"
chmod -R u+w "$(RELSYSDIR)"
@tar cf - *_SUITE_data | (cd "$(RELSYSDIR)"; tar xf -)
Expand Down
4 changes: 4 additions & 0 deletions lib/kernel/test/kernel_gh.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{suites,"../kernel_test", all}.
{skip_suites,"../kernel_test",[logger_stress_SUITE],"Benchmarks only"}.
{skip_cases, "../kernel_test", global_SUITE,
[many_nodes, lost_connection2, simple_resolve2],"Broken in docker"}.
2 changes: 1 addition & 1 deletion lib/stdlib/test/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ release_spec: opt

release_tests_spec: make_emakefile
$(INSTALL_DIR) "$(RELSYSDIR)"
$(INSTALL_DATA) stdlib.spec stdlib_bench.spec error_info.spec $(EMAKEFILE) \
$(INSTALL_DATA) stdlib.spec stdlib_bench.spec stdlib_gh.spec error_info.spec $(EMAKEFILE) \
$(ERL_FILES) $(COVERFILE) $(EXTRA_FILES) "$(RELSYSDIR)"
chmod -R u+w "$(RELSYSDIR)"
@tar cf - *_SUITE_data property_test | (cd "$(RELSYSDIR)"; tar xf -)
Expand Down
9 changes: 9 additions & 0 deletions lib/stdlib/test/stdlib_gh.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{suites,"../stdlib_test",all}.
{skip_groups,"../stdlib_test",stdlib_bench_SUITE,
[binary,base64,gen_server,gen_statem,unicode],
"Benchmark only"}.
{skip_groups,"../stdlib_test",ets_SUITE,
[benchmark],
"Benchmark only"}.
{skip_cases, "../stdlib_test", gen_server_SUITE,
[multicall_remote_old1],"Broken in docker"}.