aboutsummaryrefslogtreecommitdiffstats
path: root/.travis/build-pkgs
diff options
context:
space:
mode:
Diffstat (limited to '.travis/build-pkgs')
-rwxr-xr-x.travis/build-pkgs20
1 files changed, 20 insertions, 0 deletions
diff --git a/.travis/build-pkgs b/.travis/build-pkgs
index b1dd9cca4e..57bbadd9f3 100755
--- a/.travis/build-pkgs
+++ b/.travis/build-pkgs
@@ -31,6 +31,24 @@ changed_abuilds() {
ap builddirs -d "$(pwd)/$repo" $aports 2>/dev/null | xargs -I% basename %
}
+# Replaces /etc/apk/repositories with repositories at $MIRROR_URI that are on
+# the same or higher level than the given repo (main > community > testing)
+# and after that runs `apk update`.
+#
+# $1: the target repository; main, community, or testing
+set_repositories_for() {
+ local target_repo="$1"
+ local repos_file='/etc/apk/repositories'
+
+ printf '' > $repos_file
+ local repo; for repo in main community testing; do
+ printf '%s\n' "$MIRROR_URI/$repo" >> $repos_file
+ [ "$repo" = "$target_repo" ] && break
+ done
+
+ apk update
+}
+
cd "$CLONE_DIR"
@@ -53,6 +71,8 @@ echo 'Diffstat:'
git --no-pager diff --color --stat "$commit_range"
for repo in $(changed_repos "$commit_range"); do
+ set_repositories_for "$repo"
+
for pkgname in $(changed_abuilds "$repo" "$commit_range"); do
qname="$repo/$pkgname"