taskgraph-tests/opt:
    description: taskcluster/taskgraph unit tests
    treeherder:
        symbol: py(tg)
        kind: test
        tier: 2
        platform: linux64/opt
    worker-type: aws-provisioner-v1/b2gtest
    worker:
        implementation: docker-worker
        docker-image: {in-tree: "lint"}
        max-run-time: 1800
    run:
        using: mach
        mach: taskgraph python-tests
    run-on-projects:
        - integration
        - release
    when:
        files-changed:
            - 'taskcluster/**/*.py'
            - 'config/mozunit.py'
            - 'python/mach/**/*.py'

marionette-harness/opt:
    description: testing/marionette/harness unit tests
    platforms:
        - linux64/opt
    treeherder:
        symbol: py(mnh)
        kind: test
        tier: 2
    worker-type:
        by-platform:
            linux64.*: aws-provisioner-v1/b2gtest
    worker:
        by-platform:
            linux64.*:
                implementation: docker-worker
                docker-image: {in-tree: "lint"}
                max-run-time: 3600
    run:
        using: mach
        mach: python-test --subsuite marionette-harness
    run-on-projects:
        - integration
        - release
    when:
        files-changed:
          - 'testing/marionette/harness/**'
          - 'testing/mozbase/mozlog/mozlog/**'
          - 'testing/mozbase/mozlog/setup.py'
          - 'testing/mozbase/packages.txt'
          - 'python/mach_commands.py'

mozbase/opt:
    description: testing/mozbase unit tests
    platforms:
        - linux64/opt
    treeherder:
        symbol: py(mb)
        kind: test
        tier: 2
    worker-type:
        by-platform:
            linux64.*: aws-provisioner-v1/b2gtest
    worker:
        by-platform:
            linux64.*:
                implementation: docker-worker
                docker-image: {in-tree: "lint"}
                max-run-time: 3600
    run:
        using: mach
        mach: python-test --subsuite mozbase
    run-on-projects:
        - integration
        - release
    when:
        files-changed:
            - 'testing/mozbase/**'
            - 'config/mozunit.py'
            - 'python/mach_commands.py'

mozharness/opt:
    description: mozharness integration tests
    treeherder:
        symbol: py(MH)
        kind: test
        tier: 2
        platform: lint/opt
    worker-type: aws-provisioner-v1/b2gtest
    worker:
        implementation: docker-worker
        docker-image: {in-tree: "lint"}
        max-run-time: 1800
    run:
        using: run-task
        cache-dotcache: true
        command: >
            cd /home/worker/checkouts/gecko/testing/mozharness &&
            /usr/bin/pip2 install tox &&
            /home/worker/.local/bin/tox -e py27-hg3.7
    run-on-projects:
        - integration
        - release
    when:
        files-changed:
            - 'testing/mozharness/**'

mozlint/opt:
    description: python/mozlint unit tests
    platforms:
        - linux64/opt
    treeherder:
        symbol: py(ml)
        kind: test
        tier: 2
    worker-type:
        by-platform:
            linux64.*: aws-provisioner-v1/b2gtest
    worker:
        by-platform:
            linux64.*:
                implementation: docker-worker
                docker-image: {in-tree: "lint"}
                max-run-time: 3600
    run:
        using: mach
        mach: python-test --subsuite mozlint
    run-on-projects:
        - integration
        - release
    when:
        files-changed:
            - 'python/mozlint/**'
            - 'python/mach_commands.py'
