diff --git a/scripts/run b/scripts/run index 94b522c8..f50d6c67 100755 --- a/scripts/run +++ b/scripts/run @@ -109,6 +109,9 @@ while [ "$#" -gt 0 ]; do --no-rebuild) REBUILD=0 ;; + --no-network) + NO_NETWORK=1 + ;; --fresh) FRESH=1 ;; @@ -281,6 +284,12 @@ if [ "$GUICONSOLE" == "" ]; then fi fi +if [ "${NO_NETWORK}" == "1" ]; then + NETWORK="-net none" +else + NETWORK="${network["$ARCH"]}" +fi + if [ "$QEMU" == "1" ]; then if [ "$INSTALLED" == "1" ]; then # kernel args only works when using -kernel @@ -298,7 +307,7 @@ if [ "$QEMU" == "1" ]; then ${CPU} \ ${machine["$ARCH"]} \ -m $MEMORY \ - ${network["$ARCH"]} \ + ${NETWORK} \ $(eval "${hd["$ARCH"]} ${HD}") \ ${SECOND_DRIVE_ENABLE} \ -smp 1 \ @@ -325,7 +334,7 @@ elif [ "$BOOT_ISO" == "1" ] || ${CPU} \ ${machine["$ARCH"]} \ -m $MEMORY \ - ${network["$ARCH"]} \ + ${NETWORK} \ $(eval "${hd["$ARCH"]} ${HD}") \ ${SECOND_DRIVE_ENABLE} \ -smp 1 \ diff --git a/tests/network_from_url_test.go b/tests/network_from_url_test.go index a3917eb8..26ec3d20 100644 --- a/tests/network_from_url_test.go +++ b/tests/network_from_url_test.go @@ -8,9 +8,9 @@ func (s *QemuSuite) TestNetworkFromUrl(c *C) { for i := 0; i < 7; i++ { args = append(args, netArgs...) } - s.RunQemu(c, args...) + s.RunQemuWithNetConsole(c, args...) - s.CheckCall(c, ` + s.NetCheckCall(c, ` cat > test-merge << "SCRIPT" set -x -e @@ -21,7 +21,7 @@ ip link show dev eth1.100 | grep 'master br0' SCRIPT sudo bash test-merge`) - s.CheckCall(c, ` + s.NetCheckCall(c, ` cat > test-merge << "SCRIPT" set -x -e @@ -32,3 +32,25 @@ cat /etc/resolv.conf | grep "nameserver 208.67.220.123" SCRIPT sudo bash test-merge`) } + +func (s *QemuSuite) TestNoNetworkCloudConfigFromUrl(c *C) { + args := []string{ + "--no-network", + "--append", + "rancher.debug=true rancher.password=test-me rancher.cloud_init.datasources=[url:https://gist.githubusercontent.com/joshwget/0bdc616cd26162ad87c535644c8b1ef6/raw/8cce947c08cf006e932b71d92ddbb96bae8e3325/gistfile1.txt]", + } + s.RunQemuWithNetConsole(c, args...) + + s.NetCheckCall(c, "sudo ros config get rancher.log | grep true") +} + +func (s *QemuSuite) TestNoNetworkConsoleSwitch(c *C) { + args := []string{ + "--no-network", + "--append", + "rancher.debug=true rancher.password=test-me rancher.console=alpine", + } + s.RunQemuWithNetConsole(c, args...) + + s.NetCheckCall(c, "uname -a") +}