Add include_path as setting To make including files easier a new setting named "include_path" is introduced. When this path is given nitsi searches relative to this path for the file to include. Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
Add default settings file This new settings file makes it possible to set settings which are equal for many test in a global file. These settings are overriden by the settings file of the test and the command line arguments. Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
Rework the connection handling of the serial console We introduce a new way to init a serial console, to connect and disconnect to a serial console. Therefore we have 3 new functions in the Machine class: serial_init() serial_connect() serial_disconnet() there are similar functions in the SerialConnection class. This should make it possible to close a serial connection in a test and to reopen this connection later. Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
Improve substitution of the all: statement We now substitute the all: statement in 3 stages: 1. We check if we get a setting for it which states which machines should substitute all: (The setting is not fully implemented yet but all changes which need to be done in recipe.py are done) 2. We try to get all machines named in the recipe and try to substitute all: with these list. 3. If all other methods faile dwe substitute all: with all amchines named in the virtual environment. Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
Split setup virtual environment in two functions We need the list of virtual machines in the virtual environment to parse the recipe, but we can create the list of used machines only when we have a recipe. So we need to split these function. Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
Fix in back_at_prompt check When we get a line startign with '[' and the prompt is already in the buffer the pattern matches and we get wrong return code and are not back at the prompt. We now check if we have a line in the buffer and if so, we are not at the prompt. The promtp is not terminated by \n Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>