summaryrefslogtreecommitdiffstats
path: root/config/cobbler_bash
blob: c4f7864939072ff4ec1f69fc785a1f9bfae3a4bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#!/bin/bash
# The #! is here so vim will do syntax highlighting.  emacs: -*- sh -*-
#
# bash completion file for cobbler
#
# Copyright 2008 John L. Villalovos <john@sodarock.com>
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc., 51
# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Version History:
# 0.1: Initial version to do some basic command line completion

_cobbler()
{
    local cur prev

    COMPREPLY=()
    cur=${COMP_WORDS[COMP_CWORD]}
    prev=${COMP_WORDS[COMP_CWORD-1]}

    case $cur in
	--*)
	    COMPREPLY=( $( compgen -W 'help' -- $cur ) )
	    return 0
	    ;;
	-*)
	    COMPREPLY=( $( compgen -W '-h' -- $cur ) )
	    return 0
	    ;;
    esac

    _count_args

    case $args in
	1)
	    COMPREPLY=( $( compgen -W 'buildiso check distro import list \
	    profile replicate repo report reposync status sync system \
	    validateks' -- $cur ) )
	    ;;
	*)
	    case $prev in
		distro|profile|repo|system)
			COMPREPLY=( $( compgen -W 'add edit copy list rename remove report' -- $cur ) )
			;;
		*)
		    _filedir
		    ;;
	    esac
	    ;;
    esac
}
complete -F _cobbler cobbler