+@pytest.fixture(scope='session')
+def rsyslog_userdata(rsyslog_host, rsyslog_port):
+ ''' Fixture providing rsyslog user data
+ Arguments:
+ rsyslog_host - host of the rsyslog process
+ rsyslog_port - port of the rsyslog process
+ '''
+ if rsyslog_host and rsyslog_port:
+ return '''
+rsyslog:
+ - "$ActionForwardDefaultTemplate RSYSLOG_ForwardFormat"
+ - "*.* @{host}:{port}"
+ '''.format(
+ host=rsyslog_host,
+ port=rsyslog_port,
+ )
+
+ return None
+
+@pytest.fixture(scope='session')
+def descriptors_pingpong_vnf_input_params():
+ return ping_pong_example.generate_ping_pong_descriptors(
+ pingcount=1,
+ nsd_name='pp_input_nsd',
+ vnfd_input_params=True,
+ )
+
+@pytest.fixture(scope='session')
+def packages_pingpong_vnf_input_params(descriptors_pingpong_vnf_input_params):
+ return rift.auto.descriptor.generate_descriptor_packages(descriptors_pingpong_vnf_input_params)
+
+@pytest.fixture(scope='session')
+def ping_script_userdata():
+ userdata = '''#cloud-config
+password: fedora
+chpasswd: { expire: False }
+ssh_pwauth: True
+runcmd:
+ - [ systemctl, daemon-reload ]
+ - [ systemctl, enable, {{ CI-script-init-data }}.service ]
+ - [ systemctl, start, --no-block, {{ CI-script-init-data }}.service ]
+ - [ ifup, eth1 ]
+'''
+ return userdata
+
+@pytest.fixture(scope='session')
+def pong_script_userdata():
+ userdata = '''#!/bin/bash
+sed 's/^.*PasswordAuthentication.*$/PasswordAuthentication yes/' < /etc/ssh/sshd_config > /etc/ssh/sshd_config
+systemctl daemon-reload
+systemctl enable {{ CI-script-init-data }}.service
+systemctl start --no-block {{ CI-script-init-data }}.service
+ifup eth1
+'''
+ return userdata
+
+@pytest.fixture(scope='session')
+def descriptors_pingpong_script_input_params(ping_script_userdata, pong_script_userdata):
+ return ping_pong_example.generate_ping_pong_descriptors(
+ pingcount=1,
+ nsd_name='pp_script_nsd',
+ script_input_params=True,
+ ping_userdata=ping_script_userdata,
+ pong_userdata=pong_script_userdata,
+ )
+
+@pytest.fixture(scope='session')
+def packages_pingpong_script_input_params(descriptors_pingpong_script_input_params):
+ return rift.auto.descriptor.generate_descriptor_packages(descriptors_pingpong_script_input_params)
+