hashicorp / hashicorp/vagrant

sync with rsync doesn't work

Open
#9,079 2 comments 1 reaction 0 assignees View on GitHub
encoding synced-folders/rsync
Dominant language
Ruby
Stars
27.2k
Forks
4.4k
Avg merge
1m
Merged PRs (30d)
1

Description

### Vagrant version
Vagrant 2.0.0

### Host operating system
Windows 10 pro

### Guest operating system
CentOS 6.7 x64

### Vagrantfile
```ruby
# -*- mode: ruby -*-
# vi: set ft=ruby :

# see README.md

Vagrant.configure("2") do |config|
# https://docs.vagrantup.com.

config.vm.box = "CentOS6.7x64"
config.vm.hostname = "vagrant-ruby-box"
config.vm.network :forwarded_port, guest: 3000, host: 3105
config.vm.network :forwarded_port, guest: 22, host: 2105

config.vm.provision :shell, path: 'vagrant_bootstrap.sh', keep_color: true

config.vm.provider "virtualbox" do |vb|
vb.memory = 2048
vb.cpus = 2
end

config.vm.synced_folder '.', '/vagrant', type: 'rsync',
rsync__exclude: ['.git/', 'tmp/', 'public/uploads/', 'public/assets/', 'log/']
# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
# config.vm.synced_folder "../data", "/vagrant_data"
end

```

Please note, if you are using Homestead or a different Vagrantfile format, we
may be unable to assist with your issue. Try to reproduce the issue using a
vanilla Vagrantfile first.

### Debug output
https://gist.github.com/kti-sxb/5767b275d1090ea60e259324e3557c2b

### Expected behavior
Success to vagrant up

### Actual behavior
```
C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/io.rb:32:in `encode': "\x8C" followed by "." on Windows-31J (Encoding::InvalidByteSequenceError)
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-2.0.0/lib/vagrant/util/io.rb:32:in `read_until_block'
```

I think the cause of this error is that "VBoxManage showvminfo" includes Japanese chars.

### Steps to reproduce
1. create a user with Japanese chars
2. create directory c:\projects\something\Vagrantfile
3. add this change : https://github.com/hashicorp/vagrant/pull/8972/files
4. vagrant up

### References

Contributor guide

Open the contributing guide

Research direction

Start in lib/vagrant/util/io.rb at the encode/read_until_block path named by the stack trace, then inspect how VBoxManage showvminfo output is read on Windows. Reproduce with the listed Japanese-character setup and review PR 8972 and the linked debug output. Done means vagrant up succeeds without the Encoding::InvalidByteSequenceError.

Written by the indexing model from the issue text.

Assessment

Tech stack
centos, ruby
Domain
devops, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.