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

add fedora docker tests + move dockerfiles to a new dir #3778

Merged

Conversation

davemarchevsky
Copy link
Collaborator

Dockerfiles are cluttering up the main repo dir, so move them to a
newly-created 'docker' dir.

Add a fedora dockerfile and use it in bcc-test workflow.

@davemarchevsky davemarchevsky force-pushed the davemarchevsky_fedora_tests branch 2 times, most recently from 35afea3 to 3d143c4 Compare December 29, 2021 09:46
Dockerfiles are cluttering up the main repo dir, so move them to a
newly-created 'docker' dir.

Add a fedora dockerfile and use it in bcc-test workflow.
@davemarchevsky davemarchevsky force-pushed the davemarchevsky_fedora_tests branch from 3d143c4 to ddfedaa Compare December 29, 2021 10:05
@davemarchevsky davemarchevsky changed the title [WIP] add fedora docker tests + move dockerfiles to a new dir add fedora docker tests + move dockerfiles to a new dir Dec 29, 2021
@davemarchevsky
Copy link
Collaborator Author

I'm going to merge this, but for now will not add the fedora tests to the list of "Required" tests that block merge. There are some issues that should be addressed before the fedora tests can be considered at parity with the Ubuntu tests:

  • The "Run bcc build" step links against LLVM as a shared library (-DENABLE_LLVM_SHARED=ON), which Ubuntu tests don't do
  • Two lua tests kept failing (test_lua_uprobes, test_lua_standalone) for reasons I couldn't track down. The equivalent python uprobes test passes on Fedora, so it seems to be a Fedora-specific thing. Added a RUN_LUA_TESTS CMake option (and set -DRUN_LUA_TESTS=OFF in "Run bcc build" step) for now. Better to have the rest of the tests pass and run on future PRs. Will create an issue to fix this.

/cc @yonghong-song

@davemarchevsky davemarchevsky merged commit b82de2d into iovisor:master Dec 29, 2021
@davemarchevsky
Copy link
Collaborator Author

I think the bullet point about failing lua tests was incorrect. On Ubuntu, the bcc build step says:

Could NOT find LuaJIT (missing: LUAJIT_LIBRARIES LUAJIT_INCLUDE_DIR) 

While on Fedora:

-- Found LuaJIT: /usr/lib64/libluajit-5.1.so;/usr/lib64/libdl.so;/usr/lib64/libm.so  

If LuaJIT is not found, Lua tests will not be run (see tests/lua/CMakeLists.txt). So it's possible that the tests don't work on Ubuntu either. Will investigate.

@@ -94,6 +94,86 @@ jobs:
name: critical-tests-${{ matrix.env['TYPE'] }}-${{ matrix.os.version }}
path: tests/python/critical.log

test_bcc_fedora:
runs-on: ubuntu-20.04
Copy link
Collaborator

Choose a reason for hiding this comment

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

test_bcc_fedora and runs-on ubuntu-20.04? I do see we are using Dockerfile.fedora below. So ubuntu-20.04 is a copy-paste error?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

No, this is intentional. ubuntu-20.04 here describes the OS of the "GitHub actions runner" VM. List of supported runner OS's here doesn't include fedora.

The docker container is Fedora, though. So aside from the kernel still being ubuntu-20.04's, tests are running using userspace and toolchains of Fedora.

Copy link
Collaborator

Choose a reason for hiding this comment

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

for ubuntu run:

Could NOT find LuaJIT (missing: LUAJIT_LIBRARIES LUAJIT_INCLUDE_DIR)
luajit package may be missing in the system. Will need to figure how to get the package properly.

Copy link
Collaborator

Choose a reason for hiding this comment

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

No, this is intentional. ubuntu-20.04 here describes the OS of the "GitHub actions runner" VM. List of supported runner OS's here doesn't include fedora.

The docker container is Fedora, though. So aside from the kernel still being ubuntu-20.04's, tests are running using userspace and toolchains of Fedora.

Okay, utunbu vm and fedora docker container. Make sense. thanks for explanation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants