Selaa lähdekoodia

docker script switch to yum-utils and apt-download, dropping wget
gitlab-ci-multi-runner bug fix

bigeagle 9 vuotta sitten
vanhempi
sitoutus
f814117deb
2 muutettua tiedostoa jossa 54 lisäystä ja 14 poistoa
  1. 52 12
      scripts/docker.sh
  2. 2 2
      scripts/gitlab-ci-multi-runner.sh

+ 52 - 12
scripts/docker.sh

@@ -1,16 +1,56 @@
 #!/bin/bash
+# reqires: wget, yum-utils
 
-function sync_docker() {
-	repo_url="$1"
-	repo_dir="$2"
+set -e
+set -o pipefail
 
-	[ ! -d "$repo_dir" ] && mkdir -p "$repo_dir"
-	cd $repo_dir
-	# lftp "${repo_url}/" -e "mirror --verbose --exclude-glob='*/SRPMS/*' -P 5 --delete --only-newer; bye"
-	# lftp "${repo_url}/" -e "mirror --verbose  -P 5 --delete --only-newer; bye"
-	wget --mirror --convert-links --no-parent --no-host-directories $repo_url 
-	find . -type f -iname "*.1" -exec rm {} \;
-}
+_here=`dirname $(realpath $0)`
+. ${_here}/helpers/apt-download
+APT_VERSIONS=("debian-wheezy" "debian-jessie" "ubuntu-trusty" "ubuntu-xenial")
 
-sync_docker "http://apt.dockerproject.org/" "${TUNASYNC_WORKING_DIR}/apt"
-sync_docker "http://yum.dockerproject.org/" "${TUNASYNC_WORKING_DIR}/yum"
+BASE_PATH="${TUNASYNC_WORKING_DIR}"
+APT_PATH="${BASE_PATH}/apt/repo"
+YUM_PATH="${BASE_PATH}/yum/repo"
+
+mkdir -p ${APT_PATH} ${YUM_PATH}
+
+# YUM mirror
+cache_dir="/tmp/yum-docker-cache/"
+cfg="/tmp/docker-yum.conf"
+cat <<EOF > ${cfg}
+[main]
+keepcache=0
+
+[centos6]
+name=Docker Repository
+baseurl=https://yum.dockerproject.org/repo/main/centos/6
+enabled=1
+gpgcheck=0
+gpgkey=https://yum.dockerproject.org/gpg
+sslverify=0
+
+[centos7]
+name=Docker Repository
+baseurl=https://yum.dockerproject.org/repo/main/centos/7
+enabled=1
+gpgcheck=0
+gpgkey=https://yum.dockerproject.org/gpg
+sslverify=0
+EOF
+
+[ ! -d ${YUM_PATH}/centos6 ] && mkdir -p ${YUM_PATH}/centos6
+[ ! -d ${YUM_PATH}/centos7 ] && mkdir -p ${YUM_PATH}/centos7
+reposync -c $cfg -d -p ${YUM_PATH}  -e $cache_dir
+createrepo --update -v -c $cache_dir -o ${YUM_PATH}/centos6 ${YUM_PATH}/centos7
+createrepo --update -v -c $cache_dir -o ${YUM_PATH}/centos6 ${YUM_PATH}/centos7
+rm $cfg
+
+# APT mirror 
+base_url="http://apt.dockerproject.org/repo"
+for version in ${APT_VERSIONS[@]}; do
+	apt-download-binary ${base_url} "$version" "main" "amd64" "${APT_PATH}" || true
+	apt-download-binary ${base_url} "$version" "main" "i386" "${APT_PATH}" || true
+done
+
+# sync_docker "http://apt.dockerproject.org/" "${TUNASYNC_WORKING_DIR}/apt"
+# sync_docker "http://yum.dockerproject.org/" "${TUNASYNC_WORKING_DIR}/yum"

+ 2 - 2
scripts/gitlab-ci-multi-runner.sh

@@ -25,7 +25,7 @@ cat <<EOF > ${cfg}
 [main]
 keepcache=0
 
-[gitlab-ci-multi-runner-el6]
+[el6]
 name=gitlab-ci-multi-runner-el6
 baseurl=https://packages.gitlab.com/runner/gitlab-ci-multi-runner/el/6/x86_64
 repo_gpgcheck=0
@@ -34,7 +34,7 @@ enabled=1
 gpgkey=https://packages.gitlab.com/gpg.key
 sslverify=0
 
-[gitlab-ci-multi-runner-el7]
+[el7]
 name=gitlab-ci-multi-runner-el7
 baseurl=https://packages.gitlab.com/runner/gitlab-ci-multi-runner/el/7/x86_64
 repo_gpgcheck=0