action/create: Trim automatically generated container names to 64 chars
Fixes GH-337
This commit is contained in:
parent
ef06ea622e
commit
fb23e606cc
2 changed files with 20 additions and 5 deletions
|
@ -22,6 +22,12 @@ IMPROVEMENTS:
|
||||||
- Show an user friendly message when trying to use the plugin on non-Linux
|
- Show an user friendly message when trying to use the plugin on non-Linux
|
||||||
environments.
|
environments.
|
||||||
|
|
||||||
|
BUG FIXES:
|
||||||
|
|
||||||
|
- Trim automatically generated container names to 64 chars [[GH-337]]
|
||||||
|
|
||||||
|
[GH-337]: https://github.com/fgrehm/vagrant-lxc/issues/337
|
||||||
|
|
||||||
|
|
||||||
## [1.0.1](https://github.com/fgrehm/vagrant-lxc/compare/v1.0.0...v1.0.1) (Oct 15, 2014)
|
## [1.0.1](https://github.com/fgrehm/vagrant-lxc/compare/v1.0.0...v1.0.1) (Oct 15, 2014)
|
||||||
|
|
||||||
|
|
|
@ -16,11 +16,7 @@ module Vagrant
|
||||||
when String
|
when String
|
||||||
# Nothing to do here, move along...
|
# Nothing to do here, move along...
|
||||||
else
|
else
|
||||||
container_name = "#{env[:root_path].basename}_#{env[:machine].name}"
|
container_name = generate_container_name(env)
|
||||||
container_name.gsub!(/[^-a-z0-9_]/i, "")
|
|
||||||
# milliseconds + random number suffix to allow for simultaneous
|
|
||||||
# `vagrant up` of the same box in different dirs
|
|
||||||
container_name << "_#{(Time.now.to_f * 1000.0).to_i}_#{rand(100000)}"
|
|
||||||
end
|
end
|
||||||
|
|
||||||
env[:machine].provider.driver.create(
|
env[:machine].provider.driver.create(
|
||||||
|
@ -36,6 +32,19 @@ module Vagrant
|
||||||
|
|
||||||
@app.call env
|
@app.call env
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def generate_container_name(env)
|
||||||
|
container_name = "#{env[:root_path].basename}_#{env[:machine].name}"
|
||||||
|
container_name.gsub!(/[^-a-z0-9_]/i, "")
|
||||||
|
|
||||||
|
# milliseconds + random number suffix to allow for simultaneous
|
||||||
|
# `vagrant up` of the same box in different dirs
|
||||||
|
container_name << "_#{(Time.now.to_f * 1000.0).to_i}_#{rand(100000)}"
|
||||||
|
|
||||||
|
# Trim container name to 64 chars, keeping "randomness"
|
||||||
|
trim_point = container_name.size > 64 ? -64 : -(container_name.size)
|
||||||
|
container_name[trim_point..-1]
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue