diff options
author | Dominique Martinet <asmadeus@codewreck.org> | 2016-01-21 15:19:18 +0100 |
---|---|---|
committer | Dominique Martinet <asmadeus@codewreck.org> | 2016-01-21 15:27:30 +0100 |
commit | 060b1ea63f266318a372936f75d83640dfb98fbb (patch) | |
tree | f9e93ff070aa1c6896d675f4ef81bab3e031cd32 | |
parent | 4a21970d690023d6826b20c31b7c648ff844c255 (diff) |
make kvm-wrapper installable
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | Makefile | 43 | ||||
-rwxr-xr-x | kvm-wrapper.sh | 6 | ||||
-rw-r--r-- | kvm-wrapper.spec | 33 |
4 files changed, 79 insertions, 4 deletions
@@ -1,2 +1,3 @@ run kvm-wrapper.conf +kvm-wrapper-0.tar.gz diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..f913f74 --- /dev/null +++ b/Makefile @@ -0,0 +1,43 @@ +# base prefixes +PREFIX=/usr +SYSCONFDIR=/etc + +#derivated prefixes +BINDIR=$(PREFIX)/bin +CONMANDIR=$(PREFIX)/share/conman/exec +BASHCOMPDIR=$(PREFIX)/share/bash-completion/completions +SYSTEMDDIR=$(PREFIX)/lib/systemd/system + + +all: + @echo "Nothing to build, please run make install" + +install: + install -d $(DESTDIR)$(SYSCONFDIR)/kvm-wrapper + install -m 644 kvm-wrapper.conf kvm-cluster.conf \ + $(DESTDIR)$(SYSCONFDIR)/kvm-wrapper + cp -r bootstrap $(DESTDIR)$(SYSCONFDIR)/kvm-wrapper + install -d $(DESTDIR)$(BINDIR) + install -m 755 kvm-wrapper.sh $(DESTDIR)$(BINDIR)/kvm-wrapper + +ifneq ($(wildcard $(DESTDIR)$(CONMANDIR)/.),) + install -m 755 host_config/conman-kvm-wrapper.exp \ + $(DESTDIR)$(CONMANDIR)/kvm-wrapper.exp +endif + +ifneq ($(wildcard $(DESTDIR)$(BASHCOMPDIR)/.),) + install -m 644 host_config/bash_completion.d-kvm-wrapper \ + $(DESTDIR)$(BASHCOMPDIR)/kvm-wrapper +endif + +ifneq ($(wildcard $(DESTDIR)$(SYSTEMDDIR)/.),) + install -m 644 host_config/kvm-wrapper@.service \ + host_config/kvm-wrapper-cleanup.service \ + $(DESTDIR)$(SYSTEMDDIR)/ +endif + +dist: + tar -czf kvm-wrapper-0.tar.gz --transform 's:^./:kvm-wrapper-0/:' --exclude kvm-wrapper-0.tar.gz --exclude .git --exclude vm --exclude run . + +rpms: dist + rpmbuild -ta kvm-wrapper-0.tar.gz diff --git a/kvm-wrapper.sh b/kvm-wrapper.sh index 64c6724..c0c5df4 100755 --- a/kvm-wrapper.sh +++ b/kvm-wrapper.sh @@ -9,6 +9,7 @@ SCRIPT_PATH="${BASH_SOURCE[0]}" SCRIPT_NAME=$(basename "$SCRIPT_PATH") ROOTDIR=$(readlink -m "$SCRIPT_PATH") ROOTDIR=$(dirname "$ROOTDIR") +[[ -r "$ROOTDIR/kvm-wrapper.conf" ]] || ROOTDIR="/etc/kvm-wrapper" CONFFILE="$ROOTDIR/kvm-wrapper.conf" function canonpath () @@ -686,9 +687,6 @@ function kvm_start_vm () prepare_disks CLEANUP+=("unprepare_disks") - # Network scripts - local KVM_NET_SCRIPT="$ROOTDIR/net" - local KVM_NET="" # backward compatibility - prioritize old values because new ones can come from the global config @@ -1439,7 +1437,7 @@ if [[ $# -le 1 ]]; then fi kvm_init_env "$2" -test_nodename "$KVM_CLUSTER_NODE" && { run_remote $KVM_CLUSTER_NODE $ROOTDIR/kvm-wrapper.sh $@; exit $?; } +test_nodename "$KVM_CLUSTER_NODE" && { run_remote $KVM_CLUSTER_NODE kvm-wrapper $@; exit $?; } # Argument parsing case "$1" in diff --git a/kvm-wrapper.spec b/kvm-wrapper.spec new file mode 100644 index 0000000..00dc80b --- /dev/null +++ b/kvm-wrapper.spec @@ -0,0 +1,33 @@ +Name: kvm-wrapper +Version: 0 +Release: 0.20160120git58bbe76%{?dist} +Summary: qemu (kvm) wrapper for VM management +License: WTFPLv2 + +Source0: %{name}-%{version}.tar.gz +BuildArch: noarch + +%description +qemu (kvm) wrapper for VM management + +%prep +%setup -q + +%build +# nothing to build + +%install +install -d %{buildroot}/%{_datarootdir}/conman/exec +install -d %{buildroot}/%{_datarootdir}/bash-completion/completions +install -d %{buildroot}/%{_unitdir} +make install DESTDIR=%{buildroot} + +%files +%config(noreplace) /etc/kvm-wrapper/kvm-wrapper.conf +%config(noreplace) /etc/kvm-wrapper/kvm-cluster.conf +%{_bindir}/kvm-wrapper +%{_datarootdir}/conman/exec/kvm-wrapper.exp +%{_datarootdir}/bash-completion/completions/kvm-wrapper +%{_unitdir}/kvm-wrapper-cleanup.service +%{_unitdir}/kvm-wrapper@.service +/etc/kvm-wrapper/bootstrap |