summaryrefslogtreecommitdiffstats
path: root/lib/cmd
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2013-07-28 20:58:07 (EDT)
committer P. J. McDermott <pjm@nac.net>2013-07-28 20:58:07 (EDT)
commit9cd62660eb30ce4e060116037d3949c7a2d61d60 (patch)
tree8c5819839d59287b525ef4e4a3b0b3eac893aadc /lib/cmd
parenteae1ae3539ca0f7b90d079cb47d3e7d77da71f65 (diff)
copy-suite: Implement.
Diffstat (limited to 'lib/cmd')
-rw-r--r--lib/cmd/copy-suite.sh47
-rw-r--r--lib/cmd/local.mk3
2 files changed, 49 insertions, 1 deletions
diff --git a/lib/cmd/copy-suite.sh b/lib/cmd/copy-suite.sh
new file mode 100644
index 0000000..5a5c7a1
--- /dev/null
+++ b/lib/cmd/copy-suite.sh
@@ -0,0 +1,47 @@
+# pro-archman
+# lib/cmd/copy-suite.sh
+# "copy-suite" command
+#
+# Copyright (C) 2013 Patrick "P. J." McDermott
+#
+# 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 3 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, see <http://www.gnu.org/licenses/>.
+
+use suite
+
+cmd_copy_suite_main()
+{
+ local src_suite="${1}"
+ local dst_suite="${2}"
+ local src_chan=
+ local src_dist=
+ local dst_chan=
+ local dst_dist=
+
+ src_chan="${src_suite%/*}"
+ src_dist="${src_suite##*/}"
+ if [ "x${src_chan}" = "x${src_suite}" ]; then
+ src_chan="${conf_incoming_channel}"
+ fi
+ dst_chan="${dst_suite%/*}"
+ dst_dist="${dst_suite##*/}"
+ if [ "x${dst_chan}" = "x${dst_suite}" ]; then
+ dst_chan="${conf_incoming_channel}"
+ fi
+
+ info "$(get_msg 'cmd_copy_suite_copying')" \
+ "${src_chan}" "${src_dist}" "${dst_chan}" "${dst_dist}"
+ copy_suite "${src_chan}" "${src_dist}" "${dst_chan}" "${dst_dist}"
+
+ return 0
+}
diff --git a/lib/cmd/local.mk b/lib/cmd/local.mk
index 60b12e5..d49174a 100644
--- a/lib/cmd/local.mk
+++ b/lib/cmd/local.mk
@@ -5,4 +5,5 @@ pkglibcmd_srcs = \
lib/cmd/help.sh \
lib/cmd/include.sh \
lib/cmd/process-incoming.sh \
- lib/cmd/remove.sh
+ lib/cmd/remove.sh \
+ lib/cmd/copy-suite.sh