Commit ff7c68fe authored by Lluis Gifre Renom's avatar Lluis Gifre Renom
Browse files

WebUI component:

- Added fields in load generator tab to filter src/dst candidate device and endpoint
parent 60b09656
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -21,6 +21,8 @@ DEFAULT_AVAILABILITY = '0.0..99.9999'
DEFAULT_CAPACITY_GBPS  = '0.1..100.00' #'10, 40, 50, 100, 400'
DEFAULT_CAPACITY_GBPS  = '0.1..100.00' #'10, 40, 50, 100, 400'
DEFAULT_E2E_LATENCY_MS = '5.0..100.00'
DEFAULT_E2E_LATENCY_MS = '5.0..100.00'


DEFAULT_REGEX = r'.+'

class LoadGenForm(FlaskForm):
class LoadGenForm(FlaskForm):
    num_requests = IntegerField('Num Requests', default=100, validators=[DataRequired(), NumberRange(min=0)])
    num_requests = IntegerField('Num Requests', default=100, validators=[DataRequired(), NumberRange(min=0)])
    num_generated = IntegerField('Num Generated', default=0, render_kw={'readonly': True})
    num_generated = IntegerField('Num Generated', default=0, render_kw={'readonly': True})
@@ -33,6 +35,9 @@ class LoadGenForm(FlaskForm):
    request_type_slice_l2nm = BooleanField('Slice L2NM', default=True)
    request_type_slice_l2nm = BooleanField('Slice L2NM', default=True)
    request_type_slice_l3nm = BooleanField('Slice L3NM', default=False)
    request_type_slice_l3nm = BooleanField('Slice L3NM', default=False)


    device_regex = StringField('Device selector [regex]', default=DEFAULT_REGEX)
    endpoint_regex = StringField('Endpoint selector [regex]', default=DEFAULT_REGEX)

    offered_load = FloatField('Offered Load [Erlang]', default=50, validators=[NumberRange(min=0.0)])
    offered_load = FloatField('Offered Load [Erlang]', default=50, validators=[NumberRange(min=0.0)])
    holding_time = FloatField('Holding Time [seconds]', default=10, validators=[NumberRange(min=0.0)])
    holding_time = FloatField('Holding Time [seconds]', default=10, validators=[NumberRange(min=0.0)])
    inter_arrival_time = FloatField('Inter Arrival Time [seconds]', default=0, validators=[NumberRange(min=0.0)])
    inter_arrival_time = FloatField('Inter Arrival Time [seconds]', default=0, validators=[NumberRange(min=0.0)])
+25 −21
Original line number Original line Diff line number Diff line
@@ -63,6 +63,8 @@ def home():


    form = LoadGenForm()
    form = LoadGenForm()
    set_properties(form.num_requests             , status.parameters.num_requests  , readonly=status.running)
    set_properties(form.num_requests             , status.parameters.num_requests  , readonly=status.running)
    set_properties(form.device_regex             , status.parameters.device_regex  , readonly=status.running)
    set_properties(form.endpoint_regex           , status.parameters.endpoint_regex, readonly=status.running)
    set_properties(form.offered_load             , _offered_load                   , readonly=status.running)
    set_properties(form.offered_load             , _offered_load                   , readonly=status.running)
    set_properties(form.holding_time             , _holding_time                   , readonly=status.running)
    set_properties(form.holding_time             , _holding_time                   , readonly=status.running)
    set_properties(form.inter_arrival_time       , _inter_arrival_time             , readonly=status.running)
    set_properties(form.inter_arrival_time       , _inter_arrival_time             , readonly=status.running)
@@ -99,6 +101,8 @@ def start():


            load_gen_params = Parameters()
            load_gen_params = Parameters()
            load_gen_params.num_requests       = form.num_requests.data
            load_gen_params.num_requests       = form.num_requests.data
            load_gen_params.device_regex       = form.device_regex.data
            load_gen_params.endpoint_regex     = form.endpoint_regex.data
            load_gen_params.offered_load       = form.offered_load.data
            load_gen_params.offered_load       = form.offered_load.data
            load_gen_params.holding_time       = form.holding_time.data
            load_gen_params.holding_time       = form.holding_time.data
            load_gen_params.inter_arrival_time = form.inter_arrival_time.data
            load_gen_params.inter_arrival_time = form.inter_arrival_time.data
+30 −0
Original line number Original line Diff line number Diff line
@@ -83,6 +83,36 @@
            </div>
            </div>
            <br />
            <br />


            <div class="row mb-3">
                {{ form.device_regex.label(class="col-sm-2 col-form-label") }}
                <div class="col-sm-10">
                    {% if form.device_regex.errors %}
                        {{ form.device_regex(class="form-control is-invalid") }}
                        <div class="invalid-feedback">
                            {% for error in form.device_regex.errors %}<span>{{ error }}</span>{% endfor %}
                        </div>
                    {% else %}
                        {{ form.device_regex(class="form-control") }}
                    {% endif %}
                </div>
            </div>
            <br />

            <div class="row mb-3">
                {{ form.endpoint_regex.label(class="col-sm-2 col-form-label") }}
                <div class="col-sm-10">
                    {% if form.endpoint_regex.errors %}
                        {{ form.endpoint_regex(class="form-control is-invalid") }}
                        <div class="invalid-feedback">
                            {% for error in form.endpoint_regex.errors %}<span>{{ error }}</span>{% endfor %}
                        </div>
                    {% else %}
                        {{ form.endpoint_regex(class="form-control") }}
                    {% endif %}
                </div>
            </div>
            <br />

            <div class="row mb-3">
            <div class="row mb-3">
                {{ form.offered_load.label(class="col-sm-2 col-form-label") }}
                {{ form.offered_load.label(class="col-sm-2 col-form-label") }}
                <div class="col-sm-10">
                <div class="col-sm-10">