buildipxe.sh (fogproject-1.5.5) | : | buildipxe.sh (fogproject-1.5.6) | ||
---|---|---|---|---|
#!/bin/bash | #!/bin/bash | |||
BUILDOPTS="TRUST=/var/www/fog/management/other/ca.cert.pem CERT=/var/www/fog/man | if [[ -r $1 ]]; then | |||
agement/other/ca.cert.pem" | BUILDOPTS="TRUST=$1" | |||
elif [[ -r /opt/fog/snapins/ssl/CA/.fogCA.pem ]]; then | ||||
BUILDOPTS="TRUST=/opt/fog/snapins/ssl/CA/.fogCA.pem" | ||||
fi | ||||
IPXEGIT="https://git.ipxe.org/ipxe.git" | IPXEGIT="https://git.ipxe.org/ipxe.git" | |||
# Change directory to base ipxe files | # Change directory to base ipxe files | |||
SCRIPT=$(readlink -f "$BASH_SOURCE") | SCRIPT=$(readlink -f "$BASH_SOURCE") | |||
BASE=$(dirname $(dirname $(dirname $(dirname "$SCRIPT") ) ) ) | FOGDIR=$(dirname $(dirname $(dirname "$SCRIPT") ) ) | |||
BASE=$(dirname "$FOGDIR") | ||||
if [[ -d ${BASE}/ipxe ]]; then | if [[ -d ${BASE}/ipxe ]]; then | |||
cd ${BASE}/ipxe | cd ${BASE}/ipxe | |||
git clean -fd | ||||
git reset --hard | ||||
git pull | git pull | |||
cd src/ | cd src/ | |||
else | else | |||
git clone ${IPXEGIT} ${BASE}/ipxe | git clone ${IPXEGIT} ${BASE}/ipxe | |||
cd ${BASE}/ipxe/src/ | cd ${BASE}/ipxe/src/ | |||
fi | fi | |||
# Get current header and script from fogproject repo | # Get current header and script from fogproject repo | |||
echo "Copy (overwrite) iPXE headers and scripts..." | echo "Copy (overwrite) iPXE headers and scripts..." | |||
cp ${BASE}/fogproject/src/ipxe/src/ipxescript . | cp ${FOGDIR}/src/ipxe/src/ipxescript . | |||
cp ${BASE}/fogproject/src/ipxe/src/ipxescript10sec . | cp ${FOGDIR}/src/ipxe/src/ipxescript10sec . | |||
cp ${BASE}/fogproject/src/ipxe/src/config/general.h config/ | cp ${FOGDIR}/src/ipxe/src/config/general.h config/ | |||
cp ${BASE}/fogproject/src/ipxe/src/config/settings.h config/ | cp ${FOGDIR}/src/ipxe/src/config/settings.h config/ | |||
cp ${BASE}/fogproject/src/ipxe/src/config/console.h config/ | cp ${FOGDIR}/src/ipxe/src/config/console.h config/ | |||
# Build the files | # Build the files | |||
make bin/ipxe.iso bin/{undionly,ipxe,intel,realtek}.{,k,kk}pxe bin/ipxe.lkrn EMB ED=ipxescript ${BUILDOPTS} $* | make bin/ipxe.iso bin/{undionly,ipxe,intel,realtek}.{,k,kk}pxe bin/ipxe.lkrn bin /ipxe.usb EMBED=ipxescript ${BUILDOPTS} $* | |||
# Copy files to repo location as required | # Copy files to repo location as required | |||
cp bin/ipxe.iso bin/{undionly,ipxe,intel,realtek}.{,k,kk}pxe bin/ipxe.lkrn ${BAS | cp bin/ipxe.iso bin/{undionly,ipxe,intel,realtek}.{,k,kk}pxe bin/ipxe.lkrn bin/i | |||
E}/fogproject/packages/tftp/ | pxe.usb ${FOGDIR}/packages/tftp/ | |||
cp bin/ipxe.lkrn ${FOGDIR}/packages/tftp/ipxe.krn | ||||
# Build with 10 second delay | # Build with 10 second delay | |||
make bin/ipxe.iso bin/{undionly,ipxe,intel,realtek}.{,k,kk}pxe bin/ipxe.lkrn EMB ED=ipxescript10sec ${BUILDOPTS} $* | make bin/ipxe.iso bin/{undionly,ipxe,intel,realtek}.{,k,kk}pxe bin/ipxe.lkrn bin /ipxe.usb EMBED=ipxescript10sec ${BUILDOPTS} $* | |||
# Copy files to repo location as required | # Copy files to repo location as required | |||
cp bin/ipxe.iso bin/{undionly,ipxe,intel,realtek}.{,k,kk}pxe bin/ipxe.lkrn ${BAS | cp bin/ipxe.iso bin/{undionly,ipxe,intel,realtek}.{,k,kk}pxe bin/ipxe.lkrn bin/i | |||
E}/fogproject/packages/tftp/10secdelay/ | pxe.usb ${FOGDIR}/packages/tftp/10secdelay/ | |||
cp bin/ipxe.lkrn ${FOGDIR}/packages/tftp/10secdelay/ipxe.krn | ||||
# Change to the efi layout | # Change to the efi layout | |||
if [[ -d ${BASE}/ipxe-efi ]]; then | if [[ -d ${BASE}/ipxe-efi ]]; then | |||
cd ${BASE}/ipxe-efi/ | cd ${BASE}/ipxe-efi/ | |||
git clean -fd | ||||
git reset --hard | ||||
git pull | git pull | |||
cd src/ | cd src/ | |||
else | else | |||
git clone ${IPXEGIT} ${BASE}/ipxe-efi | git clone ${IPXEGIT} ${BASE}/ipxe-efi | |||
cd ${BASE}/ipxe-efi/src/ | cd ${BASE}/ipxe-efi/src/ | |||
fi | fi | |||
# Get current header and script from fogproject repo | # Get current header and script from fogproject repo | |||
echo "Copy (overwrite) iPXE headers and scripts..." | echo "Copy (overwrite) iPXE headers and scripts..." | |||
cp ${BASE}/fogproject/src/ipxe/src-efi/ipxescript . | cp ${FOGDIR}/src/ipxe/src-efi/ipxescript . | |||
cp ${BASE}/fogproject/src/ipxe/src-efi/ipxescript10sec . | cp ${FOGDIR}/src/ipxe/src-efi/ipxescript10sec . | |||
cp ${BASE}/fogproject/src/ipxe/src-efi/config/general.h config/ | cp ${FOGDIR}/src/ipxe/src-efi/config/general.h config/ | |||
cp ${BASE}/fogproject/src/ipxe/src-efi/config/settings.h config/ | cp ${FOGDIR}/src/ipxe/src-efi/config/settings.h config/ | |||
cp ${BASE}/fogproject/src/ipxe/src-efi/config/console.h config/ | cp ${FOGDIR}/src/ipxe/src-efi/config/console.h config/ | |||
# Build the files | # Build the files | |||
make bin-{i386,x86_64}-efi/{snp{,only},ipxe,intel,realtek}.efi EMBED=ipxescript ${BUILDOPTS} $* | make bin-{i386,x86_64}-efi/{snp{,only},ipxe,intel,realtek}.efi EMBED=ipxescript ${BUILDOPTS} $* | |||
# Copy the files to upload | # Copy the files to upload | |||
cp bin-i386-efi/{snp{,only},ipxe,intel,realtek}.efi ${BASE}/fogproject/packages/ | cp bin-i386-efi/{snp{,only},ipxe,intel,realtek}.efi ${FOGDIR}/packages/tftp/i386 | |||
tftp/i386-efi/ | -efi/ | |||
cp bin-x86_64-efi/{snp{,only},ipxe,intel,realtek}.efi ${BASE}/fogproject/package | cp bin-x86_64-efi/{snp{,only},ipxe,intel,realtek}.efi ${FOGDIR}/packages/tftp/ | |||
s/tftp/ | ||||
# Build with 10 second delay | # Build with 10 second delay | |||
make bin-{i386,x86_64}-efi/{snp{,only},ipxe,intel,realtek}.efi EMBED=ipxescript1 0sec ${BUILDOPTS} $* | make bin-{i386,x86_64}-efi/{snp{,only},ipxe,intel,realtek}.efi EMBED=ipxescript1 0sec ${BUILDOPTS} $* | |||
# Copy the files to upload | # Copy the files to upload | |||
cp bin-i386-efi/{snp{,only},ipxe,intel,realtek}.efi ${BASE}/fogproject/packages/ | cp bin-i386-efi/{snp{,only},ipxe,intel,realtek}.efi ${FOGDIR}/packages/tftp/10se | |||
tftp/10secdelay/i386-efi/ | cdelay/i386-efi/ | |||
cp bin-x86_64-efi/{snp{,only},ipxe,intel,realtek}.efi ${BASE}/fogproject/package | cp bin-x86_64-efi/{snp{,only},ipxe,intel,realtek}.efi ${FOGDIR}/packages/tftp/10 | |||
s/tftp/10secdelay/ | secdelay/ | |||
echo "Done building the SSL ready iPXE binaries. Now we need to re-run the" | ||||
echo "FOG installer to install those binaries... Hit ENTER to proceed or" | ||||
echo "Ctrl+C if you want to quit and copy the files by hand." | ||||
read | ||||
cd ${BASE}/fogproject/bin/ | ||||
./installfog.sh -y | ||||
End of changes. 12 change blocks. | ||||
23 lines changed or deleted | 32 lines changed or added |