-
Notifications
You must be signed in to change notification settings - Fork 3
/
bootstaller-x86_64.ipxe
160 lines (132 loc) · 4.61 KB
/
bootstaller-x86_64.ipxe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
#!ipxe
set darch amd64
set farch x86_64
set userdata http://169.254.169.254/latest/user-data
set fedora_root http://mirror.bytemark.co.uk/fedora/linux/releases
set debian_root http://mirror.bytemark.co.uk/debian/dists
set centos_root http://mirror.bytemark.co.uk/centos
dhcp
# Standard CentOS Installation Menu
menu --name centos Standard CentOS Installations
item --menu centos --gap Select CentOS Version to Install
item --menu centos --default centos8 CentOS v8
item --menu centos centos7 CentOS v7
item --menu centos centos6 CentOS v6
item --menu centos main Return
# Kickstart CentOS Installation Menu
menu --name centos_ks Kickstart CentOS Installation from Userdata
item --menu centos_ks --gap Select CentOS Version to Kickstart
item --menu centos_ks --default centos8_ks CentOS v8
item --menu centos_ks centos7_ks CentOS v7
item --menu centos_ks centos6_ks CentOS v6
item --menu centos_ks main Return
# Standard Fedora Installation Menu
menu --name fedora Standard Fedora Installations
item --menu fedora --gap Select Fedora Version to Install
item --menu fedora --default f32 Fedora 32
item --menu fedora f31 Fedora 31
item --menu fedora main Return
# Kickstart Fedora Installation Menu
menu --name fedora_ks Kickstart Fedora Installation from Userdata
item --menu fedora_ks --gap Select Fedora Version to Kickstart
item --menu fedora_ks --default f32_ks Fedora 32
item --menu fedora_ks f31_ks Fedora 31
item --menu fedora_ks main Return
# Standard Debian Installation Menu
#menu --name debian Standard Debian Installations
#item --menu debian --gap Select Debian Version to Install
#item --menu debian stable Debian Stable
#item --menu debian testing Debian Testing
#item --menu debian unstable Debian Unstable (sid)
#item --menu debian main Return
# Preseed Debian Installation Menu
#menu --name debian_preseed Preseed Debian Installation from Userdata
#item --menu debian_preseed --gap Select Debian Version to Preseed Install
#item --menu debian_preseed stable_ps Debian Stable
#item --menu debian_preseed testing_ps Debian Testing
#item --menu debian_preseed unstable_ps Debian Unstable (sid)
#item --menu debian_preseed main Return
# Main Menu
menu --name main Brightbox Cloud Bootstaller
item --menu main
item --menu main --gap Standard Installations
item --menu main centos CentOS
#item --menu main debian Debian
item --menu main fedora Fedora
item --menu main
item --menu main --gap Automatic Installations
item --menu main centos_ks CentOS Kickstart
#item --menu main debian_preseed Debian Preseed
item --menu main fedora_ks Fedora Kickstart
# Start
:main
choose --menu main --keep distro || shell
choose --menu ${distro} --keep target
goto ${target}
:f32_ks
set kickstart inst.ks=${userdata}
:f32
set version 32
goto fedora_boot
:f31_ks
set kickstart inst.ks=${userdata}
:f31
set version 31
goto fedora_boot
:centos8_ks
set kickstart inst.ks=${userdata}
:centos8
set version 8
goto centos8_boot
:centos7_ks
set kickstart ks=${userdata}
:centos7
set version 7
set bo repo
goto centos_boot
:centos6_ks
set kickstart ks=${userdata}
:centos6
set version 6
set bo repo
goto centos_boot
:centos5_ks
set kickstart ks=${userdata}
:centos5
set version 5
set bo method
goto centos_boot
:stable
set version stable
goto debian_boot
:testing
set version testing
goto debian_boot
:unstable
set version unstable
goto debian_boot
:stable_ps
set version stable
goto debian_preseed_boot
:testing_ps
set version testing
goto debian_preseed_boot
:unstable_ps
set version unstable
goto debian_preseed_boot
:fedora_boot
initrd ${fedora_root}/${version}/Server/${farch}/os/images/pxeboot/initrd.img
boot ${fedora_root}/${version}/Server/${farch}/os/images/pxeboot/vmlinuz ip=dhcp inst.repo=${fedora_root}/${version}/Server/${farch}/os/ ${kickstart}
:centos_boot
initrd ${centos_root}/${version}/os/${farch}/images/pxeboot/initrd.img
boot ${centos_root}/${version}/os/${farch}/images/pxeboot/vmlinuz ${bo}=${centos_root}/${version}/os/${farch}/ ${kickstart}
:centos8_boot
initrd ${centos_root}/${version}/BaseOS/${farch}/os/images/pxeboot/initrd.img
boot ${centos_root}/${version}/BaseOS/${farch}/os/images/pxeboot/vmlinuz ip=dhcp inst.repo=${centos_root}/${version}/BaseOS/${farch}/os/ ${kickstart}
:debian_boot
set 209:string pxelinux.cfg/default
set 210:string ${debian_root}/${version}/main/installer-${darch}/current/images/netboot/
chain ${debian_root}/${version}/main/installer-${darch}/current/images/netboot/pxelinux.0
:debian_preseed_boot
initrd ${debian_root}/${version}/main/installer-${darch}/current/images/netboot/debian-installer/${darch}/initrd.gz
boot ${debian_root}/${version}/main/installer-${darch}/current/images/netboot/debian-installer/${darch}/linux auto url=${userdata}