Назад | Перейти на главную страницу

Шеф-повар: Kitchen Converge не работает в гостевой системе Windows 10 из-за ошибки Vagrant FileTransporter

Как описано в созданной мной ошибке:

https://github.com/test-kitchen/kitchen-vagrant/issues/407

Когда я выполняю сборку кухни на только что созданной коробке Windows 10, она подключается и начинает синхронизировать кулинарные книги локально на коробке, но не работает с ошибкой:

>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: 1 actions failed.
>>>>>>     Failed to complete #converge action: [[WinRM::FS::Core::FileTransporter] Upload failed (exitcode: 0), but stderr present
Cannot create "C:\tmp\kitchen" because a file or directory with the same name already exists.
At line:12 char:40
+   $path | ? {-not (test-path $_)} | % {$null = mkdir $_}
+                                        ~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (C:\tmp\kitchen\cookbooks:String) [New-Item], IOException
    + FullyQualifiedErrorId : CreateDirectoryIOError,Microsoft.PowerShell.Commands.NewItemCommand
Could not find a part of the path 'C:\tmp\kitchen\cookbooks\'.
At line:47 char:17
+   dir $unpack | cp -dest "$dst/" -force -recurse
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (metadata.rb:FileInfo) [Copy-Item], DirectoryNotFoundException
    + FullyQualifiedErrorId : CopyDirectoryInfoItemIOError,Microsoft.PowerShell.Commands.CopyItemCommand
Could not find a part of the path 'C:\tmp\kitchen\cookbooks\'.
At line:47 char:17
+   dir $unpack | cp -dest "$dst/" -force -recurse
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (README.md:FileInfo) [Copy-Item], DirectoryNotFoundException
    + FullyQualifiedErrorId : CopyDirectoryInfoItemIOError,Microsoft.PowerShell.Commands.CopyItemCommand
Could not find a part of the path 'C:\tmp\kitchen\cookbooks\'.
At line:47 char:17
+   dir $unpack | cp -dest "$dst/" -force -recurse
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (default.rb:FileInfo) [Copy-Item], DirectoryNotFoundException
    + FullyQualifiedErrorId : CopyDirectoryInfoItemIOError,Microsoft.PowerShell.Commands.CopyItemCommand
Cannot create "C:\tmp\kitchen" because a file or directory with the same name already exists.
At line:12 char:40
+   $path | ? {-not (test-path $_)} | % {$null = mkdir $_}
+                                        ~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (C:\tmp\kitchen\cache:String) [New-Item], IOException
    + FullyQualifiedErrorId : CreateDirectoryIOError,Microsoft.PowerShell.Commands.NewItemCommand
] on default-BPA-TEST
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration

Я обнаружил, что один способ обойти эту проблему - вручную создать:

c: \ tmp \ кухня \ кулинарные книги пустой каталог на коробке перед запуском кухни сходятся. Это устраняет проблему и приводит к успешному схождению, но использование этого подхода на постоянной основе не является идеальным, поскольку вам нужно будет либо встроить его в изображение, либо запустить что-то введенное до синхронизации кулинарных книг.