diff --git a/common/src/stack/pylib/stack/app.py b/common/src/stack/pylib/stack/app.py index 35e73a15a..11decc1da 100644 --- a/common/src/stack/pylib/stack/app.py +++ b/common/src/stack/pylib/stack/app.py @@ -181,8 +181,8 @@ def usage(self): print(s) l = len(e) s = e - if s: - print(s) + if s: + print(s) def help(self): diff --git a/common/src/stack/sql/insert-ethers.py b/common/src/stack/sql/insert-ethers.py index 01a417442..4bf58bfcd 100644 --- a/common/src/stack/sql/insert-ethers.py +++ b/common/src/stack/sql/insert-ethers.py @@ -193,6 +193,7 @@ def __init__(self, app): self.lastmsg = '' self.client = '' self.box = 'default' + self.bootaction = 'default' self.ipnetwork = None self.currentip = None @@ -242,6 +243,9 @@ def setMax(self, max): def setBox(self, box): self.box = box + def setBootaction(self, bootaction): + self.bootaction = bootaction + def setSubnet(self, subnet): self.subnet = subnet @@ -528,6 +532,9 @@ def addit(self, mac, nodename, ip, netmask): if not rows: raise InsertError("Could not find %s in database" % nodename) + if self.bootaction: + Call('set.host.installaction', [nodename, 'action=%s' % self.bootaction]) + Call('set.host.boot', [nodename, 'action=install']) nodeid = self.sql.fetchone()[0] @@ -707,6 +714,17 @@ def getBox(self): return 0 return 1 + def getBootaction(self): + self.sql.execute("select name from bootnames where name='%s'" % \ + (self.bootaction)) + box = self.sql.fetchone() + if box is None: + self.warningGUI(_("There is no bootaction named: \ + %s\n\n\n\n" % self.bootaction) + + _("Create it and try again.\n")) + return 0 + return 1 + def run(self): self.startGUI() @@ -718,6 +736,10 @@ def run(self): self.endGUI() return + if self.getBootaction() == 0: + self.endGUI() + return + self.controller.loadPlugins(self.sql) try: @@ -840,6 +862,7 @@ def __init__(self, argv): ('inc=', 'number'), ('rank=', 'number'), ('box=', 'box'), + ('bootaction=', 'set the bootaction'), ('update'), ('network=', 'network name') ]) @@ -870,6 +893,8 @@ def parseArg(self, c): self.insertor.setBox(c[1]) elif c[0] == '--network': self.insertor.setSubnet(c[1]) + elif c[0] == '--bootaction': + self.insertor.setBootaction(c[1]) return 0 @@ -904,7 +929,6 @@ def run(self): self.cleanup() - syslog.openlog('insert-ethers', syslog.LOG_PID, syslog.LOG_LOCAL0) app = App(sys.argv) diff --git a/redhat/nodes/base.xml b/redhat/nodes/base.xml index 4ef9b80d3..f338ebc10 100644 --- a/redhat/nodes/base.xml +++ b/redhat/nodes/base.xml @@ -54,6 +54,10 @@ else: grub2-tools wget bridge-utils + +iperf3 +foundation-iperf + iwl* ivtv* @@ -105,6 +109,12 @@ stacki release &version; (&release;) + + + + + + /opt/stack/bin/stacki-profile.py > /root/prof.log 2>&1 diff --git a/redhat/nodes/server.xml b/redhat/nodes/server.xml index d5f7e8a48..9f3128f01 100644 --- a/redhat/nodes/server.xml +++ b/redhat/nodes/server.xml @@ -107,6 +107,8 @@ for pallet in g.rolls: --> /opt/stack/bin/stack set attr attr=user.auth value=unix + +/opt/stack/bin/stack set attr attr=sync.hosts value=False