Age | Commit message (Collapse) | Author |
|
# Conflicts:
# config
# cron-jobs/makepkg.conf
# cron-jobs/update-web-db
# db-functions
# db-move
# db-remove
# db-update
# test/lib/common.inc
# test/test.d/create-filelists.sh
# test/test.d/db-update.sh
# testing2x
|
|
|
|
|
|
|
|
|
|
|
|
It mistakenly looped over just the first element of the ARCHES array,
instead of the entire array. This meant that it only checked the
permissions for one architecture.
|
|
This does correct handling of
- executing a program by symlink
- any weird characters in the full path
- I'm sure there's another case I thought about when I originally did
this.
|
|
It is a method of notifying text-editors that a file is in Bash syntax
without giving it a propper shebang (which would be confusing, as it
would suggest that the file should be executable), as well as working
across virtually all text-editors (unlike "-*- Mode: Bash -*-" or
whatever).
|
|
`grep -q` may exit as soon as it finds a match; this is a good optimization
for when the input is a file. However, if the input is the output of
another program, then that other program will receive SIGPIPE, and further
writes will fail. When this happens, it might (bsdtar does) print a
message about a "write error" to stderr. Which is going to confuse and
alarm the user.
I'll add that this is not purely hypothetical--it has happened to me while
running the test suite.
|
|
|
|
Because common.inc is included in nested calls, to prevent later calls
from overriding earlier calls, we export MASTER_TMPDIR to signal the
top-level value.
Calls to mktemp have also bee adjusted to obey TMPDIR.
|
|
|
|
The += operator was introduced in Bash 3.1, and was already used in some
places in dbscripts, but not everywhere.
For normal strings, this isn't a big deal, but appending to an array
without using += is nasty.
|
|
|
|
|
|
|
|
|
|
# Conflicts:
# test/lib/common.inc
# test/test.d/create-filelists.sh
# test/test.d/db-move.sh
# test/test.d/db-remove.sh
# test/test.d/db-repo-add.sh
# test/test.d/db-repo-remove.sh
# test/test.d/db-update.sh
# test/test.d/ftpdir-cleanup.sh
# test/test.d/sourceballs.sh
|
|
|
|
|
|
|
|
|
|
Other than pure quoting, this involved:
- swapping */@ for array access in a few places
- fiddling with printf in a pipeline
- replacing `$(echo ${array[@]})` with `${array[*]}`
- replacing `echo $(...)` with `...`
When searching for these things, I used the command:
grep -Prn --exclude-dir=.git '(?<!["=]|\[\[ |\[\[ -[zn] )\$(?!{?#|\(|\? )'
and ignored a bunch of false positives.
|
|
double shame!
This will detect both, packages with missing .BUILDINFO (built in
non updated environments) and packages that are not built in a
chroot at all (indicated by non default builddir).
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
|
|
|
|
With pacman 5.0 repo-add and repo-remove handle file databases by default.
|
|
# Conflicts:
# abslibre
# any-to-ours
# config
# db-cleanup
# db-functions
# db-libremessages
# db-move
# db-sync
|
|
|
|
|
|
|
|
libremessages
|
|
Obviously, this is an exercise in noticing a leaky abstraction.
- assumes that the PKGBUILD is staged to a real directory going in
- assumes where that is
- assumes how to clean that up
I believe the correct solution will require modifying XBS. Following is
what I believe the changes should be.
- change release-server to take "REPO ARCH DIR1 [DIR2...]", instead of
using the CWD.
- but this still assumes that the caller knows where release-client put
the PKGBUILD, so change it to take "REPO ARCH PKGBASE1 [PKGBASE2...]".
- this means that release-server knows to check if a PKGBUILD exists at
the specified arch, and fall back to 'any' if it doesn't.
- an alternative would be passing in the .pkg.tar filenames, and
either parsing the filename or using db-functions to figure out the
arch.
- ??? how to get rid of cleaning up assumptions.
|
|
It was "simpler" than cron-jobs/sourceballs because it iterated over the
files in $SVNREPO directly, rather than getting the list from $FTP_BASE,
and then getting the corresponding files from $SVNREPO.
This fails with XBS because there is no single `abstree` path, there is one
for each architecture.
|
|
* config: drop SVNREPO
* cron-jobs/sourceballs: Replace commented out SVN code and active ABS code
with XBS code. The XBS code is fairly similar to the SVN code, the
difference being that it uses `xbs releasepath` instead of `svn export`.
* db-functions:
- Rename check_pkgsvn to check_pkgxbs
- check_pkgxbs: Drop the `svn export` bit, as `xbs releasepath` assumes
that a working directory already exists. Replace the paths created by
the `svn export` with calls to `xbs releasepath`.
- check_splitpkgs: Drop the ABS `cp` -r bit, as `xbs releasepath` assumes
that a working directory already exists. Replace the paths created by
the `cp -r` with calls to `xbs releasepath`. Rename the variables and
temporary files s/svn/xbs/ .
* db-move:
- First loop: Rename the variable svnrepo_from to xbsrepo_from, and get
the value from `xbs releasepath`.
- Second loop: Run `xbs move` before the inner loop to get a list of
architectures. Rename the variable `svnrepo_from` to `xbsrepo_to`, and
get the value for it from `xbs releasepath`. Because xbs guarantees
that the PKGBUILD exists for the architectures listed, replace the
check for whether the PKGBUILD exists with `if true`, to keep merging
easy (as opposed to removing the if, and de-indenting the whole thing).
* db-remove: Get the location of the PKGBUILD from `xbs releasepath`, call
`xbs unrelease`, and adjust a message to use `xbs name` and mention the
appropriate repo/arch pair.
|
|
|
|
- db-move: rename dir_to to xbsrepo_to
- db-move: fix typo in comment
- db-move: add a diagnostic message
- db-remove: wrap a line
|
|
# Conflicts:
# abslibre
# config
# cron-jobs/repo-sanity-check
# db-remove
# db-sync.conf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This way, if it changes, it only needs to be changed in one place.
|
|
Because of this mistake, it didn't properly handle specifying multiple
pkgbases.
|
|
|
|
It just ran `rsync` to sync things between servers.
|
|
It was for moving packages from testing to [core] or [extra]
(automatically picking the right one). We, of course, don't do that.
|
|
|