Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
* Decrease file stats as much as possible
* Create a list of all packages and meta data only once
* Create a list of available source packages only once
* Create a list of expected packages only once
* Combine all three scripts into one to share data and code
* Use as much information from the db files as possible and avoid using svn
* Avoid attempting to create the same source package twice
Logic works as follows:
1) create a list of all packages
2) Check for each package if we need a src package and create one
3) During this process create a list of all src packages that should be there
4) Diff both lists for the cleanup
|
|
PKGBUILDs expect CARCH to be set. This is needed when sourcing them directly.
|
|
|
|
|
|
In addition to pkgver and pkgrel it is checked if pkgname is defined in the PKGBUILD.
|
|
Don't use globing as this will match a package of the same version but another arch.
We can be more specific here as there are no longer packages without $arch extension.
|
|
Using the hostname to decide which repos to use is not releiable and hard to test.
Instead use config.local to configure these.
config files for sigurd and gerolde were added which can be copied or symlinked to config.local
on the specific host.
|
|
|
|
This also checks if the sam package exists within the old package
layout (without package pool)
|
|
See FS#20745
|
|
* When writing the db file ensure that it has write permission of the group which owns the parent directory.
* This should make the adjust-permissions cron job obsolete.
|
|
* Repositories can now be defined in the config file for each host
* added community-staging, gnome-unstable and kde-unstable
* Exception is the adjust-permission cron-job; but we might want to use acls in future anyway
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
|
|
|
|
If reading from a PKGBUILD fails stop immediatly. Also put out more usefull error messages.
|
|
|
|
|
|
|
|
|
|
* db-update now updates all repos with packages in its staging dirs
* sanity checks are performed before any repo is touched
* improved performance
* less code; easier to maintain
|
|
These functions are copied from makepkg
|
|
Added a function to check if user has permission to alter the repos
and db files.
|
|
There are no longer architecture-specific subdirs and the structure was switch to this:
ftp
└── pool
├── community
└── packages
packages contains all packages from core, extra and testing; this naming is in sync with the svn repo naming:
svn-packages and svn-community
|
|
|
|
* fix indention
* use consistent output
* set vars local
|
|
db-functions now sets an individual $WORKDIR and implements trap functinos that
remove locks on exit or error. There are new functions to lock and unlock the running script.
misc-scripts/ftpdir-cleanup was renamed to ftpdir-cleanup-repo as the cron-job had the same name.
Script names have to be unique when using db-functions.
|
|
|
|
The package pool dir depends on the host; so we solve this similar to
get_repos_for_host()
Note: There is no "os" subdir for the package pool.
|
|
|
|
Moved all cleanup related code in sourceballs-cleanup script and moved,
now common, functions in db-functions. The cleanup script is now ran
after all the new sourceballs have been fetched.
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com>
|
|
The repo locking function now use a lock directory instead of a lock
file. This makes the lock checking and creation an atomic process.
The repo_lock function will now try to obtain a lock every $LOCK_DELAY
seconds until it is successful. An optional third argument can be use
to give a timeout in seconds; this is intended for scripts that runs
unattended. Repo locking is now used in the ftpdir-cleanup script.
This should fix the problem of the ftpdir-cleanup script removing the
new package instead of the old one (FS#17058).
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com>
|
|
With this patch packages with different compressions are accepted. It is
ensured that one cannot have the same package with different compression
extensions.
The new functions getpkgfile{,s} are used to sanitize globed filenames.
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
|
|
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Signed-off-by: Eric Bélanger <snowmaniscool@gmail.com>
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
And use it. This allows us to have server-specific behavior in our scripts
without further patching, and it also allows us to simplify some of our
scripts a fair amount.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
We can't really do the basedir magic from db-functions as it is just being
sourced and is not the currently executing script. Although a bit
repetitive, it is a lot safer to just include the config file everywhere.
Noticed this when trying to run the latest available scripts on sigurd.
Signed-off-by: Dan McGee <dan@archlinux.org>
|
|
Removed the need for makepkg.conf
* Killed off CARCH
* Added PKGEXT to the config file
* Remove source_makepkg function
* Source config file where makepkg.conf was needed
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Check for pkgbase first. If and only if this doesn't exist,
return pkgname. This fixes potential ordering issues.
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
* also added error msg for repo_lock in db-functions
[Aaron: keep quotes around $WORKDIR]
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
* undefined argument $pattern changed to $2
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
This is just for readability and cleanup
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Prefer pkgbase over pkgname in getpkgbase()
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
[Aaron: Use >&2 instead of /dev/stderr, just in the offchance
that /dev is missing for some reason]
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|
|
This could be useful if we move community to a separate
SVN repo
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
|