Release 1.99.10 (Tue Mar 12 12:53:14 CET 2013) * paa: removed PAA104_relsymlinks_many as it just takes too long * paa: filtered variant test from PAA101_badrepocalls * paa: imported pull-progagation.dia used in wiki page ManagingSoftwareRepositoriesInProductionEnvironments * paa: updated man page Release 1.99.9 (Thu Mar 7 15:17:17 CET 2013) * paa: fixes to some sql - detected when trying to run ops on a real configuration with multiple repos * paa: added missing svn keywords and properties to recently added files * paa: exclude paa command from '--list-paths' check as, when paa reports the db and code schema conformancy levels, then it also moves $PAA_STATE_PREFIX/*.conf to /tmp. This is quite difficult to work around. * paa: added fast and early test that schema is loadable * paa: list* commands reverted to being verbose without -v * paa: interrupt test now does one chain but interrupts each command in it (this was not really feasible earlier because none of them worked properly but now they all do then it just takes too long to do it any other way * paa: db schema raised to 3 (added missing pid columns on files and controls table, removed pid and status from releases column, *_ts fields are now obligatory at all times, removed config_compiled_ts * paa: implemented interrupt processing for remaining functions * paa: UML diagrams upgraded to schema 3 * paa: included example cron and replaced apache config generator script with example apache config file * paa: minor corrections to get all tests passing * paa: more test and code fixes to do with indirects * paa: ongoing work on interrupts (pre-accesses) * paa: ongoing work on interrupts * paa: use of temporary table in editrepo to do a rollback spanning transactions * paa: freezes implemented in new way * paa: added interrupt/concurrency code for mirror and unmirror * paa: enhanced interrupt/concurrency tests and code: in progress (repo, unrepo, host, unhost working); schema bumped from 1 to 2 * paa: added draft test of interrupt handling * paa: in *repo functions add/display pid * paa: added schema versioning * paa: pid column to repos table (other tables will follow) * paa: updated TODO list for what needs to be completed for 1.99.9 and 1.99.10. * paa: minor updates to test reference files because of changed warning texts * paa: implemented different list* behaviour with and without -v * paa: added --force facility to control directive * paa: updated all example .conf files for use on pasta.net Release 1.99.8 (Sun Feb 10 19:35:50 CET 2013) * paa: added missing line in copy-and-paste error (resulting in freezing localpublic-deb also freezing centos!) * paa: updated old tests in accordance with recent code changes * paa: removed last references to paacrt * paa: symlink calculator now longer users IFS as this tripped an ADE standard test * paa: aligned config files from sources, gnocchi, sosinst * paa: added missing properties on tests * paa: added more tests (indirect symlinks, directive argument counts) * paa: symlinker code implemented in shell * paa: directive handlers check argument count * paa: added support for RPM-based apache config file writer etc-apache2-conf.d-paa and for restarting apache * paa: added more tests * paa: added triggers for early detection of illegal 'paa repo' parameters * paa: move to $TMP_DIR, don't delete, non-paa owned stufff in paa-managed directories * paa: standarised handling of skips in directives-all.sh; it's longer but its much easier to write, debug and understand * paa: standarised many sections of directive-handlers * paa: 'paa list*' is now very brief; 'paa -v list*' performs the old behaviour * paa: reviewed locking; long operations do not lock (well, 'lock' is really the wrong word, 'checkpointing' is more like it) * paa: check access to lsb_release before calling * paa: rpmmirror main function split for each protocol it handles and flags for each rsync/wget invocation aligned Release 1.99.6 (Tue Feb 5 09:01:31 CET 2013) * paa: calcuate relative symlinks from indirect_dir to freeze_dir * paa: split and deepened paacrt_dir_prefix into freeze_dir and indirect_dir * paa: renamed directs to indirects * paa: man page updates * paa: first draft of rpmmirror(1) man page * paa: first draft of updated paa(1) man page Release 1.99.4 (Sun Jan 27 18:42:12 CET 2013) * paa: fixed direct code handling 'NEWEST-FREEZE' * paa: updates to example conf files after problems on lenny and centos * paa: replaced recently introduced ${VAR,,} with call to ade_smf_lc() * paa: removed fedora.conf * paa: added missing properties to new files * paa: changed paacrt_url_prefix to url * paa: added support for non-paacrt-style repos, e.g. Debian security * paa: added example config file for Debian security * paa: write 'name' line into yum config files else yum warns * paa: updates to example autopaa.sh * paa: when determining a machine's release, use release codenames for debian (lsb_release -sc), which are more stable and use release numbers for redhat (lsb_release -sr) because codenames are broken on centos (which reports the codename as 'Final') * paa: pass the port to expand_layout * paa: aligned directives-deb.sh and directives-rpm.sh where possible * paa: rpmmirror.sh switched back to exclude lists than than include lists * paa: removed example fedora.conf and added centos.conf Release 1.99.3 (Tue Jan 22 21:40:30 CET 2013) * paa: updated Makefiles to install missing stuff * paa: install example files and moved paa.sql to include directory * paa: corrected the deletion of obsolete records in the 'controls' table (without which dpkg-scanpackages things the overrides file is corrupt) * paa: to rpmmirror.sh, added file:// support and corrected path trimming for http:// URLs * paa: force LC_ALL=C for all sorts in tests * paa: added svn properties and placeholders * paa: added 'TODO' file (which was missing last time) * paa: 'insert' and 'control' directives updated to fix bugs * paa: test updates * paa: devariant freeze output, which now reports freeze id and updated reference file * paa: renamed paa-tables.sql to paa.sql * paa: don't update mirrors in a transaction 'cos database locks out all other activities * paa: allow 'NEWEST-FREEZE' in directs * paa: control now reads repos, releases, ports and sections from a variable and uses 'read -u' to do it, this allows the gpg inside the loop to see the tty, which is a prerequisite for it working correctly * paa: dpkg-deb called only once to analyse debs; previously called three times and slow about it) * paa: gpg told to force local user name used to sign, and no longer must insist on agent running * paa: added the actual repo config files I'm using and started developing new wrapper script to create my repos * paa: added --delete to the rsync call in rpmmirror * paa: simplified usage message * paa: test load config files using bash, not sh * paa: further checks for redundant config directives * paa: tidied recent additions to the sql file * paa: removed 'paa host THIS-HOST' from tests as it presents too many variant factors; this also means that 'paa access ALL-REPOS' needed to be removed * paa: updated reference file for test after recent code updates * paa: corrected SQL selects for accesses and directs to take repos according to what is compatible with host, not with the distro repo that the host has installed. * paa: called launch_shell() in test pending fixing an outstanding issue * paa: comments and cosmetic changes in paa-tables.sql in order to describe an outstanding issue, which I will fix after next commit * paa: narrowed usage message to make it pass ade tests * paa: corrections to tests to make it work under lenny * paa: added options -v, -d, -n to rpmmirror and added support for http:// protocol * paa: more changes to get tests passing on lenny (making use of new functions in ade) * paa: to comply with ADE tests: minor text changes to standard options' output, added support for --version, --list-paths to rpmmirror * paa: in test: improved filtering, don't hardcode freeze ids, more stringent error detection in pipelines, updated ref file * paa: renamed some database attributes (and therefore variables in code too) * paa: derive freeze id from mirrored ts as YYYYMMDDHHMMSS. * paa: fixed some errors revealed by testing * paa: doc/Makefile now cleans * paa: updated diagram * paa: updated tests based on recent changes to code * paa: in unrepo() empty controls table * paa: updated access_*() functions * paa: deleted unused functions and renamed others * paa: updated rpmmirrors to refer to ports as ports, not archs * paa: 'real' variables used during config compilition now have 'REAL_' prefix to distinguish them * paa: script_ports renamed to script_archs (repos have ports but packages have archs) * paa: added example rpm config file * paa: insert coded and split into insert and control * paa: made layout release-specific (stored in releases table) * paa: better support for rpms in the template config file generator * paa: indentation corrections in SQL * paa: minor diagram updates and latest XCF version * paa: massive tidy up of variable names and declaration groupings * paa: ensure identical timestamp for quick operations * paa: renamed apache directive to share (apache_cidr becomes cidr) * paa: unrepo now reports name of directory to be manually deleted * paa: *access* now working * paa: UML diagram updated with accesses' primary key changes * paa: template comments updated * paa: deleted paa-data.sql as this is no longer sourced (there being so little static data that it is inserted from within paa-tables.sql) * paa: created triggers to block host and repo deletion when there is an access referencing them * paa: renamed repoconfigs table to extended (trying to use single plural words for table names) * paa: 'host' directive now demands pkgtype argument * paa: rewrote 'directs' and 'apaches' tables * paa: directives 'directs' and 'apaches' updated according to recent db changes * paa: UML diagram updated * paa: example config file for virtualbox provided * paa: aligned constraint names in paa-tables.sql * paa: added views for determining which repos a host may use * paa: split a svn-token-like error message over two lines to avoid 'svn co' from doing substitutions * paa: moved functions to more logical files * paa: recoded config compiler to use directives rather than variable assignments (this simplfies config syntax, but complicates code) * paa: ongoing update of paa-tables.sql * paa: rewrite following UML modelling: - dia diagram updated, principally to abstract minor tables - creation of repo tables updated * paa: major improvements in first test * paa: many small fixes to paa based on first test ('paa unrepo' cleans auxiliary repo table, debs and rpms tables, 'paa apache' creates state directory if non-existent, corrections to 'apache reload' code, strip trailing slash from $ROOTDIR everywhere makes it prettier if $ROOTDIR is /, * paa: added entity relationship diagram paa.dia * paa: further updates to the PAA100_listrepos test * paa: abstracted write tests to new functions * paa: added option '--rootdir=