4 echo -e "usage: $0 [OPTIONS] BUILD"
6 echo -e " -p <passphrase file>: gpg passphrase file"
7 echo -e " -i <incoming repo> "
8 echo -e " -o <outgoing repo> "
9 echo -e " -k <gpg key> "
10 echo -e " -j <jfrog cli> "
11 echo -e " -d <base dir> "
12 echo -e " -b <build> "
13 echo -e " -r <release dir> "
14 echo -e " -h <rsync user@host> "
15 echo -e " -R <rsync options> "
24 function dump_vars
() {
25 echo "incoming repo: $IN_REPO"
26 echo "outgoing repo: $OUT_REPO"
27 echo "GPGKEY: $GPGKEY"
28 echo "JFROG_CLI: $JFROG_CLI"
29 echo "REPO_BASE: $REPO_BASE"
30 echo "RELEASE_DIR: $RELEASE_DIR"
32 echo "RSYNC_USER_HOST $RSYNC_USER_HOST"
33 echo "RSYNC_OPTIONS $RSYNC_OPTIONS"
41 RELEASE_DIR
=ReleaseTWO
42 RSYNC_USER_HOST
=osmusers@osm-download.etsi.org
45 while getopts ":p:i:o:k:j::d:b:r:h:R:" o
; do
48 PASSPHRASE_FILE
=${OPTARG}
72 RSYNC_USER_HOST
=${OPTARG}
75 RSYNC_OPTIONS
=${OPTARG}
86 BASE_DIR
=$REPO_BASE/osm
/debian
/$RELEASE_DIR
88 [ -z "$BUILD" ] && FATAL
"missing option: -b <build>"
90 [ -x $JFROG_CLI ] || FATAL
"jfrog cli not found. Please install https://www.jfrog.com/getcli/ and use option '-j <jfrog cli location>'"
92 $JFROG_CLI rt download
--build "$BUILD" osm-release || FATAL
"Failed to download"
94 BUILD_NUMBER
=$
(basename "$BUILD")
96 [ $PASSPHRASE_FILE ] && GPG_PASSPHRASE
="--no-use-agent --passphrase \"$(cat $PASSPHRASE_FILE)\""
98 mkdir
-p $BASE_DIR/dists
100 cp -R $BUILD_NUMBER/dists
/$IN_REPO $BASE_DIR/dists
/$OUT_REPO
101 cp -R $BUILD_NUMBER/pool
$BASE_DIR/
105 for i
in RO osmclient openvim SO UI
; do
107 # gpg sign the packages
108 dpkg-sig
-g "$GPG_PASSPHRASE" -k $GPGKEY --sign builder pool
/$i/*.deb
110 # mkdir -p dists/stable/$i/binary-amd64/
111 apt-ftparchive packages pool
/$i > dists
/$OUT_REPO/$i/binary-amd64
/Packages
112 rm -f dists
/$OUT_REPO/$i/binary-amd64
/Packages.gz
113 gzip -9fk dists
/$OUT_REPO/$i/binary-amd64
/Packages
116 # Generate the root Release
118 apt-ftparchive release dists
/$OUT_REPO > dists
/$OUT_REPO/Release
119 #gzip -9fk dists/$OUT_REPO/Release
121 rm -f dists
/$OUT_REPO/InRelease
122 eval gpg
$GPG_PASSPHRASE --default-key $GPGKEY --clearsign -o dists
/$OUT_REPO/InRelease dists
/$OUT_REPO/Release
124 rm -f dists
/$OUT_REPO/Release.gpg
125 eval gpg
$GPG_PASSPHRASE --default-key $GPGKEY -abs -o dists
/$OUT_REPO/Release.gpg dists
/$OUT_REPO/Release
128 echo "performing rsync of repo $RELEASE_DIR/dist/$OUT_REPO to osm-download.etsi.org:/repos/"
129 cd $CURR_DIR/$REPO_BASE
131 rsync
-avR $RSYNC_OPTIONS osm
/debian
/$RELEASE_DIR rsync
://$RSYNC_USER_HOST/repos