##// END OF EJS Templates
buildrpm: fix use of invalid $PLATFORM in mercurial.repo
Mads Kiilerich -
r23124:4c490626 stable
parent child Browse files
Show More
@@ -1,57 +1,57 b''
1 #!/bin/bash -e
1 #!/bin/bash -e
2
2
3 BUILDDIR=$(dirname $0)
3 BUILDDIR=$(dirname $0)
4 ROOTDIR=$(cd $BUILDDIR/..; pwd)
4 ROOTDIR=$(cd $BUILDDIR/..; pwd)
5
5
6 if which docker.io >> /dev/null 2>&1 ; then
6 if which docker.io >> /dev/null 2>&1 ; then
7 DOCKER=docker.io
7 DOCKER=docker.io
8 elif which docker >> /dev/null 2>&1 ; then
8 elif which docker >> /dev/null 2>&1 ; then
9 DOCKER=docker
9 DOCKER=docker
10 else
10 else
11 echo "Error: docker must be installed"
11 echo "Error: docker must be installed"
12 exit 1
12 exit 1
13 fi
13 fi
14
14
15 $DOCKER -h 2> /dev/null | grep -q Jansens && { echo "Error: $DOCKER is the Docking System Tray - install docker.io instead"; exit 1; }
15 $DOCKER -h 2> /dev/null | grep -q Jansens && { echo "Error: $DOCKER is the Docking System Tray - install docker.io instead"; exit 1; }
16 $DOCKER version | grep -q "^Client version:" || { echo "Error: unexpected output from \"$DOCKER version\""; exit 1; }
16 $DOCKER version | grep -q "^Client version:" || { echo "Error: unexpected output from \"$DOCKER version\""; exit 1; }
17 $DOCKER version | grep -q "^Server version:" || { echo "Error: could not get docker server version - check it is running and your permissions"; exit 1; }
17 $DOCKER version | grep -q "^Server version:" || { echo "Error: could not get docker server version - check it is running and your permissions"; exit 1; }
18
18
19 PLATFORM="$1"
19 PLATFORM="$1"
20 [ "$PLATFORM" ] || { echo "Error: platform name must be specified"; exit 1; }
20 [ "$PLATFORM" ] || { echo "Error: platform name must be specified"; exit 1; }
21 shift # extra params are passed to buildrpm
21 shift # extra params are passed to buildrpm
22
22
23 DFILE="$ROOTDIR/contrib/docker/$PLATFORM"
23 DFILE="$ROOTDIR/contrib/docker/$PLATFORM"
24 [ -f "$DFILE" ] || { echo "Error: docker file $DFILE not found"; exit 1; }
24 [ -f "$DFILE" ] || { echo "Error: docker file $DFILE not found"; exit 1; }
25
25
26 CONTAINER="hg-dockerrpm-$PLATFORM"
26 CONTAINER="hg-dockerrpm-$PLATFORM"
27
27
28 DBUILDUSER=build
28 DBUILDUSER=build
29 (
29 (
30 cat $DFILE
30 cat $DFILE
31 echo RUN groupadd $DBUILDUSER -g `id -g`
31 echo RUN groupadd $DBUILDUSER -g `id -g`
32 echo RUN useradd $DBUILDUSER -u `id -u` -g $DBUILDUSER
32 echo RUN useradd $DBUILDUSER -u `id -u` -g $DBUILDUSER
33 ) | $DOCKER build --tag $CONTAINER -
33 ) | $DOCKER build --tag $CONTAINER -
34
34
35 RPMBUILDDIR=$ROOTDIR/packages/$PLATFORM
35 RPMBUILDDIR=$ROOTDIR/packages/$PLATFORM
36 contrib/buildrpm --rpmbuilddir $RPMBUILDDIR --prepare $*
36 contrib/buildrpm --rpmbuilddir $RPMBUILDDIR --prepare $*
37
37
38 DSHARED=/mnt/shared
38 DSHARED=/mnt/shared
39 $DOCKER run -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \
39 $DOCKER run -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \
40 rpmbuild --define "_topdir $DSHARED" -ba $DSHARED/SPECS/mercurial.spec --clean
40 rpmbuild --define "_topdir $DSHARED" -ba $DSHARED/SPECS/mercurial.spec --clean
41
41
42 $DOCKER run -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \
42 $DOCKER run -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \
43 createrepo $DSHARED
43 createrepo $DSHARED
44
44
45 cat << EOF > $RPMBUILDDIR/mercurial.repo
45 cat << EOF > $RPMBUILDDIR/mercurial.repo
46 # Place this file in /etc/yum.repos.d/mercurial.repo
46 # Place this file in /etc/yum.repos.d/mercurial.repo
47 [mercurial]
47 [mercurial]
48 name=Mercurial packages for $NAME
48 name=Mercurial packages for $PLATFORM
49 # baseurl=file://$RPMBUILDDIR/
49 # baseurl=file://$RPMBUILDDIR/
50 baseurl=http://hg.example.com/build/$NAME/
50 baseurl=http://hg.example.com/build/$PLATFORM/
51 skip_if_unavailable=True
51 skip_if_unavailable=True
52 gpgcheck=0
52 gpgcheck=0
53 enabled=1
53 enabled=1
54 EOF
54 EOF
55
55
56 echo
56 echo
57 echo "Build complete - results can be found in $RPMBUILDDIR"
57 echo "Build complete - results can be found in $RPMBUILDDIR"
General Comments 0
You need to be logged in to leave comments. Login now