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

ci: github action workflow for windows #43479

Merged
merged 7 commits into from
May 23, 2022
Merged

Conversation

crazy-max
Copy link
Member

@crazy-max crazy-max commented Apr 12, 2022

- What I did

Adds a windows workflow for GitHub Actions that would do the same job as Jenkins but fragmented to leverage a bit of caching and compute. There is also:

  • a build step
  • daemon runs as a service so we can check if logging event is working (see last step in the workflow for the integration-test job) and we are also close to the user experience.
  • use named pipe to expose docker daemon instead of tcp
  • containerd runtime also tested against windows-2019
  • containerd now runs as a service and logs are available

Scripting is embedded in the workflow for now but planned to move it in a dedicated .ps1 file. I have not changed the hack/ci/windows.ps1 file on purpose to not disturb the current pipeline and also to be able to test side by side the behavior of Jenkins/GHA.

Build time is a bit longer:

~1h40 with gha: https://github.com/moby/moby/actions/runs/2154295292
~1h30 with jenkins: https://ci-next.docker.com/public/blue/organizations/jenkins/moby/detail/PR-43475/3/pipeline/283

Not too bad as the hardware on Jenkins is "twice" better:

Jenkins: https://ci-next.docker.com/public/blue/organizations/jenkins/moby/detail/PR-43475/3/pipeline/264#step-266-log-31

CPUs: 4
Total Memory: 32GiB

GHA: https://github.com/moby/moby/runs/5988331677?check_suite_focus=true#step:10:36

CPUs: 2
Total Memory: 7GiB

We could split in a follow-up the cli integration tests using a dedicated matrix to reduce build time like we do in BuildKit.

Encountered some tests that failed:

TestSlowStdinClosing (containerd runtime)

Already reported: #43012

=== FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestSlowStdinClosing/0 (0.80s)
    docker_cli_run_test.go:4165: D:\a\moby\moby\out\docker.exe: Error response from daemon: failed to create shim task: open \\.\pipe\containerd-991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254-init-stdin: The system cannot find the file specified.: not found.
        
    docker_cli_run_test.go:4174: assertion failed: error is not nil: exit status 127
        --- FAIL: TestDockerSuite/TestSlowStdinClosing/0 (0.80s)

=== FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestSlowStdinClosing/1 (1.04s)
    docker_cli_run_test.go:4165: D:\a\moby\moby\out\docker.exe: Error response from daemon: failed to create shim task: open \\.\pipe\containerd-65b589a5c9e54e01a4de12c0dae2311bb308d0986998673871385a33bfd11560-init-stdin: The system cannot find the file specified.: not found.
        
    docker_cli_run_test.go:4174: assertion failed: error is not nil: exit status 127
        --- FAIL: TestDockerSuite/TestSlowStdinClosing/1 (1.04s)

=== FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestSlowStdinClosing/2 (0.79s)
    docker_cli_run_test.go:4165: D:\a\moby\moby\out\docker.exe: Error response from daemon: failed to create shim task: open \\.\pipe\containerd-b328648d14a71422c3b957ddb223b952a4ef987a0e02746ce8de04d20f2eea1b-init-stdin: The system cannot find the file specified.: not found.
        
    docker_cli_run_test.go:4174: assertion failed: error is not nil: exit status 127
        --- FAIL: TestDockerSuite/TestSlowStdinClosing/2 (0.79s)

=== FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestSlowStdinClosing (2.65s)
    --- FAIL: TestDockerSuite/TestSlowStdinClosing (2.65s)

Now that containerd logs are shown in GHA:

2022-04-11T21:57:51.4096464Z debug: Calling POST /v1.30/containers/991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254/attach?stderr=1&stdin=1&stdout=1&stream=1
2022-04-11T21:57:51.4096570Z debug: attach: stdin: begin
2022-04-11T21:57:51.4096676Z debug: attach: stdout: begin
2022-04-11T21:57:51.4096763Z debug: attach: stderr: begin
2022-04-11T21:57:51.4097045Z debug: Calling POST /v1.30/containers/991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254/wait?condition=removed
2022-04-11T21:57:51.4097297Z debug: Calling POST /v1.30/containers/991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254/start
2022-04-11T21:57:51.4097562Z debug: WindowsGraphDriver Get() id 991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254 mountLabel 
2022-04-11T21:57:51.4098071Z debug: Calling proc (1) [spanID=3fd90fd300d29243 traceID=4b1e401782d9015e9d9ffab4fc199d26]
2022-04-11T21:57:51.4098277Z debug: Calling proc (2) [traceID=4b1e401782d9015e9d9ffab4fc199d26 spanID=3fd90fd300d29243]
2022-04-11T21:57:51.4098844Z debug: container mounted via layerStore: &{\\?\Volume{94bf3478-b3ab-4632-b15f-7d1ece26f62e} 0x3a09100 0x3a09100} [container=991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254]
2022-04-11T21:57:51.4098993Z debug: RequestAddress(172.24.144.0/20, <nil>, map[])
2022-04-11T21:57:51.4099290Z debug: Assigning addresses for endpoint priceless_lumiere's interface on network nat
2022-04-11T21:57:51.4099467Z debug: endpointStruct.EnableInternalDNS =[false]
2022-04-11T21:57:51.4099824Z debug: [POST]=>[/endpoints/] Request : {"VirtualNetwork":"40472233-959E-46CE-B5C4-334FE808616A","EnableInternalDNS":true}
2022-04-11T21:57:51.4101745Z debug: Network Response : {"ID":"fdd2853f-68cb-4451-8e09-f95b7a5ff944","Name":"Ethernet","Version":55834574851,"AdditionalParams":{},"Resources":{"AdditionalParams":{},"AllocationOrder":0,"CompartmentOperationTime":0,"Flags":0,"Health":{"LastErrorCode":0,"LastUpdateTime":132941877457137836},"ID":"07D566C1-9323-4BAB-B0CB-F748D010B888","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"F5C402EB-75F5-474E-9259-96A6ABBF4F51"},"State":1,"VirtualNetwork":"40472233-959e-46ce-b5c4-334fe808616a","VirtualNetworkName":"nat","MacAddress":"00-15-5D-D0-34-C9","EnableInternalDNS":true,"IPAddress":"172.24.147.17","PrefixLength":20,"GatewayAddress":"172.24.144.1","IPSubnetId":"3dcc69b3-0fa9-431f-800d-ddb4f3bc78a0","DNSServerList":"172.24.144.1,168.63.129.16","DNSSuffix":"sfvjqs5o01lenmfktyycba1lhh.cx.internal.cloudapp.net","SharedContainers":[]}
2022-04-11T21:57:51.4102062Z debug: Assigning addresses for endpoint priceless_lumiere's interface on network nat
2022-04-11T21:57:51.4102320Z debug: [GET]=>[/endpoints/fdd2853f-68cb-4451-8e09-f95b7a5ff944] Request : 
2022-04-11T21:57:51.4104288Z debug: Network Response : {"ID":"fdd2853f-68cb-4451-8e09-f95b7a5ff944","Name":"Ethernet","Version":55834574851,"AdditionalParams":{},"Resources":{"AdditionalParams":{},"AllocationOrder":0,"CompartmentOperationTime":0,"Flags":0,"Health":{"LastErrorCode":0,"LastUpdateTime":132941877457137836},"ID":"07D566C1-9323-4BAB-B0CB-F748D010B888","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"F5C402EB-75F5-474E-9259-96A6ABBF4F51"},"State":1,"VirtualNetwork":"40472233-959e-46ce-b5c4-334fe808616a","VirtualNetworkName":"nat","MacAddress":"00-15-5D-D0-34-C9","EnableInternalDNS":true,"IPAddress":"172.24.147.17","PrefixLength":20,"GatewayAddress":"172.24.144.1","IPSubnetId":"3dcc69b3-0fa9-431f-800d-ddb4f3bc78a0","DNSServerList":"172.24.144.1,168.63.129.16","DNSSuffix":"sfvjqs5o01lenmfktyycba1lhh.cx.internal.cloudapp.net","SharedContainers":[]}
2022-04-11T21:57:51.4104566Z debug: [GET]=>[/endpoints/fdd2853f-68cb-4451-8e09-f95b7a5ff944] Request : 
2022-04-11T21:57:51.4106511Z debug: Network Response : {"ID":"fdd2853f-68cb-4451-8e09-f95b7a5ff944","Name":"Ethernet","Version":55834574851,"AdditionalParams":{},"Resources":{"AdditionalParams":{},"AllocationOrder":0,"CompartmentOperationTime":0,"Flags":0,"Health":{"LastErrorCode":0,"LastUpdateTime":132941877457137836},"ID":"07D566C1-9323-4BAB-B0CB-F748D010B888","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"F5C402EB-75F5-474E-9259-96A6ABBF4F51"},"State":1,"VirtualNetwork":"40472233-959e-46ce-b5c4-334fe808616a","VirtualNetworkName":"nat","MacAddress":"00-15-5D-D0-34-C9","EnableInternalDNS":true,"IPAddress":"172.24.147.17","PrefixLength":20,"GatewayAddress":"172.24.144.1","IPSubnetId":"3dcc69b3-0fa9-431f-800d-ddb4f3bc78a0","DNSServerList":"172.24.144.1,168.63.129.16","DNSSuffix":"sfvjqs5o01lenmfktyycba1lhh.cx.internal.cloudapp.net","SharedContainers":[]}
2022-04-11T21:57:51.4106815Z debug: Programming external connectivity on endpoint priceless_lumiere (47317ab517691814d63ebd52db38745b75a7e9904055206162a445b0508d38e1)
2022-04-11T21:57:51.4107365Z debug: EnableService 991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254 START
2022-04-11T21:57:51.4107595Z debug: EnableService 991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254 DONE
2022-04-11T21:57:51.4112176Z debug: Generated spec: {"ociVersion":"1.0.2-dev","process":{"user":{"uid":0,"gid":0},"args":["cat"],"cwd":"C:\\"},"root":{"path":"\\\\?\\Volume{94bf3478-b3ab-4632-b15f-7d1ece26f62e}\\"},"hostname":"991a0ea5a6da","windows":{"layerFolders":["C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\06eca824015c405b5ff226d92b60620f5270ff7cd372f36e21a84fc4e6d26931","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\a155fe780ecb40972bd0a466409c18153a5b7dcc3843e98dd4f109ea0b9bd3b3","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\76d824896c8c6ad237fc5331ea7babe34ccb505ddaeb47c6d0073a75ed662883","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\dc7b34aab55da4dfda8306cc1840de6f146a453c28d5f7c23d405fba9100a782","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\8b337301899ab5611ff1ca64ec18f62418c53a9e26cea72b62957568d0961075","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\6bd1bd73e4dee8a234d5017cc0b08a23dd315fe58494ed44816815cfd867d448","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\1a0419d9ef6071bfd0459cad520e4c075ee908a91d6b7e255ac942f247842c5e","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\783852746fc8e7e5947248a091d601b1b9bea8722459bff95e67a9b979816818","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\0bf0708af2a7556c8842b19419e2350be0b4e1e3cd722a9c3dade28675a56c00","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\e7c0ede728d344c256cea593e93d85c96f27c8117b18f0e5abe99d22d25d7a51","C:\\Users\\runneradmin\\AppData\\Local\\Temp\\moby-root\\windowsfilter\\991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254"],"ignoreFlushesDuringBoot":true,"network":{"endpointList":["fdd2853f-68cb-4451-8e09-f95b7a5ff944"],"allowUnqualifiedDNSQuery":true}}}
2022-04-11T21:57:51.4112892Z debug: bundle dir created [namespace=moby bundle=C:\Users\RUNNER~1\AppData\Local\Temp\moby-exec\containerd\991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254 root=\\?\Volume{94bf3478-b3ab-4632-b15f-7d1ece26f62e}\ module=libcontainerd]
2022-04-11T21:57:51.4113427Z debug: listen [module=libcontainerd namespace=moby stdin=\\.\pipe\containerd-991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254-init-stdin]
2022-04-11T21:57:51.4113963Z debug: listen [module=libcontainerd namespace=moby stdout=\\.\pipe\containerd-991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254-init-stdout]
2022-04-11T21:57:51.4114492Z debug: listen [module=libcontainerd namespace=moby stderr=\\.\pipe\containerd-991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254-init-stderr]
2022-04-11T21:57:51.4115022Z debug: accept [module=libcontainerd namespace=moby stdout=\\.\pipe\containerd-991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254-init-stdout]
2022-04-11T21:57:51.4115583Z debug: accept [module=libcontainerd namespace=moby stdin=\\.\pipe\containerd-991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254-init-stdin]
2022-04-11T21:57:51.4116103Z debug: accept [module=libcontainerd namespace=moby stderr=\\.\pipe\containerd-991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254-init-stderr]
2022-04-11T21:57:51.4116228Z debug: Closing buffered stdin pipe
2022-04-11T21:57:51.4116331Z debug: attach: stdin: end
2022-04-11T21:57:51.4116471Z stream copy error: use of closed network connection
2022-04-11T21:57:51.4116616Z stream copy error: use of closed network connection
2022-04-11T21:57:51.4116718Z debug: attach: stdout: end
2022-04-11T21:57:51.4116822Z debug: attach: stderr: end
2022-04-11T21:57:51.4117229Z debug: attach done
2022-04-11T21:57:51.4117522Z debug: Revoking external connectivity on endpoint priceless_lumiere (47317ab517691814d63ebd52db38745b75a7e9904055206162a445b0508d38e1)
2022-04-11T21:57:51.4117800Z debug: [GET]=>[/endpoints/fdd2853f-68cb-4451-8e09-f95b7a5ff944] Request : 
2022-04-11T21:57:51.4119727Z debug: Network Response : {"ID":"fdd2853f-68cb-4451-8e09-f95b7a5ff944","Name":"Ethernet","Version":55834574851,"AdditionalParams":{},"Resources":{"AdditionalParams":{},"AllocationOrder":0,"CompartmentOperationTime":0,"Flags":0,"Health":{"LastErrorCode":0,"LastUpdateTime":132941877457137836},"ID":"07D566C1-9323-4BAB-B0CB-F748D010B888","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"F5C402EB-75F5-474E-9259-96A6ABBF4F51"},"State":1,"VirtualNetwork":"40472233-959e-46ce-b5c4-334fe808616a","VirtualNetworkName":"nat","MacAddress":"00-15-5D-D0-34-C9","EnableInternalDNS":true,"IPAddress":"172.24.147.17","PrefixLength":20,"GatewayAddress":"172.24.144.1","IPSubnetId":"3dcc69b3-0fa9-431f-800d-ddb4f3bc78a0","DNSServerList":"172.24.144.1,168.63.129.16","DNSSuffix":"sfvjqs5o01lenmfktyycba1lhh.cx.internal.cloudapp.net","SharedContainers":[]}
2022-04-11T21:57:51.4120004Z debug: [GET]=>[/endpoints/fdd2853f-68cb-4451-8e09-f95b7a5ff944] Request : 
2022-04-11T21:57:51.4121955Z debug: Network Response : {"ID":"fdd2853f-68cb-4451-8e09-f95b7a5ff944","Name":"Ethernet","Version":55834574851,"AdditionalParams":{},"Resources":{"AdditionalParams":{},"AllocationOrder":0,"CompartmentOperationTime":0,"Flags":0,"Health":{"LastErrorCode":0,"LastUpdateTime":132941877457137836},"ID":"07D566C1-9323-4BAB-B0CB-F748D010B888","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"F5C402EB-75F5-474E-9259-96A6ABBF4F51"},"State":1,"VirtualNetwork":"40472233-959e-46ce-b5c4-334fe808616a","VirtualNetworkName":"nat","MacAddress":"00-15-5D-D0-34-C9","EnableInternalDNS":true,"IPAddress":"172.24.147.17","PrefixLength":20,"GatewayAddress":"172.24.144.1","IPSubnetId":"3dcc69b3-0fa9-431f-800d-ddb4f3bc78a0","DNSServerList":"172.24.144.1,168.63.129.16","DNSSuffix":"sfvjqs5o01lenmfktyycba1lhh.cx.internal.cloudapp.net","SharedContainers":[]}
2022-04-11T21:57:51.4122244Z debug: [DELETE]=>[/endpoints/fdd2853f-68cb-4451-8e09-f95b7a5ff944] Request : 
2022-04-11T21:57:51.4122381Z debug: ReleaseAddress(172.24.144.0/20, 172.24.147.17)
2022-04-11T21:57:51.4122680Z debug: Releasing addresses for endpoint priceless_lumiere's interface on network nat
2022-04-11T21:57:51.4122934Z debug: WindowsGraphDriver Put() id 991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254
2022-04-11T21:57:51.4123215Z 991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254 cleanup: failed to delete container from containerd: no such container

Looks like a race condition:

...
2022-04-11T21:57:51.4116228Z debug: Closing buffered stdin pipe
2022-04-11T21:57:51.4116331Z debug: attach: stdin: end
2022-04-11T21:57:51.4116471Z stream copy error: use of closed network connection
2022-04-11T21:57:51.4116616Z stream copy error: use of closed network connection
2022-04-11T21:57:51.4116718Z debug: attach: stdout: end
2022-04-11T21:57:51.4116822Z debug: attach: stderr: end
2022-04-11T21:57:51.4117229Z debug: attach done
...
2022-04-11T21:57:51.4123215Z 991a0ea5a6da06d3ad7260d8e7017fe0760dcf1662544fd587ea608e8450a254 cleanup: failed to delete container from containerd: no such container

Seems to be also linked to #33710

TestRestartContainerSuccess, TestRestartPolicyAfterRestart

=== Failed
=== FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestRestartContainerSuccess (4.51s)
    docker_cli_restart_test.go:191: assertion failed: error is not nil: DuplicateHandle: Access is denied.
    --- FAIL: TestDockerSuite/TestRestartContainerSuccess (4.51s)

=== FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestRestartPolicyAfterRestart (7.20s)
    docker_cli_restart_test.go:271: assertion failed: error is not nil: DuplicateHandle: Access is denied.
    --- FAIL: TestDockerSuite/TestRestartPolicyAfterRestart (7.20s)

Repro everytime on GitHub Runners so might be linked to the OS configuration (maybe HyperV). Skipping the test for now.

- Description for the changelog

Adds github action workflow for windows

cc @corhere @thaJeztah

@crazy-max crazy-max force-pushed the gha-win-tests branch 2 times, most recently from 1d4ca7a to 706d653 Compare April 12, 2022 12:15
@crazy-max
Copy link
Member Author

TestSlowStdinClosing also flaky again on Jenkins: https://ci-next.docker.com/public/blue/organizations/jenkins/moby/detail/PR-43479/3/pipeline#step-303-log-1688

[2022-04-12T13:44:54.610Z] === Failed
[2022-04-12T13:44:54.610Z] === FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestSlowStdinClosing/0 (0.84s)
[2022-04-12T13:44:54.610Z]     docker_cli_run_test.go:4168: d:\CI\PR-43479\3\binary\docker.exe: Error response from daemon: failed to create shim task: open \\.\pipe\containerd-a2de6b17d254606db65824405f9d8510d4ea35383505ed730574d279d94f6182-init-stdin: The system cannot find the file specified.: not found.
[2022-04-12T13:44:54.610Z]         
[2022-04-12T13:44:54.610Z]     docker_cli_run_test.go:4177: assertion failed: error is not nil: exit status 127
[2022-04-12T13:44:54.610Z]         --- FAIL: TestDockerSuite/TestSlowStdinClosing/0 (0.84s)
[2022-04-12T13:44:54.610Z] 
[2022-04-12T13:44:54.610Z] === FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestSlowStdinClosing/1 (0.86s)
[2022-04-12T13:44:54.610Z]     docker_cli_run_test.go:4168: d:\CI\PR-43479\3\binary\docker.exe: Error response from daemon: failed to create shim task: open \\.\pipe\containerd-a0d0ed81ebd50ada6851ba51e00e60afc05774d5f69e2ae30e186bc498e90e40-init-stdin: The system cannot find the file specified.: not found.
[2022-04-12T13:44:54.610Z]         
[2022-04-12T13:44:54.610Z]     docker_cli_run_test.go:4177: assertion failed: error is not nil: exit status 127
[2022-04-12T13:44:54.610Z]         --- FAIL: TestDockerSuite/TestSlowStdinClosing/1 (0.86s)
[2022-04-12T13:44:54.610Z] 
[2022-04-12T13:44:54.610Z] === FAIL: github.com/docker/docker/integration-cli TestDockerSuite/TestSlowStdinClosing (5.37s)
[2022-04-12T13:44:54.610Z]     --- FAIL: TestDockerSuite/TestSlowStdinClosing (5.37s)

#43012

@crazy-max crazy-max marked this pull request as ready for review April 12, 2022 15:31
@crazy-max crazy-max force-pushed the gha-win-tests branch 2 times, most recently from 4cf0310 to dd3aaee Compare April 22, 2022 20:52
Copy link
Contributor

@corhere corhere left a comment

Choose a reason for hiding this comment

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

Looks reasonable to me

.github/workflows/windows.yml Outdated Show resolved Hide resolved
@crazy-max
Copy link
Member Author

crazy-max commented May 7, 2022

Looks reasonable to me

Thanks for the review @corhere! About what I said in PR desc:

Scripting is embedded in the workflow for now but planned to move it in a dedicated .ps1 file. I have not changed the hack/ci/windows.ps1 file on purpose to not disturb the current pipeline and also to be able to test side by side the behavior of Jenkins/GHA.

Does it makes sense to move that in a powershell script instead of the workflow itself?

Copy link
Contributor

@corhere corhere left a comment

Choose a reason for hiding this comment

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

Does it makes sense to move [the scripting embedded in the workflow] in a powershell script instead of the workflow itself?

I personally don't think so. The scripting is mostly GitHub Actions-specific setup and teardown so I don't think having the ability to execute the scripting verbatim on your local machine would have much utility. I don't see enough value in extracting to powershell scripts to outweigh the cognitive overhead of introducing a new layer of abstraction.

.github/workflows/windows.yml Outdated Show resolved Hide resolved
.github/workflows/windows.yml Outdated Show resolved Hide resolved
@crazy-max crazy-max force-pushed the gha-win-tests branch 4 times, most recently from 478596d to d167bd3 Compare May 12, 2022 17:03
Copy link
Member

@thaJeztah thaJeztah left a comment

Choose a reason for hiding this comment

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

LGTM, other than the go version

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
@thaJeztah
Copy link
Member

Only failure is TestStartReturnCorrectExitCode, which is a known flaky test (#38521)

=== RUN   TestDockerSuite/TestStartReturnCorrectExitCode
    docker_cli_start_test.go:191: assertion failed: 
        Command:  /usr/local/cli/docker start -a withRestart
        ExitCode: 0
        Stdout:   
        Stderr:   
        
        Failures:
        ExitCode was 0 expected 11
    --- FAIL: TestDockerSuite/TestStartReturnCorrectExitCode (0.91s)

Copy link
Member

@thaJeztah thaJeztah left a comment

Choose a reason for hiding this comment

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

still LGTM

let's bring this one in

@thaJeztah thaJeztah merged commit 235f862 into moby:master May 23, 2022
@crazy-max crazy-max deleted the gha-win-tests branch May 23, 2022 10:33
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.

None yet

3 participants