teemtee / tmt

Test Management Tool
MIT License
79 stars 117 forks source link

Not sure if we can cancel the beaker job when terminating the tmt run command #2323

Open guoguojenna opened 10 months ago

guoguojenna commented 10 months ago
(tmt) [zguo@192 multi-hosts-demo]$ cat multi-v8.fmf 
summary: Demo-8
discover:
      - name: server-client-test
        how: fmf
        test: /rdma/sanity
provision:
      - how: beaker
        name: server-1
        role: server
        image: RHEL-9.3.0-20230911.0
        hardware:
            hostname: rdma-qe-14.rdma.lab.eng.rdu2.redhat.com
      - how: beaker
        name: client-1
        role: client
        image: RHEL-9.3.0-20230911.0
        hardware:
            hostname: rdma-qe-15.rdma.lab.eng.rdu2.redhat.com
execute:
        how: tmt 
$ tmt run --environment "SERVERS=rdma-qe-14.rdma.lab.eng.rdu2.redhat.com CLIENTS=rdma-qe-15.rdma.lab.eng.rdu2.redhat.com" plans --name /rdma/multi-hosts-demo/multi-v8 -d -vvv
/var/tmp/tmt/run-013
Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8' created.

/rdma/multi-hosts-demo/multi-v8
summary: Demo-8
    Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/discover' created.
    Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/provision' created.
    Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/prepare' created.
    Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/execute' created.
    Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/report' created.
    Report step always force mode enabled.
    Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/report' created.
    Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/finish' created.
    discover
    workdir: /var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/discover
        how: fmf
        name: server-client-test
        order: 50
        Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/discover/server-client-test' created.
        directory: /home/zguo/Tests/kernel-tests
        Copy '/home/zguo/Tests/kernel-tests' to '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/discover/server-client-test/tests'.
        hash: 2f85eb36
        tests: /rdma/sanity
        Check metadata tree in '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/discover/server-client-test/tests'.
        summary: 1 test selected
            /rdma/sanity
    provision
    workdir: /var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/provision
        Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/provision/server-1' created.
        how: beaker
        name: server-1
        order: 50
        hardware: hostname: rdma-qe-14.rdma.lab.eng.rdu2.redhat.com

        image: RHEL-9.3.0-20230911.0
        Transformed hardware:
            and:
              - not:
                    hostname:
                        _op: ==
                        _value: rdma-qe-14.rdma.lab.eng.rdu2.redhat.com
^C    finish
    workdir: /var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/finish

    Prune '/rdma/multi-hosts-demo/multi-v8' plan workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8'.
        Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/provision/client-1' created.
        Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/execute/default-0' created.
        Workdir '/var/tmp/tmt/run-013/rdma/multi-hosts-demo/multi-v8/report/default-0' created.
        summary: 0 tasks completed

Aborted!

I clicked Ctrl+c to abort the tmt run. The beaker job that already summited are still running normally. Expect the beaker job can be canceled or aborted as well.

idorax commented 10 months ago

To satisfy this requirement, tmt needs to trigger off bkr job-cancel <job-id> if ^c is caught.