From ed3ebd41fd057cc97eb88405ef0352c79adc6da0 Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Wed, 4 Nov 2015 09:08:21 -0600 Subject: [PATCH 01/12] Testing secondary mirrors --- src/boot.cfg | 7 ++++++- src/fedora.ipxe | 15 +++++++-------- src/mirrors.ipxe | 7 +++++++ 3 files changed, 20 insertions(+), 9 deletions(-) create mode 100644 src/mirrors.ipxe diff --git a/src/boot.cfg b/src/boot.cfg index 9165f549..4bf3dd83 100644 --- a/src/boot.cfg +++ b/src/boot.cfg @@ -6,8 +6,13 @@ set site_name netboot.xyz # set boot domain set boot_domain boot.netboot.xyz +# set mirror list +set mirror_one mirror.rackspace.com +set mirror_two mirrors.kernel.org +set mirror_three mirrors.test.blah.com + # set mirror domain -set mirror mirror.rackspace.com +set mirror ${mirror_one} # set location of memdisk set memdisk http://${boot_domain}/memdisk diff --git a/src/fedora.ipxe b/src/fedora.ipxe index 61444c4d..b8ac8269 100644 --- a/src/fedora.ipxe +++ b/src/fedora.ipxe @@ -38,7 +38,6 @@ set dir fedora/releases/${osversion}/${os}/${arch}/os goto boottype :boottype -set repo http://${mirror}/${dir} menu ${os} ${arch} boot type item normal ${ova} item rescue ${ova} rescue @@ -47,22 +46,22 @@ isset ${bt} || choose bt || goto fedora echo ${cls} iseq ${bt} rescue && goto rescue || iseq ${bt} kickstart && goto kickstart || -goto bootos_images +goto boot :rescue set params rescue || -goto bootos_images +goto boot :kickstart echo -n Specify kickstart URL for ${os} ${osversion}: && read ksurl set params ks=${ksurl} || -goto bootos_images +goto boot -:bootos_images +:boot imgfree -kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=${repo} ${params} ${netcfg} initrd=initrd.img -initrd http://${mirror}/${dir}/images/pxeboot/initrd.img -boot +kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=http://${mirror}/${dir} ${params} ${netcfg} || chain --autofree mirrors.ipxe +initrd http://${mirror}/${dir}/images/pxeboot/initrd.img || +boot || goto linux_menu :linux_menu diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe new file mode 100644 index 00000000..41f98131 --- /dev/null +++ b/src/mirrors.ipxe @@ -0,0 +1,7 @@ +#!ipxe + +# Basic attempt at mirror rotation +iseq mirror ${mirror_one} && set mirror ${mirror_two} || +iseq mirror ${mirror_two} && set mirror ${mirror_three} || +iseq mirror ${mirror_three} && set mirror ${mirror_one} || +echo Setting mirror to ${mirror}... From c1dfc5b0ad7ccae62f9cc762ab42804a5123fb71 Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Thu, 5 Nov 2015 12:15:42 -0600 Subject: [PATCH 02/12] Retry boot process after cycling mirror out --- src/fedora.ipxe | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fedora.ipxe b/src/fedora.ipxe index b8ac8269..c56621bc 100644 --- a/src/fedora.ipxe +++ b/src/fedora.ipxe @@ -59,7 +59,7 @@ goto boot :boot imgfree -kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=http://${mirror}/${dir} ${params} ${netcfg} || chain --autofree mirrors.ipxe +kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=http://${mirror}/${dir} ${params} ${netcfg} || chain --autofree mirrors.ipxe && goto boot initrd http://${mirror}/${dir}/images/pxeboot/initrd.img || boot || goto linux_menu From b120525f511c49fbff73f0a2d55a0dc3745eea1c Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Thu, 5 Nov 2015 12:23:28 -0600 Subject: [PATCH 03/12] Add some gotos --- src/mirrors.ipxe | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe index 41f98131..e2afd5cc 100644 --- a/src/mirrors.ipxe +++ b/src/mirrors.ipxe @@ -1,7 +1,11 @@ #!ipxe # Basic attempt at mirror rotation -iseq mirror ${mirror_one} && set mirror ${mirror_two} || -iseq mirror ${mirror_two} && set mirror ${mirror_three} || -iseq mirror ${mirror_three} && set mirror ${mirror_one} || + +:mirrors +iseq mirror ${mirror_one} && set mirror ${mirror_two} && goto end || +iseq mirror ${mirror_two} && set mirror ${mirror_three} && goto end || +iseq mirror ${mirror_three} && set mirror ${mirror_one} && goto end || echo Setting mirror to ${mirror}... + +:end From 361ef30972d48c9cd5faf87139cf3c28e96ac5ff Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Thu, 5 Nov 2015 12:33:08 -0600 Subject: [PATCH 04/12] more changes --- src/mirrors.ipxe | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe index e2afd5cc..85f38e26 100644 --- a/src/mirrors.ipxe +++ b/src/mirrors.ipxe @@ -2,10 +2,10 @@ # Basic attempt at mirror rotation -:mirrors -iseq mirror ${mirror_one} && set mirror ${mirror_two} && goto end || -iseq mirror ${mirror_two} && set mirror ${mirror_three} && goto end || -iseq mirror ${mirror_three} && set mirror ${mirror_one} && goto end || +:mirror_start +iseq mirror ${mirror_one} && set mirror ${mirror_two} && goto mirror_end || +iseq mirror ${mirror_two} && set mirror ${mirror_three} && goto mirror_end || +iseq mirror ${mirror_three} && set mirror ${mirror_one} && goto mirror_end || echo Setting mirror to ${mirror}... -:end +:mirror_end From 035ccbefe486b6bb89911ef9b165b43f13dac12d Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Thu, 5 Nov 2015 18:05:35 -0600 Subject: [PATCH 05/12] fix vars --- src/mirrors.ipxe | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe index 85f38e26..b29d7f2e 100644 --- a/src/mirrors.ipxe +++ b/src/mirrors.ipxe @@ -3,9 +3,9 @@ # Basic attempt at mirror rotation :mirror_start -iseq mirror ${mirror_one} && set mirror ${mirror_two} && goto mirror_end || -iseq mirror ${mirror_two} && set mirror ${mirror_three} && goto mirror_end || -iseq mirror ${mirror_three} && set mirror ${mirror_one} && goto mirror_end || +iseq ${mirror} ${mirror_one} && set mirror ${mirror_two} && goto mirror_end || +iseq ${mirror} ${mirror_two} && set mirror ${mirror_three} && goto mirror_end || +iseq ${mirror} ${mirror_three} && set mirror ${mirror_one} && goto mirror_end || echo Setting mirror to ${mirror}... :mirror_end From 74d4c167f2e0e71a57f6abb488127bc4ef2558c4 Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Thu, 5 Nov 2015 18:13:20 -0600 Subject: [PATCH 06/12] more tweaks --- src/mirrors.ipxe | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe index b29d7f2e..7a93c8ff 100644 --- a/src/mirrors.ipxe +++ b/src/mirrors.ipxe @@ -3,9 +3,9 @@ # Basic attempt at mirror rotation :mirror_start -iseq ${mirror} ${mirror_one} && set mirror ${mirror_two} && goto mirror_end || -iseq ${mirror} ${mirror_two} && set mirror ${mirror_three} && goto mirror_end || -iseq ${mirror} ${mirror_three} && set mirror ${mirror_one} && goto mirror_end || +iseq ${mirror} mirror.rackspace.com && set mirror mirror.kernel.org && goto mirror_end || +iseq ${mirror} mirror.kernel.org && set mirror blah.mirror.blah.com && goto mirror_end || +iseq ${mirror} blah.mirror.blah.com && set mirror mirror.rackspace.com && goto mirror_end || echo Setting mirror to ${mirror}... :mirror_end From ec71736c2bff43c24c3999074f85403d189cb621 Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Thu, 5 Nov 2015 18:14:55 -0600 Subject: [PATCH 07/12] Typo fix --- src/mirrors.ipxe | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe index 7a93c8ff..61f6d7a8 100644 --- a/src/mirrors.ipxe +++ b/src/mirrors.ipxe @@ -3,8 +3,8 @@ # Basic attempt at mirror rotation :mirror_start -iseq ${mirror} mirror.rackspace.com && set mirror mirror.kernel.org && goto mirror_end || -iseq ${mirror} mirror.kernel.org && set mirror blah.mirror.blah.com && goto mirror_end || +iseq ${mirror} mirror.rackspace.com && set mirror mirrors.kernel.org && goto mirror_end || +iseq ${mirror} mirrors.kernel.org && set mirror blah.mirror.blah.com && goto mirror_end || iseq ${mirror} blah.mirror.blah.com && set mirror mirror.rackspace.com && goto mirror_end || echo Setting mirror to ${mirror}... From b6bddafa0c2a8a0c844178ab40ccd4738649dcaf Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Thu, 5 Nov 2015 18:20:11 -0600 Subject: [PATCH 08/12] blah --- src/fedora.ipxe | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/fedora.ipxe b/src/fedora.ipxe index c56621bc..1856cee5 100644 --- a/src/fedora.ipxe +++ b/src/fedora.ipxe @@ -59,11 +59,15 @@ goto boot :boot imgfree -kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=http://${mirror}/${dir} ${params} ${netcfg} || chain --autofree mirrors.ipxe && goto boot +kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=http://${mirror}/${dir} ${params} ${netcfg} || goto change_mirror initrd http://${mirror}/${dir}/images/pxeboot/initrd.img || boot || goto linux_menu +:change_mirror +chain --autofree mirrors.ipxe +goto boot + :linux_menu clear menu chain linux.ipxe From 8a04a38cf8a63f3a262a064f520def4f99acfd71 Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Thu, 5 Nov 2015 18:31:24 -0600 Subject: [PATCH 09/12] drop the mirrors from boot.cfg --- src/boot.cfg | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/boot.cfg b/src/boot.cfg index 4bf3dd83..9165f549 100644 --- a/src/boot.cfg +++ b/src/boot.cfg @@ -6,13 +6,8 @@ set site_name netboot.xyz # set boot domain set boot_domain boot.netboot.xyz -# set mirror list -set mirror_one mirror.rackspace.com -set mirror_two mirrors.kernel.org -set mirror_three mirrors.test.blah.com - # set mirror domain -set mirror ${mirror_one} +set mirror mirror.rackspace.com # set location of memdisk set memdisk http://${boot_domain}/memdisk From b3e879111abcf06c78021b55e677d8d2e546eb27 Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Fri, 6 Nov 2015 09:47:11 -0600 Subject: [PATCH 10/12] Adding additional mirrors, changing the default --- src/boot.cfg | 2 +- src/mirrors.ipxe | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/boot.cfg b/src/boot.cfg index 9165f549..9e1f176e 100644 --- a/src/boot.cfg +++ b/src/boot.cfg @@ -7,7 +7,7 @@ set site_name netboot.xyz set boot_domain boot.netboot.xyz # set mirror domain -set mirror mirror.rackspace.com +set mirror mirrors.digitalocean.com # set location of memdisk set memdisk http://${boot_domain}/memdisk diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe index 61f6d7a8..39afdfb9 100644 --- a/src/mirrors.ipxe +++ b/src/mirrors.ipxe @@ -3,9 +3,9 @@ # Basic attempt at mirror rotation :mirror_start -iseq ${mirror} mirror.rackspace.com && set mirror mirrors.kernel.org && goto mirror_end || -iseq ${mirror} mirrors.kernel.org && set mirror blah.mirror.blah.com && goto mirror_end || -iseq ${mirror} blah.mirror.blah.com && set mirror mirror.rackspace.com && goto mirror_end || +iseq ${mirror} mirrors.digitalocean.com && set mirrors.kernel.org && goto mirror_end || +iseq ${mirror} mirrors.kernel.org && set mirror mirror.rackspace.com && goto mirror_end || +iseq ${mirror} mirror.rackspace.com && set mirror mirrors.digitalocean.com && goto mirror_end || echo Setting mirror to ${mirror}... :mirror_end From f75f6d684aff406f965d859c8ab15f933ff0a726 Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Fri, 6 Nov 2015 09:53:31 -0600 Subject: [PATCH 11/12] Revert "Adding additional mirrors, changing the default" This reverts commit b3e879111abcf06c78021b55e677d8d2e546eb27. --- src/boot.cfg | 2 +- src/mirrors.ipxe | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/boot.cfg b/src/boot.cfg index 9e1f176e..9165f549 100644 --- a/src/boot.cfg +++ b/src/boot.cfg @@ -7,7 +7,7 @@ set site_name netboot.xyz set boot_domain boot.netboot.xyz # set mirror domain -set mirror mirrors.digitalocean.com +set mirror mirror.rackspace.com # set location of memdisk set memdisk http://${boot_domain}/memdisk diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe index 39afdfb9..61f6d7a8 100644 --- a/src/mirrors.ipxe +++ b/src/mirrors.ipxe @@ -3,9 +3,9 @@ # Basic attempt at mirror rotation :mirror_start -iseq ${mirror} mirrors.digitalocean.com && set mirrors.kernel.org && goto mirror_end || -iseq ${mirror} mirrors.kernel.org && set mirror mirror.rackspace.com && goto mirror_end || -iseq ${mirror} mirror.rackspace.com && set mirror mirrors.digitalocean.com && goto mirror_end || +iseq ${mirror} mirror.rackspace.com && set mirror mirrors.kernel.org && goto mirror_end || +iseq ${mirror} mirrors.kernel.org && set mirror blah.mirror.blah.com && goto mirror_end || +iseq ${mirror} blah.mirror.blah.com && set mirror mirror.rackspace.com && goto mirror_end || echo Setting mirror to ${mirror}... :mirror_end From 924d9b14d3355f7edef0b936c2a5b486eb8032a3 Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Mon, 9 Nov 2015 07:39:59 -0600 Subject: [PATCH 12/12] Update mirrors.ipxe --- src/mirrors.ipxe | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/mirrors.ipxe b/src/mirrors.ipxe index 61f6d7a8..e483f5ea 100644 --- a/src/mirrors.ipxe +++ b/src/mirrors.ipxe @@ -4,8 +4,7 @@ :mirror_start iseq ${mirror} mirror.rackspace.com && set mirror mirrors.kernel.org && goto mirror_end || -iseq ${mirror} mirrors.kernel.org && set mirror blah.mirror.blah.com && goto mirror_end || -iseq ${mirror} blah.mirror.blah.com && set mirror mirror.rackspace.com && goto mirror_end || +iseq ${mirror} mirrors.kernel.org && set mirror mirror.rackspace.com && goto mirror_end || echo Setting mirror to ${mirror}... :mirror_end