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

tests: Set Up GitHub Action Workflow for CI Testing with ZFS #44

Open
raamsri opened this issue Jan 8, 2025 · 0 comments
Open

tests: Set Up GitHub Action Workflow for CI Testing with ZFS #44

raamsri opened this issue Jan 8, 2025 · 0 comments
Labels
test Drop anything but this!

Comments

@raamsri
Copy link
Contributor

raamsri commented Jan 8, 2025

Issue

Objective

Integrate ZFS testing into CI workflows using GitHub Actions. Leverage OpenZFS’s GitHub Action workflows as a reference to run ZFS tests for StrataSTOR.


Assumptions

  1. GitHub Actions runners will use environments that support ZFS (e.g., Ubuntu-based).
  2. Tests will validate the functionality of ZFS components related to StrataSTOR.

Tasks

1. Workflow Development

  • Create a .github/workflows/zfs-ci.yml file based on OpenZFS’s GitHub Action workflow.
  • Configure the workflow to:
    • Set up an environment with ZFS dependencies (e.g., kernel modules, libraries).
    • Clone the StrataSTOR repository.
    • Run Go tests for ZFS:
      cd rodent/pkg/zfs/dataset/ && sudo go test -v -run TestDatasetOperations

2. Validation

  • Ensure the workflow passes successfully when run on supported GitHub runners.
  • Include debug logs for failed test cases.

3. Documentation

  • Document the purpose and usage of the workflow in the repository’s README or a dedicated CI section.
  • Provide guidance on troubleshooting common issues (e.g., missing kernel modules, unsupported environments).

Deliverables

  1. A .github/workflows/zfs-ci.yml file configured for running ZFS tests.
  2. Documentation on integrating and troubleshooting the CI workflow.

Additional Considerations

  • Explore caching mechanisms in GitHub Actions to speed up repetitive setups.
  • Monitor and maintain the workflow for compatibility with future ZFS versions.

Since the tests don't mock ZFS commands but actually execute the commands, a ZFS test bed is necessary for Code > Coverage to work.

This needs work.
Originally posted by @raamsri in #43 (comment)

@raamsri raamsri added the test Drop anything but this! label Jan 8, 2025
@raamsri raamsri changed the title tests: Virtual ZFS environment for running tests tests: Set Up GitHub Action Workflow for CI Testing with ZFS Jan 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
test Drop anything but this!
Projects
None yet
Development

No branches or pull requests

1 participant