moby--moby/hack/ci
Sebastiaan van Stijn 5580b79813 PowerShell: fix "Nuke-Everything" failing to remove images
I noticed this error in CI:

```
20:37:25 INFO: Non-base image count on control daemon to delete is 9
20:37:25 "docker rmi" requires at least 1 argument.
20:37:25 See 'docker rmi --help'.
20:37:25
20:37:25 Usage:  docker rmi [OPTIONS] IMAGE [IMAGE...]
20:37:25
20:37:25 Remove one or more images
```

Which indicated that the PowerShell script managed to find images to delete, but
not actually passing the images to `docker rmi`.

The reason for this failing was that the script attempted to convert the
collection/array to a string, which produces;

```powershell
Write-Output $(docker images --format "{{.Repository}}:{{.ID}}" | `
>>         select-string -NotMatch "windowsservercore" | `
>>         select-string -NotMatch "nanoserver" | `
>>         select-string -NotMatch "docker" `
>>         ).ToString()
System.Object[]
```

Which, when trying to split by the chosen separator (`:`), will return the same;

```powershell
Write-Output "System.Object[]".Split(":")[0]
```

This patch:

- Adds an intermediate variable (`$allImages`) to make the code better readable
- Switches the separator to `#`, to prevent breaking on images pulled from a
  repository with a port in its name (`myregistry:5000/my/image`)
- Switches to use a comma-separated list for `-NotMatch` (for readability)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-12-22 22:51:14 +01:00
..
arm
experimental
janky ci: quote bash variable 2018-03-29 18:06:45 -07:00
powerpc
windows.ps1 PowerShell: fix "Nuke-Everything" failing to remove images 2018-12-22 22:51:14 +01:00
z