Skip to content

cli should check if target name is valid before moving node.

I can move a node from name @couch1@ to @pc_couch1@:

drjohn@ppto:~/projetos/leap/platform/test/bitmask $ leap -v 2 node mv couch1 pc_couch1
 = read /home/drjohn/projetos/leap/platform/test/bitmask/Leapfile
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/dns.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/openvpn.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/soledad.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/tor.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/webapp.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/couchdb.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/monitor.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/tags/development.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/tags/production.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/tags/local.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/common.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/provider.json
 = loading nodes/couch1.json
 = loading common.json
 = loading provider.json
 = moved nodes/couch1.json to nodes/pc_couch1.json
 = skipping hiera/couch1.yaml, file is missing
 = skipping files/nodes/couch1/couch1.crt, file is missing
 = skipping files/nodes/couch1/couch1.key, file is missing
 = skipping files/nodes/pc_couch1/pc_couch1_ssh.pub, file already exists
 = removed files/nodes/couch1
 = Error, I don't know the path for :facts (with argument '')
 = bailing out 
drjohn@ppto:~/projetos/leap/platform/test/bitmask $ ls nodes/
pc_couch1.json

But I can't move it on the other direction:

drjohn@ppto:~/projetos/leap/platform/test/bitmask $ leap -v 2 node mv pc_couch1 couch1
 = read /home/drjohn/projetos/leap/platform/test/bitmask/Leapfile
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/dns.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/openvpn.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/soledad.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/tor.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/webapp.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/couchdb.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/services/monitor.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/tags/development.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/tags/production.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/tags/local.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/common.json
 = loading /home/drjohn/projetos/leap/platform/test/leap_platform/provider_base/provider.json
 = loading nodes/pc_couch1.json
 = loading common.json
 = loading provider.json
 = Illegal character(s) used in node name 'pc_couch1'
 = bailing out 
drjohn@ppto:~/projetos/leap/platform/test/bitmask $ ls nodes/
pc_couch1.json

(from redmine: created on 2013-06-20, closed on 2014-03-24)