Creates a wrapper around the Qemu command line implementation to prevent
the need to hard-code the different command line options in Init and
Start.
Signed-off-by: Jake Correnti <jakecorrenti+github@proton.me>
This reverts commit 5b990c3835.
PR #19994
Causes wsl nsenter script to infinitely loop in standard operation
[NO NEW TESTS NEEDED]
Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
Since wsl --version triggers help, which triggers an error code,
use that instead of text detection.
[NO NEW TESTS NEEDED]
Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
Changes build tags to allow the applehv code to be built for Intel Macs
[NO NEW TESTS NEEDED]
Signed-off-by: Jake Correnti <jakecorrenti+github@proton.me>
Removes the line in applehv and qemu `machine.go` file. These are
remnants from #19723. This lines was written to add stdin, stdout,
stderr as extra files, but that is not how `c.ExtraFiles` works (unlike
`os.ProcAttr`).
go source: https://cs.opensource.google/go/go/+/go1.21.1:src/os/exec/exec.go;l=147
[NO NEW TESTS NEEDED]
Signed-off-by: Jake Correnti <jakecorrenti+github@proton.me>
After creating a podman machine, and before starting it, the LastUp value for podman machine ls should display Never. Previously, the LastUp value was the same as creation time. This also changes the LastUp value for inspect to ZeroTime instead of creation time.
Signed-off-by: Ashley Cui <acui@redhat.com>
As explained in #21022, there are all kinds of downsides to a machine
updating itself (via zincati) automatically, like interuption of
service, lost mounts, etc.
disabling zincati will at least allow stop these downsides. we are
likely to contemplate if podman will take over the update process
externally where interuption of services will not occur etc.
Fixes#20122
Signed-off-by: Brent Baude <bbaude@redhat.com>
many of wsl's attributes are not as configurable as other providers.
small tweaks and conditional tests have been added.
Signed-off-by: Brent Baude <bbaude@redhat.com>
change behaviour of stopped a stopped/exited machine to match qemu in that stopping a stopped machine is NOT an error.
add condition to machine rm where rm is not run twice due to a logic error
[NO NEW TESTS NEEDED]
Signed-off-by: Brent Baude <bbaude@redhat.com>
HyperV and appleHV machine inspect commands were missing podman socket
info. This also fixes machine inspect tests on hyperV
Signed-off-by: Ashley Cui <acui@redhat.com>
allow the machine stop test to pass.
small change to WSL stop on an already stopped machine to allow for it
to behave like hyperv and qemu
Signed-off-by: Brent Baude <bbaude@redhat.com>
a couple of small corrections for the ssh tests on WSL. we need to
check for a different os type and windows emits a warning in stderr.
Signed-off-by: Brent Baude <bbaude@redhat.com>
the emitted message for starting a machine that is is already started
needed to be slightly altered for wsl.
[NO NEW TESTS NEEDED]
Signed-off-by: Brent Baude <bbaude@redhat.com>
Currently proxys are not supported on hyperV, skip the test and
document it for now.
Opened https://github.com/containers/podman/issues/20129 to track the
issue.
Signed-off-by: Ashley Cui <acui@redhat.com>
This PR allows you to run the pkg/machine/e2e tests for the applehv PROVIDER. This does not mean they pass, only that they can run. There also appears to be leftover gvproxy processes at the conclusion of a single test. This will need to be corrected.
[NO NEW TESTS NEEDED]
Signed-off-by: Brent Baude <bbaude@redhat.com>
Fixed a bug where the rootful option to the podman machine init command
would not be written to to the machine config, and the rootful docker
sock would not be set.
Signed-off-by: Ashley Cui <acui@redhat.com>
the window for hyperv's "Starting" state is very narrow; so to more
mimic qemu, we follow suit. starting bools are set when the vm boots
and when it communicates back on the read socket.
this allows pkg/machine/init_test.go to pass
[NO NEW TESTS NEEDED]
Signed-off-by: Brent Baude <bbaude@redhat.com>
When doing a machine rm -f (force removal of a machine) or a machine
reset (force removal of all machines), there is no need to use a
"polite/soft" stop.
this will also speed up pkg/machine/e2e tests.
[NO NEW TESTS NEEDED]
Signed-off-by: Brent Baude <bbaude@redhat.com>
the timezone was being set with the wrong path separator for hyperv
because it was being generated on Windows.
Fixes: coreos/fedora-coreos-tracker#1580
Signed-off-by: Brent Baude <bbaude@redhat.com>
some problems were found in machine tests on hyperv.
in the case of rootful, it is currently not implemented. an issue #20092 has been
created for that problem.
there also seems to be a timezone issue between ignition and fcos right
now. inquiries are in for that but no issue generated for that. this
problem is not exclusive to hyperv by any means.
both of the above have been skipped or commented out.
otherwise, this fixes machine state reporting for consistency.
Signed-off-by: Brent Baude <bbaude@redhat.com>
previous attempts to us os.truncate to resize raw disks did not work because the unit was wrong. the unit must be in bytes.
[NO NEW TESTS NEEDED]
Signed-off-by: Brent Baude <bbaude@redhat.com>