diff --git a/ynh-dev b/ynh-dev index fe028f0..5a02e91 100755 --- a/ynh-dev +++ b/ynh-dev @@ -1,5 +1,8 @@ #!/bin/bash +DEFAULT_VERSION="stretch-unstable" +DEFAULT_PROVIDER="lxc" + usage() { cat < /dev/null || { - IP="${IP_BASE}$i" + IP="$i" break } done # Update Vagrantfile - grep "### END AUTOMATIC YNH-DEV ###" ./Vagrantfile &> /dev/null || { + grep "### END AUTOMATIC YNH-DEV" ./Vagrantfile &> /dev/null || { pushd ./vagrant &> /dev/null git pull popd &> /dev/null @@ -167,22 +171,19 @@ elif [ "$1" = "run" ]; then } # Adapt vagrantfile - perl -i -pe "s| (### END AUTOMATIC YNH-DEV ###)|\ - config.vm.define \"${VMNAME}\" do \|${VMNAME}\| \ -\n ${VMNAME}.vm.box = \"${BOX_NAME}\" \ -\n ${VMNAME}.vm.network :private_network, ip: \"${IP}\" \ -\n end \ -\n \1|" ./Vagrantfile + perl -i -pe "s| (### END AUTOMATIC YNH-DEV ZONE ###)|\ + \"${VMNAME}\" => [\"$IP\", \"${VERSION}\"], \ +\n \1|" ./Vagrantfile } # Run VM - vagrant up $VMNAME --provider virtualbox + vagrant up $VMNAME --provider $PROVIDER # Warn user about hosts file - IP_LINE="[[:space:]]*${VMNAME}.vm.network[[:space:]]*:private_network,[[:space:]]*ip:[[:space:]]*\"" - IP=$(grep "$IP_LINE" Vagrantfile | sed "s/${IP_LINE}//" | tr -d '"') - echo "/!\ Please add '$IP $DOMAIN' to your /etc/hosts file /!\\" - echo "sudo bash -c 'echo \"$IP $DOMAIN\" >> /etc/hosts'" + IP_LINE="[[:space:]]*\"${VMNAME}\"[[:space:]]*=>[[:space:]]*\[\"\K.*?(?=\", \"${VERSION}\"\],)" + IP=$(grep -Po "$IP_LINE" ./Vagrantfile ) + echo "/!\ Please add '$IP_BASE$IP $DOMAIN' to your /etc/hosts file /!\\" + echo "sudo bash -c 'echo \"$IP_BASE$IP $DOMAIN\" >> /etc/hosts'" echo "" # Log into the VM