|
486 | 486 | - kdevops_workflow_enable_sysbench |
487 | 487 | - ansible_nodes_template.stat.exists |
488 | 488 |
|
| 489 | +- name: Infer enabled mmtests test section types |
| 490 | + set_fact: |
| 491 | + mmtests_enabled_test_types: >- |
| 492 | + {{ |
| 493 | + [kdevops_host_prefix + '-'] |
| 494 | + | product( |
| 495 | + lookup('file', topdir_path + '/.config') |
| 496 | + | regex_findall('^CONFIG_MMTESTS_ENABLE_(.*)=y$', multiline=True) |
| 497 | + | map('lower') |
| 498 | + | list |
| 499 | + ) |
| 500 | + | map('join') |
| 501 | + | list |
| 502 | + }} |
| 503 | + when: |
| 504 | + - kdevops_workflows_dedicated_workflow |
| 505 | + - kdevops_workflow_enable_mmtests |
| 506 | + - ansible_nodes_template.stat.exists |
| 507 | + - not kdevops_baseline_and_dev |
| 508 | + |
| 509 | +- name: Infer enabled mmtests test section types with dev hosts |
| 510 | + vars: |
| 511 | + kdevops_config_data: "{{ lookup('file', topdir_path + '/.config') }}" |
| 512 | + config_val: "CONFIG_MMTESTS_ENABLE_" |
| 513 | + config_mmtests_test_types: "{{ kdevops_config_data | regex_findall('^' + config_val + '(.*)=y$', multiline=True) }}" |
| 514 | + config_mmtests_test_type_names: "{{ config_mmtests_test_types | lower }}" |
| 515 | + all_nodes: "{{ [kdevops_host_prefix + '-'] | product(config_mmtests_test_type_names) | map('join') | list }}" |
| 516 | + set_fact: |
| 517 | + mmtests_enabled_test_types: "{{ all_nodes | product(['', '-dev']) | map('join') | list }}" |
| 518 | + when: |
| 519 | + - kdevops_workflows_dedicated_workflow |
| 520 | + - kdevops_workflow_enable_mmtests |
| 521 | + - ansible_nodes_template.stat.exists |
| 522 | + - kdevops_baseline_and_dev |
| 523 | + |
| 524 | +- name: Generate the mmtests kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template |
| 525 | + tags: [ 'hosts' ] |
| 526 | + vars: |
| 527 | + node_template: "{{ kdevops_nodes_template | basename }}" |
| 528 | + nodes: "{{ mmtests_enabled_test_types }}" |
| 529 | + all_generic_nodes: "{{ mmtests_enabled_test_types }}" |
| 530 | + template: |
| 531 | + src: "{{ node_template }}" |
| 532 | + dest: "{{ topdir_path }}/{{ kdevops_nodes }}" |
| 533 | + force: yes |
| 534 | + when: |
| 535 | + - kdevops_workflows_dedicated_workflow |
| 536 | + - kdevops_workflow_enable_mmtests |
| 537 | + - ansible_nodes_template.stat.exists |
| 538 | + |
489 | 539 | - name: Get the control host's timezone |
490 | 540 | ansible.builtin.command: "timedatectl show -p Timezone --value" |
491 | 541 | register: kdevops_host_timezone |
|
0 commit comments