summaryrefslogtreecommitdiffstats
path: root/pym/portage/tests/ebuild/test_ipc_daemon.py
Commit message (Collapse)AuthorAgeFilesLines
* Revert "test_ipc_daemon: handle fork/finally race"Zac Medico2012-10-081-9/+0
| | | | | This reverts commit 56fbe3fe63adf4e7c5b47400182cd857d145d5b0. The race is now handled internally by spawn and ForkProcess.
* test_ipc_daemon: handle fork/finally raceZac Medico2012-10-081-0/+9
|
* PollScheduler: rename sched_iface to _sched_ifaceZac Medico2012-10-071-4/+2
| | | | | | It isn't used externally anymore, since SchedulerInterface is used directly in those places now. Many of the self.sched_iface references updated here, it's more appropriate to use self._event_loop.
* PollScheduler: remove register/unregister methodsZac Medico2012-10-051-2/+1
| | | | | | | These methods were aliases for the EventLoop io_add_watch and source_remove methods. Migrating to the EventLoop method names allows an EventLoop instance to substitute for a PollScheduler inside subclasses of AbstractPollTask.
* TaskScheduler: inherit AsyncSchedulerZac Medico2012-10-051-22/+36
| | | | This allows the QueueScheduler class to be eliminated.
* test_ipc_daemon: implement internal SleepProcessZac Medico2012-10-041-3/+12
| | | | | Emulate the sleep command, in order to ensure a consistent return code when it is killed by SIGTERM (see bug #437180).
* test_ipc_daemon: increase sleep for bug #436334Zac Medico2012-09-261-1/+3
|
* AsynchronousTask: don't wait for exit statusZac Medico2012-02-131-4/+6
| | | | | | Synchronous waiting for status is not supported, since it would be vulnerable to hitting the recursion limit when a large number of tasks need to be terminated simultaneously, like in bug #402335.
* IpcDaemonTestCase: init start_time earlierZac Medico2012-02-081-2/+2
| | | | | | Since commit 4620d6aba1c5c10344e311585516ee43819b703c, the SequentialTaskQueue.add() method starts the task immediately, so initialize start_time before that happens.
* locks.py: fix hardlink locks for bug #394195Zac Medico2011-12-131-0/+9
| | | | | | This updates the hardlink locking code to support the non-blocking, lockfile(wantnewlockfile=False), and lockfile(file_object) behaviors which are used by portage code.
* Use portage.shutil for safer unicode handling.Zac Medico2011-12-101-2/+2
|
* Make IpcDaemonTestCase use a finally block to unlock PORTAGE_BUILDDIR.v2.2_rc82Zac Medico2010-09-141-1/+3
|
* Make EbuildBuildDir use the PORTAGE_BUILDDIR variable instead of theZac Medico2010-09-141-1/+1
| | | | dir_path attribute.
* Make IpcDaemonTestCase use EbuildBuildDir for lock creation.Zac Medico2010-09-141-4/+14
|
* In IpcDaemonTestCase, assert that process and daemon isAlive() methodsZac Medico2010-09-051-1/+3
| | | | return False after each run.
* In the short timeout test for QueueScheduler.run(), assert that theZac Medico2010-09-031-0/+1
| | | | subprocess has stopped.
* Add a test case for intentionally short timeout with QueueScheduler.run().Zac Medico2010-09-031-1/+35
|
* Add support for a timeout argument to QueueScheduler.run() andZac Medico2010-09-031-1/+15
| | | | | use it in IpcDaemonTestCase to implement a 40 second timeout in test cases.
* Expand sys.executable earlier, so that change of sys.executable symlinkArfrever Frehtes Taifersar Arahesis2010-08-161-2/+2
| | | | | between starting main Portage process and starting ebuild.sh process doesn't affect ebuild.sh subprocesses.
* Ensure that PORTAGE_PYTHON isn't a symlink.Arfrever Frehtes Taifersar Arahesis2010-08-161-1/+1
|
* Pass along PORTAGE_USERNAME and PORTAGE_GRPNAME since theyZac Medico2010-08-151-0/+9
| | | | need to be inherited by ebuild subprocesses.
* Move PORTAGE_PYTHON setting to doebuild_environment() so that itZac Medico2010-08-141-1/+2
| | | | doesn't pollute os.environ.
* portage.os is apparently imported, so os doesn't need to be imported.Arfrever Frehtes Taifersar Arahesis2010-08-141-1/+0
|
* Ensure that all Python processes use the same version of Python.Arfrever Frehtes Taifersar Arahesis2010-08-141-0/+2
|
* Use EbuildIpcDaemon to replace the functionality ofZac Medico2010-08-131-21/+2
| | | | EBUILD_EXIT_STATUS_FILE.
* Refactor interaction between EbuildIpcDaemon and ExitCommand.Zac Medico2010-08-121-8/+6
|
* Make IpcDaemonTestCase demonstrate an EbuildIpcDaemon basedZac Medico2010-08-121-11/+42
| | | | replacement for EBUILD_EXIT_STATUS_FILE.
* Split out an EbuildIpcDaemon class from FifoIpcDaemon.Zac Medico2010-08-121-2/+2
|
* Add some pieces of an IPC framework that will eventually allow ebuildZac Medico2010-08-121-0/+40
processes can to communicate with portage's main python process. Here are a few possible uses: 1) Robust subshell/subprocess die support. This allows the ebuild environment to reliably die without having to rely on signal IPC. 2) Delegation of portageq calls to the main python process, eliminating performance and userpriv permission issues. 3) Reliable ebuild termination in cases when the ebuild has accidentally left orphan processes running in the backgraound (as in bug 278895).