Mercurial > hg
annotate contrib/dockerrpm @ 30362:3c6893ba2d36
merge: change modified indicator to be 20 bytes
Previously we indicated that the .hgsubstate file was dirty by adding a '+' to
the end of its hash in the wctx manifest. This made is complicated to have new
manifest implementations that rely on the node length being fixed.
In previous patches we added added and modified node placeholders, so let's use
those to indicate dirty here as well. It doesn't look like anything ever
depended on this '+' (aside from it being different to the parent), so nothing
else needed to change here.
author | Durham Goode <durham@fb.com> |
---|---|
date | Thu, 10 Nov 2016 02:21:15 -0800 |
parents | d713fa934fb9 |
children | a3ac1ea611ce |
rev | line source |
---|---|
22438
f5abb231b80a
dockerrpm: check that docker is running correctly before building
Mads Kiilerich <madski@unity3d.com>
parents:
21642
diff
changeset
|
1 #!/bin/bash -e |
21255
62a2749895e4
build: initial support for in-tree autobuilding recipes
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
2 |
24968
80c9e99d68e0
dockerlib: start extracting common functions for setting up docker
Augie Fackler <augie@google.com>
parents:
23124
diff
changeset
|
3 . $(dirname $0)/dockerlib.sh |
80c9e99d68e0
dockerlib: start extracting common functions for setting up docker
Augie Fackler <augie@google.com>
parents:
23124
diff
changeset
|
4 |
21255
62a2749895e4
build: initial support for in-tree autobuilding recipes
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
5 BUILDDIR=$(dirname $0) |
24969
227b9b2a57a3
dockerlib: extract initcontainer() method
Augie Fackler <augie@google.com>
parents:
24968
diff
changeset
|
6 export ROOTDIR=$(cd $BUILDDIR/..; pwd) |
21255
62a2749895e4
build: initial support for in-tree autobuilding recipes
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
7 |
24968
80c9e99d68e0
dockerlib: start extracting common functions for setting up docker
Augie Fackler <augie@google.com>
parents:
23124
diff
changeset
|
8 checkdocker |
22438
f5abb231b80a
dockerrpm: check that docker is running correctly before building
Mads Kiilerich <madski@unity3d.com>
parents:
21642
diff
changeset
|
9 |
22439
d2a00ced3cce
dockerrpm: better handling of specification of docker name
Mads Kiilerich <madski@unity3d.com>
parents:
22438
diff
changeset
|
10 PLATFORM="$1" |
22443 | 11 shift # extra params are passed to buildrpm |
22439
d2a00ced3cce
dockerrpm: better handling of specification of docker name
Mads Kiilerich <madski@unity3d.com>
parents:
22438
diff
changeset
|
12 |
24969
227b9b2a57a3
dockerlib: extract initcontainer() method
Augie Fackler <augie@google.com>
parents:
24968
diff
changeset
|
13 initcontainer $PLATFORM |
22440
cf7b5c011737
dockerrpm: run docker build process as the current user, not as root
Mads Kiilerich <madski@unity3d.com>
parents:
22439
diff
changeset
|
14 |
22441
bb9a06d14857
dockerrpm: prepare source outside docker and just run rpmbuild inside docker
Mads Kiilerich <madski@unity3d.com>
parents:
22440
diff
changeset
|
15 RPMBUILDDIR=$ROOTDIR/packages/$PLATFORM |
22443 | 16 contrib/buildrpm --rpmbuilddir $RPMBUILDDIR --prepare $* |
22441
bb9a06d14857
dockerrpm: prepare source outside docker and just run rpmbuild inside docker
Mads Kiilerich <madski@unity3d.com>
parents:
22440
diff
changeset
|
17 |
bb9a06d14857
dockerrpm: prepare source outside docker and just run rpmbuild inside docker
Mads Kiilerich <madski@unity3d.com>
parents:
22440
diff
changeset
|
18 DSHARED=/mnt/shared |
bb9a06d14857
dockerrpm: prepare source outside docker and just run rpmbuild inside docker
Mads Kiilerich <madski@unity3d.com>
parents:
22440
diff
changeset
|
19 $DOCKER run -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \ |
bb9a06d14857
dockerrpm: prepare source outside docker and just run rpmbuild inside docker
Mads Kiilerich <madski@unity3d.com>
parents:
22440
diff
changeset
|
20 rpmbuild --define "_topdir $DSHARED" -ba $DSHARED/SPECS/mercurial.spec --clean |
22444
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
21 |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
22 $DOCKER run -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \ |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
23 createrepo $DSHARED |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
24 |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
25 cat << EOF > $RPMBUILDDIR/mercurial.repo |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
26 # Place this file in /etc/yum.repos.d/mercurial.repo |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
27 [mercurial] |
23124
4c490626af13
buildrpm: fix use of invalid $PLATFORM in mercurial.repo
Mads Kiilerich <madski@unity3d.com>
parents:
22444
diff
changeset
|
28 name=Mercurial packages for $PLATFORM |
22444
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
29 # baseurl=file://$RPMBUILDDIR/ |
23124
4c490626af13
buildrpm: fix use of invalid $PLATFORM in mercurial.repo
Mads Kiilerich <madski@unity3d.com>
parents:
22444
diff
changeset
|
30 baseurl=http://hg.example.com/build/$PLATFORM/ |
22444
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
31 skip_if_unavailable=True |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
32 gpgcheck=0 |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
33 enabled=1 |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
34 EOF |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
35 |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
36 echo |
49ea49823769
dockerrpm: create a yum/dnf repo from the generated rpms
Mads Kiilerich <madski@unity3d.com>
parents:
22443
diff
changeset
|
37 echo "Build complete - results can be found in $RPMBUILDDIR" |