summaryrefslogtreecommitdiff
path: root/sbuild
AgeCommit message (Collapse)AuthorFilesLines
2009-07-26sbuild::keyfile_parser is a class not a structRoger Leigh1-1/+9
Explicitly default construct parent class. This would have already been done implicitly, it's just for safety.
2009-07-26sbuild::session: Search for command-prefix using search pathRoger Leigh1-1/+6
An absolute path is no longer needed for the command.
2009-07-26sbuild::chroot_facet: Add chroot_facet interface and skeleton personality facetRoger Leigh4-65/+317
Facets are aspects of chroot functionality which are extensions to the functionality of the basic chroot class.
2009-07-20[sbuild::chroot] setup_env is constRoger Leigh23-23/+23
2009-07-19[sbuild] Enable chroot_session in sessionRoger Leigh2-91/+77
sbuild::session creates sessions using clone_session. lvm_snapshot exports snapshot options into environment. tests updated for session creation.
2009-07-19[sbuild] Update doxygen comments to fix missing or broken partsRoger Leigh5-9/+15
2009-07-18[sbuild::chroot_session] setup_env is virtualRoger Leigh1-1/+1
2009-07-18[sbuild::chroot_session] set_session_active chains up to base set_activeRoger Leigh1-0/+4
Needed for compatibility until the main codebase uses the chroot_session functionality.
2009-07-18[sbuild::chroot_file] Reindent conditional statementRoger Leigh1-2/+2
2009-07-18[sbuild::chroot_file] Purge if activeRoger Leigh1-1/+5
If session active (i.e. a clone) then mark as purgeable.
2009-07-18[sbuild] clone_ methods satisfy testcasesRoger Leigh4-18/+26
Update all clone_source and clone_session methods to pass testsuite. Don't make temporary copies of shared_ptrs for no reason. Remove unnecessary nested #ifdefs.
2009-07-18[sbuild] define copy constructur in classes inheriting chroot_sessionRoger Leigh9-6/+70
Since chroot_session is temporarily using virtual inheritance until it can be refactored, copy constructurs much initialise it first in the initialiser list or else it gets default constructed.
2009-07-18[sbuild] sbuild::chroot inheritance is non-virtualRoger Leigh5-5/+5
Being virtual is no longer needed, and complicated copy constructors.
2009-07-17[sbuild::chroot_union] Set SESSION_PURGE session flag if a sessionRoger Leigh1-3/+14
2009-07-17[sbuild::chroot_session] Set base chroot active and set source optionsRoger Leigh1-0/+7
Set the base chroot active property when cloning a session. If a source chroot, also disable cloning.
2009-07-17[sbuild] Add support for chroot_session to all session-creating chroot typesRoger Leigh12-12/+82
2009-07-13[sbuild::chroot_session] New class for session handlingRoger Leigh5-3/+280
Implement in sbuild::chroot_directory. Rather than handling chroot session logic in the general sbuild::session, this should be handled directly in chroots, which will remove the need for all the special-casing in sbuild::session. Chroot setup can then be handled directly by chroots themselves. Sessions will then be cloned from chroots in exactly the same manner as source chroots.
2009-07-12[sbuild] Don't call specific clone_source_setupRoger Leigh5-5/+5
Calling specific class implementation precludes virtual functions being overridden in derived classes such as chroot-union.
2009-07-12[sbuild::chroot_union] Display union typeRoger Leigh1-0/+1
2009-07-12[sbuild::chroot_block_device] Chain up to virtual base in all copy constructorsRoger Leigh1-0/+1
2009-07-11[sbuild::chroot] Make some methods public for testingRoger Leigh1-1/+0
get_details, print_details, get_keyfile and set_keyfile are public
2009-07-11[sbuild::chroot_source] Replace is_source with source_clonableRoger Leigh4-15/+28
This fits the use-case for is_source rather better, and allows it to be overridden by chroot_union (since source options aren't available when union is not enabled).
2009-07-11[sbuild::chroot_lvm_snapshot] Only inactive sessions serialise ↵Roger Leigh1-6/+13
lvm-snapshot-options Not used by active sessions since the LVM snapshot device has already been created. The same applies vice-versa for lvm-snapshot-device.
2009-07-11[sbuild::chroot_block_device] Chain up to chroot in copy constructorRoger Leigh1-0/+1
Since chroot is pure virtual, it must be chained up to in the copy constructor of the most derived class or else it gets default constructed. This is needed for lvm-snapshot source chroot construction (which worked previously due to block_device being a direct base). Long-term, the virtual public chroot inheritance needs removing.
2009-07-11[sbuild::environment] get method is constRoger Leigh1-2/+2
2009-07-10sbuild/sbuild-config.h.in: Get default environment filter from configureRoger Leigh2-1/+4
2009-07-05[sbuild] Rename chroot_plain_base to chroot_directory_baseRoger Leigh7-53/+31
2009-07-05[sbuild::chroot] get_mount_location is not virtualRoger Leigh1-1/+1
Not overridden in any derived classes, and of no benefit.
2009-07-05[sbuild::chroot_mountable] get|set_mount_device are pure virtualRoger Leigh2-17/+4
2009-07-05[sbuild::session] Correct check for plain chroot typeRoger Leigh1-1/+2
Inverse check caused mount location to not be set for non-plain chroot types.
2009-07-05[sbuild] Split chroot_plain into chroot_plain_baseRoger Leigh7-119/+235
chroot_plain and chroot_directory inherit from chroot_plain_base. This allows dynamic_cast to chroot_plain from chroot_directory to fail due to not being in the inheritance hierarchy for directory.
2009-07-05[sbuild::session] Don't special-case handing of union mount locationRoger Leigh1-16/+1
Union can use the same mount location as all other types; the 10mount script can alter which of the variables is used for mounting at which point.
2009-07-05[sbuild::run_parts] Fix script stream bufferingRoger Leigh1-20/+40
Give stderr priority over stdout. Always flush buffer to the maximum possible. Use split_string_strict to avoid losing newlines.
2009-07-05[sbuild::chroot_union] Only set keyfile keys if union is configuredRoger Leigh1-13/+17
2009-07-05[sbuild::util] Add split_string_strictRoger Leigh2-2/+88
split_string splits a string into chunks separated by the specified separator. split_string_strict doesn't eliminate empty strings when the separator appears at the string start or end, or if multiple separators are joined together.
2009-07-05[sbuild::session] Only display command/shell if verboseRoger Leigh1-2/+2
2009-07-05[sbuild::session] Correct logic for setting mount locationRoger Leigh1-2/+2
Set mount location if: - the mount location is not already set AND - the chroot type is NOT plain - AND additionally, if union support is available, if union is configured.
2009-07-05[sbuild::chroot_directory] Always chain up to union methodsRoger Leigh1-4/+3
Union itself handles whether or not it is enabled, so directory doesn't need to handle it specially.
2009-07-05[sbuild::chroot_union] Only print union details if configuredRoger Leigh1-9/+12
2009-07-05[sbuild::chroot] set_run_setup_scripts is protectedRoger Leigh1-0/+2
2009-07-05[sbuild::chroot*] Remove duplicated source methods and membersRoger Leigh4-213/+0
2009-07-05[sbuild::chroot_source] Re-unify source member variables and methodsRoger Leigh8-339/+92
2009-07-04[sbuild::chroot_block_device_base] Simplify session flagsRoger Leigh1-1/+1
2009-07-04[sbuild::chroot] Reindent session flagsRoger Leigh1-4/+4
2009-07-04[sbuild::chroot] set_session_id sets session IDJan-Marek Glogowski1-0/+1
2009-07-04[sbuild::chroot_loopback] Add lockingJan-Marek Glogowski1-0/+13
2009-07-04[sbuild] Reindent sbuild::util operator functionsRoger Leigh1-6/+6
2009-07-04[sbuild] Move getcwd from sbuild-session.cc to sbuild-util.ccJan-Marek Glogowski3-23/+25
2009-07-04[sbuild::chroot_union] Use dynamic_pointer_cast for tr1::shared_ptrRoger Leigh1-1/+2
2009-07-04[sbuild::chroot_union] Simplify conditional logicRoger Leigh1-3/+2