on v0.4.4.4 help sign in
servant/scripts/upload.sh
52 lines 1.2 kB history raw
1#!/bin/bash -
2#===============================================================================
3#
4# FILE: upload.sh
5#
6# USAGE: ./upload.sh <USER> <PASSWORD>
7#
8# DESCRIPTION: Uploads all servant packages to Hackage
9#
10# REQUIREMENTS: cabal, bash >= 4
11# AUTHOR: Julian K. Arni
12# CREATED: 05.06.2015 13:05
13#===============================================================================
15set -o nounset
16set -o errexit
18DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
19. "$DIR"/lib/common.sh
21usage () {
22 echo " upload.sh <USER> <PASSWORD>"
23 echo " Uploads all servant packages to Hackage"
24 exit 0
28upload_package () {
29 local package="$1"
30 local user="$2"
31 local pass="$3"
32 local cabalFile="$package.cabal"
33 pushd "$package"
34 local version=$(grep -i '^version:' $cabalFile | awk '{ print $2 }')
35 local sdist="dist/${package}-${version}.tar.gz"
36 cabal sdist
37 echo "User is: $user"
38 cabal upload --user="$user" --password="$pass" "$sdist"
39 popd
43if [ $# -ne 2 ] ; then
44 echo "expecting two arguments."
45 usage
46fi
48versions_equal
50for s in ${SOURCES[@]} ; do
51 upload_package "$s" "$1" "$2"
52done