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

Only use qemu-guest-agent on macos #914

Merged
merged 1 commit into from
Jun 18, 2024
Merged

Conversation

cfergeau
Copy link
Contributor

On linux/windows, we don't setup the needed vsock devices, so
qemu-guest-agent fails to start.
We can use ConditionVirtualization=apple to only start it when running
on a mac.

On linux/windows, we don't setup the needed vsock devices, so
qemu-guest-agent fails to start.
We can use `ConditionVirtualization=apple` to only start it when running
on a mac.
@praveenkumar
Copy link
Member

@cfergeau this we used for time sync on the mac right?

@cfergeau
Copy link
Contributor Author

@cfergeau this we used for time sync on the mac right?

Yes. Maybe this can be solved in a simpler way with makestep -1 in chrony configuration, I haven't re-tested this.

@praveenkumar
Copy link
Member

makestep -1

Just looked the man chrony.conf and got following which sound promising and we don't need to that configuration of the guest-agent if that works as expected, how does podman machine handle time drift in mac?

           Normally chronyd will cause the system to gradually correct any time offset, by slowing down or speeding up the
           clock as required. In certain situations, e.g. when chronyd is initially started, the system clock might be so
           far adrift that this slewing process would take a very long time to correct the system clock.

           This directive forces chronyd to step the system clock if the adjustment is larger than a threshold value, but
           only if there were no more clock updates since chronyd was started than the specified limit. A negative value
           disables the limit.

           On most systems it is desirable to step the system clock only on boot, before starting programs that rely on
           time advancing monotonically forwards.

           An example of the use of this directive is:

               makestep 0.1 3

           This would step the system clock if the adjustment is larger than 0.1 seconds, but only in the first three
           clock updates.

Should we create an issue and set it as good first one for some new team members to try it out?

@cfergeau
Copy link
Contributor Author

Just looked the man chrony.conf and got following which sound promising and we don't need to that configuration of the guest-agent if that works as expected, how does podman machine handle time drift in mac?

Last I checked, they were using makestep

@cfergeau
Copy link
Contributor Author

Just looked the man chrony.conf and got following which sound promising and we don't need to that configuration of the guest-agent if that works as expected, how does podman machine handle time drift in mac?

Last I checked, they were using makestep

The corresponding podman issue was containers/podman#11541

Copy link

openshift-ci bot commented Jun 18, 2024

@cfergeau: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-microshift bdc3e5e link true /test e2e-microshift

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@praveenkumar
Copy link
Member

Created #916 one and we can have this PR in for time being.

@praveenkumar
Copy link
Member

/cherry-pick release-4.16

@openshift-cherrypick-robot

@praveenkumar: once the present PR merges, I will cherry-pick it on top of release-4.16 in a new PR and assign it to you.

In response to this:

/cherry-pick release-4.16

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@praveenkumar
Copy link
Member

/cherry-pick release-4.15

@openshift-cherrypick-robot

@praveenkumar: once the present PR merges, I will cherry-pick it on top of release-4.15 in a new PR and assign it to you.

In response to this:

/cherry-pick release-4.15

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@@ -1,6 +1,7 @@
[Unit]
Description=QEMU Guest Agent
IgnoreOnIsolate=True
ConditionVirtualization=apple
Copy link
Member

Choose a reason for hiding this comment

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

As per man systemd.unit looks like this is added in v244, and current used version in OCP is 252 which is good for this usecase.

      ConditionVirtualization=
           Check whether the system is executed in a virtualized environment and optionally test whether it is a specific
           implementation. Takes either boolean value to check if being executed in any virtualized environment, or one of
           "vm" and "container" to test against a generic type of virtualization solution, or one of "qemu", "kvm",
           "amazon", "zvm", "vmware", "microsoft", "oracle", "powervm", "xen", "bochs", "uml", "bhyve", "qnx", "apple",
           "sre", "openvz", "lxc", "lxc-libvirt", "systemd-nspawn", "docker", "podman", "rkt", "wsl", "proot", "pouch",
           "acrn" to test against a specific implementation, or "private-users" to check whether we are running in a user
           namespace. See systemd-detect-virt(1) for a full list of known virtualization technologies and their
           identifiers. If multiple virtualization technologies are nested, only the innermost is considered. The test may
           be negated by prepending an exclamation mark.

           Added in version 244.

Copy link

openshift-ci bot commented Jun 18, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: praveenkumar

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@praveenkumar praveenkumar merged commit 0d4dfbf into crc-org:master Jun 18, 2024
1 of 4 checks passed
@openshift-cherrypick-robot

@praveenkumar: new pull request created: #917

In response to this:

/cherry-pick release-4.16

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@openshift-cherrypick-robot

@praveenkumar: new pull request created: #918

In response to this:

/cherry-pick release-4.15

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

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

Successfully merging this pull request may close these issues.

3 participants