Commit 75a06188 authored by Mike Hibler's avatar Mike Hibler

Initial support for FreeBSD 11.1 servers.

parent c64d8181
......@@ -648,7 +648,7 @@ sub doboot()
$emulabconfig{EXTRA_PKG} = "emulab-extras-6.2";
$emulabconfig{PACKAGE_TARBALL} = "FreeBSD-10.2-packages${suf}.tar.gz";
$emulabconfig{PGENI_PKG} = "emulab-protogeni-6.2";
} elsif ($FBSD_VERSION >= 10.3) {
} elsif ($FBSD_VERSION >= 10.3 && $FBSD_VERSION < 11.0) {
my $suf = ($FBSD_ARCH eq "amd64") ? "-64" : "";
$emulabconfig{FS_PKG_DIR} = "/share/freebsd/10.3/packages${suf}";
$emulabconfig{OPS_PKG_DIR} = $emulabconfig{FS_PKG_DIR};
......@@ -660,6 +660,18 @@ sub doboot()
$emulabconfig{EXTRA_PKG} = "emulab-extras-6.3";
$emulabconfig{PACKAGE_TARBALL} = "FreeBSD-10.3-packages${suf}.tar.gz";
$emulabconfig{PGENI_PKG} = "emulab-protogeni-6.3";
} elsif ($FBSD_VERSION >= 11.0) {
my $suf = ($FBSD_ARCH eq "amd64") ? "-64" : "";
$emulabconfig{FS_PKG_DIR} = "/share/freebsd/11.1/packages${suf}";
$emulabconfig{OPS_PKG_DIR} = $emulabconfig{FS_PKG_DIR};
$emulabconfig{BOSS_PKG_DIR} = $emulabconfig{FS_PKG_DIR};
$emulabconfig{EXTRA_PKG_DIR}= $emulabconfig{FS_PKG_DIR};
$emulabconfig{FS_PKG} = "emulab-fs-7.1";
$emulabconfig{OPS_PKG} = "emulab-ops-7.1";
$emulabconfig{BOSS_PKG} = "emulab-boss-7.1";
$emulabconfig{EXTRA_PKG} = "emulab-extras-7.1";
$emulabconfig{PACKAGE_TARBALL} = "FreeBSD-11.1-packages${suf}.tar.gz";
$emulabconfig{PGENI_PKG} = "emulab-protogeni-7.1";
}
#
# If there is a package tarball, prefer that and grab it now.
......@@ -2659,6 +2671,8 @@ sub SetupBossNode($)
# doing things like power control, vlan setup, etc.
#
mysystem("cp -p $stuffdir/emulab.pem $RPCCERT");
# Make sure it is world readable; N.B. an error is not fatal
system("chmod 644 $RPCCERT");
goto skipsetup
if ($emulabconfig{"CONFIG_NODBINIT"});
......
......@@ -23,12 +23,15 @@ sub Install($$$)
ExecQuietFatal("$CHGRP tbadmin $IMAGEKEYS_DIR");
};
my %keytypes = (
"rsa1" => "ssh_host_key",
"rsa" => "ssh_host_rsa_key",
"dsa" => "ssh_host_dsa_key",
"ecdsa" => "ssh_host_ecdsa_key",
"ed25519" => "ssh_host_ed25519_key");
# XXX backward compat
if ($FBSD_MAJOR < 11) {
$keytypes{'rsa1'} = "ssh_host_key";
$keytypes{'dsa'} = "ssh_host_dsa_key";
}
Phase "imagekeys", "Creating host keys for images", sub {
foreach my $type (keys(%keytypes)) {
my $name = $keytypes{$type};
......
......@@ -28,7 +28,8 @@ my %STDIMAGES = (
);
my %NEWIMAGES = (
"UBUNTU16-64-STD" => "https://www.emulab.net/image_metadata.php?uuid=7683ca8e-5e37-11e6-ac8a-90e2ba22fee4"
"UBUNTU16-64-STD" => "https://www.emulab.net/image_metadata.php?uuid=7683ca8e-5e37-11e6-ac8a-90e2ba22fee4",
"FBSD111-64-STD" => "https://www.emulab.net/image_metadata.php?uuid=560f4743-795d-11e7-ac90-90e2ba22fee4"
);
#
......@@ -95,6 +96,20 @@ sub Install($$$)
" $WAP $IMAGEIMPORT -g '$url'");
};
}
if ($FBSD_MAJOR > 10) {
foreach my $imagename (keys(%NEWIMAGES)) {
my $url = $NEWIMAGES{$imagename};
Phase "$imagename", "Fetching $imagename. Patience!", sub {
my $image = OSImage->Lookup(TBOPSPID(), $imagename);
PhaseSkip("already fetched")
if (defined($image));
ExecQuietFatal("$SUDO -u $PROTOUSER ".
" $WAP $IMAGEIMPORT -g '$url'");
};
}
}
foreach my $mbr (@MBRS) {
my $localfile = "$PREFIX/images/$mbr";
my $url = "$UTAHURL/$mbr";
......
......@@ -28,7 +28,11 @@ sub Install($$$)
# by older MFSes and vice versa.
#
if ($MFSVERSION eq "") {
if ($FBSD_MAJOR > 8 || ($FBSD_MAJOR == 8 && $FBSD_MINOR >= 2)) {
if (($FBSD_MAJOR > 10 || ($FBSD_MAJOR == 10 && $FBSD_MINOR >= 3)) &&
$FBSD_ARCH eq "amd64") {
$MFSVERSION = "10-64";
}
elsif ($FBSD_MAJOR > 8 || ($FBSD_MAJOR == 8 && $FBSD_MINOR >= 2)) {
if ($FBSD_ARCH eq "amd64") {
$MFSVERSION = "8-64";
} else {
......@@ -82,7 +86,11 @@ sub Install($$$)
#
my $fv = $MFSVERSION;
if (! -e "$TFTP_DIR/freebsd${fv}") {
$fv = "47";
if ($fv eq "10-64") {
$fv = "8-64";
} else {
$fv = "47";
}
}
my $pdir = ".";
if (-d "$TFTP_DIR/pxeboot${fv}") {
......
......@@ -11,33 +11,43 @@ OSARCH != /usr/bin/uname -m
EMULAB_PORTVERSION= UNSUPPORTED
.if ${OSMAJOR} >= 10
. if ${OSMINOR} >= 3
.if ${OSMAJOR} >= 11
EMULAB_PORTVERSION= 7.1
.else
. if ${OSMAJOR} >= 10
. if ${OSMINOR} >= 3
EMULAB_PORTVERSION= 6.3
. else
. if ${OSMINOR} >= 2
. else
. if ${OSMINOR} >= 2
EMULAB_PORTVERSION= 6.2
. else
. if ${OSMINOR} >= 1
. else
. if ${OSMINOR} >= 1
EMULAB_PORTVERSION= 6.1
. endif
. endif
. endif
. endif
. endif
.endif
#
# Select PHP and Apache versions
# Fix up some port diffs
#
.if ${EMULAB_PORTVERSION} == "6.3"
.if ${EMULAB_PORTVERSION} == "7.1"
DEFAULT_VERSIONS= perl5=5.24 python=2.7 tcltk=8.6 php=5.6 mysql=5.7 apache=2.2
APACHE_PORT=www/apache22
MYSQL_VER=57
.else
. if ${EMULAB_PORTVERSION} != "UNSUPPORTED"
. if ${EMULAB_PORTVERSION} == "6.3"
DEFAULT_VERSIONS= perl5=5.24 python=2.7 tcltk=8.6 php=5.6 mysql=5.7 apache=2.2
APACHE_PORT=www/apache22
MYSQL_VER=57
. else
. if ${EMULAB_PORTVERSION} != "UNSUPPORTED"
DEFAULT_VERSIONS= perl5=5.20 python=2.7 tcltk=8.6 php=5.6 mysql=5.5 apache=2.2
APACHE_PORT=www/apache22
MYSQL_VER=55
. endif
. endif
. endif
.endif
.endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment