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

Enable rust-vmm coverage test in CI #11

Merged
merged 1 commit into from
Feb 21, 2020
Merged

Enable rust-vmm coverage test in CI #11

merged 1 commit into from
Feb 21, 2020

Conversation

MrXinWang
Copy link
Contributor

Referencing discussion in kvm-ioctls/issue#9 and issue#10, proposing a draft PR for enabling coverage test on arm64.

I think we also need to rename the old coverage path file in each repository to avoid misunderstanding. What do you think @andreeaflorescu ?

Signed-off-by: Henry Wang <[email protected]>

@MrXinWang MrXinWang requested a review from sameo as a code owner December 4, 2019 05:39
Copy link
Member

@andreeaflorescu andreeaflorescu left a comment

Choose a reason for hiding this comment

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

Temporarily blocking this until we have the kcov patches merged upstream.

Related to the actual changes: the problem that I see is that some crates don't really have arm support. So even though you don't support arm, you would still need to have the coverage file for both platforms. I am wondering if we can configure this somehow per crate.

I can maybe look into this early next week because right now I am attending a conference and don't really have a lot of spare cycles.

@MrXinWang
Copy link
Contributor Author

MrXinWang commented Jan 17, 2020

Updated the commit to fix #6

I think I also need to update the new pipeline.yml to fully enable the coverage test (after kcov is under the new release and the docker image is updated)?

@andreeaflorescu
Copy link
Member

@MrXinWang I published a new version of rust-vmm-container (v5). I will check how your PR works with kvm-ioctls and I will dismiss my review so we can merge this one.

@MrXinWang
Copy link
Contributor Author

@andreeaflorescu Thanks very much for that. I remember from our last discussion we also need to upload the coverage.json file for aarch64 to seperate the x86_64 and arm64 coverage files.

Copy link
Member

@andreeaflorescu andreeaflorescu left a comment

Choose a reason for hiding this comment

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

We should also update the Buildkite pipeline to use rustvmm/dev:v5 because that is the version that contains the kcov fix on aarch64.

integration_tests/test_coverage.py Outdated Show resolved Hide resolved
@MrXinWang
Copy link
Contributor Author

@andreeaflorescu yes sure. I will upload a commit together with the coverage file thing after you are happy with every change in this PR :)

@andreeaflorescu
Copy link
Member

@andreeaflorescu yes sure. I will upload a commit together with the coverage file thing after you are happy with every change in this PR :)

To recap, to merge this we need to do the following:

  • create 2 example coverage files that should replace the current coverage_config.json.sample. This should be named coverage_config_x86_64.json.sample and coverage_config_aarch64.json.sample so that people can just remove the sample suffix and use them as an example.
  • Update the README.md to specify that we now have 2 coverage files, one per each platform. The section that needs to be updated is ## Getting Started with rust-vmm-ci, bullet 2.
  • update the Buildkite pipeline to use rust-vmm/dev:v5

I hope I am not missing anything. After these changes are address, we can merge the PR.

@MrXinWang
Copy link
Contributor Author

MrXinWang commented Feb 18, 2020

@andreeaflorescu Thanks for the recap. I think I have updated all of them, also changed the container version used in README.md from v3 to v5. Please review.

1. Enabled the aarch64 coverage test in `test_coverage` script.

2. Seperated the coverage json sample file to two sample files for
different machine achitectures.

3. Updated Buildkite pipeline container version.

4. Updated README for the description of coverage files and container
version.

Signed-off-by: Henry Wang <[email protected]>
@MrXinWang
Copy link
Contributor Author

@andreeaflorescu I am sorry but do we both missed the one of the most important thing: add another pipeline in Buildkite for arm coverage test...? I have updated the code, now it looks ok to me.

- label: "coverage-arm"
    commands:
      - pytest rust-vmm-ci/integration_tests/test_coverage.py
    retry:
      automatic: false
    agents:
      platform: arm.metal
      os: linux
    plugins:
      - docker#v3.0.1:
          privileged: true
          image: "rustvmm/dev:v5"
          always-pull: true

@andreeaflorescu
Copy link
Member

@MrXinWang hahaha yap, we totally missed that.

@MrXinWang MrXinWang requested a review from jiangliu February 21, 2020 02:00
@andreeaflorescu andreeaflorescu merged commit cd7096e into rust-vmm:master Feb 21, 2020
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.

3 participants