diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-03-14 22:26:05 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-03-14 22:26:05 -0400 |
commit | 6d386c6cfe3d04a3188b9d05b7656ffec2a8f51f (patch) | |
tree | 96764b24c8cf130d25ddfbcea3adc1b2293f0fa5 /modules/blobs/put.sh | |
parent | 7190864de465c3c3b015540ca45c9d9bccb5b790 (diff) |
fixity fix
Diffstat (limited to 'modules/blobs/put.sh')
-rw-r--r-- | modules/blobs/put.sh | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/modules/blobs/put.sh b/modules/blobs/put.sh new file mode 100644 index 0000000..c92f161 --- /dev/null +++ b/modules/blobs/put.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env bash +name=blobs/put +desc='Put files into the repository' +copyright=('2009-2010, 2015-2016 Luke Shumaker') +license='AGPLv3+' +# This file is part of rvs. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +usage=('[FILES...]') +. "${0%/*}/_shlib.sh" + +main() { + if [[ $# -lt 1 ]]; then + set -- . + fi + + for file in "$@"; do + if ! stat -c '' -- "$file" &>/dev/null; then + error 'No such file or directory: %s' "$file" + fi + + local type + if test -L "$file"; then + type=l + elif test -f "$file"; then + type=f + elif test -d "$file"; then + type=d + else + error 'File has unsupported file type: %s' "$file" + fi + "$RVS" "blobs/put.$type" "$file" + done +} + +main "$@" |