profile
viewpoint

pull request commentmoby/moby

Bump hcsshim to 6c7177eae8be632af2e15e44b62d69ab18389ddb

The above issue was a false positive and we were able to move on and get a repro of the original issue [0x490]. Issue was reproed with tracing enabled - @kevpar is taking a look.

vikramhh

comment created time in a day

pull request commentmoby/moby

Disable integration/system tests that are failing on Windows with error "protocol not available"

@thaJeztah - thanks for catching this. I am closing this PR and opening https://github.com/moby/moby/pull/40199 with the right changes.

vikramhh

comment created time in a day

PR opened moby/moby

Disable integration/system tests that are failing on Windows with error "protocol not available"

The tests starts a new daemon, but attempts to run it with overlay2, and using a unix:// socket, which doesn't really work on Windows.

40155 tried to disable such tests but missed two of them. They are being disabled with this change.

Signed-off-by: vikrambirsingh vikrambir.singh@docker.com

<!-- Please make sure you've read and understood our contributing guidelines; https://github.com/moby/moby/blob/master/CONTRIBUTING.md

** Make sure all your commits include a signature generated with git commit -s **

For additional information on our contributing process, read our contributing guide https://docs.docker.com/opensource/code/

If this is a bug fix, make sure your description includes "fixes #xxxx", or "closes #xxxx"

Please provide the following information: -->

- What I did Disabled two tests that were supposed to have been disabled by #40155 but got missed out

- How I did it Skipped tests if OS is Windows

- How to verify it Checks will verify that there are no failures on RS5

- Description for the changelog <!-- Write a short (one line) summary that describes the changes in this pull request for inclusion in the changelog: --> Skip all integration/system tests on Windows that are using unix:// socket

- A picture of a cute animal (not mandatory but encouraged)

+2 -0

0 comment

1 changed file

pr created time in a day

create barnchvikramhh/moby

branch : touchup_40155

created branch time in a day

PR closed moby/moby

Disable integration/system tests that are failing on Windows with error "protocol not available"

<!-- Please make sure you've read and understood our contributing guidelines; https://github.com/moby/moby/blob/master/CONTRIBUTING.md

** Make sure all your commits include a signature generated with git commit -s **

For additional information on our contributing process, read our contributing guide https://docs.docker.com/opensource/code/

If this is a bug fix, make sure your description includes "fixes #xxxx", or "closes #xxxx"

Please provide the following information: -->

- What I did Disabled two tests that were supposed to have been disabled by https://github.com/moby/moby/pull/40155 but got missed out - How I did it Skipped tests if OS is Windows

- How to verify it Checks will verify that there are no failures on RS5

- Description for the changelog <!-- Write a short (one line) summary that describes the changes in this pull request for inclusion in the changelog: --> Skip tests using unix:// socket on Windows

- A picture of a cute animal (not mandatory but encouraged)

+2704 -1104

0 comment

100 changed files

vikramhh

pr closed time in a day

delete branch vikramhh/moby

delete branch : touchup_40155

delete time in a day

pull request commentmoby/moby

Integration: skip TestInfoDebug on Windows

@thaJeztah - Thanks for verifying that the other two need to be disabled as well. Opened PR https://github.com/moby/moby/pull/40198 for that purpose.

thaJeztah

comment created time in 2 days

PR opened moby/moby

Disable integration/system tests that are failing on Windows with error "protocol not available"

<!-- Please make sure you've read and understood our contributing guidelines; https://github.com/moby/moby/blob/master/CONTRIBUTING.md

** Make sure all your commits include a signature generated with git commit -s **

For additional information on our contributing process, read our contributing guide https://docs.docker.com/opensource/code/

If this is a bug fix, make sure your description includes "fixes #xxxx", or "closes #xxxx"

Please provide the following information: -->

- What I did Disabled two tests that were supposed to have been disabled by https://github.com/moby/moby/pull/40155 but got missed out - How I did it Skipped tests if OS is Windows

- How to verify it Checks will verify that there are no failures on RS5

- Description for the changelog <!-- Write a short (one line) summary that describes the changes in this pull request for inclusion in the changelog: --> Skip tests using unix:// socket on Windows

- A picture of a cute animal (not mandatory but encouraged)

+2704 -1104

0 comment

100 changed files

pr created time in 2 days

create barnchvikramhh/moby

branch : touchup_40155

created branch time in 2 days

pull request commentmoby/moby

Bump hcsshim to 6c7177eae8be632af2e15e44b62d69ab18389ddb

@kevpar - I tried to get a local repro but quickly ran into another issue, also in hcsshim. You may want to take a look at that first. With a docker daemon that has these hcsshim changes, I find the following:

C:\gopath\src\github.com\docker\docker>docker run --rm mcr.microsoft.com/windows/servercore:ltsc2019 true docker: Error response from daemon: container 8cc37c049d7328d9fff3433632b6c86dc495bfb4d60856e59e90d227c451f26a encountered an error during hcsshim::System::CreateProcessNoStdio: failure in a Windows system call: The system cannot find the file specified. (0x2) extra info: {"CommandLine":"true","WorkingDirectory":"C:\\","CreateStdInPipe":true,"CreateStdOutPipe":true,"CreateStdErrPipe":true,"ConsoleSize":[0,0]}.

Here is the output from docker daemon when run with the --debug flag:

`C:\gopath\bin\temp>dockerd.exe --debug time="2019-11-10T14:26:36.709443200Z" level=info msg="Starting up" time="2019-11-10T14:26:36.763447000Z" level=debug msg="Listener created for HTTP on npipe (//./pipe/docker_engine)" time="2019-11-10T14:26:36.769450800Z" level=debug msg="Stackdump - waiting signal at Global\stackdump-3152" time="2019-11-10T14:26:36.769450800Z" level=info msg="Windows default isolation mode: process" time="2019-11-10T14:26:36.770449000Z" level=debug msg="Using default logging driver json-file" time="2019-11-10T14:26:36.770449000Z" level=debug msg="[graphdriver] trying provided driver: windowsfilter" time="2019-11-10T14:26:36.770449000Z" level=debug msg="WindowsGraphDriver InitFilter at C:\ProgramData\docker\windowsfilter" time="2019-11-10T14:26:36.771445100Z" level=debug msg="Initialized graph driver windowsfilter" time="2019-11-10T14:26:36.772446500Z" level=debug msg="Ignoring invalid digest sha256:0cb0663b573dc14c66c6b47467c561505d071367af6679f7d9f227fdf49d3296-f60566d6410fd8f33c0c2eba255f3b617a41313b717b8a952e3283d78471825e-removing" time="2019-11-10T14:26:36.772446500Z" level=debug msg="Ignoring invalid digest sha256:0ef10fc62e511966e788c54679fd02b678111498d4ba6636c36fe22a26945c17-d79f3123c512dd497633cc535e23e348578667a2a89f2c93ee42a40751881bcf-removing" time="2019-11-10T14:26:36.772446500Z" level=debug msg="Ignoring invalid digest sha256:1466f4ec2fa7179a675f5a2825120b84205a9ed9d4c42c4423968af446984f68-66249a70b7386d5f49bf89a60e3c6ce638cb4c64baf8026c4dcff814aff467e6-removing" time="2019-11-10T14:26:36.773426800Z" level=debug msg="Ignoring invalid digest sha256:1b7551572c0ea8c98ce839d0b86abccc042557424d60b8f15e0e0df3220c66e7-83022ab77b3f29e5f7972246928c19cc2dc1b4bd32b60348a5a0bb8cdadd22f6-removing" time="2019-11-10T14:26:36.773426800Z" level=debug msg="Ignoring invalid digest sha256:1ef81f9116b15701fea5e9b3015bd6faf2d2df1603b2e0f32663c951eb955e1e-cfe8a5f0d7d35bf6989d73edcc97fb11567a08224d8c3402f6f036a75ed9865d-removing" time="2019-11-10T14:26:36.773426800Z" level=debug msg="Ignoring invalid digest sha256:20084a9e7acab64346da00da0818fea913d41dad33d5ab92ef277e3d0e5538b3-c99a2a86de0c37cecc5bec8ad95011701c001c3cc337ea5366bdc44d07323205-removing" time="2019-11-10T14:26:36.773426800Z" level=debug msg="Ignoring invalid digest sha256:3028621079f8d318ca75325393150abb71e99cda6ec445b95698e5d266df79e7-f26a09b9679213138561f13ac314de7124d96827104886f68b1582fed00871d0-removing" time="2019-11-10T14:26:36.773426800Z" level=debug msg="Ignoring invalid digest sha256:36ab587e4c9d5b92c8198a6d07d00a811e20f4b0601cd9f67e34e9e2316d1e94-a65d7cdc2e8c3f9881aafc1a947c46b709d3ad83108e27ea961413b063f5034d-removing" time="2019-11-10T14:26:36.774446500Z" level=debug msg="Ignoring invalid digest sha256:385936468bb70caab17147fc7449c69fa580614d8016a6f48682bb272115987e-e5a5cdc560f7cda5743798c8f84539575d28bcc4eeb00c176375e2afe9870275-removing" time="2019-11-10T14:26:36.774446500Z" level=debug msg="Ignoring invalid digest sha256:4ea904bbc0396d31e8fbf4fa2ce901a7fbc71567abff568e0153137cf2261f0a-8866bec9c70e892b5cfda518fdded0eb6fee4a16366df2fdbd5cdf0bc9dbfe66-removing" time="2019-11-10T14:26:36.774446500Z" level=debug msg="Ignoring invalid digest sha256:4eba9880006fa41db021b2a1f16d3011c20382f77ac9e5ffd0fff5c78bdfad31-34cf421f842ddef128debdcb982a0f0af731065c73dde4c85bac25dcbef62dfa-removing" time="2019-11-10T14:26:36.775438600Z" level=debug msg="Ignoring invalid digest sha256:51d8067a414204b03088d19f5b4f976623cea23fb5af9d3aba67d443a99d85e4-e1548021bd70941094614da3031756cbe602451328ff7f94e60581c3d2219bce-removing" time="2019-11-10T14:26:36.775438600Z" level=debug msg="Ignoring invalid digest sha256:6f18435cf9dd3a896912fbaae501bb1d151e5c868d749ad4b132c11a02ef7bff-5f3e7de0c64619854d3e3c1b576dda42a5052c97ed62497c5998775aef43702a-removing" time="2019-11-10T14:26:36.776412300Z" level=debug msg="Ignoring invalid digest sha256:77b6e71e4e50eaf1507de2054e9af5f63a73ee26b387be026ef8f5b199ef9a14-ffe56fad1011e2525979101e9cfe2badde6818bab2ef3ed519d6373088b8a11e-removing" time="2019-11-10T14:26:36.776412300Z" level=debug msg="Ignoring invalid digest sha256:7975d87f65d733194993b8dbc57fec7138642074d2fef30946abaebc8359591b-ced3043d2bcd65cdb48aa0521731b11a249baddd106d6e09d18072fa795cfa9b-removing" time="2019-11-10T14:26:36.776412300Z" level=debug msg="Ignoring invalid digest sha256:7e40b62e0f6d8d7d59ecf994e071f3198c7b06f1f8f9f76a6917d71f6f889bb2-c141ca36240e335af35250a807e37796d1b2f762ea9eef14990855a068f1a162-removing" time="2019-11-10T14:26:36.777449200Z" level=debug msg="Ignoring invalid digest sha256:8451f5327c9dc993d37563a26a0ff3136ab6e221ff52b67573f221d1adfcd679-440dd214ed0f2d2cd823fa7348729c8af334b95b87dd6983d3706d8ca0911912-removing" time="2019-11-10T14:26:36.777449200Z" level=debug msg="Ignoring invalid digest sha256:87d27531abafaf75e5c94e318af68044eb1f04210e336cded44b55129db678f5-a32c3642cac8c1bb5f558992f57db2853bf0f4a7e138e9cf17548a8e63966209-removing" time="2019-11-10T14:26:36.778448600Z" level=debug msg="Ignoring invalid digest sha256:8cb4ac14ccdc0c431e8f982b863e98a691bd725265b9e540e80f768e1c84b9b0-f76d133c347f523767a620b630f2498fb90bce966b93c15365e73eb30bcdc13f-removing" time="2019-11-10T14:26:36.779448600Z" level=debug msg="Ignoring invalid digest sha256:ab7432f3f9fb935efbbbb4777929f08f18c483e82ea187dd91a7458ec683dc85-2ab7fb0e0532736b972a17175ad32f706083d7718b5bd07980aa4bf63c84cced-removing" time="2019-11-10T14:26:36.779448600Z" level=debug msg="Ignoring invalid digest sha256:b4b2843ac12109c6e5d084e589586433086883e7df86ce03d4430e27b1b8baba-9f047110cf7102d64f219cd5964035c15db3a8b9e2c92c16abe3a1d1e53849b9-removing" time="2019-11-10T14:26:36.780448600Z" level=debug msg="Ignoring invalid digest sha256:ba420aeb30723506ef1aff5db6b81f12a65f05976b60e473a4fa65ae47eb8e17-4f3c276f42cd60e3279a0b2aade8d814e8c63f8be2f3f274795b74369aa8be23-removing" time="2019-11-10T14:26:36.783448100Z" level=debug msg="Ignoring invalid digest sha256:c06439d0575849cee99502d14fc17564eeea1540319be44082f19f8b270cab57-1fb34f9591bd10f40d205dc8ccb85974f1ea258d47e8f3de33253ac0327e580c-removing" time="2019-11-10T14:26:36.783448100Z" level=debug msg="Ignoring invalid digest sha256:cd004f09c238e8b02ef56a2d31e62b152620360628707ed24b2e007f26d1a240-9cbb6f1a5f9d646e1822ec4de2251a7ea2d612710bfa6991fe407a832935345f-removing" time="2019-11-10T14:26:36.784396400Z" level=debug msg="Ignoring invalid digest sha256:cfa9069b7b0e6f373f23f2bb37b322be88341bda706b5d6f070f21369b6845ae-9bcad79d920ffe6d03c0e5dfdcedda6b1de2236f8f6f55bd8230ebb14435a7c6-removing" time="2019-11-10T14:26:36.784396400Z" level=debug msg="Ignoring invalid digest sha256:d10492009737c4496b96afa569e9d5af52db2211ee46c5c65c03f03ae7dc4d1e-5904b94aff4c7a9d016c89f839c8b9e482bfc230eb87979747dca149c5f39365-removing" time="2019-11-10T14:26:36.785401200Z" level=debug msg="Ignoring invalid digest sha256:dee9ca9bfcb1d2ab24a77801904011668972393240b2622a9249dbed0d8688bf-0a843d84759d083861e49a531db01965ea4a311ae7818efb52497cc64d170f34-removing" time="2019-11-10T14:26:36.785401200Z" level=debug msg="Ignoring invalid digest sha256:e8ea8559c77de95338e4f81cb2d735220f35b137365ed130485844cd71c4e144-540a24eb7e069c5b6441b77c2fc6f1123aa52b72a2f414e59d8183fee230e4d4-removing" time="2019-11-10T14:26:36.786448300Z" level=debug msg="Ignoring invalid digest sha256:efc0624bfe0aded8428f18148f62d2a29579593da3c0ee38db05dffeccfb49d1-7d70b18293adbdcec38c545fc70ad693ae8c638445a76790e27a4c98d670b322-removing" time="2019-11-10T14:26:36.786448300Z" level=debug msg="Ignoring invalid digest sha256:f24378c93086ee7f081cc3e04dd779481e3768bb4f1071a456231cf08bd7b9e0-0a278f4c867dfd943cc8e8a368527c10c0da6788c110decaeff2b6275d8a44f2-removing" time="2019-11-10T14:26:36.787447100Z" level=debug msg="Ignoring invalid digest sha256:f34c9e664e5e2be96cc69f277c185093995cf70234e8bc24ec5c15520e8b2915-e043e0cf46c5623976e958356513657633f80b964a87a08482405c582efc204a-removing" time="2019-11-10T14:26:36.787447100Z" level=debug msg="Ignoring invalid digest sha256:f57c85117cb1304577b9c55546539b6c9b919eb0c9df6f9b9585f02fe1a04bbf-167d442dd3bc87476381d73eb01e719515a01f143639c47cd5aa58e75620b502-removing" time="2019-11-10T14:26:36.788446600Z" level=debug msg="Ignoring invalid digest sha256:fd0927404d16171de999b5e2f2e5cca14159d7e11e0e2c723b34734ed416df0b-73fef3091bd9c76014054b3a7918d8f959669bfd58301532cdc5f5588e9197a5-removing" time="2019-11-10T14:26:37.443622600Z" level=debug msg="Max Concurrent Downloads: 3" time="2019-11-10T14:26:37.443622600Z" level=debug msg="Max Concurrent Uploads: 5" time="2019-11-10T14:26:37.445640400Z" level=debug msg="Max Download Attempts: 5" time="2019-11-10T14:26:37.445640400Z" level=info msg="Loading containers: start." time="2019-11-10T14:26:37.446609300Z" level=debug msg="Option Experimental: false" time="2019-11-10T14:26:37.446609300Z" level=debug msg="Option DefaultDriver: nat" time="2019-11-10T14:26:37.446609300Z" level=debug msg="Option DefaultNetwork: nat" time="2019-11-10T14:26:37.447623700Z" level=debug msg="Network Control Plane MTU: 1500" time="2019-11-10T14:26:37.448637500Z" level=info msg="Restoring existing overlay networks from HNS into docker" time="2019-11-10T14:26:37.448637500Z" level=debug msg="[GET]=>[/networks/] Request : " time="2019-11-10T14:26:37.454640900Z" level=debug msg="Network Response : [{"ActivityId":"1916DAC2-1ECB-4BAD-9866-F53855E60234","AdditionalParams":{},"CurrentEndpointCount":0,"Extensions":[{"Id":"E7C3B2F0-F3C5-48DF-AF2B-10FED6D72E7A","IsEnabled":false,"Name":"Microsoft Windows Filtering Platform"},{"Id":"E9B59CFA-2BE1-4B21-828F-B6FBDBDDC017","IsEnabled":false,"Name":"Microsoft Azure VFP Switch Extension"},{"Id":"EA24CD6C-D17A-4348-9190-09F0D5BE83DD","IsEnabled":true,"Name":"Microsoft NDIS Capture"}],"Flags":0,"Health":{"AddressNotificationMissedCount":0,"AddressNotificationSequenceNumber":0,"InterfaceNotificationMissedCount":0,"InterfaceNotificationSequenceNumber":0,"LastErrorCode":0,"LastUpdateTime":132176233665191108,"RouteNotificationMissedCount":0,"RouteNotificationSequenceNumber":0},"ID":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","IPv6":false,"LayeredOn":"E9D3332F-9838-4597-B19A-1927B9030180","MacPools":[{"EndMacAddress":"00-15-5D-AB-5F-FF","StartMacAddress":"00-15-5D-AB-50-00"}],"MaxConcurrentEndpoints":2,"Name":"nat","NatName":"ICS256EE402-8034-4D1D-9EB8-5D04222F1CB6","Policies":[],"Resources":{"AdditionalParams":{},"AllocationOrder":2,"Allocators":[{"AdapterNetCfgInstanceId":"{256EE402-8034-4D1D-9EB8-5D04222F1CB6}","AdditionalParams":{},"AllocationOrder":0,"CompartmendId":0,"Connected":true,"DevicelessNic":false,"EndpointNicGuid":"6D6970C9-4D8A-4953-A190-E3CBBC4B0720","EndpointPortGuid":"6701A3DA-BAAA-495A-90DF-82C9311301D8","Health":{"LastErrorCode":0,"LastUpdateTime":132176233666301166},"Hidden":false,"ID":"7F0E506A-8704-4195-B246-52D3DFBE3170","InterfaceGuid":"256EE402-8034-4D1D-9EB8-5D04222F1CB6","IsPolicy":false,"IsolationId":0,"MacAddress":"00-15-5D-AB-54-A5","ManagementPort":true,"NicFriendlyName":"nat","PreferredPortFriendlyName":"Container NIC 7f0e506a","State":3,"SwitchId":"426440BA-BC18-4200-9A57-8F6BD241B407","Tag":"Host Vnic","WaitForIpv6Interface":false,"nonPersistentPort":false},{"AdditionalParams":{},"AllocationOrder":1,"Dhcp":false,"Dns":false,"ExternalInterfaceConstraint":0,"Health":{"DHCPState":1,"DNSState":1,"ICSState":2,"LastErrorCode":0,"LastUpdateTime":132176233668019931},"ICSFlags":0,"ID":"734E3064-B385-4518-AC3E-811E19711423","IsPolicy":false,"Prefix":20,"PrivateInterfaceGUID":"256EE402-8034-4D1D-9EB8-5D04222F1CB6","State":3,"SubnetIPAddress":"172.25.144.0","Tag":"ICS"}],"Health":{"LastErrorCode":0,"LastUpdateTime":132176233666144915},"ID":"1916DAC2-1ECB-4BAD-9866-F53855E60234","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"AE2B38A4-0E9E-4D9A-BD17-F91BAC6E86D4"},"State":1,"Subnets":[{"AdditionalParams":{},"AddressPrefix":"172.25.144.0/20","GatewayAddress":"172.25.144.1","Health":{"LastErrorCode":0,"LastUpdateTime":132176233666301166},"ID":"759C2C0C-D4DC-43D2-8354-135B63CCF4EA","Policies":[],"State":0}],"TotalEndpoints":9,"Type":"nat","Version":38654705666}]" time="2019-11-10T14:26:37.514574000Z" level=debug msg="Network nat (b937364) restored" time="2019-11-10T14:26:37.629081000Z" level=debug msg="[GET]=>[/networks/] Request : " time="2019-11-10T14:26:37.633107400Z" level=debug msg="Network Response : [{"ActivityId":"1916DAC2-1ECB-4BAD-9866-F53855E60234","AdditionalParams":{},"CurrentEndpointCount":0,"Extensions":[{"Id":"E7C3B2F0-F3C5-48DF-AF2B-10FED6D72E7A","IsEnabled":false,"Name":"Microsoft Windows Filtering Platform"},{"Id":"E9B59CFA-2BE1-4B21-828F-B6FBDBDDC017","IsEnabled":false,"Name":"Microsoft Azure VFP Switch Extension"},{"Id":"EA24CD6C-D17A-4348-9190-09F0D5BE83DD","IsEnabled":true,"Name":"Microsoft NDIS Capture"}],"Flags":0,"Health":{"AddressNotificationMissedCount":0,"AddressNotificationSequenceNumber":0,"InterfaceNotificationMissedCount":0,"InterfaceNotificationSequenceNumber":0,"LastErrorCode":0,"LastUpdateTime":132176233665191108,"RouteNotificationMissedCount":0,"RouteNotificationSequenceNumber":0},"ID":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","IPv6":false,"LayeredOn":"E9D3332F-9838-4597-B19A-1927B9030180","MacPools":[{"EndMacAddress":"00-15-5D-AB-5F-FF","StartMacAddress":"00-15-5D-AB-50-00"}],"MaxConcurrentEndpoints":2,"Name":"nat","NatName":"ICS256EE402-8034-4D1D-9EB8-5D04222F1CB6","Policies":[],"Resources":{"AdditionalParams":{},"AllocationOrder":2,"Allocators":[{"AdapterNetCfgInstanceId":"{256EE402-8034-4D1D-9EB8-5D04222F1CB6}","AdditionalParams":{},"AllocationOrder":0,"CompartmendId":0,"Connected":true,"DevicelessNic":false,"EndpointNicGuid":"6D6970C9-4D8A-4953-A190-E3CBBC4B0720","EndpointPortGuid":"6701A3DA-BAAA-495A-90DF-82C9311301D8","Health":{"LastErrorCode":0,"LastUpdateTime":132176233666301166},"Hidden":false,"ID":"7F0E506A-8704-4195-B246-52D3DFBE3170","InterfaceGuid":"256EE402-8034-4D1D-9EB8-5D04222F1CB6","IsPolicy":false,"IsolationId":0,"MacAddress":"00-15-5D-AB-54-A5","ManagementPort":true,"NicFriendlyName":"nat","PreferredPortFriendlyName":"Container NIC 7f0e506a","State":3,"SwitchId":"426440BA-BC18-4200-9A57-8F6BD241B407","Tag":"Host Vnic","WaitForIpv6Interface":false,"nonPersistentPort":false},{"AdditionalParams":{},"AllocationOrder":1,"Dhcp":false,"Dns":false,"ExternalInterfaceConstraint":0,"Health":{"DHCPState":1,"DNSState":1,"ICSState":2,"LastErrorCode":0,"LastUpdateTime":132176233668019931},"ICSFlags":0,"ID":"734E3064-B385-4518-AC3E-811E19711423","IsPolicy":false,"Prefix":20,"PrivateInterfaceGUID":"256EE402-8034-4D1D-9EB8-5D04222F1CB6","State":3,"SubnetIPAddress":"172.25.144.0","Tag":"ICS"}],"Health":{"LastErrorCode":0,"LastUpdateTime":132176233666144915},"ID":"1916DAC2-1ECB-4BAD-9866-F53855E60234","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"AE2B38A4-0E9E-4D9A-BD17-F91BAC6E86D4"},"State":1,"Subnets":[{"AdditionalParams":{},"AddressPrefix":"172.25.144.0/20","GatewayAddress":"172.25.144.1","Health":{"LastErrorCode":0,"LastUpdateTime":132176233666301166},"ID":"759C2C0C-D4DC-43D2-8354-135B63CCF4EA","Policies":[],"State":0}],"TotalEndpoints":9,"Type":"nat","Version":38654705666}]" time="2019-11-10T14:26:37.650875200Z" level=debug msg="Launching DNS server for network "none"" time="2019-11-10T14:26:37.725304000Z" level=debug msg="releasing IPv4 pools from network nat (b9373645dc15c3ce44160106f301296cae7ffac4ebeef3c02b29b8fa8560419c)" time="2019-11-10T14:26:37.725304000Z" level=debug msg="ReleaseAddress(172.25.144.0/20, 172.25.144.1)" time="2019-11-10T14:26:37.727310800Z" level=debug msg="ReleasePool(172.25.144.0/20)" time="2019-11-10T14:26:37.737303400Z" level=debug msg="cleanupServiceDiscovery for network:b9373645dc15c3ce44160106f301296cae7ffac4ebeef3c02b29b8fa8560419c" time="2019-11-10T14:26:37.763972300Z" level=debug msg="Allocating IPv4 pools for network nat (b9373645dc15c3ce44160106f301296cae7ffac4ebeef3c02b29b8fa8560419c)" time="2019-11-10T14:26:37.763972300Z" level=debug msg="RequestPool(LocalDefault, 172.25.144.0/20, , map[], false)" time="2019-11-10T14:26:37.766034100Z" level=debug msg="RequestAddress(172.25.144.0/20, 172.25.144.1, map[RequestAddressType:com.docker.network.gateway])" time="2019-11-10T14:26:37.766034100Z" level=debug msg="[GET]=>[/endpoints/] Request : " time="2019-11-10T14:26:37.770035900Z" level=debug msg="Network Response : []" time="2019-11-10T14:26:37.778032600Z" level=debug msg="Launching DNS server for network "nat"" time="2019-11-10T14:26:37.779032600Z" level=debug msg="[GET]=>[/networks/5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2] Request : " time="2019-11-10T14:26:37.783139000Z" level=debug msg="Network Response : {"ActivityId":"1916DAC2-1ECB-4BAD-9866-F53855E60234","AdditionalParams":{},"CurrentEndpointCount":0,"Extensions":[{"Id":"E7C3B2F0-F3C5-48DF-AF2B-10FED6D72E7A","IsEnabled":false,"Name":"Microsoft Windows Filtering Platform"},{"Id":"E9B59CFA-2BE1-4B21-828F-B6FBDBDDC017","IsEnabled":false,"Name":"Microsoft Azure VFP Switch Extension"},{"Id":"EA24CD6C-D17A-4348-9190-09F0D5BE83DD","IsEnabled":true,"Name":"Microsoft NDIS Capture"}],"Flags":0,"Health":{"AddressNotificationMissedCount":0,"AddressNotificationSequenceNumber":0,"InterfaceNotificationMissedCount":0,"InterfaceNotificationSequenceNumber":0,"LastErrorCode":0,"LastUpdateTime":132176233665191108,"RouteNotificationMissedCount":0,"RouteNotificationSequenceNumber":0},"ID":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","IPv6":false,"LayeredOn":"E9D3332F-9838-4597-B19A-1927B9030180","MacPools":[{"EndMacAddress":"00-15-5D-AB-5F-FF","StartMacAddress":"00-15-5D-AB-50-00"}],"MaxConcurrentEndpoints":2,"Name":"nat","NatName":"ICS256EE402-8034-4D1D-9EB8-5D04222F1CB6","Policies":[],"Resources":{"AdditionalParams":{},"AllocationOrder":2,"Allocators":[{"AdapterNetCfgInstanceId":"{256EE402-8034-4D1D-9EB8-5D04222F1CB6}","AdditionalParams":{},"AllocationOrder":0,"CompartmendId":0,"Connected":true,"DevicelessNic":false,"EndpointNicGuid":"6D6970C9-4D8A-4953-A190-E3CBBC4B0720","EndpointPortGuid":"6701A3DA-BAAA-495A-90DF-82C9311301D8","Health":{"LastErrorCode":0,"LastUpdateTime":132176233666301166},"Hidden":false,"ID":"7F0E506A-8704-4195-B246-52D3DFBE3170","InterfaceGuid":"256EE402-8034-4D1D-9EB8-5D04222F1CB6","IsPolicy":false,"IsolationId":0,"MacAddress":"00-15-5D-AB-54-A5","ManagementPort":true,"NicFriendlyName":"nat","PreferredPortFriendlyName":"Container NIC 7f0e506a","State":3,"SwitchId":"426440BA-BC18-4200-9A57-8F6BD241B407","Tag":"Host Vnic","WaitForIpv6Interface":false,"nonPersistentPort":false},{"AdditionalParams":{},"AllocationOrder":1,"Dhcp":false,"Dns":false,"ExternalInterfaceConstraint":0,"Health":{"DHCPState":1,"DNSState":1,"ICSState":2,"LastErrorCode":0,"LastUpdateTime":132176233668019931},"ICSFlags":0,"ID":"734E3064-B385-4518-AC3E-811E19711423","IsPolicy":false,"Prefix":20,"PrivateInterfaceGUID":"256EE402-8034-4D1D-9EB8-5D04222F1CB6","State":3,"SubnetIPAddress":"172.25.144.0","Tag":"ICS"}],"Health":{"LastErrorCode":0,"LastUpdateTime":132176233666144915},"ID":"1916DAC2-1ECB-4BAD-9866-F53855E60234","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"AE2B38A4-0E9E-4D9A-BD17-F91BAC6E86D4"},"State":1,"Subnets":[{"AdditionalParams":{},"AddressPrefix":"172.25.144.0/20","GatewayAddress":"172.25.144.1","Health":{"LastErrorCode":0,"LastUpdateTime":132176233666301166},"ID":"759C2C0C-D4DC-43D2-8354-135B63CCF4EA","Policies":[],"State":0}],"TotalEndpoints":9,"Type":"nat","Version":38654705666}" time="2019-11-10T14:26:37.785250000Z" level=debug msg="Binding a resolver on network nat gateway 172.25.144.1" time="2019-11-10T14:26:37.786441800Z" level=debug msg="Resolver bound successfully for network nat" time="2019-11-10T14:26:37.819352700Z" level=info msg="Loading containers: done." time="2019-11-10T14:26:37.830248600Z" level=info msg="Docker daemon" commit=51d49a8ccb graphdriver(s)=windowsfilter version=0.0.0-dev time="2019-11-10T14:26:37.831309200Z" level=info msg="Daemon has completed initialization" time="2019-11-10T14:26:37.874052500Z" level=debug msg="Registering routers" time="2019-11-10T14:26:37.874052500Z" level=debug msg="Registering GET, /containers/{name:.}/checkpoints" time="2019-11-10T14:26:37.875052900Z" level=debug msg="Registering POST, /containers/{name:.}/checkpoints" time="2019-11-10T14:26:37.876050400Z" level=debug msg="Registering DELETE, /containers/{name}/checkpoints/{checkpoint}" time="2019-11-10T14:26:37.876050400Z" level=debug msg="Registering HEAD, /containers/{name:.}/archive" time="2019-11-10T14:26:37.877053600Z" level=debug msg="Registering GET, /containers/json" time="2019-11-10T14:26:37.874052500Z" level=debug msg="Config reload - waiting signal at Global\docker-daemon-config-3152" time="2019-11-10T14:26:37.877053600Z" level=debug msg="Registering GET, /containers/{name:.}/export" time="2019-11-10T14:26:37.878039900Z" level=debug msg="Registering GET, /containers/{name:.}/changes" time="2019-11-10T14:26:37.878039900Z" level=debug msg="Registering GET, /containers/{name:.}/json" time="2019-11-10T14:26:37.879048500Z" level=debug msg="Registering GET, /containers/{name:.}/top" time="2019-11-10T14:26:37.879048500Z" level=debug msg="Registering GET, /containers/{name:.}/logs" time="2019-11-10T14:26:37.880051000Z" level=debug msg="Registering GET, /containers/{name:.}/stats" time="2019-11-10T14:26:37.880051000Z" level=debug msg="Registering GET, /containers/{name:.}/attach/ws" time="2019-11-10T14:26:37.881047900Z" level=debug msg="Registering GET, /exec/{id:.}/json" time="2019-11-10T14:26:37.881047900Z" level=debug msg="Registering GET, /containers/{name:.}/archive" time="2019-11-10T14:26:37.882051300Z" level=debug msg="Registering POST, /containers/create" time="2019-11-10T14:26:37.882051300Z" level=debug msg="Registering POST, /containers/{name:.}/kill" time="2019-11-10T14:26:37.882051300Z" level=debug msg="Registering POST, /containers/{name:.}/pause" time="2019-11-10T14:26:37.883048900Z" level=debug msg="Registering POST, /containers/{name:.}/unpause" time="2019-11-10T14:26:37.883048900Z" level=debug msg="Registering POST, /containers/{name:.}/restart" time="2019-11-10T14:26:37.884051600Z" level=debug msg="Registering POST, /containers/{name:.}/start" time="2019-11-10T14:26:37.886045900Z" level=debug msg="Registering POST, /containers/{name:.}/stop" time="2019-11-10T14:26:37.887046300Z" level=debug msg="Registering POST, /containers/{name:.}/wait" time="2019-11-10T14:26:37.887046300Z" level=debug msg="Registering POST, /containers/{name:.}/resize" time="2019-11-10T14:26:37.888047800Z" level=debug msg="Registering POST, /containers/{name:.}/attach" time="2019-11-10T14:26:37.888047800Z" level=debug msg="Registering POST, /containers/{name:.}/copy" time="2019-11-10T14:26:37.888047800Z" level=debug msg="Registering POST, /containers/{name:.}/exec" time="2019-11-10T14:26:37.889048500Z" level=debug msg="Registering POST, /exec/{name:.}/start" time="2019-11-10T14:26:37.889048500Z" level=debug msg="Registering POST, /exec/{name:.}/resize" time="2019-11-10T14:26:37.890050600Z" level=debug msg="Registering POST, /containers/{name:.}/rename" time="2019-11-10T14:26:37.890050600Z" level=debug msg="Registering POST, /containers/{name:.}/update" time="2019-11-10T14:26:37.891052200Z" level=debug msg="Registering POST, /containers/prune" time="2019-11-10T14:26:37.891052200Z" level=debug msg="Registering POST, /commit" time="2019-11-10T14:26:37.891052200Z" level=debug msg="Registering PUT, /containers/{name:.}/archive" time="2019-11-10T14:26:37.892047700Z" level=debug msg="Registering DELETE, /containers/{name:.}" time="2019-11-10T14:26:37.892047700Z" level=debug msg="Registering GET, /images/json" time="2019-11-10T14:26:37.893050000Z" level=debug msg="Registering GET, /images/search" time="2019-11-10T14:26:37.893050000Z" level=debug msg="Registering GET, /images/get" time="2019-11-10T14:26:37.894050600Z" level=debug msg="Registering GET, /images/{name:.}/get" time="2019-11-10T14:26:37.894050600Z" level=debug msg="Registering GET, /images/{name:.}/history" time="2019-11-10T14:26:37.895030700Z" level=debug msg="Registering GET, /images/{name:.}/json" time="2019-11-10T14:26:37.897533400Z" level=debug msg="Registering POST, /images/load" time="2019-11-10T14:26:37.897533400Z" level=debug msg="Registering POST, /images/create" time="2019-11-10T14:26:37.897533400Z" level=debug msg="Registering POST, /images/{name:.}/push" time="2019-11-10T14:26:37.898571600Z" level=debug msg="Registering POST, /images/{name:.}/tag" time="2019-11-10T14:26:37.898571600Z" level=debug msg="Registering POST, /images/prune" time="2019-11-10T14:26:37.899591600Z" level=debug msg="Registering DELETE, /images/{name:.}" time="2019-11-10T14:26:37.899591600Z" level=debug msg="Registering OPTIONS, /{anyroute:.}" time="2019-11-10T14:26:37.899591600Z" level=debug msg="Registering GET, /_ping" time="2019-11-10T14:26:37.900542000Z" level=debug msg="Registering HEAD, /_ping" time="2019-11-10T14:26:37.901592500Z" level=debug msg="Registering GET, /events" time="2019-11-10T14:26:37.901592500Z" level=debug msg="Registering GET, /info" time="2019-11-10T14:26:37.903593000Z" level=debug msg="Registering GET, /version" time="2019-11-10T14:26:37.903593000Z" level=debug msg="Registering GET, /system/df" time="2019-11-10T14:26:37.904592400Z" level=debug msg="Registering POST, /auth" time="2019-11-10T14:26:37.907561700Z" level=debug msg="Registering GET, /volumes" time="2019-11-10T14:26:37.908592200Z" level=debug msg="Registering GET, /volumes/{name:.}" time="2019-11-10T14:26:37.908592200Z" level=debug msg="Registering POST, /volumes/create" time="2019-11-10T14:26:37.909565000Z" level=debug msg="Registering POST, /volumes/prune" time="2019-11-10T14:26:37.910594300Z" level=debug msg="Registering DELETE, /volumes/{name:.}" time="2019-11-10T14:26:37.910594300Z" level=debug msg="Registering POST, /build" time="2019-11-10T14:26:37.911591900Z" level=debug msg="Registering POST, /build/prune" time="2019-11-10T14:26:37.911591900Z" level=debug msg="Registering POST, /build/cancel" time="2019-11-10T14:26:37.912591600Z" level=debug msg="Registering POST, /session" time="2019-11-10T14:26:37.912591600Z" level=debug msg="Registering POST, /swarm/init" time="2019-11-10T14:26:37.912591600Z" level=debug msg="Registering POST, /swarm/join" time="2019-11-10T14:26:37.913590600Z" level=debug msg="Registering POST, /swarm/leave" time="2019-11-10T14:26:37.913590600Z" level=debug msg="Registering GET, /swarm" time="2019-11-10T14:26:37.914593100Z" level=debug msg="Registering GET, /swarm/unlockkey" time="2019-11-10T14:26:37.914593100Z" level=debug msg="Registering POST, /swarm/update" time="2019-11-10T14:26:37.915564900Z" level=debug msg="Registering POST, /swarm/unlock" time="2019-11-10T14:26:37.917540800Z" level=debug msg="Registering GET, /services" time="2019-11-10T14:26:37.917540800Z" level=debug msg="Registering GET, /services/{id}" time="2019-11-10T14:26:37.918591500Z" level=debug msg="Registering POST, /services/create" time="2019-11-10T14:26:37.918591500Z" level=debug msg="Registering POST, /services/{id}/update" time="2019-11-10T14:26:37.918591500Z" level=debug msg="Registering DELETE, /services/{id}" time="2019-11-10T14:26:37.919592300Z" level=debug msg="Registering GET, /services/{id}/logs" time="2019-11-10T14:26:37.919592300Z" level=debug msg="Registering GET, /nodes" time="2019-11-10T14:26:37.920590400Z" level=debug msg="Registering GET, /nodes/{id}" time="2019-11-10T14:26:37.920590400Z" level=debug msg="Registering DELETE, /nodes/{id}" time="2019-11-10T14:26:37.921541800Z" level=debug msg="Registering POST, /nodes/{id}/update" time="2019-11-10T14:26:37.921541800Z" level=debug msg="Registering GET, /tasks" time="2019-11-10T14:26:37.922592300Z" level=debug msg="Registering GET, /tasks/{id}" time="2019-11-10T14:26:37.922592300Z" level=debug msg="Registering GET, /tasks/{id}/logs" time="2019-11-10T14:26:37.922592300Z" level=debug msg="Registering GET, /secrets" time="2019-11-10T14:26:37.923569500Z" level=debug msg="Registering POST, /secrets/create" time="2019-11-10T14:26:37.923569500Z" level=debug msg="Registering DELETE, /secrets/{id}" time="2019-11-10T14:26:37.924591900Z" level=debug msg="Registering GET, /secrets/{id}" time="2019-11-10T14:26:37.924591900Z" level=debug msg="Registering POST, /secrets/{id}/update" time="2019-11-10T14:26:37.925593800Z" level=debug msg="Registering GET, /configs" time="2019-11-10T14:26:37.927588600Z" level=debug msg="Registering POST, /configs/create" time="2019-11-10T14:26:37.927588600Z" level=debug msg="Registering DELETE, /configs/{id}" time="2019-11-10T14:26:37.927588600Z" level=debug msg="Registering GET, /configs/{id}" time="2019-11-10T14:26:37.928563100Z" level=debug msg="Registering POST, /configs/{id}/update" time="2019-11-10T14:26:37.928563100Z" level=debug msg="Registering GET, /plugins" time="2019-11-10T14:26:37.928563100Z" level=debug msg="Registering GET, /plugins/{name:.}/json" time="2019-11-10T14:26:37.929593300Z" level=debug msg="Registering GET, /plugins/privileges" time="2019-11-10T14:26:37.930592400Z" level=debug msg="Registering DELETE, /plugins/{name:.}" time="2019-11-10T14:26:37.931592800Z" level=debug msg="Registering POST, /plugins/{name:.}/enable" time="2019-11-10T14:26:37.931592800Z" level=debug msg="Registering POST, /plugins/{name:.}/disable" time="2019-11-10T14:26:37.932551200Z" level=debug msg="Registering POST, /plugins/pull" time="2019-11-10T14:26:37.933592200Z" level=debug msg="Registering POST, /plugins/{name:.}/push" time="2019-11-10T14:26:37.934590000Z" level=debug msg="Registering POST, /plugins/{name:.}/upgrade" time="2019-11-10T14:26:37.936589200Z" level=debug msg="Registering POST, /plugins/{name:.}/set" time="2019-11-10T14:26:37.937590900Z" level=debug msg="Registering POST, /plugins/create" time="2019-11-10T14:26:37.937590900Z" level=debug msg="Registering GET, /distribution/{name:.}/json" time="2019-11-10T14:26:37.938593600Z" level=debug msg="Registering POST, /grpc" time="2019-11-10T14:26:37.938593600Z" level=debug msg="Registering GET, /networks" time="2019-11-10T14:26:37.939592200Z" level=debug msg="Registering GET, /networks/" time="2019-11-10T14:26:37.939592200Z" level=debug msg="Registering GET, /networks/{id:.+}" time="2019-11-10T14:26:37.940590800Z" level=debug msg="Registering POST, /networks/create" time="2019-11-10T14:26:37.940590800Z" level=debug msg="Registering POST, /networks/{id:.}/connect" time="2019-11-10T14:26:37.940590800Z" level=debug msg="Registering POST, /networks/{id:.}/disconnect" time="2019-11-10T14:26:37.941586400Z" level=debug msg="Registering POST, /networks/prune" time="2019-11-10T14:26:37.941586400Z" level=debug msg="Registering DELETE, /networks/{id:.*}" time="2019-11-10T14:26:37.942594100Z" level=info msg="API listen on //./pipe/docker_engine" time="2019-11-10T14:26:42.189865000Z" level=debug msg="Calling HEAD /_ping" time="2019-11-10T14:26:42.196865600Z" level=debug msg="Calling POST /v1.40/containers/create" time="2019-11-10T14:26:42.197866800Z" level=debug msg="form data: {"AttachStderr":true,"AttachStdin":false,"AttachStdout":true,"Cmd":["true"],"Domainname":"","Entrypoint":null,"Env":[],"HostConfig":{"AutoRemove":true,"Binds":null,"BlkioDeviceReadBps":null,"BlkioDeviceReadIOps":null,"BlkioDeviceWriteBps":null,"BlkioDeviceWriteIOps":null,"BlkioWeight":0,"BlkioWeightDevice":[],"CapAdd":null,"CapDrop":null,"Capabilities":null,"Cgroup":"","CgroupParent":"","ConsoleSize":[61,207],"ContainerIDFile":"","CpuCount":0,"CpuPercent":0,"CpuPeriod":0,"CpuQuota":0,"CpuRealtimePeriod":0,"CpuRealtimeRuntime":0,"CpuShares":0,"CpusetCpus":"","CpusetMems":"","DeviceCgroupRules":null,"DeviceRequests":null,"Devices":[],"Dns":[],"DnsOptions":[],"DnsSearch":[],"ExtraHosts":null,"GroupAdd":null,"IOMaximumBandwidth":0,"IOMaximumIOps":0,"IpcMode":"","Isolation":"","KernelMemory":0,"KernelMemoryTCP":0,"Links":null,"LogConfig":{"Config":{},"Type":""},"MaskedPaths":null,"Memory":0,"MemoryReservation":0,"MemorySwap":0,"MemorySwappiness":-1,"NanoCpus":0,"NetworkMode":"default","OomKillDisable":false,"OomScoreAdj":0,"PidMode":"","PidsLimit":0,"PortBindings":{},"Privileged":false,"PublishAllPorts":false,"ReadonlyPaths":null,"ReadonlyRootfs":false,"RestartPolicy":{"MaximumRetryCount":0,"Name":"no"},"SecurityOpt":null,"ShmSize":0,"UTSMode":"","Ulimits":null,"UsernsMode":"","VolumeDriver":"","VolumesFrom":null},"Hostname":"","Image":"mcr.microsoft.com/windows/servercore:ltsc2019","Labels":{},"NetworkingConfig":{"EndpointsConfig":{}},"OnBuild":null,"OpenStdin":false,"StdinOnce":false,"Tty":false,"User":"","Volumes":{},"WorkingDir":""}" time="2019-11-10T14:26:42.202868000Z" level=debug msg="hcsshim::GetLayerMountPath" path="C:\ProgramData\docker\windowsfilter\e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3" time="2019-11-10T14:26:42.202868000Z" level=debug msg="Calling proc (1)" path="C:\ProgramData\docker\windowsfilter\e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3" time="2019-11-10T14:26:42.203867400Z" level=debug msg="Calling proc (2)" path="C:\ProgramData\docker\windowsfilter\e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3" time="2019-11-10T14:26:42.203867400Z" level=debug msg="hcsshim::GetLayerMountPath - succeeded" mountPath="C:\ProgramData\docker\windowsfilter\e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3" path="C:\ProgramData\docker\windowsfilter\e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3" time="2019-11-10T14:26:42.204868100Z" level=debug msg="hcsshim::CreateScratchLayer" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.204868100Z" level=debug msg="hcsshim::NameToGuid" name=e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3 time="2019-11-10T14:26:42.205865200Z" level=debug msg="hcsshim::NameToGuid - succeeded" guid=f3fa31ff-3646-5aa8-aae6-fd07fa98dc11 name=e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3 time="2019-11-10T14:26:42.205865200Z" level=debug msg="hcsshim::NameToGuid" name=e98a4f90ea0b0b172cbc2a6520403c18c5be676fc98d967d5112940318664d8e time="2019-11-10T14:26:42.206863300Z" level=debug msg="hcsshim::NameToGuid - succeeded" guid=aee45bbb-f900-54e3-8b4a-667e447fdf14 name=e98a4f90ea0b0b172cbc2a6520403c18c5be676fc98d967d5112940318664d8e time="2019-11-10T14:26:42.211848500Z" level=debug msg="hcsshim::CreateScratchLayer - succeeded" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.229293500Z" level=debug msg="Calling POST /v1.40/containers/f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56/attach?stderr=1&stdout=1&stream=1" time="2019-11-10T14:26:42.229293500Z" level=debug msg="attach: stdout: begin" time="2019-11-10T14:26:42.231286200Z" level=debug msg="attach: stderr: begin" time="2019-11-10T14:26:42.231286200Z" level=debug msg="Calling POST /v1.40/containers/f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56/wait?condition=removed" time="2019-11-10T14:26:42.232292000Z" level=debug msg="Calling POST /v1.40/containers/f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56/start" time="2019-11-10T14:26:42.233295000Z" level=debug msg="WindowsGraphDriver Get() id f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 mountLabel " time="2019-11-10T14:26:42.235290200Z" level=debug msg="hcsshim::ActivateLayer" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.279684900Z" level=debug msg="hcsshim::ActivateLayer - succeeded" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.300517700Z" level=debug msg="hcsshim::PrepareLayer" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.306074900Z" level=debug msg="hcsshim::NameToGuid" name=e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3 time="2019-11-10T14:26:42.309458500Z" level=debug msg="hcsshim::NameToGuid - succeeded" guid=f3fa31ff-3646-5aa8-aae6-fd07fa98dc11 name=e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3 time="2019-11-10T14:26:42.310449900Z" level=debug msg="hcsshim::NameToGuid" name=e98a4f90ea0b0b172cbc2a6520403c18c5be676fc98d967d5112940318664d8e time="2019-11-10T14:26:42.311458300Z" level=debug msg="hcsshim::NameToGuid - succeeded" guid=aee45bbb-f900-54e3-8b4a-667e447fdf14 name=e98a4f90ea0b0b172cbc2a6520403c18c5be676fc98d967d5112940318664d8e time="2019-11-10T14:26:42.341719300Z" level=debug msg="hcsshim::PrepareLayer - succeeded" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.342753600Z" level=debug msg="hcsshim::GetLayerMountPath" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.343816500Z" level=debug msg="Calling proc (1)" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.346857400Z" level=debug msg="Calling proc (2)" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.355105400Z" level=debug msg="hcsshim::GetLayerMountPath - succeeded" mountPath="\\?\Volume{c8d2d088-e33c-4b87-9a28-1aeb6c3ad286}" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:42.355190500Z" level=debug msg="container mounted via layerStore: &{\\?\Volume{c8d2d088-e33c-4b87-9a28-1aeb6c3ad286} 0x3554460 0x3554460}" time="2019-11-10T14:26:42.376254500Z" level=debug msg="Assigning addresses for endpoint gifted_hugle's interface on network nat" time="2019-11-10T14:26:42.377253200Z" level=debug msg="RequestAddress(172.25.144.0/20, <nil>, map[])" time="2019-11-10T14:26:42.378248200Z" level=debug msg="endpointStruct.EnableInternalDNS =[false]" time="2019-11-10T14:26:42.379254100Z" level=debug msg="[POST]=>[/endpoints/] Request : {"VirtualNetwork":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","EnableInternalDNS":true}" time="2019-11-10T14:26:42.388256000Z" level=debug msg="Network Response : {"ActivityId":"9AC791A8-64D1-472F-8747-416171579605","AdditionalParams":{},"CreateProcessingStartTime":132178696023852504,"DNSServerList":"172.25.144.1,172.31.0.2","DNSSuffix":"us-east-2.compute.internal","EnableInternalDNS":true,"EnableLowInterfaceMetric":true,"EncapOverhead":0,"GatewayAddress":"172.25.144.1","Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"7EB7BC15-4510-4225-8535-9F121F8FC438","IPAddress":"172.25.145.155","MacAddress":"00-15-5D-AB-58-C6","Name":"Ethernet","Policies":[],"PrefixLength":20,"Resources":{"AdditionalParams":{},"AllocationOrder":0,"Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"9AC791A8-64D1-472F-8747-416171579605","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"1916DAC2-1ECB-4BAD-9866-F53855E60234"},"SharedContainers":[],"State":1,"Type":"nat","Version":38654705666,"VirtualNetwork":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","VirtualNetworkName":"nat"}" time="2019-11-10T14:26:42.408028500Z" level=debug msg="Assigning addresses for endpoint gifted_hugle's interface on network nat" time="2019-11-10T14:26:42.447700500Z" level=debug msg="[GET]=>[/endpoints/7EB7BC15-4510-4225-8535-9F121F8FC438] Request : " time="2019-11-10T14:26:42.451696800Z" level=debug msg="Network Response : {"ActivityId":"9AC791A8-64D1-472F-8747-416171579605","AdditionalParams":{},"CreateProcessingStartTime":132178696023852504,"DNSServerList":"172.25.144.1,172.31.0.2","DNSSuffix":"us-east-2.compute.internal","EnableInternalDNS":true,"EnableLowInterfaceMetric":true,"EncapOverhead":0,"GatewayAddress":"172.25.144.1","Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"7EB7BC15-4510-4225-8535-9F121F8FC438","IPAddress":"172.25.145.155","MacAddress":"00-15-5D-AB-58-C6","Name":"Ethernet","Policies":[],"PrefixLength":20,"Resources":{"AdditionalParams":{},"AllocationOrder":0,"Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"9AC791A8-64D1-472F-8747-416171579605","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"1916DAC2-1ECB-4BAD-9866-F53855E60234"},"SharedContainers":[],"State":1,"Type":"nat","Version":38654705666,"VirtualNetwork":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","VirtualNetworkName":"nat"}" time="2019-11-10T14:26:42.452656000Z" level=debug msg="[GET]=>[/endpoints/7EB7BC15-4510-4225-8535-9F121F8FC438] Request : " time="2019-11-10T14:26:42.456696800Z" level=debug msg="Network Response : {"ActivityId":"9AC791A8-64D1-472F-8747-416171579605","AdditionalParams":{},"CreateProcessingStartTime":132178696023852504,"DNSServerList":"172.25.144.1,172.31.0.2","DNSSuffix":"us-east-2.compute.internal","EnableInternalDNS":true,"EnableLowInterfaceMetric":true,"EncapOverhead":0,"GatewayAddress":"172.25.144.1","Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"7EB7BC15-4510-4225-8535-9F121F8FC438","IPAddress":"172.25.145.155","MacAddress":"00-15-5D-AB-58-C6","Name":"Ethernet","Policies":[],"PrefixLength":20,"Resources":{"AdditionalParams":{},"AllocationOrder":0,"Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"9AC791A8-64D1-472F-8747-416171579605","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"1916DAC2-1ECB-4BAD-9866-F53855E60234"},"SharedContainers":[],"State":1,"Type":"nat","Version":38654705666,"VirtualNetwork":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","VirtualNetworkName":"nat"}" time="2019-11-10T14:26:42.467693800Z" level=debug msg="Programming external connectivity on endpoint gifted_hugle (dd9ab8e3a09ae75da961c66251ed422c5b8de594407f68956a45de50007d5d63)" time="2019-11-10T14:26:42.468696800Z" level=debug msg="EnableService f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 START" time="2019-11-10T14:26:42.469698900Z" level=debug msg="EnableService f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 DONE" time="2019-11-10T14:26:42.560066000Z" level=debug msg="Generated spec: {"ociVersion":"1.0.1-dev","process":{"user":{"uid":0,"gid":0},"args":["true"],"cwd":"C:\\"},"root":{"path":"\\\\?\\Volume{c8d2d088-e33c-4b87-9a28-1aeb6c3ad286}\\"},"hostname":"f813b883dfd8","windows":{"layerFolders":["C:\\ProgramData\\docker\\windowsfilter\\e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3","C:\\ProgramData\\docker\\windowsfilter\\e98a4f90ea0b0b172cbc2a6520403c18c5be676fc98d967d5112940318664d8e","C:\\ProgramData\\docker\\windowsfilter\\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56"],"ignoreFlushesDuringBoot":true,"network":{"endpointList":["7EB7BC15-4510-4225-8535-9F121F8FC438"],"allowUnqualifiedDNSQuery":true}}}" time="2019-11-10T14:26:42.561063900Z" level=debug msg="hcsshim::NameToGuid" name=e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3 time="2019-11-10T14:26:42.563067300Z" level=debug msg="hcsshim::NameToGuid - succeeded" guid=f3fa31ff-3646-5aa8-aae6-fd07fa98dc11 name=e280ae88fe4afde08717cb8a598cb480a554bfd79316047592f1a3899997e6f3 time="2019-11-10T14:26:42.563067300Z" level=debug msg="hcsshim::NameToGuid" name=e98a4f90ea0b0b172cbc2a6520403c18c5be676fc98d967d5112940318664d8e time="2019-11-10T14:26:42.564053800Z" level=debug msg="hcsshim::NameToGuid - succeeded" guid=aee45bbb-f900-54e3-8b4a-667e447fdf14 name=e98a4f90ea0b0b172cbc2a6520403c18c5be676fc98d967d5112940318664d8e time="2019-11-10T14:26:43.002563800Z" level=debug msg="HCS notification" notification-type=SystemCreateCompleted system-id=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 time="2019-11-10T14:26:43.006618600Z" level=debug msg="starting container" container=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 module=libcontainerd namespace=moby time="2019-11-10T14:26:43.544852900Z" level=debug msg="HCS notification" notification-type=SystemStartCompleted system-id=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 time="2019-11-10T14:26:43.557728000Z" level=debug msg="createWindows() completed successfully" container=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 module=libcontainerd namespace=moby time="2019-11-10T14:26:43.558726700Z" level=debug msg="start commandLine: true" container=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 module=libcontainerd namespace=moby time="2019-11-10T14:26:43.558726700Z" level=info msg="sending event" container=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 event=create module=libcontainerd namespace=moby time="2019-11-10T14:26:43.675323400Z" level=debug msg="Error from computeSystem.createProcess" spanID=d07181d4cec8fa36 traceID=393c3291e40931fbdb081ae09a5faac8 time="2019-11-10T14:26:43.685617500Z" level=error msg="CreateProcess() failed" container=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 error="container f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 encountered an error during hcsshim::System::CreateProcessNoStdio: failure in a Windows system call: The system cannot find the file specified. (0x2) extra info: {"CommandLine":"true","WorkingDirectory":"C:\\","CreateStdInPipe":true,"CreateStdOutPipe":true,"CreateStdErrPipe":true,"ConsoleSize":[0,0]}" module=libcontainerd namespace=moby time="2019-11-10T14:26:44.199599900Z" level=debug msg="HCS notification" notification-type=SystemExited system-id=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 time="2019-11-10T14:26:44.213418400Z" level=debug msg="system exited" spanID=c9af411696af0bad traceID=0544eebd1705053ad568cd6c9524589d time="2019-11-10T14:26:44.214414900Z" level=debug msg="completed container shutdown" container=f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 module=libcontainerd namespace=moby time="2019-11-10T14:26:44.220419400Z" level=debug msg="attach: stdout: end" time="2019-11-10T14:26:44.221417000Z" level=debug msg="attach: stderr: end" time="2019-11-10T14:26:44.223417100Z" level=debug msg="attach done" time="2019-11-10T14:26:44.256649700Z" level=debug msg="Revoking external connectivity on endpoint gifted_hugle (dd9ab8e3a09ae75da961c66251ed422c5b8de594407f68956a45de50007d5d63)" time="2019-11-10T14:26:44.259323700Z" level=debug msg="[GET]=>[/endpoints/7EB7BC15-4510-4225-8535-9F121F8FC438] Request : " time="2019-11-10T14:26:44.272540200Z" level=debug msg="Network Response : {"ActivityId":"9AC791A8-64D1-472F-8747-416171579605","AdditionalParams":{},"CreateProcessingStartTime":132178696023852504,"DNSServerList":"172.25.144.1,172.31.0.2","DNSSuffix":"us-east-2.compute.internal","EnableInternalDNS":true,"EnableLowInterfaceMetric":true,"EncapOverhead":0,"GatewayAddress":"172.25.144.1","Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"7EB7BC15-4510-4225-8535-9F121F8FC438","IPAddress":"172.25.145.155","MacAddress":"00-15-5D-AB-58-C6","Name":"Ethernet","Policies":[],"PrefixLength":20,"RemoveProcessingStartTime":132178696040589953,"Resources":{"AdditionalParams":{},"AllocationOrder":2,"Allocators":[],"Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"9AC791A8-64D1-472F-8747-416171579605","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"1916DAC2-1ECB-4BAD-9866-F53855E60234"},"SharedContainers":[],"StartTime":132178696029980910,"State":4,"Type":"nat","Version":38654705666,"VirtualNetwork":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","VirtualNetworkName":"nat"}" time="2019-11-10T14:26:44.277533600Z" level=debug msg="[GET]=>[/endpoints/7EB7BC15-4510-4225-8535-9F121F8FC438] Request : " time="2019-11-10T14:26:44.285496600Z" level=debug msg="Network Response : {"ActivityId":"9AC791A8-64D1-472F-8747-416171579605","AdditionalParams":{},"CreateProcessingStartTime":132178696023852504,"DNSServerList":"172.25.144.1,172.31.0.2","DNSSuffix":"us-east-2.compute.internal","EnableInternalDNS":true,"EnableLowInterfaceMetric":true,"EncapOverhead":0,"GatewayAddress":"172.25.144.1","Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"7EB7BC15-4510-4225-8535-9F121F8FC438","IPAddress":"172.25.145.155","MacAddress":"00-15-5D-AB-58-C6","Name":"Ethernet","Policies":[],"PrefixLength":20,"RemoveProcessingStartTime":132178696040589953,"Resources":{"AdditionalParams":{},"AllocationOrder":2,"Allocators":[],"Health":{"LastErrorCode":0,"LastUpdateTime":132178696023822506},"ID":"9AC791A8-64D1-472F-8747-416171579605","PortOperationTime":0,"State":1,"SwitchOperationTime":0,"VfpOperationTime":0,"parentId":"1916DAC2-1ECB-4BAD-9866-F53855E60234"},"SharedContainers":[],"StartTime":132178696029980910,"State":4,"Type":"nat","Version":38654705666,"VirtualNetwork":"5C242C1E-8E0F-4F65-B9E0-A0B7A6EA41E2","VirtualNetworkName":"nat"}" time="2019-11-10T14:26:44.317715500Z" level=debug msg="[DELETE]=>[/endpoints/7EB7BC15-4510-4225-8535-9F121F8FC438] Request : " time="2019-11-10T14:26:44.336295400Z" level=debug msg="Releasing addresses for endpoint gifted_hugle's interface on network nat" time="2019-11-10T14:26:44.336295400Z" level=debug msg="ReleaseAddress(172.25.144.0/20, 172.25.145.155)" time="2019-11-10T14:26:44.356768600Z" level=debug msg="WindowsGraphDriver Put() id f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:44.357737200Z" level=debug msg="hcsshim::UnprepareLayer" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:44.364825500Z" level=debug msg="hcsshim::UnprepareLayer - succeeded" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:44.368849500Z" level=debug msg="hcsshim::DeactivateLayer" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:44.450396900Z" level=debug msg="hcsshim::DeactivateLayer - succeeded" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56" time="2019-11-10T14:26:44.457642700Z" level=error msg="f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56 cleanup: failed to delete container from containerd: no such container" time="2019-11-10T14:26:44.466643900Z" level=debug msg="hcsshim::DestroyLayer" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56-removing" time="2019-11-10T14:26:44.469642800Z" level=debug msg="hcsshim::DestroyLayer - succeeded" path="C:\ProgramData\docker\windowsfilter\f813b883dfd86c78e991ced012df6a96962059035cf6ebb1d18456f9caf97e56-removing"

`

The failure seems to come from computeSystem.createProcess [https://github.com/microsoft/hcsshim/blob/32862ca3495e8a6925d167ec163b43563cb75971/internal/hcs/system.go#L461]

Also, is there a way for us to gather traces from vmcompute so they could be shared with you in the future as well.

vikramhh

comment created time in 3 days

pull request commentmoby/moby

Volume plugin tests [integration/plugin/volumes] should always be executed - checks for OS Type should happen within the test

@kolyshkin - thanks for the feedback. I have changed both the title and description accordingly.

vikramhh

comment created time in 3 days

pull request commentmoby/moby

Windows: Build and use gotestsum for running all tests

Rebased - the two failures are expected because only 1 of the 3 failing tests in https://github.com/moby/moby/pull/40155 has been disabled. The other two still fail [even though Jenkins does not always mark the checks as failed, something that should be partially fixed by this PR]. The third failure will be fixed by https://github.com/moby/moby/pull/40193

thaJeztah

comment created time in 3 days

pull request commentmoby/moby

Check for OS Type and skip within the test

@thaJeztah - there are actually known failures here [the two test cases that are not fixed by https://github.com/moby/moby/pull/40155]. We are hitting the known issue here whereby Jenkins does not always mark the run as failed even when one or more tests fail. We should take https://github.com/moby/moby/pull/39998 in ASAP because at least it shows the checks as failed in such a case.

vikramhh

comment created time in 3 days

pull request commentmoby/moby

Integration: skip TestInfoDebug on Windows

@thaJeztah - why did we disable only one of the three failing tests on Windows?

thaJeztah

comment created time in 3 days

push eventthaJeztah/docker

Hannes Ljungberg

commit sha 4d09fab232ed282d020afbe1e0935b53379df4ad

Update service networks documentation The previous description stated that an array of names / ids could be passed when the API in reality expects objects in the form of NetworkAttachmentConfig. This is fixed by updating the description and adding a definition for NetworkAttachmentConfig. Signed-off-by: Hannes Ljungberg <hannes@5monkeys.se>

view details

Justen Martin

commit sha 3b49bd1d840d64ec603333eae28655b9ff5edc0c

replaced call to deprecated grpc method WithDialer with WithContextDialer Signed-off-by: Justen Martin <jmart@the-coder.com>

view details

lzhfromustc

commit sha 49fbb9c9854ff18ad9304f435c7c6722b0b4cfdb

registry: add a critical section to protect authTransport.modReq Signed-off-by: Ziheng Liu <lzhfromustc@gmail.com>

view details

Ziheng Liu

commit sha 6233217a31395b69aa814c7d3db5cf844eb87437

integration/internal/container: fix a goroutine leak bug by adding 1 buffer Signed-off-by: Ziheng Liu <lzhfromustc@gmail.com>

view details

Kir Kolyshkin

commit sha 9d4e81e8bf0d52a063c46a3dc826f7e85068b07d

hack/validate/vendor: print diff for modified files In case some files were modified (rather than merely added or removed), we're curious to see the diff for those. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>

view details

Kir Kolyshkin

commit sha 4be12ad3d04aefe6d5822d426813b33d2d4f9a7e

hack/validate/vendor: shellcheck fixes The export statement is definitely not needed. The rest is obvious. > In hack/validate/vendor line 3: > export SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" > ^-- SC2155: Declare and assign separately to avoid masking return values. > > > In hack/validate/vendor line 43: > if ls -d vendor/$f > /dev/null 2>&1; then > ^-- SC2086: Double quote to prevent globbing and word splitting. > > > In hack/validate/vendor line 44: > found=$(find vendor/$f -iregex '.*LICENSE.*' -or -iregex '.*COPYRIGHT.*' -or -iregex '.*COPYING.*' | wc -l) > ^-- SC2086: Double quote to prevent globbing and word splitting. > > > In hack/validate/vendor line 45: > if [ $found -eq 0 ]; then > ^-- SC2086: Double quote to prevent globbing and word splitting. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>

view details

Kir Kolyshkin

commit sha 57910190288c71242d914c292930a496d05f30cb

hack/validate/vendor: simplify looking for license It was suggested that we use '.*\(COPYING\|LICENSE\|COPYRIGHT\).*' as an argument to `find -iregex`, and this is how it all started. Next thing, there is no COPYRIGHT in any of the vendored packages, so it can be removed for good. Next, we should not look too deep inside the package directory, as the license should be in its root directory, so add `-maxdepth 1` to `find`. This should also speed things up. Finally, since we're not using the recursion feature of `find`, it can be replaced with `echo | grep`. While at it, * avoid temporary $pkgs variable as it is only used once; * replace `ls -d "vendor/$f" > /dev/null 2>&1` with `test -d`. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>

view details

Sam Whited

commit sha d6a91ca71c655f71c171e375b787c9c8b361c19e

Rename DCO check param in Jenkinsfile Previously it was a negative parameter for skiping the DCO check, but this is different from other checks. It was requested that I change this in #40023 but I'm factoring it out as an unrelated change. Signed-off-by: Sam Whited <sam@samwhited.com>

view details

Sebastiaan van Stijn

commit sha 9a7e96b5b7e97e034ce7bb0f1e7788d1bd881c7f

Rename "v1" to "statsV1" follow-up to 27552ceb15bca544820229e574427d4c1d6ef585, where this was left as a review comment, but the PR was already merged. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Kirill Kolyshkin

commit sha 7cde98488c2cfd7c3bc5a4a9044047cdab596663

Merge pull request #40159 from SamWhited/jenkins_dco_var_name Rename DCO check param in Jenkinsfile

view details

Kirill Kolyshkin

commit sha 76dbd884d3f1a02dc193305d2ac5824bcd3e4f0f

Merge pull request #40167 from thaJeztah/stats_alias Rename "v1" to "statsV1"

view details

Brian Goff

commit sha 6f8c671d702197a189d162d86a3f4cccfa5a3db2

Merge pull request #39495 from hannseman/network-attachment-config-docs Update service networks documentation

view details

Sebastiaan van Stijn

commit sha 3df4f86f21fbcae3535e2231828dce16a1940dbb

swagger: fix "generated code" comment not in correct format As described in https://golang.org/s/generatedcode, Go has a formalized format that should be used to indicate that a file is generated. Matching that format helps linters to skip generated files; From https://golang.org/s/generatedcode (https://github.com/golang/go/issues/13560#issuecomment-288457920); > Generated files are marked by a line of text that matches the regular expression, in Go syntax: > > ^// Code generated .* DO NOT EDIT\.$ > > The `.*` means the tool can put whatever folderol it wants in there, but the comment > must be a single line and must start with `Code generated` and end with `DO NOT EDIT.`, > with a period. > > The text may appear anywhere in the file. This patch updates the template used for our generated types to match that format. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha c511db70ed39f344f41ea8773cc9264a1eeddfda

api/types: re-generate with new template Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 6186e9fe8794660d669f19a2e2ba7127321b817f

hack/make/.go-autogen: fix "generated code" comment not in correct format As described in https://golang.org/s/generatedcode, Go has a formalized format that should be used to indicate that a file is generated. Matching that format helps linters to skip generated files; From https://golang.org/s/generatedcode (https://github.com/golang/go/issues/13560#issuecomment-288457920); > Generated files are marked by a line of text that matches the regular expression, in Go syntax: > > ^// Code generated .* DO NOT EDIT\.$ > > The `.*` means the tool can put whatever folderol it wants in there, but the comment > must be a single line and must start with `Code generated` and end with `DO NOT EDIT.`, > with a period. > > The text may appear anywhere in the file. This patch updates the autogenerated code to match that format. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Brian Goff

commit sha 47c5c67ed825589b0d88d98d05d81c5d22b3e9a9

Merge pull request #40032 from jmartin84/fix-grpc-withdialer-deprecation-warning Fix grpc withdialer deprecation warning

view details

Kirill Kolyshkin

commit sha c36460c437c8c515c543dd31afcbb5c2a9f5dd48

Merge pull request #40077 from thaJeztah/fix_autogen_detection Update "auto-generate" comments to improve detection by linters

view details

Sam Whited

commit sha b96a0c775400821d80972619fbfe6a2070f3e9ba

Add daemon options required by buildkit tests Signed-off-by: Sam Whited <sam@samwhited.com>

view details

Sebastiaan van Stijn

commit sha 31abc6c089eb5acc8161f480335b33b12564a565

Merge pull request #40177 from SamWhited/buildkit_test_options Add daemon options required by buildkit tests

view details

Sam Whited

commit sha 0c9b232bf5263ab896637b394308510c4cfbd45d

Remove unused GlobalFlags Signed-off-by: Sam Whited <sam@samwhited.com>

view details

push time in 4 days

pull request commentmoby/moby

Windows: Build and use gotestsum for running all tests

The above is true only for integration tests and could be handled by transforming the output of all tests [i.e. the xml files] by applying the same rules to each test phase [unit/integration and integration-cli] once we figure out where each result type should show up. This is not a blocker.

thaJeztah

comment created time in 4 days

PR opened moby/moby

Check for OS Type and skip within the test

Premature check for OS type means that the test will never even get to run on other OS types. No result [PASS/FAIL/SKIP] will be shown in the output and with certain tools like go testsum, the test will always flagged as a failure on such OS types.

Signed-off-by: vikrambirsingh vikrambir.singh@docker.com

<!-- Please make sure you've read and understood our contributing guidelines; https://github.com/moby/moby/blob/master/CONTRIBUTING.md

** Make sure all your commits include a signature generated with git commit -s **

For additional information on our contributing process, read our contributing guide https://docs.docker.com/opensource/code/

If this is a bug fix, make sure your description includes "fixes #xxxx", or "closes #xxxx"

Please provide the following information: -->

- What I did Removed OS Type check from a test in the main function

- How I did it

- How to verify it Running the test on all OS Types should produce result [PASS/FAIL/SKIP]

- Description for the changelog <!-- Write a short (one line) summary that describes the changes in this pull request for inclusion in the changelog: --> Removed a premature check for OSType to check if the test should be skipped.

- A picture of a cute animal (not mandatory but encouraged)

+0 -3

0 comment

1 changed file

pr created time in 5 days

create barnchvikramhh/moby

branch : volumes_plugins_test_failure

created branch time in 5 days

pull request commentmoby/moby

Windows: Build and use gotestsum for running all tests

@thaJeztah - the failures on RS5 are known issues. If you are good with the changes, could we get RS1 checks as well.

thaJeztah

comment created time in 9 days

startedmoby/moby

started time in 9 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 5b8d715a4e3a9fc2db7a426a5146a811fce553b2

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 10 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\src\github.com\docker\docker\bundles"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -Force -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true; ++  # Need a different layer  because the current layer  will not+  # have go in its path. We could always figure that out either+  # by observing  the current  behavior of  go-s installer (and +  # assuming it will not change in the future) or by  observing+  # change in  PATH value due to the install. Instead we choose+  # to just build a different layer - arguably an approach that+  # is more robust.+RUN `+  `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH"; `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    &go $optsForGet; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    &git $optsForCheckout; `

I feel this should not be a blocker for the PR.

thaJeztah

comment created time in 10 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\src\github.com\docker\docker\bundles"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -Force -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true; ++  # Need a different layer  because the current layer  will not+  # have go in its path. We could always figure that out either+  # by observing  the current  behavior of  go-s installer (and +  # assuming it will not change in the future) or by  observing+  # change in  PATH value due to the install. Instead we choose+  # to just build a different layer - arguably an approach that+  # is more robust.+RUN `+  `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH"; `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    &go $optsForGet; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `

Done

thaJeztah

comment created time in 10 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\src\github.com\docker\docker\bundles"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -Force -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true; ++  # Need a different layer  because the current layer  will not+  # have go in its path. We could always figure that out either+  # by observing  the current  behavior of  go-s installer (and +  # assuming it will not change in the future) or by  observing+  # change in  PATH value due to the install. Instead we choose+  # to just build a different layer - arguably an approach that+  # is more robust.+RUN `+  `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH"; `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    &go $optsForGet; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    &git $optsForCheckout; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -eq 0) { `+      Write-Host "INFO:     Checkout done for gotestsum..."; `+      $optsForBuild = @('"build"', '"-buildmode=exe"'); ` +      &go $optsForBuild; `+      $savedExitCode = $LASTEXITCODE; `+    } else { `+      Throw '"gotestsum checkout failed..."'; `+    } `+    Pop-Location; `+    `+    if ($savedExitCode -ne 0) {  `+      Throw '"gotestsum build failed..."'; `+    } `+    Write-Host "INFO:     Build done for gotestsum..."; `+  } `   `-  Write-Host INFO: Completed+  Set-Location -Path $Env:GOPATH; `

Removed

thaJeztah

comment created time in 10 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\src\github.com\docker\docker\bundles"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -Force -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true; ++  # Need a different layer  because the current layer  will not+  # have go in its path. We could always figure that out either+  # by observing  the current  behavior of  go-s installer (and +  # assuming it will not change in the future) or by  observing+  # change in  PATH value due to the install. Instead we choose+  # to just build a different layer - arguably an approach that+  # is more robust.+RUN `+  `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH"; `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    &go $optsForGet; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    &git $optsForCheckout; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -eq 0) { `

This is a very good suggestion but I feel it falls outside the scope of current work. I would feel more comfortable making such logical changes when we can thoroughly testing them. So I would suggest that we take this up through other PR-s or cleanup.

thaJeztah

comment created time in 11 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\src\github.com\docker\docker\bundles"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -Force -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true; ++  # Need a different layer  because the current layer  will not+  # have go in its path. We could always figure that out either+  # by observing  the current  behavior of  go-s installer (and 

That is correct[confirmed the behavior from a Powershell command prompt]. The below works - or just doing it in another layer, which is what I chose to do.

$env:Path += """;c:\go\bin"""; $env:Path += """;c:\git\cmd""";

My A/B testing did not produce a clear "winner" so it looks like we are good either way.

thaJeztah

comment created time in 11 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Try {                 if (!($env:INTEGRATION_TESTFLAGS)) {                     $env:INTEGRATION_TESTFLAGS = "-test.v"                 }-                Set-Location "$env:SOURCES_DRIVE`:\$env:SOURCES_SUBDIR\src\github.com\docker\docker"                 $start=(Get-Date); Invoke-Expression ".\hack\make.ps1 -TestIntegration"; $Duration=New-Timespan -Start $start -End (Get-Date)+                $IntTestsRunResult = $LastExitCode                 $ErrorActionPreference = "Stop"-                if (-not($LastExitCode -eq 0)) {+                # Copy all the test results to TEMPORIG for archival+                Copy-Item -Path "$env:SOURCES_DRIVE`:\$env:SOURCES_SUBDIR\src\github.com\docker\docker\bundles\junit-report*xml" -Destination $TEMPORIG+                if (-not($IntTestsRunResult -eq 0)) {

Absolutely - will make sure to change it with that fix.

thaJeztah

comment created time in 11 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Try {     $root = $(Split-Path $MyInvocation.MyCommand.Definition -Parent | Split-Path -Parent)     Push-Location $root +    # Ensure the bundles directory exists+    $bundlesDir = $root + "\bundles"+    New-Item -Force $bundlesDir -ItemType Directory | Out-Null

This variable is in global scope and one can indeed distinguish locals and globals. Powershell does have constants but one cannot make a value constant after definition. One can however make it "Read Only" anytime - which is what I did.

thaJeztah

comment created time in 11 days

push eventthaJeztah/docker

Brian Goff

commit sha e7d2d853f6ec333061282183a8a58af47de1888a

Make binary output targets use own build cmd The binary targets now use buildkit to build/output binaries instead of doing it in a DOCKER_RUN_DOCKER container. With that change caused issues when trying to call multiple make targets such as `make binary cross` since those targets are updating the variables (with conflicting data) used by the shared `build` prerequisite. This change has those binary output targets call `docker build` (or `buildx build`) directly since that is the action they are preforming and no longer have any pre-reqs. Signed-off-by: Brian Goff <cpuguy83@gmail.com>

view details

Brian Goff

commit sha c057825cf56850ffb97cae532d0bfa261b4b9a53

Pass VERSION variable to binary build targets. Signed-off-by: Brian Goff <cpuguy83@gmail.com>

view details

Sebastiaan van Stijn

commit sha ac7306503d237d548e376a89ab0b899ea1a245b0

Merge pull request #40091 from cpuguy83/40088_explicit_build Make binary output targets use own build cmd

view details

Vikram bir Singh

commit sha a3d9ba55edb6244285d5b357aebc560b12d0c2c5

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 11 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Function Run-UnitTests() {     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/man"     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/integration"     $pkgList = $pkgList -replace "`r`n", " "-    $goTestCommand = "go test" + $raceParm + " -cover -ldflags -w -tags """ + "autogen daemon" + """ -a """ + "-test.timeout=10m" + """ $pkgList"+    $goTestCommand = "$GOTESTSUM_LOCATION\gotestsum.exe --format=standard-quiet --jsonfile=bundles\go-test-report-unit-tests.json --junitfile=bundles\junit-report-unit-tests.xml -- " + $raceParm + " -cover -ldflags -w -a """ + "-test.timeout=10m" + """ $pkgList"+    Write-Host "INFO: Invoking unit tests run with $goTestCommand"     Invoke-Expression $goTestCommand     if ($LASTEXITCODE -ne 0) { Throw "Unit tests failed" } }  # Run the integration tests Function Run-IntegrationTests() {-    $env:DOCKER_INTEGRATION_DAEMON_DEST = $root + "\bundles\tmp"+    $escRoot = [Regex]::Escape($root)+    $env:DOCKER_INTEGRATION_DAEMON_DEST = $bundlesDir + "\tmp"     $dirs = go list -test -f '{{- if ne .ForTest `"`" -}}{{- .Dir -}}{{- end -}}' .\integration\...-    $integration_api_dirs = @()     ForEach($dir in $dirs) {-        $integration_api_dirs += $dir-        Write-Host "Building test suite binary $dir"-        go test -c -o "$dir\test.exe" $dir-    }--    ForEach($dir in $integration_api_dirs) {+        # Normalize directory name for using in the test results files.+        $normDir = $dir.Trim()+        $normDir = $normDir -replace $escRoot, ""+        $normDir = $normDir -replace "\\", "-"+        $normDir = $normDir -replace "\/", "-"+        $normDir = $normDir -replace "\.", "-"+        if ($normDir.StartsWith("-"))+        {+            $normDir = $normDir.TrimStart("-")+            Write-Host $normDir+        }+        if ($normDir.EndsWith("-"))+        {+            $normDir = $normDir.TrimEnd("-")+            Write-Host $normDir

Removed

thaJeztah

comment created time in 11 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Function Run-UnitTests() {     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/man"     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/integration"     $pkgList = $pkgList -replace "`r`n", " "-    $goTestCommand = "go test" + $raceParm + " -cover -ldflags -w -tags """ + "autogen daemon" + """ -a """ + "-test.timeout=10m" + """ $pkgList"+    $goTestCommand = "$GOTESTSUM_LOCATION\gotestsum.exe --format=standard-quiet --jsonfile=bundles\go-test-report-unit-tests.json --junitfile=bundles\junit-report-unit-tests.xml -- " + $raceParm + " -cover -ldflags -w -a """ + "-test.timeout=10m" + """ $pkgList"+    Write-Host "INFO: Invoking unit tests run with $goTestCommand"     Invoke-Expression $goTestCommand     if ($LASTEXITCODE -ne 0) { Throw "Unit tests failed" } }  # Run the integration tests Function Run-IntegrationTests() {-    $env:DOCKER_INTEGRATION_DAEMON_DEST = $root + "\bundles\tmp"+    $escRoot = [Regex]::Escape($root)+    $env:DOCKER_INTEGRATION_DAEMON_DEST = $bundlesDir + "\tmp"     $dirs = go list -test -f '{{- if ne .ForTest `"`" -}}{{- .Dir -}}{{- end -}}' .\integration\...-    $integration_api_dirs = @()     ForEach($dir in $dirs) {-        $integration_api_dirs += $dir-        Write-Host "Building test suite binary $dir"-        go test -c -o "$dir\test.exe" $dir-    }--    ForEach($dir in $integration_api_dirs) {+        # Normalize directory name for using in the test results files.+        $normDir = $dir.Trim()+        $normDir = $normDir -replace $escRoot, ""+        $normDir = $normDir -replace "\\", "-"+        $normDir = $normDir -replace "\/", "-"+        $normDir = $normDir -replace "\.", "-"+        if ($normDir.StartsWith("-"))+        {+            $normDir = $normDir.TrimStart("-")+            Write-Host $normDir

Removed

thaJeztah

comment created time in 11 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha e8a561df19c7ec863763e5033156111eef736904

Implement review suggestions Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 11 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Try {                 if (!($env:INTEGRATION_TESTFLAGS)) {                     $env:INTEGRATION_TESTFLAGS = "-test.v"                 }-                Set-Location "$env:SOURCES_DRIVE`:\$env:SOURCES_SUBDIR\src\github.com\docker\docker"                 $start=(Get-Date); Invoke-Expression ".\hack\make.ps1 -TestIntegration"; $Duration=New-Timespan -Start $start -End (Get-Date)+                $IntTestsRunResult = $LastExitCode                 $ErrorActionPreference = "Stop"-                if (-not($LastExitCode -eq 0)) {+                # Copy all the test results to TEMPORIG for archival+                Copy-Item -Path "$env:SOURCES_DRIVE`:\$env:SOURCES_SUBDIR\src\github.com\docker\docker\bundles\junit-report*xml" -Destination $TEMPORIG+                if (-not($IntTestsRunResult -eq 0)) {

This is something we need to revisit immediately after these changes go through (for the issue where our Unix output does not match the actual results of test runs [passed or failed]). So if you feel strongly about using a particular pattern, please document it and we can use it for that change.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\src\github.com\docker\docker\bundles"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `

This is primarily for consistency with the code around this line. Dockerfile.Windows uses this patttern consistently [look at lines above and below this piece of code].

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Try {     $root = $(Split-Path $MyInvocation.MyCommand.Definition -Parent | Split-Path -Parent)     Push-Location $root +    # Ensure the bundles directory exists+    $bundlesDir = $root + "\bundles"+    New-Item -Force $bundlesDir -ItemType Directory | Out-Null

That would mean we will need to set this in other places anyways where we cannot use a relative path[look at the function Run-IntegrationTests for example]. And it would also hide the intent that it is exactly the same directory that is being referred to in all of those places. The way it is used now, there are no dependencies that would need to be considered by someone modifying this code in the future. So I suggest we keep it as-is.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Try {     # Run the unit tests inside a container unless SKIP_UNIT_TESTS is defined     if (($null -eq $env:LCOW_MODE) -and ($null -eq $env:LCOW_BASIC_MODE)) {         if ($null -eq $env:SKIP_UNIT_TESTS) {+            $ContainerNameForUnitTests = $COMMITHASH + "_UnitTests"             Write-Host -ForegroundColor Cyan "INFO: Running unit tests at $(Get-Date)..."             $ErrorActionPreference = "SilentlyContinue"-            $Duration=$(Measure-Command {docker run -e DOCKER_GITCOMMIT=$COMMITHASH$CommitUnsupported docker hack\make.ps1 -TestUnit | Out-Host })+            $Duration=$(Measure-Command {docker run --name $ContainerNameForUnitTests -e DOCKER_GITCOMMIT=$COMMITHASH$CommitUnsupported docker hack\make.ps1 -TestUnit | Out-Host })+            $TestRunExitCode = $LastExitCode             $ErrorActionPreference = "Stop"++            # Saving for artifacts......+            $unitTestsContPath="$ContainerNameForUnitTests`:c`:\gopath\src\github.com\docker\docker\bundles"+            $JunitExpectedContFilePath = "$unitTestsContPath\junit-report-unit-tests.xml"+            docker cp $JunitExpectedContFilePath "$TEMPORIG"+            if (-not($LastExitCode -eq 0)) {+                Throw "ERROR: Failed to docker cp the unit tests report ($JunitExpectedContFilePath) to $TEMPORIG"+            }++            if (Test-Path "$TEMPORIG\junit-report-unit-tests.xml") {+                Write-Host -ForegroundColor Magenta "INFO: Unit tests results($TEMPORIG\junit-report-unit-tests.xml) exist. pwd=$pwd"+            } else {+                Write-Host -ForegroundColor Magenta "ERROR: Unit tests results($TEMPORIG\junit-report-unit-tests.xml) do not exist. pwd=$pwd"+            }+            +            # Saving where jenkins will take a look at.....+            $bundlesDir = "bundles"+            if (-not (Test-Path $bundlesDir)) { New-Item $bundlesDir -ItemType Directory | Out-Null }

Done - however instead of explicit use of the value of the directory name, I am choosing to keep the variable because it is used elsewhere too.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `     } `   } `   `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `

Removed

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `     } `   } `   `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -eq 0) { `+      Write-Host "INFO:     Checkout done for gotestsum..."; `+      $logFileName = 'gotestsum.build.out';  `+      $optsForBuild = @('"build"', '"-buildmode=exe"'); ` +      &go $optsForBuild; `

Same as above - we can change it if you feel strongly for some reason that arguments must be inline only.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `     } `   } `   `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout; `

I feel that the above is much cleaner and easier to read. I am open to changing it if there is a reason why we should inline the arguments here.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `     } `   } `   `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -eq 0) { `+      Write-Host "INFO:     Checkout done for gotestsum..."; `+      $logFileName = 'gotestsum.build.out';  `

Done

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `     } `   } `   `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet; `+    $savedExitCode = $LASTEXITCODE; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `

Done

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `     } `   } `   `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath "src\gotest.tools\gotestsum"; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    Write-Host "INFO: Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `

Done - removed all references to log file names.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\src\github.com\docker\docker\bundles"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `

Done

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Try {     $root = $(Split-Path $MyInvocation.MyCommand.Definition -Parent | Split-Path -Parent)     Push-Location $root +    # Create the bundles directory if it doesn't exist+    $bundlesDir = $root + "\bundles"+    if (-not (Test-Path $bundlesDir)) { New-Item $bundlesDir -ItemType Directory | Out-Null }

I did make the change to the latter by making it equivalent to "mkdir -p". However the intermediate variable is then used at other places as well. Making it an explicit value instead of the variable will require us to still set this variable in other places for those usages [or convert those in multiple places to use explicit paths]. But more important, I am afraid it will mask the intent [that it is the same directory which is being referred to in all those disparate locations] and make the code hard to maintain. So I would argue for leaving this as-is.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 param( $ErrorActionPreference = "Stop" $ProgressPreference = "SilentlyContinue" $pushed=$False  # To restore the directory if we have temporarily pushed to one.+Set-Variable GOTESTSUM_LOCATION -option Constant -value "$env:GOPATH/src/gotest.tools/gotestsum"

Actually this will require a separate copy to $GOBIN and introducing or at least using a new variable $GOBIN which is currently not being used anywhere in these scripts. And it will save us from having to track things in only one place. So I am afraid it will actually end up increasing complexity rather than decreasing it.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\$Env:DOCKER_SRC_REL_LOCATION`\$Env:BUNDLES_REL_LOCATION"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `+      return `+    } else { `+      Write-Host "INFO: No existing binary of gotestsum found. Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    } `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -eq 0) { `+      Write-Host "INFO:     Checkout done for gotestsum..."; `+      $logFileName = 'gotestsum.build.out';  `+      $optsForBuild = @('"build"', '"-buildmode=exe"'); ` +      &go $optsForBuild > gotestsum.build.out 2>&1; `+      $savedExitCode = $LASTEXITCODE; `+      Save-FileIfNonZero -LogName $logFileName; `+    } else { `+      Throw '"gotestsum checkout failed..."'; `+    } `+    Pop-Location; `+    `+    if ($savedExitCode -ne 0) {  `+      Throw '"gotestsum build failed..."'; `+    } `+    Write-Host "INFO:     Build done for gotestsum..."; `+  } `   `-  Write-Host INFO: Completed+  Write-Host INFO: Building gotestsum...; `+  Build-GoTestSum +  `+WORKDIR ${GOPATH}\${DOCKER_SRC_REL_LOCATION}  # Make PowerShell the default entrypoint ENTRYPOINT ["powershell.exe"] -# Set the working directory to the location of the sources-WORKDIR ${GOPATH}\src\github.com\docker\docker- # Copy the sources into the container COPY . .++RUN `

Removed

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\$Env:DOCKER_SRC_REL_LOCATION`\$Env:BUNDLES_REL_LOCATION"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++WORKDIR ${GOPATH}

Moved the change of directory to Env:GOPATH explicitly in the script and removed the first WORKDIR above.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\$Env:DOCKER_SRC_REL_LOCATION`\$Env:BUNDLES_REL_LOCATION"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `+      return `+    } else { `+      Write-Host "INFO: No existing binary of gotestsum found. Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    } `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -eq 0) { `+      Write-Host "INFO:     Checkout done for gotestsum..."; `+      $logFileName = 'gotestsum.build.out';  `+      $optsForBuild = @('"build"', '"-buildmode=exe"'); ` +      &go $optsForBuild > gotestsum.build.out 2>&1; `

Done

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\$Env:DOCKER_SRC_REL_LOCATION`\$Env:BUNDLES_REL_LOCATION"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `+      return `+    } else { `+      Write-Host "INFO: No existing binary of gotestsum found. Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    } `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout > $logFileName 2>&1; `

Same change made in all the places where we were using logs earlier. Logs are no longer being used.

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\$Env:DOCKER_SRC_REL_LOCATION`\$Env:BUNDLES_REL_LOCATION"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `+      return `+    } else { `+      Write-Host "INFO: No existing binary of gotestsum found. Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    } `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `

I made the change so that we are not hiding the output

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\$Env:DOCKER_SRC_REL_LOCATION`\$Env:BUNDLES_REL_LOCATION"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `+      return `+    } else { `+      Write-Host "INFO: No existing binary of gotestsum found. Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    } `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -eq 0) { `+      Write-Host "INFO:     Checkout done for gotestsum..."; `+      $logFileName = 'gotestsum.build.out';  `+      $optsForBuild = @('"build"', '"-buildmode=exe"'); ` +      &go $optsForBuild > gotestsum.build.out 2>&1; `+      $savedExitCode = $LASTEXITCODE; `+      Save-FileIfNonZero -LogName $logFileName; `+    } else { `+      Throw '"gotestsum checkout failed..."'; `

Done

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\$Env:DOCKER_SRC_REL_LOCATION`\$Env:BUNDLES_REL_LOCATION"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `+      return `+    } else { `+      Write-Host "INFO: No existing binary of gotestsum found. Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    } `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet > $logFileName 2>&1; `

Done

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\binutils.zip; `   Remove-Item C:\gitsetup.zip; `   `-  Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  # Ensure all directories exist that we will require below....+  $srcDir = """$Env:GOPATH`\$Env:DOCKER_SRC_REL_LOCATION`\$Env:BUNDLES_REL_LOCATION"""; `+  Write-Host INFO: Ensuring existence of directory $srcDir...; `+  New-Item -ItemType Directory -Path $srcDir | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `

Done

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 ENV GO_VERSION=${GO_VERSION} `     GIT_VERSION=2.11.1 `     GOPATH=C:\gopath `     GO111MODULE=off `-    FROM_DOCKERFILE=1+    FROM_DOCKERFILE=1 `+    GOTESTSUM_COMMIT=${GOTESTSUM_COMMIT} `+    GOTESTSUM_LOCATION="src\gotest.tools\gotestsum" `+    DOCKER_SRC_REL_LOCATION="src\github.com\docker\docker" `

Done

thaJeztah

comment created time in 12 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\gitsetup.zip; `   `   Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  #TODO - Per https://docs.docker.com/engine/reference/builder/ +  #       the below line is redundant and should be removed.+  #New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++# Ensure all directories exist that we will require below....+WORKDIR ${GOPATH}\${DOCKER_SRC_REL_LOCATION}\${BUNDLES_REL_LOCATION}++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `+      return `+    } else { `+      Write-Host "INFO: No existing binary of gotestsum found. Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    } `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -eq 0) { `+      Write-Host "INFO:     Checkout done for gotestsum..."; `+      $logFileName = 'gotestsum.build.out';  `+      $optsForBuild = @('"build"', '"-buildmode=exe"'); ` +      &go $optsForBuild > gotestsum.build.out 2>&1; `+      $savedExitCode = $LASTEXITCODE; `+      Save-FileIfNonZero -LogName $logFileName; `+    } else { `+      Throw '"gotestsum checkout failed..."'; `+    } `+    Pop-Location; `+    `+    if ($savedExitCode -ne 0) {  `+      Throw '"gotestsum build failed..."'; `+    } `+    Write-Host "INFO:     Build done for gotestsum..."; `+  } `   `-  Write-Host INFO: Completed+  Write-Host INFO: Building gotestsum...; `

Done

thaJeztah

comment created time in 12 days

push eventthaJeztah/docker

Daniel Black

commit sha 7b4b940470ee34c96bf434b810e4cd5ca2e68182

/containers/{id}/json missing Platform To match ContainerJSONBase api/types/types.go Signed-off-by: Daniel Black <daniel@linux.ibm.com>

view details

Sebastiaan van Stijn

commit sha bbf82b2e53613cb0db723e13d6a8b4091ffa3193

testutil: daemon.Info() close client after request Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 060e55d7dd8e304631dd2a3c0ab2d571b0054bd3

integration-cli: mark some test-helpers as helpers Before: daemon.go:26: Creating a new daemon at: "/go/src/github.com/docker/docker/bundles/test-integration/TestDockerSwarmSuite/TestSwarmNetworkCreateDup" After: docker_cli_swarm_test.go:1522: Creating a new daemon at: "/go/src/github.com/docker/docker/bundles/test-integration/TestDockerSwarmSuite/TestSwarmNetworkCreateDup" Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 56230f4d376515b838e088e93eb05f31fb9378c9

testutil: no more "Creating a new daemon at" Instead of logging on the "happy path", add more details when we fail to create a daemon. Now that we base the path of the daemon on the test-name, it should still be easy to find. Before: make TEST_FILTER=TestSwarmNetworkCreateIssue27866 test-integration ... === RUN TestDockerSwarmSuite === RUN TestDockerSwarmSuite/TestSwarmNetworkCreateIssue27866 --- PASS: TestDockerSwarmSuite (7.47s) --- PASS: TestDockerSwarmSuite/TestSwarmNetworkCreateIssue27866 (7.47s) docker_cli_swarm_test.go:1499: Creating a new daemon at: "/go/src/github.com/docker/docker/bundles/test-integration/TestDockerSwarmSuite/TestSwarmNetworkCreateIssue27866" After: make TEST_FILTER=TestSwarmNetworkCreateIssue27866 test-integration ... === RUN TestDockerSwarmSuite === RUN TestDockerSwarmSuite/TestSwarmNetworkCreateIssue27866 --- PASS: TestDockerSwarmSuite (8.67s) --- PASS: TestDockerSwarmSuite/TestSwarmNetworkCreateIssue27866 (8.67s) Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha e7805653b8632aae4f789dbca238e25b16df964d

Fix TEST_FILTER to work for both "integration" and "integration-cli" The TEST_FILTER variable allows running a single integration or integration-cli test. However, it failed to work properly for integration-cli tests. Before: ----------- # Filtering "integration" tests works: make TEST_FILTER=TestInspectCpusetInConfigPre120 test-integration ... DONE 1 tests in 18.331s # But running a single test in "integration-cli" did not: make TEST_FILTER=TestSwarmNetworkCreateIssue27866 test-integration ... DONE 0 tests in 17.314s Trying to manually add the `/` prefix, didn't work either, because that made the "grep" fail to find which test-suites to run/skip: make TEST_FILTER=/TestSwarmNetworkCreateIssue27866 test-integration ---> Making bundle: test-integration (in bundles/test-integration) make: *** [test-integration] Error 1 After: ----------- make TEST_FILTER=TestInspectCpusetInConfigPre120 test-integration ... DONE 1 tests in 18.331s make TEST_FILTER=TestSwarmNetworkCreateIssue27866 test-integration ... DONE 12 tests in 26.527s Note that the `12` tests is still a bit misleading, because every _suite_ is started (which is counted as a test), but no tests are run. This is still something that could be improved on. This patch also makes a small modification to the code that's setting `integration_api_dirs`, and no longer runs `go list` if not needed. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 18a97ee981d80fe4764f7ec8d8384212981ccf24

integration-cli: use subtests for TestSwarmNetworkCreateDup This makes the test less noisy, and won't print the `failed: Error ...` messages, which were confusing. Also, running as a subtest allows tracking failures individually through the junit.xml files. Before: === RUN TestDockerSwarmSuite/TestSwarmNetworkCreateDup --- PASS: TestDockerSwarmSuite/TestSwarmNetworkCreateDup (3.00s) daemon.go:26: Creating a new daemon at: "/go/src/github.com/docker/docker/bundles/test-integration/TestDockerSwarmSuite/TestSwarmNetworkCreateDup" docker_cli_swarm_test.go:1527: Creating a network named "network-test-0" with "bridge", then "bridge" docker_cli_swarm_test.go:1534: As expected, the attempt to network "network-test-0" with "bridge" failed: Error response from daemon: network with name network-test-0 already exists docker_cli_swarm_test.go:1527: Creating a network named "network-test-0" with "bridge", then "overlay" docker_cli_swarm_test.go:1534: As expected, the attempt to network "network-test-0" with "overlay" failed: Error response from daemon: network with name network-test-0 already exists docker_cli_swarm_test.go:1527: Creating a network named "network-test-1" with "overlay", then "bridge" docker_cli_swarm_test.go:1534: As expected, the attempt to network "network-test-1" with "bridge" failed: Error response from daemon: network with name network-test-1 already exists docker_cli_swarm_test.go:1527: Creating a network named "network-test-1" with "overlay", then "overlay" docker_cli_swarm_test.go:1534: As expected, the attempt to network "network-test-1" with "overlay" failed: Error response from daemon: network with name network-test-1 already exists After: === RUN TestDockerSwarmSuite === RUN TestDockerSwarmSuite/TestSwarmNetworkCreateDup === RUN TestDockerSwarmSuite/TestSwarmNetworkCreateDup/driver_bridge_then_bridge === RUN TestDockerSwarmSuite/TestSwarmNetworkCreateDup/driver_bridge_then_overlay === RUN TestDockerSwarmSuite/TestSwarmNetworkCreateDup/driver_overlay_then_bridge === RUN TestDockerSwarmSuite/TestSwarmNetworkCreateDup/driver_overlay_then_overlay --- PASS: TestDockerSwarmSuite (8.12s) --- PASS: TestDockerSwarmSuite/TestSwarmNetworkCreateDup (8.12s) daemon.go:26: Creating a new daemon at: "/go/src/github.com/docker/docker/bundles/test-integration/TestDockerSwarmSuite/TestSwarmNetworkCreateDup" --- PASS: TestDockerSwarmSuite/TestSwarmNetworkCreateDup/driver_bridge_then_bridge (0.52s) --- PASS: TestDockerSwarmSuite/TestSwarmNetworkCreateDup/driver_bridge_then_overlay (0.31s) --- PASS: TestDockerSwarmSuite/TestSwarmNetworkCreateDup/driver_overlay_then_bridge (0.17s) --- PASS: TestDockerSwarmSuite/TestSwarmNetworkCreateDup/driver_overlay_then_overlay (0.12s) Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Andrew Hsu

commit sha 1be272ef76ec7f37d680525e725c1a17a85a32cf

Windows: disable flaky test TestStartReturnCorrectExitCode Signed-off-by: Andrew Hsu <andrewhsu@docker.com>

view details

Sebastiaan van Stijn

commit sha 1455f7d88d0ad41c55dd6962e4e5dece9a39bdae

Merge pull request #40105 from thaJeztah/close_the_door_please testutil: daemon.Info() close client after request

view details

Sebastiaan van Stijn

commit sha 9d726f1c18216a127572310fccb0fab8fcfdc678

Add GoDoc to fix linting validation The validate step in CI was broken, due to a combination of 086b4541cf9d27d9c2654f316a6f69b0d9caedd9, fbdd437d295595e88466b33a550a8707b9ebb709, and 85733620ebea3da75abe7d732043354aa0883f8a being merged to master. ``` api/types/filters/parse.go:39:1: exported method `Args.Keys` should have comment or be unexported (golint) func (args Args) Keys() []string { ^ daemon/config/builder.go:19:6: exported type `BuilderGCFilter` should have comment or be unexported (golint) type BuilderGCFilter filters.Args ^ daemon/config/builder.go:21:1: exported method `BuilderGCFilter.MarshalJSON` should have comment or be unexported (golint) func (x *BuilderGCFilter) MarshalJSON() ([]byte, error) { ^ daemon/config/builder.go:35:1: exported method `BuilderGCFilter.UnmarshalJSON` should have comment or be unexported (golint) func (x *BuilderGCFilter) UnmarshalJSON(data []byte) error { ^ ``` Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 7c5fd83c22d9540b6e31393abdf62e54c4ff6060

Jenkinsfile: set repo and branch for DCO check as well Commit 7019b60d0d6f3d69e6ccf481ca0a912905a9c1d7 added these env-vars to other stages, but forgot to update the DCO stage, which also does a diff to validate commits that are in a PR. Also adding openssh-client, for situations where the upstream needs to be accessed through an ssh connection. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Kirill Kolyshkin

commit sha bebd8206285b3d1aeb5d462683db71e7ac625903

Merge pull request #40118 from thaJeztah/fix_master_lint Add GoDoc to fix linting validation

view details

Sebastiaan van Stijn

commit sha c1102830046bd43d8bf4a9b622f10388c9d91b57

Jenkinsfile: use buildx on s390x and ppc64le Commit 1be2cc2568ddd52a3b27d607a9c9f7c9347d3c50 updated the Makefile to force the use of BuildKit, if `USE_BUILDX` was not set. As a side-effect, Jenkins now started using BuildKit on s390x and ppc64le as well, because it overwrote the `DOCKER_BUILDKIT=0` that was set. This commit forces the use of buildx on s390x and ppc64le. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha ce28a91ccade956d6a4aa0d298b60e28c37b9d21

make buildx: fix variable substitution and version The variables were not substituted, because single-quotes were used. While at it; change the fixed version/commit to use the actual commit and version, using git. before this change: make buildx && ./bundles/buildx version github.com/docker/buildx ${BUILDX_COMMIT} ${BUILDX_COMMIT} after this change: make buildx && ./bundles/buildx version buildx v0.3.0 c967f1d Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 365b3aee2dbd5175e9c4e612ae4b2d875d15377b

make buildx: fix Makefile version being ignored The `BUILDX_COMMIT` variable was set as a Make variable, which isn't exported, and thus not available in scripts, unless referenced through `$(VAR)` (non-curly-brackets). As a result `--build-arg BUILDX_COMMIT` did not set the `BUILDX_COMMIT` build-arg, and the default from the Dockerfile (`master`) was used instead. This patch exports the default version that's set in the Makefile, so that it can be used as a regular environment variable. The script was also slighly modified to no longer use the `Make` variable. In addition, the `buildx` target now calls `buildx version`, which is useful to confirm if the binary was successfully built (and with the correct version). Before: rm -f bundles/buildx && make buildx && ./bundles/buildx version # => => naming to docker.io/library/moby-buildx:v0.3.0 github.com/docker/buildx v0.3.1 6db68d0 # using a make variable: rm -f bundles/buildx && make BUILDX_COMMIT=v0.2.1 buildx && ./bundles/buildx version # => => naming to docker.io/library/moby-buildx:v0.2.1 github.com/docker/buildx v0.3.1 6db68d0 # using an environment variable: rm -f bundles/buildx && BUILDX_COMMIT=v0.2.2 make buildx && ./bundles/buildx version # => => naming to docker.io/library/moby-buildx:v0.2.2 github.com/docker/buildx v0.3.1 6db68d0 After: # default rm -f bundles/buildx && make buildx # => => naming to docker.io/library/moby-buildx:v0.3.0 github.com/docker/buildx v0.3.0 c967f1d # using a make variable: rm -f bundles/buildx && make BUILDX_COMMIT=v0.2.1 buildx # => => naming to docker.io/library/moby-buildx:v0.2.1 github.com/docker/buildx v0.2.1 0eb2df5 # using an environment variable: rm -f bundles/buildx && BUILDX_COMMIT=v0.2.2 make buildx # => => naming to docker.io/library/moby-buildx:v0.2.2 github.com/docker/buildx v0.2.2 ab5fe3d Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 37fe68f5d676e15acbc2231093d11dc87d5466e1

make buildx: make version in Dockerfile leading This patch removes the `BUILDX_COMMIT` make variable. With the make variable removed, it no longer "masks" environment variables, and there is no longer a need to export the variable. A side effect of this change, is that (by default), the buildx image is tagged as `moby-buildx:latest`. This likely isn't a problem, because the build-cache would still be preserved in intermediate images. Having the image tagged as `:latest` also makes cleaning up easier (without having to remove the image for each version tagged. Otherwise, the behavior remains the same as before: # default rm -f bundles/buildx && make buildx # => => naming to docker.io/library/moby-buildx:latest github.com/docker/buildx v0.3.0 c967f1d # using a make variable: rm -f bundles/buildx && make BUILDX_COMMIT=v0.2.1 buildx # => => naming to docker.io/library/moby-buildx:v0.2.1 github.com/docker/buildx v0.2.1 0eb2df5 # using an environment variable: rm -f bundles/buildx && BUILDX_COMMIT=v0.2.2 make buildx # => => naming to docker.io/library/moby-buildx:v0.2.2 github.com/docker/buildx v0.2.2 ab5fe3d Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 9638d1a4fb2e67b04da21db6fff420af93ace046

make buildx: remove BUILDX_DOCKERFILE make var This simplifies the makefile a bit, while preserving the functionality. Using a non-existing Dockerfile to demonstrate: make buildx Successfully tagged moby-buildx:latest 92059305df7371f8b5b3638d4d405d49ff909031a7bc6d2f515cb0a0df03c2f4 github.com/docker/buildx v0.3.0 c967f1d make BUILDX_DOCKERFILE=foo buildx BUILDX_DOCKERFILE=foo buildx unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /Users/sebastiaan/go/src/github.com/docker/docker/foo: no such file or directory Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha a602ecf8fb3a0cfd54ea18dad561df5eec7ec5c7

make buildx: clean-up comment and fix help-text Un-indent the comment, so that it doesn't get printed by the shell script (moved it above the target, as it looked slightly less cluttered) Also fixed the "help" comment, so that it shows up in `make help`, and removed the un-needed dummy `buildx:` target. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha b6ae3c2058e44b63614470538217347cef2f7c80

make buildx: use multi-stage to make tagged image smaller The build-stage would still be in the local cache (and can be cleaned up with `docker system prune`) but the tagged image (which usually wouldn't be removed) will take up less space now. Note that - the binary is not statically linked, so we cannot use a "from scratch" image - in cases where the binary is cross-compiled (e.g. on a non-linux machine), the image itself is not really useful (we may want to consider not tagging the image in that situation) Before: REPOSITORY TAG IMAGE ID CREATED SIZE moby-buildx latest c9b2af465baf 7 minutes ago 1.71GB After: REPOSITORY TAG IMAGE ID CREATED SIZE moby-buildx latest 345501e2df0a 2 minutes ago 820MB Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 7eb804c934f2917783ea5eb7c5b9a73edc60ece1

make buildx: update to buildx v0.3.1 Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha ec4a34ae2f375cfadacaf95cb5ef93b7c5ca43d3

integration-cli: migrate some "info" tests to integration - Updated TestInfoSecurityOptions to not rely on CLI output. Note that this test should be migrated to the integration suite, but that suite does not yet have checks for "Seccomp" and "AppArmor" - TestInfoAPIWarnings: don't start with busybox because we're not running containers in this test - Migrate TestInfoDebug to integration suite - Migrate TestInsecureRegistries to integration suite (renamed to TestInfoInsecureRegistries) - Migrate TestRegistryMirrors to integration suite (renamed to TestInfoRegistryMirrors) - Migrate TestInfoDiscoveryBackend to integration suite - Migrate TestInfoDiscoveryInvalidAdvertise to integration suite - Migrate TestInfoDiscoveryAdvertiseInterfaceName to integration suite - Remove TestInfoFormat, which is testing the CLI functionality, and there is an existing test in docker/cli (TestFormatInfo) covering this Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

push time in 12 days

pull request commentmoby/moby

bump containerd/cgroups 5fbad35c2a7e855762d3c60f2e474ffcad0d470a

LGTM

thaJeztah

comment created time in 13 days

pull request commentmoby/moby

bump containerd/cgroups 5fbad35c2a7e855762d3c60f2e474ffcad0d470a

@thaJeztah - Windows RS5 not reporting failures has been root caused and I have a fix in mind. Can we take in https://github.com/moby/moby/pull/39998 before that though - will avoid some duplication of work as the fix will need to be reworked again for https://github.com/moby/moby/pull/39998.

thaJeztah

comment created time in 13 days

pull request commentmoby/moby

Bump hcsshim to 6c7177eae8be632af2e15e44b62d69ab18389ddb

0x490 is ERROR_NOT_FOUND [https://golang.org/pkg/syscall/?GOOS=windows] - this is very likely coming from makeOpenFiles in internal/hcs/utils.go

@kevpar - could you please take a look.

vikramhh

comment created time in 13 days

pull request commentmoby/moby

Bump hcsshim to 6c7177eae8be632af2e15e44b62d69ab18389ddb

@thaJeztah @tiborvass - https://github.com/moby/moby/pull/40128 is in now. How can I trigger all checks to run on this change so that we could see if there are any build breaks? I recall @andrewhsu telling me that I need a member of maintainers group to do that.

vikramhh

comment created time in 14 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 79ebfebfc5eca3245d5928c06773426855e642c6

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 15 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 9c500f5210a83fb06c6fdbaddbfdf4ceb3e920ff

Testing Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 15 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 3ae3b87e7bce57a1a421cf5874aa8aec9a9193f3

Testing Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 15 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha de893680c02722ee8264b1842428d8a1bf7b3706

Testing Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 15 days

push eventthaJeztah/docker

Daniel Black

commit sha 7b4b940470ee34c96bf434b810e4cd5ca2e68182

/containers/{id}/json missing Platform To match ContainerJSONBase api/types/types.go Signed-off-by: Daniel Black <daniel@linux.ibm.com>

view details

Sebastiaan van Stijn

commit sha 6756f5f378d0f4f9efbda50fabb5bfdef2e5c4a7

API: update docs that /session left experimental in V1.39 The `/session` endpoint left experimental in API V1.39 through 239047c2d36706f2826b0a9bc115e0a08b1c3d27 and 01c9e7082eba71cbe60ce2e47acb9aad2c83c7ef, but the API reference was not updated accordingly. This updates the API documentation to match the change. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Tibor Vass

commit sha fbdd437d295595e88466b33a550a8707b9ebb709

daemon/config: fix filter type in BuildKit GC config For backwards compatibility, the old incorrect object format for builder.GC.Rule.Filter still works but is deprecated in favor of array of strings akin to what needs to be passed on the CLI. Signed-off-by: Tibor Vass <tibor@docker.com>

view details

Tibor Vass

commit sha 85733620ebea3da75abe7d732043354aa0883f8a

daemon/config: add MarshalJSON for future proofing If anything marshals the daemon config now or in the future this commit ensures the correct canonical form for the builder GC policies' filters. Signed-off-by: Tibor Vass <tibor@docker.com>

view details

Akihiro Suda

commit sha e76dea157e3b6a1ff0812e52c630b7cc8f363da5

docs/rootless.md: update Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>

view details

Sebastiaan van Stijn

commit sha de10c7d0136dc054abdb40ca624211c04334bdc0

client: reduce string-matching in tests These checks were redundant, as we were not expecting a specific string, just that a server-error or authentication error was returned. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 9ed58987ceb2427b66f3b9128088620dfde64471

integration: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 23b6b5a9ae0e16bdcf37d0ec9a5a8bee9cb38f97

integration-cli: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha a617809fe7cd59b8825cfad80af772d7b3595024

testutil: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 93100adb69de2338982b5c2419c4dcef61ea2ca0

api/server: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha dabc7cdb56a1d5ae392e945a12f8357738950f2d

client: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha d1817b61351667aadb6d8b5afea3518d5908cdc1

client: use constants for http status codes Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 441b031bdaf542f2050cf7ef20822d0f1edd71ae

registry: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 63e62d13a05da7ac3f24c8af703b9babd41eb558

registry: use constants for http status codes Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 3b8487521676f6065f6734c080ba9457a43c9090

builder-next: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 984d5bc30cfacd63872f8c1c4d366c8211a112bd

builder-next: use constants for http status codes Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 9c590ed5c5eece661f8198b2bcb8f96d9f82fea9

daemon/logger/splunk: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 5ba167ce8a1c34fbb6c49f246012d197455fecfa

pkg/authorization: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha aa655a4d73693741cd3f8bc44566eb34585b3303

pkg/plugins: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha a33cf495f2f0ef0b30b943fc9a7e54ec2aaa4c1e

daemon: use constants for AppArmor profiles Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

push time in 16 days

push eventvikramhh/moby

Vikram bir Singh

commit sha fe078ebeaad68ed7047a8f792fb73a9415114d23

Bump hcsshim to 6c7177eae8be632af2e15e44b62d69ab18389ddb Among other things, this is required to pull in https://github.com/microsoft/hcsshim/pull/718 which should take care of multiple issues reported to us. Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 18 days

push eventvikramhh/moby

vikrambirsingh

commit sha 553de145b9aa4c9c08ee22fe9dd7920e82ec2e11

Test Signed-off-by: vikrambirsingh <vikrambir.singh@docker.com>

view details

push time in 18 days

PR opened moby/moby

Bump hcsshim to 6c7177eae8be632af2e15e44b62d69ab18389ddb

Among other things, this is required to pull in https://github.com/microsoft/hcsshim/pull/718 which should take care of multiple issues reported to us.

Signed-off-by: Vikram bir Singh vikrambir.singh@docker.com

<!-- Please make sure you've read and understood our contributing guidelines; https://github.com/moby/moby/blob/master/CONTRIBUTING.md

** Make sure all your commits include a signature generated with git commit -s **

For additional information on our contributing process, read our contributing guide https://docs.docker.com/opensource/code/

If this is a bug fix, make sure your description includes "fixes #xxxx", or "closes #xxxx"

Please provide the following information: -->

- What I did

- How I did it

- How to verify it

- Description for the changelog <!-- Write a short (one line) summary that describes the changes in this pull request for inclusion in the changelog: -->

- A picture of a cute animal (not mandatory but encouraged)

+1996 -1103

0 comment

98 changed files

pr created time in 20 days

create barnchvikramhh/moby

branch : bump_hcsshim

created branch time in 20 days

push eventvikramhh/moby

Daniel Black

commit sha 7b4b940470ee34c96bf434b810e4cd5ca2e68182

/containers/{id}/json missing Platform To match ContainerJSONBase api/types/types.go Signed-off-by: Daniel Black <daniel@linux.ibm.com>

view details

Kamil Domański

commit sha 186e22d26e7cf6e4d6f718257c653e496850914a

include IPv6 address of linked containers in /etc/hosts Signed-off-by: Kamil Domański <kamil@domanski.co>

view details

Sebastiaan van Stijn

commit sha ac9ef840ef94ff66266d3d8b9d32caf570d3b93f

integration-cli: update TestCreateWithWorkdir for Hyper-V isolation Hyper-V isolated containers do not allow file-operations on a running container. This test currently uses `docker cp` to verify that the WORKDIR was automatically created, which cannot be done while the container is running. ``` FAIL: docker_cli_create_test.go:302: DockerSuite.TestCreateWithWorkdir assertion failed: Command: d:\CI-7\CI-f3768a669\binary\docker.exe cp foo:c:\home\foo\bar c:\tmp ExitCode: 1 Error: exit status 1 Stdout: Stderr: Error response from daemon: filesystem operations against a running Hyper-V container are not supported Failures: ExitCode was 1 expected 0 Expected no error ``` Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Justen Martin

commit sha 23ab331979fd3eb6d190c19606ef4b93faabbb0a

Removed deprecated CloseNotifier logic Signed-off-by: Justen Martin <jmart@the-coder.com>

view details

Sebastiaan van Stijn

commit sha 851b000641c195630ed05313a7ad27895e4d8780

integration-cli: enable golangci-lint Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Lukas Heeren

commit sha ce61a1ed98119fa723b0f49fb5d1dc654fd793c6

Adding ability to change max download attempts Moby works perfectly when you are in a situation when one has a good and stable internet connection. Operating in area's where internet connectivity is likely to be lost in undetermined intervals, like a satellite connection or 4G/LTE in rural area's, can become a problem when pulling a new image. When connection is lost while image layers are being pulled, Moby will try to reconnect up to 5 times. If this fails, the incompletely downloaded layers are lost will need to be completely downloaded again during the next pull request. This means that we are using more data than we might have to. Pulling a layer multiple times from the start can become costly over a satellite or 4G/LTE connection. As these techniques (especially 4G) quite common in IoT and Moby is used to run Azure IoT Edge devices, I would like to add a settable maximum download attempts. The maximum download attempts is currently set at 5 (distribution/xfer/download.go). I would like to change this constant to a variable that the user can set. The default will still be 5, so nothing will change from the current version unless specified when starting the daemon with the added flag or in the config file. I added a default value of 5 for DefaultMaxDownloadAttempts and a settable max-download-attempts in the daemon config file. It is also added to the config of dockerd so it can be set with a flag when starting the daemon. This value gets stored in the imageService of the daemon when it is initiated and can be passed to the NewLayerDownloadManager as a parameter. It will be stored in the LayerDownloadManager when initiated. This enables us to set the max amount of retries in makeDownoadFunc equal to the max download attempts. I also added some tests that are based on maxConcurrentDownloads/maxConcurrentUploads. You can pull this version and test in a development container. Either create a config `file /etc/docker/daemon.json` with `{"max-download-attempts"=3}``, or use `dockerd --max-download-attempts=3 -D &` to start up the dockerd. Start downloading a container and disconnect from the internet whilst downloading. The result would be that it stops pulling after three attempts. Signed-off-by: Lukas Heeren <lukas-heeren@hotmail.com> Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Stefan Scherer

commit sha 48662075434da5a13b1316df1ac7488a81e4cf0a

Zap a fixed folder, add build number to folder inside Signed-off-by: Stefan Scherer <stefan.scherer@docker.com>

view details

HuanHuan Ye

commit sha a57fd5488d5f7cd4e9e4f836804c5e6875f34c99

Fix base.Dial is deprecated: Use DialContext instead 1.Change base.Dial to base.DailContext. 2.Remove proxyDialer that was previously used to configure a net.Dialer to route proxy.Dialer which will route the connections through the proxy using the connections through a SOCKS proxy. SOCKS proxies are now supported by configuring only http.Transport.Proxy, and no longer require changing http.Transport.Dial. Signed-off-by: HuanHuan Ye <logindaveye@gmail.com>

view details

Akihiro Suda

commit sha 4e8cf9f5ddccbb8619640876fc302b8f41c58184

Merge pull request #39960 from thaJeztah/lint_integration_cli integration-cli: enable golangci-lint

view details

Sam Whited

commit sha 04d9e157b2b09401ae3e9e00e143606218910580

testutil/daemon: add NewDaemon without testingT Signed-off-by: Sam Whited <sam@samwhited.com>

view details

Sebastiaan van Stijn

commit sha 75477f0b3c77f2108a6b5586dbc246c52b479941

bump libnetwork to 96bcc0dae898308ed659c5095526788a602f4726 full diff: https://github.com/docker/libnetwork/compare/92d1fbe1eb0883cf11d283cea8e658275146411d...96bcc0dae898308ed659c5095526788a602f4726 changes included: - docker/libnetwork#2429 Updating IPAM config with results from HNS create network call - addresses moby/moby#38358 - docker/libnetwork#2450 Always configure iptables forward policy - related to moby/moby#14041 and docker/libnetwork#1526 Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Brian Goff

commit sha 264e16c97b915dfa41d37bde349c266c390e7ed2

Merge pull request #39876 from thaJeztah/TestCreateWithWorkdir_hyperv integration-cli: update TestCreateWithWorkdir for Hyper-V isolation

view details

Samuel Karp

commit sha fd94bae0b8acc451a79667dd1cef4c583d532187

awslogs: fix flaky TestLogBlocking unit test TestLogBlocking is intended to test that the Log method blocks by default. It does this by mocking out the internals of the awslogs.logStream and replacing one of its internal channels with one that is controlled by the test. The call to Log occurs inside a goroutine. Go may or may not schedule the goroutine immediately and the blocking may or may not be observed outside the goroutine immediately due to decisions made by the Go runtime. This change adds a small timeout for test failure so that the Go runtime has the opportunity to run the goroutine before the test fails. Signed-off-by: Samuel Karp <skarp@amazon.com>

view details

Kir Kolyshkin

commit sha 9cd24ba6057fa479918e9bce4e2c0554ec991394

logger: fix follow logs for max-file=1 In case jsonlogfile is used with max-file=1 and max-size set, the log rotation is not perfomed; instead, the log file is closed and re-open with O_TRUNC. This situation is not handled by the log reader in follow mode, leading to an issue of log reader being stuck forever. This situation (file close/reopen) could be handled in waitRead(), but fsnotify library chose to not listen to or deliver this event (IN_CLOSE_WRITE in inotify lingo). So, we have to handle this by checking the file size upon receiving io.EOF from the log reader, and comparing the size with the one received earlier. In case the new size is less than the old one, the file was truncated and we need to seek to its beginning. Fixes #39235. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>

view details

Danny Milosavljevic

commit sha 074eca1d796d0863a8c71d4707f6d8767fd19fa9

Use fewer modprobes Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>

view details

Sebastiaan van Stijn

commit sha 6c3113e599d5da56031edf6075cdea62e909218c

Merge pull request #39951 from yedamao/fix-base-Dial-is-deprecated Fix base.Dial is deprecated: Use DialContext instead

view details

Sebastiaan van Stijn

commit sha 7d573c7b615d93f79797236693bc9d0cdd4cced1

Merge pull request #39967 from thaJeztah/bump_libnetwork bump libnetwork to 96bcc0dae898308ed659c5095526788a602f4726

view details

Sebastiaan van Stijn

commit sha 9b07a3e0a59dbdabd1e3c71974a0e512f964d169

Merge pull request #39917 from StefanScherer/windows-zap-fixed-subdir Zap a fixed windows folder, add build number to folder inside

view details

Sebastiaan van Stijn

commit sha 611c8fade6c609ac8a84eb9c05a422084334425b

Merge pull request #39943 from SamWhited/no_testingt_daemon testutil/daemon: add NewDaemon without testingT

view details

Sebastiaan van Stijn

commit sha 3e4f6225dabdce17e9e3abc60f1d2c78a497f448

testutil: remove unneeded namer, testname interfaces Now that the gocheck framework is no longer used, we don't have to define these interfaces. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

push time in 20 days

pull request commentmoby/moby

Run imageservice.Cleanup() also before daemon start

@olleolleolle - just asking for my own understanding of the problem:

  1. Would it be feasible to cleanup at a more regular/predictable cadence [using goroutines etc.]? In production systems where cleanup may run infrequently, we could possibly be carrying a large debt of orphaned layers to cleanup. Trying to see if we can avoid situations where cleanup needs long time to run.

  2. Why do the orphaned layers arise in the first place and what could we do to prevent it.

olljanat

comment created time in 22 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha eb5e8718724daca76dc21d45ebcc491d7cafb924

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Currently also includes temporary changes to Jenkinsfile for testing purposes Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 23 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Function Run-UnitTests() {     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/man"     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/integration"     $pkgList = $pkgList -replace "`r`n", " "-    $goTestCommand = "go test" + $raceParm + " -cover -ldflags -w -tags """ + "autogen daemon" + """ -a """ + "-test.timeout=10m" + """ $pkgList"+    $goTestCommand = "$GOTESTSUM_LOCATION\gotestsum.exe --format=standard-quiet --jsonfile=bundles\go-test-report-unit-tests.json --junitfile=bundles\junit-report-unit-tests.xml -- " + $raceParm + " -cover -ldflags -w -a """ + "-test.timeout=10m" + """ $pkgList"+    Write-Host "INFO: Invoking unit tests run with $goTestCommand"     Invoke-Expression $goTestCommand     if ($LASTEXITCODE -ne 0) { Throw "Unit tests failed" } }  # Run the integration tests Function Run-IntegrationTests() {-    $env:DOCKER_INTEGRATION_DAEMON_DEST = $root + "\bundles\tmp"+    $escRoot = [Regex]::Escape($root)+    $env:DOCKER_INTEGRATION_DAEMON_DEST = $bundlesDir + "\tmp"     $dirs = go list -test -f '{{- if ne .ForTest `"`" -}}{{- .Dir -}}{{- end -}}' .\integration\...-    $integration_api_dirs = @()+    #$integration_api_dirs = @()     ForEach($dir in $dirs) {-        $integration_api_dirs += $dir-        Write-Host "Building test suite binary $dir"-        go test -c -o "$dir\test.exe" $dir-    }--    ForEach($dir in $integration_api_dirs) {+        #$integration_api_dirs += $dir+        #Write-Host "Building test suite binary $dir"+        #go test -c -o "$dir\test.exe" $dir++        # Normalize directory name for using in the test results files.+        $normDir = $dir.Trim()+        $normDir = $normDir -replace $escRoot, ""+        $normDir = $normDir -replace "\\", "-"+        $normDir = $normDir -replace "\/", "-"+        $normDir = $normDir -replace "\.", "-"+        if ($normDir.StartsWith("-"))+        {+            $normDir = $normDir.TrimStart("-")+            Write-Host $normDir+        }+        if ($normDir.EndsWith("-"))+        {+            $normDir = $normDir.TrimEnd("-")+            Write-Host $normDir+        }+        $jsonFilePath = $bundlesDir + "\go-test-report-int-tests-$normDir" + ".json"+        $xmlFilePath = $bundlesDir + "\junit-report-int-tests-$normDir" + ".xml"         Set-Location $dir         Write-Host "Running $($PWD.Path)"         $pinfo = New-Object System.Diagnostics.ProcessStartInfo-        $pinfo.FileName = "$($PWD.Path)\test.exe"+        #gotestsum.exe is on the path+        $pinfo.FileName = "gotestsum.exe"         $pinfo.WorkingDirectory = "$($PWD.Path)"         $pinfo.RedirectStandardError = $true         $pinfo.UseShellExecute = $false-        $pinfo.Arguments = $env:INTEGRATION_TESTFLAGS+        $tmpArgs = "--format=standard-quiet --jsonfile=$jsonFilePath --junitfile=$xmlFilePath -- $env:INTEGRATION_TESTFLAGS"+        #Write-Host $tmpArgs

Changed

thaJeztah

comment created time in 23 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Function Run-UnitTests() {     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/man"     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/integration"     $pkgList = $pkgList -replace "`r`n", " "-    $goTestCommand = "go test" + $raceParm + " -cover -ldflags -w -tags """ + "autogen daemon" + """ -a """ + "-test.timeout=10m" + """ $pkgList"+    $goTestCommand = "$GOTESTSUM_LOCATION\gotestsum.exe --format=standard-quiet --jsonfile=bundles\go-test-report-unit-tests.json --junitfile=bundles\junit-report-unit-tests.xml -- " + $raceParm + " -cover -ldflags -w -a """ + "-test.timeout=10m" + """ $pkgList"+    Write-Host "INFO: Invoking unit tests run with $goTestCommand"     Invoke-Expression $goTestCommand     if ($LASTEXITCODE -ne 0) { Throw "Unit tests failed" } }  # Run the integration tests Function Run-IntegrationTests() {-    $env:DOCKER_INTEGRATION_DAEMON_DEST = $root + "\bundles\tmp"+    $escRoot = [Regex]::Escape($root)+    $env:DOCKER_INTEGRATION_DAEMON_DEST = $bundlesDir + "\tmp"     $dirs = go list -test -f '{{- if ne .ForTest `"`" -}}{{- .Dir -}}{{- end -}}' .\integration\...-    $integration_api_dirs = @()+    #$integration_api_dirs = @()     ForEach($dir in $dirs) {-        $integration_api_dirs += $dir-        Write-Host "Building test suite binary $dir"-        go test -c -o "$dir\test.exe" $dir-    }--    ForEach($dir in $integration_api_dirs) {+        #$integration_api_dirs += $dir+        #Write-Host "Building test suite binary $dir"+        #go test -c -o "$dir\test.exe" $dir++        # Normalize directory name for using in the test results files.+        $normDir = $dir.Trim()+        $normDir = $normDir -replace $escRoot, ""+        $normDir = $normDir -replace "\\", "-"+        $normDir = $normDir -replace "\/", "-"+        $normDir = $normDir -replace "\.", "-"+        if ($normDir.StartsWith("-"))+        {+            $normDir = $normDir.TrimStart("-")+            Write-Host $normDir+        }+        if ($normDir.EndsWith("-"))+        {+            $normDir = $normDir.TrimEnd("-")+            Write-Host $normDir+        }+        $jsonFilePath = $bundlesDir + "\go-test-report-int-tests-$normDir" + ".json"+        $xmlFilePath = $bundlesDir + "\junit-report-int-tests-$normDir" + ".xml"         Set-Location $dir         Write-Host "Running $($PWD.Path)"         $pinfo = New-Object System.Diagnostics.ProcessStartInfo-        $pinfo.FileName = "$($PWD.Path)\test.exe"+        #gotestsum.exe is on the path

It is located elsewhere and is explicitly added to the PATH [see line 899 in windows.ps1]. So using "$($PWD.Path)\gotestsum.exe" may not be right.

I have removed the comment.

thaJeztah

comment created time in 23 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Function Run-UnitTests() {     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/man"     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/integration"     $pkgList = $pkgList -replace "`r`n", " "-    $goTestCommand = "go test" + $raceParm + " -cover -ldflags -w -tags """ + "autogen daemon" + """ -a """ + "-test.timeout=10m" + """ $pkgList"+    $goTestCommand = "$GOTESTSUM_LOCATION\gotestsum.exe --format=standard-quiet --jsonfile=bundles\go-test-report-unit-tests.json --junitfile=bundles\junit-report-unit-tests.xml -- " + $raceParm + " -cover -ldflags -w -a """ + "-test.timeout=10m" + """ $pkgList"+    Write-Host "INFO: Invoking unit tests run with $goTestCommand"     Invoke-Expression $goTestCommand     if ($LASTEXITCODE -ne 0) { Throw "Unit tests failed" } }  # Run the integration tests Function Run-IntegrationTests() {-    $env:DOCKER_INTEGRATION_DAEMON_DEST = $root + "\bundles\tmp"+    $escRoot = [Regex]::Escape($root)+    $env:DOCKER_INTEGRATION_DAEMON_DEST = $bundlesDir + "\tmp"     $dirs = go list -test -f '{{- if ne .ForTest `"`" -}}{{- .Dir -}}{{- end -}}' .\integration\...-    $integration_api_dirs = @()+    #$integration_api_dirs = @()     ForEach($dir in $dirs) {-        $integration_api_dirs += $dir-        Write-Host "Building test suite binary $dir"-        go test -c -o "$dir\test.exe" $dir-    }--    ForEach($dir in $integration_api_dirs) {+        #$integration_api_dirs += $dir+        #Write-Host "Building test suite binary $dir"+        #go test -c -o "$dir\test.exe" $dir

Instead of building the test binary and then running it, we are just running the test. Why we need to do it in two different stages?

thaJeztah

comment created time in 23 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Function Run-UnitTests() {     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/man"     $pkgList = $pkgList | Select-String -NotMatch "github.com/docker/docker/integration"     $pkgList = $pkgList -replace "`r`n", " "-    $goTestCommand = "go test" + $raceParm + " -cover -ldflags -w -tags """ + "autogen daemon" + """ -a """ + "-test.timeout=10m" + """ $pkgList"+    $goTestCommand = "$GOTESTSUM_LOCATION\gotestsum.exe --format=standard-quiet --jsonfile=bundles\go-test-report-unit-tests.json --junitfile=bundles\junit-report-unit-tests.xml -- " + $raceParm + " -cover -ldflags -w -a """ + "-test.timeout=10m" + """ $pkgList"+    Write-Host "INFO: Invoking unit tests run with $goTestCommand"     Invoke-Expression $goTestCommand     if ($LASTEXITCODE -ne 0) { Throw "Unit tests failed" } }  # Run the integration tests Function Run-IntegrationTests() {-    $env:DOCKER_INTEGRATION_DAEMON_DEST = $root + "\bundles\tmp"+    $escRoot = [Regex]::Escape($root)+    $env:DOCKER_INTEGRATION_DAEMON_DEST = $bundlesDir + "\tmp"     $dirs = go list -test -f '{{- if ne .ForTest `"`" -}}{{- .Dir -}}{{- end -}}' .\integration\...-    $integration_api_dirs = @()+    #$integration_api_dirs = @()

Done

thaJeztah

comment created time in 23 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 param( $ErrorActionPreference = "Stop" $ProgressPreference = "SilentlyContinue" $pushed=$False  # To restore the directory if we have temporarily pushed to one.+Set-Variable GOTESTSUM_COMMIT -option Constant -value 'v0.3.5'

Removed

thaJeztah

comment created time in 23 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 Try {                 if (!($env:INTEGRATION_TESTFLAGS)) {                     $env:INTEGRATION_TESTFLAGS = "-test.v"                 }-                Set-Location "$env:SOURCES_DRIVE`:\$env:SOURCES_SUBDIR\src\github.com\docker\docker"+                #Set-Location "$env:SOURCES_DRIVE`:\$env:SOURCES_SUBDIR\src\github.com\docker\docker"

Done

thaJeztah

comment created time in 23 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 pipeline {         timestamps()     }     parameters {-        booleanParam(name: 'unit_validate', defaultValue: true, description: 'amd64 (x86_64) unit tests and vendor check')-        booleanParam(name: 'amd64', defaultValue: true, description: 'amd64 (x86_64) Build/Test')-        booleanParam(name: 'arm64', defaultValue: true, description: 'ARM (arm64) Build/Test')-        booleanParam(name: 's390x', defaultValue: true, description: 'IBM Z (s390x) Build/Test')-        booleanParam(name: 'ppc64le', defaultValue: true, description: 'PowerPC (ppc64le) Build/Test')-        booleanParam(name: 'windowsRS1', defaultValue: false, description: 'Windows 2016 (RS1) Build/Test')+        booleanParam(name: 'unit_validate', defaultValue: false, description: 'amd64 (x86_64) unit tests and vendor check')+        booleanParam(name: 'amd64', defaultValue: false, description: 'amd64 (x86_64) Build/Test')+        booleanParam(name: 'arm64', defaultValue: false, description: 'ARM (arm64) Build/Test')

Changed all except windowsRS1 which should be kept true by default to ensure that before merge, we verify that RS1 does not break. After that, we could change it back.

thaJeztah

comment created time in 23 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 pipeline {         timestamps()     }     parameters {-        booleanParam(name: 'unit_validate', defaultValue: true, description: 'amd64 (x86_64) unit tests and vendor check')-        booleanParam(name: 'amd64', defaultValue: true, description: 'amd64 (x86_64) Build/Test')-        booleanParam(name: 'arm64', defaultValue: true, description: 'ARM (arm64) Build/Test')-        booleanParam(name: 's390x', defaultValue: true, description: 'IBM Z (s390x) Build/Test')-        booleanParam(name: 'ppc64le', defaultValue: true, description: 'PowerPC (ppc64le) Build/Test')-        booleanParam(name: 'windowsRS1', defaultValue: false, description: 'Windows 2016 (RS1) Build/Test')+        booleanParam(name: 'unit_validate', defaultValue: false, description: 'amd64 (x86_64) unit tests and vendor check')+        booleanParam(name: 'amd64', defaultValue: false, description: 'amd64 (x86_64) Build/Test')+        booleanParam(name: 'arm64', defaultValue: false, description: 'ARM (arm64) Build/Test')

Done

thaJeztah

comment created time in 24 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\gitsetup.zip; `   `   Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  #TODO - Per https://docs.docker.com/engine/reference/builder/ +  #       the below line is redundant and should be removed.+  #New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++# Ensure all directories exist that we will require below....+WORKDIR ${GOPATH}\${DOCKER_SRC_REL_LOCATION}\${BUNDLES_REL_LOCATION}++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `+    $GotestsumPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:GOTESTSUM_LOCATION; `+    $GotestsumBinPath=Join-Path -Path $GotestsumPath -ChildPath "gotestsum.exe"; `+    if (Test-Path $GotestsumBinPath) { `+      Write-Host "INFO: gotestsum already available in $cwGotestsumBinPath - skipping building it...." `+      return `+    } else { `+      Write-Host "INFO: No existing binary of gotestsum found. Building gotestsum version $Env:GOTESTSUM_COMMIT in $Env:GOPATH" `+    } `+    $optsForGet = @('"get"', '"-d"', '"gotest.tools/gotestsum"'); ` +    $logFileName = 'gotestsum.get.out';  `+    &go $optsForGet > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -ne 0) {  `+      Throw '"Failed getting gotestsum sources..."'  `+    }; `+    Write-Host "INFO:     Sources obtained for gotestsum..."; `+    Push-Location $GotestsumPath; `+    $optsForCheckout = @('"checkout"', '"-q"', """$Env:GOTESTSUM_COMMIT"""); ` +    $logFileName = 'gotestsum.git.out';  `+    &git $optsForCheckout > $logFileName 2>&1; `+    $savedExitCode = $LASTEXITCODE; `+    Save-FileIfNonZero -LogName $logFileName; `+    if ($savedExitCode -eq 0) { `+      Write-Host "INFO:     Checkout done for gotestsum..."; `+      $logFileName = 'gotestsum.build.out';  `+      $optsForBuild = @('"build"', '"-buildmode=exe"'); ` +      &go $optsForBuild > gotestsum.build.out 2>&1; `+      $savedExitCode = $LASTEXITCODE; `+      Save-FileIfNonZero -LogName $logFileName; `+    } else { `+      Throw '"gotestsum checkout failed..."'; `+    } `+    Pop-Location; `+    `+    if ($savedExitCode -ne 0) {  `+      Throw '"gotestsum build failed..."'; `+    } `+    Write-Host "INFO:     Build done for gotestsum..."; `+  } `   `-  Write-Host INFO: Completed+  Write-Host INFO: Building gotestsum...; `

I do not know a compelling argument either way. Why would you choose one over the other?

thaJeztah

comment created time in 24 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\gitsetup.zip; `   `   Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  #TODO - Per https://docs.docker.com/engine/reference/builder/ +  #       the below line is redundant and should be removed.+  #New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++# Ensure all directories exist that we will require below....+WORKDIR ${GOPATH}\${DOCKER_SRC_REL_LOCATION}\${BUNDLES_REL_LOCATION}++WORKDIR ${GOPATH}++RUN `+  Function Save-FileIfNonZero() { `+    Param( `+      [Parameter(Mandatory=$True, `+       ParameterSetName="""LogName""")] `+       $LogName `+    ) `+    if (Test-Path $LogName) `+    { `+      if ((Get-Item $LogName).length -gt 0) { `+        $SrcPath=Join-Path -Path $Env:GOPATH -ChildPath $Env:DOCKER_SRC_REL_LOCATION; `+        $BundlesPath=Join-Path -Path $SrcPath -ChildPath $Env:BUNDLES_REL_LOCATION; `+        $BundlesMiscPath=Join-Path -Path $BundlesPath -ChildPath 'misc'; `+        Move-Item -Path $LogName -Destination $BundlesMiscPath; `+      } else { `+        Remove-Item $LogName; `+      } `+    } `+  } `+  Function Build-GoTestSum() { `

Good suggestion and something I have put on my plate. It will be done in a separate PR

thaJeztah

comment created time in 24 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\gitsetup.zip; `   `   Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  #TODO - Per https://docs.docker.com/engine/reference/builder/ +  #       the below line is redundant and should be removed.+  #New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `   `   Write-Host INFO: Configuring git core.autocrlf...; `-  C:\git\cmd\git config --global core.autocrlf true; `+  C:\git\cmd\git config --global core.autocrlf true;++# Ensure all directories exist that we will require below....+WORKDIR ${GOPATH}\${DOCKER_SRC_REL_LOCATION}\${BUNDLES_REL_LOCATION}

Removed as it was there for its side-effect alone

thaJeztah

comment created time in 24 days

Pull request review commentmoby/moby

Windows: Build and use gotestsum for running all tests

 RUN `   Remove-Item C:\gitsetup.zip; `   `   Write-Host INFO: Creating source directory...; `-  New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `+  #TODO - Per https://docs.docker.com/engine/reference/builder/ +  #       the below line is redundant and should be removed.+  #New-Item -ItemType Directory -Path ${GOPATH}\src\github.com\docker\docker | Out-Null; `

Changed to create the directory explicitly and removed the WORKDIR directive

thaJeztah

comment created time in 24 days

startedmicrosoft/hcsshim

started time in 24 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 7408acd61f845611699f353454c62dbc0728f3c3

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Currently also includes temporary changes to Jenkinsfile for testing purposes Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 24 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 59c3482498db8a3724d30d5659382925535c5ac2

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Currently also includes temporary changes to Jenkinsfile for testing purposes Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 24 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 2433e0c8c33f2695af8201352022dcd0fef1027b

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Currently also includes temporary changes to Jenkinsfile for testing purposes Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 24 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 2be3decd34604ae1440005ad4bdd24e08668dba8

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Currently also includes temporary changes to Jenkinsfile for testing purposes Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 24 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha 7b7f942333717e6875331ddd0b0dff2bded567da

Build and use gotestsum for running all tests 1. Dockerfile.Windows modified to build gotestsum.exe 2. Use gotestsum.exe in invoking the execution of: (a) Unit tests (run in containers), (b) Integration tests (run outside containers) (c) Integration-cli (run outside containers) No changes made to other categories of tests (e.g. LCOW). 3. Copy .xml files produced by gotestsum in appropriate paths where Jenkins can ingest them 4. Modify Jenkinsfile to mark results output as being jUnit "type" as well as to archive the .xml test result files as artifacts. Currently also includes temporary changes to Jenkinsfile for testing purposes Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in 24 days

pull request commentmicrosoft/hcsshim

wclayer: Work around Windows bug when expanding sandbox size

@jstarks - I can work on getting this integrated into Moby once the merge goes through.

jstarks

comment created time in 25 days

issue commentmicrosoft/hcsshim

New trend of "docker run" command stucking with syscall timeout

@chinadragon0515 @yidetu - In absence of a local repro, I am waiting for more information from your side. Here are just a few other things that you could share from your side:

  1. Details of the image named latest.
  2. Do you get the container id back from docker run [in which case it may be possible to get docker logs] or does it get stuck before that?
  3. Docker logs for the container
  4. Stack for active processes on the machine
  5. Event logs
  6. The state of the container that you see from docker container ls -a
  7. Details of the OS etc. on the machine you are getting the repro at
  8. What all you have tried to get a more reliable repro
yidetu

comment created time in 25 days

push eventthaJeztah/docker

Vikram bir Singh

commit sha dadf1f979c6dc3855d2fe780c75050ccd7b4ba26

Test Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in a month

push eventthaJeztah/docker

Vikram bir Singh

commit sha 7f20c3e274afc37313d32054537a640d42385328

Test Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in a month

push eventthaJeztah/docker

Vikram bir Singh

commit sha 7e4423a930a1e220956529a1bf0380d77c0ef3c6

Test Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in a month

push eventthaJeztah/docker

Akihiro Suda

commit sha e76dea157e3b6a1ff0812e52c630b7cc8f363da5

docs/rootless.md: update Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>

view details

Sebastiaan van Stijn

commit sha de10c7d0136dc054abdb40ca624211c04334bdc0

client: reduce string-matching in tests These checks were redundant, as we were not expecting a specific string, just that a server-error or authentication error was returned. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 9ed58987ceb2427b66f3b9128088620dfde64471

integration: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 23b6b5a9ae0e16bdcf37d0ec9a5a8bee9cb38f97

integration-cli: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha a617809fe7cd59b8825cfad80af772d7b3595024

testutil: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 93100adb69de2338982b5c2419c4dcef61ea2ca0

api/server: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha dabc7cdb56a1d5ae392e945a12f8357738950f2d

client: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha d1817b61351667aadb6d8b5afea3518d5908cdc1

client: use constants for http status codes Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 441b031bdaf542f2050cf7ef20822d0f1edd71ae

registry: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 63e62d13a05da7ac3f24c8af703b9babd41eb558

registry: use constants for http status codes Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 3b8487521676f6065f6734c080ba9457a43c9090

builder-next: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 984d5bc30cfacd63872f8c1c4d366c8211a112bd

builder-next: use constants for http status codes Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 9c590ed5c5eece661f8198b2bcb8f96d9f82fea9

daemon/logger/splunk: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 5ba167ce8a1c34fbb6c49f246012d197455fecfa

pkg/authorization: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha aa655a4d73693741cd3f8bc44566eb34585b3303

pkg/plugins: use constants for http methods Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha a33cf495f2f0ef0b30b943fc9a7e54ec2aaa4c1e

daemon: use constants for AppArmor profiles Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Sebastiaan van Stijn

commit sha 717575b5850ed4dea11a1c79c11593f8fb2f1e3a

daemon: make supportsSeccomp a const Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

Brian Goff

commit sha bef73d8b0721ae60dfc6ab6875328ffa9adbda49

Wait for c8d process exit instead of polling API In the containerd supervisor, instead of polling the healthcheck API every 500 milliseconds we can just wait for the process to exit. Signed-off-by: Brian Goff <cpuguy83@gmail.com>

view details

Sam Whited

commit sha 95ea6e70696582cec3643b160a4eb4b98aa3d9e7

Export the LogT type and use it in the options Signed-off-by: Sam Whited <sam@samwhited.com>

view details

Sebastiaan van Stijn

commit sha 1fab7c645751ea1c54de059eb222159705cfc9a5

bump Graylog2/go-gelf to 1550ee647df0510058c9d67a45c56f18911d80b8 https://github.com/Graylog2/go-gelf/compare/4143646226541087117ff2f83334ea48b3201841...1550ee647df0510058c9d67a45c56f18911d80b8 includes - Graylog2/go-gelf#20 Prevent panic when unmarshalling JSON - Graylog2/go-gelf#23 Feat: Use more precise time stamps - Graylog2/go-gelf#31 bugfix. Not goroutine safe for TCP writer Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

view details

push time in a month

push eventvikramhh/MicrosoftDockerProvider

Vikram bir Singh

commit sha 6ae1144e6a1b38094da77fe8091ff720431ffeb9

Introduce a new package named containerd 1. Restructure code to make it easier to have multiple packages. 2. Introduce the containerd package 3. Introduce implicit links between a package and its source's names (a source for a given package should start with that package's name) 4. Handle multiple names and wildcards in package name specification 5. Installation of the containerd service. 6. Removal of redundant/duplicated code and bug fixes for issues encountered while making changes. Pending: 1. Specification and handling of Dependencies - future work. Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in a month

push eventthaJeztah/docker

Vikram bir Singh

commit sha 3b8b4684b67299d8c6881231a63a003820232872

Test Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in a month

push eventthaJeztah/docker

Vikram bir Singh

commit sha 5e4eb3eb4914e24cb92a1bccf994547f892a2f02

Testing Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in a month

push eventthaJeztah/docker

Vikram bir Singh

commit sha a8320d026f607a4eabae3cd0a8d7f35eb8dd0199

Testing Signed-off-by: Vikram bir Singh <vikrambir.singh@docker.com>

view details

push time in a month

more