summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLevente Polyak <anthraxx@archlinux.org>2024-02-08 01:15:48 +0100
committerLevente Polyak <anthraxx@archlinux.org>2024-02-08 01:21:40 +0100
commitfc05ea19d9005cffaa461cf4f86131a001f88ca9 (patch)
treeaa5ef83b34e062fd58aca2b268d772d365f8d592
parent3ecba314fc3a7508d80c5450aaae4b5fc507d62b (diff)
downloaddevtools-fc05ea19d9005cffaa461cf4f86131a001f88ca9.tar.xz
fix(build): allow unstable repositories to override repo target
This works around the fact that we are currently not auto detecting unstable repository targets while providing a stability layer option on the subcommand. Soften the --repo option rules by allowing unstable repositories to use that flag for building and releasing against the unstable repositories. This will be replaced in the near future by proper integration of target repository auto-detection that in aware of unstable repositories while providing a unstable stability layer options. Component: pkgctl build Component: pkgctl release Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
-rw-r--r--src/lib/build/build.sh7
-rw-r--r--src/lib/release.sh7
2 files changed, 12 insertions, 2 deletions
diff --git a/src/lib/build/build.sh b/src/lib/build/build.sh
index 8e9a3bb..9bd1e5d 100644
--- a/src/lib/build/build.sh
+++ b/src/lib/build/build.sh
@@ -337,7 +337,12 @@ pkgctl_build() {
# fail if an existing package specifies --repo
if [[ -n "${repo}" ]] && [[ -n ${pkgrepo} ]]; then
- die 'Using --repo for packages that exist in official repositories is disallowed'
+ # allow unstable to use --repo
+ if [[ ${pkgrepo} == *unstable ]]; then
+ repo=${pkgrepo}
+ else
+ die 'Using --repo for packages that exist in official repositories is disallowed'
+ fi
fi
# assign auto-detected target repository
diff --git a/src/lib/release.sh b/src/lib/release.sh
index 700b2b0..acb3b54 100644
--- a/src/lib/release.sh
+++ b/src/lib/release.sh
@@ -141,7 +141,12 @@ pkgctl_release() {
# fail if an existing package specifies --repo
if [[ -n "${repo}" ]] && [[ -n ${REPO} ]]; then
- die 'Using --repo for packages that exist in official repositories is disallowed'
+ # allow unstable to use --repo
+ if [[ ${REPO} == *unstable ]]; then
+ repo=${REPO}
+ else
+ die 'Using --repo for packages that exist in official repositories is disallowed'
+ fi
fi
# fail if a new package does not specify --repo