Hi Misha,

I understand that it doesn't alter the host system. my concern is that we move 
problem of host-configuration into tests. let's say tomorrow a new container 
engine will require something from /usr/local/sbin, or 
/usr/local/Cellar/docker/bin on another OS, or, god forbid, C:\Program 
Files(x86)\podman\bin. it has nothing to do w/ tests, it's a question of 
configuring a host, as I said, should be handled at another level by "scripts" 
run (once) prior test execution.

-- Igor

> On Jul 16, 2019, at 1:23 PM, mikhailo.seledt...@oracle.com wrote:
> 
> Hi Igor,
> 
>    In both cases the environment variable is set for the Docker/Podman 
> container process, not the host system. This will not affect the host system 
> in any way. The docker process has its own namespace for environment 
> variables. Does this alleviate your concerns?
> 
> 
> Thank you,
> 
> Misha
> 
> On 7/16/19 11:49 AM, Igor Ignatyev wrote:
>> Hi Severin,
>> 
>> I don't think that tests (or test libraries for that matter) should be 
>> responsible for setting correct PATH value, it should be a part of host 
>> configuration procedure (tests can/should check that all required bins are 
>> available though). in other words, I'd prefer if you remove 'env.put("PATH", 
>> ...)' lines from both DockerTestUtils and TestJFREvents. the rest looks good 
>> to me.
>> 
>> Thanks,
>> -- Igor
>> 
>>> On Jul 16, 2019, at 5:36 AM, Severin Gehwolf <sgehw...@redhat.com> wrote:
>>> 
>>> Hi,
>>> 
>>> I believe I still need a *R*eviewer for this. Any takers?
>>> 
>>> Thanks,
>>> Severin
>>> 
>>> On Fri, 2019-07-12 at 15:19 -0700, mikhailo.seledt...@oracle.com wrote:
>>>> Hi Severin,
>>>> 
>>>>   The change looks good to me. Thank you for adding support for Podman
>>>> container technology.
>>>> 
>>>> Testing: I ran both HotSpot and JDK container tests with your patch;
>>>> tests executed on Oracle Linux 7.6 using default container engine (Docker):
>>>> 
>>>>     test/hotspot/jtreg/containers/   AND
>>>> test/jdk/jdk/internal/platform/docker/
>>>> 
>>>> All PASS
>>>> 
>>>> 
>>>> Thanks,
>>>> 
>>>> Misha
>>>> 
>>>> 
>>>> On 7/12/19 11:08 AM, Severin Gehwolf wrote:
>>>>> Hi,
>>>>> 
>>>>> There is an alternative container engine which is being used by Fedora
>>>>> and RHEL 8, called podman[1]. It's mostly compatible with docker. It
>>>>> looks like OpenJDK docker tests can be made podman compatible with a
>>>>> few little tweaks. One "interesting" one is to not assert "Successfully
>>>>> built" in the build output but only rely on the exit code, which seems
>>>>> to be OK for my testing. Interestingly the test would be skipped in
>>>>> that case.
>>>>> 
>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8227642
>>>>> webrev: 
>>>>> http://cr.openjdk.java.net/~sgehwolf/webrevs/JDK-8227642/01/webrev/
>>>>> 
>>>>> Adjustments I've done:
>>>>>  * Don't assert "Successfully built" in image build output[2].
>>>>>  * Add /usr/sbin to PATH as the podman binary relies on iptables for it
>>>>>    to work which is in /usr/sbin on Fedora
>>>>>  * Allow for Metrics.getCpuSystemUsage() and Metrics.getCpuUserUsage()
>>>>>    to be equal to the previous value. I've found those counters to be
>>>>>    slowly increasing, which made the tests unreliable.
>>>>> 
>>>>> Testing:
>>>>> 
>>>>> Running docker tests with docker as engine. Did the same with podman as
>>>>> engine via -Djdk.test.docker.command=podman on Linux x86_64. Both
>>>>> passed (non-trivially).
>>>>> 
>>>>> Thoughts?
>>>>> 
>>>>> Thanks,
>>>>> Severin
>>>>> 
>>>>> [1] https://podman.io/
>>>>> [2] Image builds with podman look
>>>>>     like ("COMMIT" over "Successfully built"):
>>>>> STEP 1: FROM fedora:29
>>>>> STEP 2: RUN dnf install -y java-11-openjdk-devel &&     dnf clean all
>>>>> --> Using cache 
>>>>> 96f8b1a0dfe7dba581a64fc67a27002ddf52e032af55f9ddc765182a690afd9d
>>>>> STEP 3: COPY TestMetrics.class  TestMetrics.java /opt/
>>>>> 269042160f7a4e6a06789cd19640ea658a8f941bc53de0fd40a574dc3bdb49a8
>>>>> STEP 4: CMD /usr/lib/jvm/java-11-openjdk/bin/java -cp /opt --add-modules 
>>>>> java.base --add-exports java.base/jdk.internal.platform=ALL-UNNAMED 
>>>>> TestMetrics
>>>>> STEP 5: COMMIT fedora-metrics-11
>>>>> d749088d6ce4510f212820ad4eca55a9b05e5c5c245f2372b6cfe91926e8cd7e
>>>>> 

Reply via email to