2
0
mirror of https://github.com/openvswitch/ovs synced 2025-10-29 15:28:56 +00:00

bashcomp: Install and package completion scripts.

This commit makes the bash completion scripts be installed to
$(sysconfdir)/bash_completion.d/ through 'make install' and to
/etc/bash_completion.d/ through package installation.  This will
make the scripts available for each bash session.

An alternative is to put scripts to /usr/share/bash_completion/
directory.  However, this is not supported by earlier version of
bash completion.

Signed-off-by: Alex Wang <alexw@nicira.com>
This commit is contained in:
Alex Wang
2015-03-18 14:32:23 -07:00
parent bb5dbe7859
commit 2c9907cde3
7 changed files with 22 additions and 3 deletions

View File

@@ -137,6 +137,7 @@ OVSIDL_BUILT =
pkgdata_DATA =
sbin_SCRIPTS =
scripts_SCRIPTS =
completion_SCRIPTS =
scripts_DATA =
SUFFIXES =
check_DATA =
@@ -144,6 +145,7 @@ check_SCRIPTS =
pkgconfig_DATA =
scriptsdir = $(pkgdatadir)/scripts
completiondir = $(sysconfdir)/bash_completion.d
pkgconfigdir = $(libdir)/pkgconfig
# This ensures that files added to EXTRA_DIST are always distributed,

View File

@@ -1,3 +1,4 @@
etc/bash_completion.d/ovs-appctl-bashcomp.bash
usr/bin/ovs-appctl
usr/bin/ovs-benchmark
usr/bin/ovs-docker

View File

@@ -1,3 +1,4 @@
etc/bash_completion.d/ovs-vsctl-bashcomp.bash
usr/bin/ovs-dpctl
usr/bin/ovs-dpctl-top
usr/bin/ovs-pcap

View File

@@ -123,6 +123,8 @@ exit 0
%files
%defattr(-,root,root)
/etc/bash_completion.d/ovs-appctl-bashcomp.bash
/etc/bash_completion.d/ovs-vsctl-bashcomp.bash
/etc/init.d/openvswitch
%config(noreplace) /etc/logrotate.d/openvswitch
/etc/sysconfig/network-scripts/ifup-ovs

View File

@@ -22,6 +22,10 @@ scripts_SCRIPTS += \
utilities/ovs-save
scripts_DATA += utilities/ovs-lib
completion_SCRIPTS += \
utilities/ovs-appctl-bashcomp.bash \
utilities/ovs-vsctl-bashcomp.bash
check_SCRIPTS += \
utilities/ovs-appctl-bashcomp.bash \
utilities/ovs-vsctl-bashcomp.bash

View File

@@ -65,9 +65,16 @@ ovs-vsctl-bashcomp
How to use:
-----------
To use the scripts, either copy them inside /etc/bash_completion.d/ or
manually run it directly in bash via . ovs-appctl-bashcomp.bash or
. ovs-vsctl-bashcomp.bash.
The bashcomp scripts should be placed at /etc/bash_completion.d/
to be available for all bash sessions. Running 'make install'
will place the scripts to $(sysconfdir)/bash_completion.d/. So user
should specify --sysconfdir=/etc at configuration. Meanwhile, if OVS is
installed from packages, the scripts will automatically be placed inside
/etc/bash_completion.d/.
If you just want to run the scripts in one bash, you can remove them from
/etc/bash_completion.d/ and run the scripts via '. ovs-appctl-bashcomp.bash'
or '. ovs-vsctl-bashcomp.bash'.
Test:
-----

View File

@@ -430,6 +430,8 @@ exit 0
%files
%defattr(-,root,root)
/etc/bash_completion.d/ovs-appctl-bashcomp.bash
/etc/bash_completion.d/ovs-vsctl-bashcomp.bash
/etc/init.d/openvswitch
/etc/init.d/openvswitch-xapi-update
/etc/xapi.d/plugins/openvswitch-cfg-update