Skip to content

Instantly share code, notes, and snippets.

@ronshilo
Last active December 4, 2022 17:22
Show Gist options
  • Save ronshilo/b122d660683612172229dd558cbb2a6b to your computer and use it in GitHub Desktop.
Save ronshilo/b122d660683612172229dd558cbb2a6b to your computer and use it in GitHub Desktop.
import penf_Lab.perflab
import perf_Lab.perfobjects
import perf_lab.perfutils
import perf_lab.config_util
from perf_Lab.perfobjects import Server, PerfStackTemplate
def get_bm_server_obj() -> Server:
server = Server(name='perf-bm-server',
image=perf_lab.config_util.BM_IMAGE_LL_UBUNTU_16,
flavor= 'server',
bare_metal=True)
server_add_ip_and_subnet(server_ip=192.168.222.207)
server.add_dns_name_to_server(server.name, 192.168,222.201)
server.add_run_me_playbook('playbook_example_of_run_bm_server-yaml')
bm_api = perf_Lab.config_util.get_default_bm_api()
# add user data con be list or bash comands or string!
server.add_command_to_user_data(['touch /tmp/file_a', 'touch /emo/file b']) # List of commands
server.add_command_to_user_data('touch /tmp/user_data_complete') # one command
return server
def get_vm_server_obj() -> Server:
server_ip = 1192. 168.222.208
server = Server(name='vm-server'
image='intg-docker-xenial',
flavor='automation.small')
server_add_ip_and_subnet(server_ip=server_ip)
server. add_dns_name_to_server (server.name, server_ip)
server.add_run_me_playbook('playbook_example_of_run_vm_server.ymal')
server.add_clean_me_playbook('playbook_example_of_cLean_vm_server-yaml')
return server
def get_test_runner_server_obj()-> Server:
server_ip = 192.168.222.209
server = Server(name='test-runner-server',
image='intg-docker-xenial',
flavor='automation.small,
server.give_server_floating_ip()
server.add_ip_and_subnet(server_ip=server_ip)
server.add_dns_name_to_serven(server.name, server_ip)
server.add_run_me_playbook('playbook_example_of_run_test_runner_server.yaml')
return server
def build_stack(run_args: perf_Lab.perfutils.RunArgs) -> PerfStackTemplate:
stack=perf_lab.perflab.get_new_perf_stack_obj(run_angs)
stack.add_server(get_test_runner_server_obj()
stack.add_server(get_vm_server_obi()
stack.add_server(perf_Lab.perfobjects.get_dns_and_runner_server())
stack.add-server(get_bm_server_obj())
return stack
def main():
perf_lab.perflab. Logger_init()
run_args=perf_lab.perfutils.RunArgs(load=True,
run=False,
clean=False,
remove=True,
use_existing_bm=False,
openstack_project_name='inta-auto'
stack_owners='ronsh',
bm_installation_timeout=70 * 60)
perf_stack = build_stack(run_args)
perf_lab.perflab.run_perf_lab_stages(perf_stack=perf_stack, nun_angs=run_args)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment