<p style="white-space: pre-wrap; word-wrap: break-word;">I prefer not to spend the next weeks in trying to test/make the other event loop work for starting 20k processes in time but focus on getting to run a simple test running on Jenkins.</p><p><a href="https://gerrit.osmocom.org/10686">View Change</a></p><p>6 comments:</p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/#/c/10686/1/src/osmo_gsm_tester/ms_driver.py">File src/osmo_gsm_tester/ms_driver.py:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/#/c/10686/1/src/osmo_gsm_tester/ms_driver.py@68">Patch Set #1, Line 68:</a> <code style="font-family:monospace,monospace">    def prepare(self):</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">We usually used "configure()" for most object for this kind of action.</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Done</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/#/c/10686/1/src/osmo_gsm_tester/ms_driver.py@73">Patch Set #1, Line 73:</a> <code style="font-family:monospace,monospace">        # TODO: That needs some re-factoring</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">This temporary socket files needs to go into the run dir. […]</blockquote></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">I think I followed the pattern. I am not sure how self._run_dir get's passed into it? What do you think of a mix-in to:<br>  * Create the directory (use the dir= option for the tempfile.mkdtem call)<br>  * Use shutil.rmtree to recursively delete its contents?</pre></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/#/c/10686/1/src/osmo_gsm_tester/ms_driver.py@81">Patch Set #1, Line 81:</a> <code style="font-family:monospace,monospace">        self._suite_run.remember_to_stop(self)</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">That's actually aimed at (sub)classes of process.py:Process. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Done</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/#/c/10686/1/src/osmo_gsm_tester/ms_driver.py@97">Patch Set #1, Line 97:</a> <code style="font-family:monospace,monospace">    def run_test(self):</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">We usually used "start()" for most object for this kind of action. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">As you point out this method behaves differently to the rest of the test and I think for the next few weeks/months we have to cope with it.</p><p style="white-space: pre-wrap; word-wrap: break-word;">The mass test is fundamentally different to running with a handful of subscribers. and python and the current architecture/code didn't scale well (at least on my laptop and I didn't retest since then).</p><p style="white-space: pre-wrap; word-wrap: break-word;">The immediate goal is:</p><ul><li>Start BTS/NITB, configure subs to be used by mass test.</li></ul><p style="white-space: pre-wrap; word-wrap: break-word;"><br>The long-term goal is:</p><ul><li>Be able to use the "ms_driver" as a drop-in replacement for a modem.</li></ul><p style="white-space: pre-wrap; word-wrap: break-word;"><br>At this point I don't think switching an event loop helps us to gain any immediate benefit and I would prefer not to do it. Let's get a mass test going first and then iterate on it.</p><p style="white-space: pre-wrap; word-wrap: break-word;">What do you think of finding a more compatible name? start_and_wait? start_blocking?</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/#/c/10686/1/src/osmo_gsm_tester/ms_driver.py@113">Patch Set #1, Line 113:</a> <code style="font-family:monospace,monospace">    def terminate(self):</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">This should then be "cleanup(self)".</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Done</p></li></ul></li><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/#/c/10686/1/src/osmo_gsm_tester/suite.py">File src/osmo_gsm_tester/suite.py:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/#/c/10686/1/src/osmo_gsm_tester/suite.py@311">Patch Set #1, Line 311:</a> <code style="font-family:monospace,monospace">            ip_address = self.ip_address()</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">You want to call self.register_for_cleanup(ms_driver) here.</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Done</p></li></ul></li></ul><p>To view, visit <a href="https://gerrit.osmocom.org/10686">change 10686</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/10686"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-gsm-tester </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: comment </div>
<div style="display:none"> Gerrit-Change-Id: I586b6d532c6e6395b4e6f2cf2128372237d05a7d </div>
<div style="display:none"> Gerrit-Change-Number: 10686 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: Holger Freyther <holger@freyther.de> </div>
<div style="display:none"> Gerrit-Reviewer: Holger Freyther <holger@freyther.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>
<div style="display:none"> Gerrit-CC: Pau Espin Pedrol <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Comment-Date: Sun, 23 Sep 2018 17:25:31 +0000 </div>
<div style="display:none"> Gerrit-HasComments: Yes </div>
<div style="display:none"> Gerrit-HasLabels: No </div>