git.iko.soy/typeable/servant
on master help sign in
rewrite upload script
commit81ef37323eb45c8185773cb763d93eddbbf12bd6 authorSönke Hahn <soenkehahn@gmail.com> dateSat 19 Mar 2016, 18:12 (11 years ago) parentff34393
2 files changed+14−52
scripts/upload.hs+14 scripts/upload.sh−52
scripts/upload.hsnew file+14
@@ -0,0 +1,14 @@
1+#!/usr/bin/env stack
2+{- stack
3+--resolver lts-3.10
4+--install-ghc runghc
5+-}
6+
7+import Data.Foldable
8+import System.Process
9+
10+main :: IO ()
11+main = do
12+ sources <- words <$> readFile "sources.txt"
13+ forM_ sources $ \ source -> do
14+ callCommand ("stack upload " ++ source)
scripts/upload.shdeleted−52
@@ -1,52 +0,0 @@
1−#!/usr/bin/env 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−#===============================================================================
14−
15−set -o nounset
16−set -o errexit
17−
18−DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
19−. "$DIR"/lib/common.sh
20−
21−usage () {
22− echo " upload.sh <USER> <PASSWORD>"
23− echo " Uploads all servant packages to Hackage"
24− exit 0
25−}
26−
27−
28−upload_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
40−}
41−
42−
43−if [ $# -ne 2 ] ; then
44− echo "expecting two arguments."
45− usage
46−fi
47−
48−versions_equal
49−
50−for s in ${SOURCES[@]} ; do
51− upload_package "$s" "$1" "$2"
52−done