From: Gurucharan Shetty Date: Fri, 6 Jan 2012 02:28:20 +0000 (-0800) Subject: ovs-ctl: Pull system_type and system_version from config file X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a685eb5a760579f0fe45cf5e5fe8db93468cb91d;p=openvswitch ovs-ctl: Pull system_type and system_version from config file Currently system-type and system-version can only be set through ovs-vsctl and ovs-ctl in the commandline. This patch allows you to place system-type.conf and system-version.conf files in $etcdir and their contents will be used if no arguments are specified with ovs-vsctl or ovs-ctl. Bug #9033. Signed-off-by: Gurucharan Shetty --- diff --git a/AUTHORS b/AUTHORS index 631dfecf..d413523d 100644 --- a/AUTHORS +++ b/AUTHORS @@ -18,6 +18,7 @@ Edward Tomasz Napierała trasz@freebsd.org Ethan Jackson ethan@nicira.com Gaetano Catalli gaetano.catalli@gmail.com Glen Gibb grg@stanford.edu +Gurucharan Shetty gshetty@nicira.com Hao Zheng hzheng@nicira.com Ian Campbell Ian.Campbell@citrix.com Jean Tourrilhes jt@hpl.hp.com diff --git a/utilities/ovs-ctl.8 b/utilities/ovs-ctl.8 index 0e411620..658cbd6b 100644 --- a/utilities/ovs-ctl.8 +++ b/utilities/ovs-ctl.8 @@ -124,9 +124,8 @@ ID that persists from one run to another (stored in a file). When another string is specified \fBovs\-ctl\fR uses it literally. . .PP -On systems that have the \fBlsb_release\fR program, \fBovs\-ctl\fR -chooses reasonable defaults for the following options. Other systems -should specify values: +The following options should be specified if the defaults are not +suitable: . .IP "\fB\-\-system\-type=\fItype\fR" .IQ "\fB\-\-system\-version=\fIversion\fR" @@ -135,6 +134,11 @@ Sets the value to store in the \fBsystem-type\fR and \fBOpen_vSwitch\fR table. Remote managers may use these values to determine the kind of system to which they are connected (primarily for display to human administrators). +.IP +When not specified, \fBovs\-ctl\fR uses values from the optional +\fBsystem\-type.conf\fR and \fBsystem\-version.conf\fR files(see section +\fBFILES\fR) or it uses the \fBlsb_release\fR program, if present, to +provide reasonable defaults. . .PP The following options are also likely to be useful: @@ -400,6 +404,11 @@ location). The persistent system UUID created and read by \fB\-\-system\-id=random\fR. . +.IP "\fIsysconfdir\fB/openvswitch/system\-type.conf\fR" +.IQ "\fIsysconfdir\fB/openvswitch/system\-version.conf\fR" +The \fBsystem\-type\fR and \fBsystem\-version\fR values stored in the database's +\fBOpen_vSwitch\fR table when not specified as a command-line option. +. .SH "EXAMPLE" . .PP diff --git a/utilities/ovs-ctl.in b/utilities/ovs-ctl.in index ee6035c0..5640ee88 100755 --- a/utilities/ovs-ctl.in +++ b/utilities/ovs-ctl.in @@ -373,7 +373,13 @@ set_defaults () { DPORT= SPORT= - if (lsb_release --id) >/dev/null 2>&1; then + type_file=$etcdir/system-type.conf + version_file=$etcdir/system-version.conf + + if test -e "$type_file" ; then + SYSTEM_TYPE=`cat $type_file` + SYSTEM_VERSION=`cat $version_file` + elif (lsb_release --id) >/dev/null 2>&1; then SYSTEM_TYPE=`lsb_release --id -s` system_release=`lsb_release --release -s` system_codename=`lsb_release --codename -s`