- job:
    name: system-config-puppet-apply-4-ubuntu-xenial
    # Required to install z-c for puppet module installs.
    parent: legacy-base
    timeout: 1800
    nodeset: ubuntu-xenial
    vars:
      puppet_version: 4
    required-projects:
      - opendev/system-config
      - opendev/ansible-role-puppet
      - opendev/puppet-apparmor
      - opendev/puppet-askbot
      - opendev/puppet-asterisk
      - opendev/puppet-bandersnatch
      - opendev/puppet-bugdaystats
      - opendev/puppet-bup
      - opendev/puppet-ciwatch
      - opendev/puppet-diskimage_builder
      - opendev/puppet-elastic_recheck
      - opendev/puppet-elasticsearch
      - opendev/puppet-ethercalc
      - opendev/puppet-germqtt
      - opendev/puppet-grafyaml
      - opendev/puppet-graphite
      - opendev/puppet-haveged
      - opendev/puppet-hound
      - opendev/puppet-httpd
      - opendev/puppet-infra-cookiecutter
      - opendev/puppet-jeepyb
      - opendev/puppet-jenkins
      - opendev/puppet-kerberos
      - opendev/puppet-kibana
      - opendev/puppet-lodgeit
      - opendev/puppet-log_processor
      - opendev/puppet-logrotate
      - opendev/puppet-logstash
      - opendev/puppet-lpmqtt
      - opendev/puppet-mailman
      - opendev/puppet-mediawiki
      - opendev/puppet-meetbot
      - opendev/puppet-mosquitto
      - opendev/puppet-mqtt_statsd
      - opendev/puppet-mysql_backup
      - opendev/puppet-nodepool
      - opendev/puppet-openafs
      - opendev/puppet-openstackci
      - opendev/puppet-openstack_health
      - opendev/puppet-openstackid
      - opendev/puppet-openstack_infra_spec_helper
      - opendev/puppet-pgsql_backup
      - opendev/puppet-pip
      - opendev/puppet-planet
      - opendev/puppet-project_config
      - opendev/puppet-ptgbot
      - opendev/puppet-puppet
      - opendev/puppet-redis
      - opendev/puppet-refstack
      - opendev/puppet-reviewday
      - opendev/puppet-simpleproxy
      - opendev/puppet-ssh
      - opendev/puppet-ssl_cert_check
      - opendev/puppet-statusbot
      - opendev/puppet-storyboard
      - opendev/puppet-subunit2sql
      - opendev/puppet-sudoers
      - opendev/puppet-tmpreaper
      - opendev/puppet-translation_checksite
      - opendev/puppet-ulimit
      - opendev/puppet-unattended_upgrades
      - opendev/puppet-unbound
      - opendev/puppet-user
      - opendev/puppet-vcsrepo
      - opendev/puppet-zanata
      - opendev/puppet-zuul
    pre-run: playbooks/zuul/infra-puppet-apply/pre.yaml
    run: playbooks/zuul/infra-puppet-apply/run.yaml
    post-run: playbooks/zuul/infra-puppet-apply/post.yaml
    irrelevant-files:
      - docker/.*
      - playbooks/.*

- job:
    name: system-config-puppet-beaker-rspec-infra
    parent: legacy-base
    description: |
      Base job for beaker-rspec tests for Infra's puppet modules.
    nodeset: ubuntu-xenial
    pre-run: playbooks/zuul/infra-puppet-beaker-rspec/pre.yaml
    run: playbooks/zuul/infra-puppet-beaker-rspec/run.yaml
    vars:
      nodeset: nodepool-xenial
      project_src_dir: "{{ zuul.project.src_dir }}"
    timeout: 3600
    irrelevant-files:
      - ^.*\.md$
      - ^.*\.rst$
      - ^doc/.*$
      - ^etc/.*$
      - ^metadata.json$
      - ^releasenotes/.*$
      - ^test-requirements.txt$
    required-projects:
      - openstack/project-config
      - opendev/system-config
      - opendev/puppet-openstack_infra_spec_helper
      - opendev/puppet-bugdaystats
      - opendev/puppet-mysql_backup
      - opendev/puppet-openstackci
      - opendev/puppet-zuul
      - opendev/puppet-mqtt_statsd
      - opendev/puppet-meetbot
      - opendev/puppet-hound
      - opendev/puppet-pip
      - opendev/puppet-openstackid
      - opendev/puppet-bandersnatch
      - opendev/puppet-project_config
      - opendev/puppet-grafyaml
      - opendev/puppet-refstack
      - opendev/puppet-ethercalc
      - opendev/puppet-unattended_upgrades
      - opendev/puppet-openafs
      - opendev/puppet-httpd
      - opendev/puppet-subunit2sql
      - opendev/puppet-reviewday
      - opendev/puppet-kibana
      - opendev/puppet-redis
      - opendev/puppet-ssl_cert_check
      - opendev/puppet-lpmqtt
      - opendev/puppet-germqtt
      - opendev/puppet-haveged
      - opendev/puppet-graphite
      - opendev/puppet-diskimage_builder
      - opendev/puppet-sudoers
      - opendev/puppet-zanata
      - opendev/puppet-logstash
      - opendev/puppet-asterisk
      - opendev/puppet-statusbot
      - opendev/puppet-mediawiki
      - opendev/puppet-mailman
      - opendev/puppet-tmpreaper
      - opendev/puppet-elastic_recheck
      - opendev/puppet-ulimit
      - opendev/puppet-planet
      - opendev/puppet-nodepool
      - opendev/puppet-logrotate
      - opendev/puppet-elasticsearch
      - opendev/puppet-unbound
      - opendev/puppet-storyboard
      - opendev/puppet-openstack_health
      - opendev/puppet-kerberos
      - opendev/puppet-askbot
      - opendev/puppet-log_processor
      - opendev/puppet-simpleproxy
      - opendev/puppet-lodgeit
      - opendev/puppet-mosquitto
      - opendev/puppet-bup
      - opendev/puppet-pgsql_backup
      - opendev/puppet-ssh
      - opendev/puppet-user
      - opendev/puppet-jeepyb
      - opendev/puppet-ptgbot
      - opendev/puppet-jenkins
      - opendev/puppet-vcsrepo

- job:
    name: system-config-puppet-beaker-rspec-puppet-4-infra
    parent: system-config-puppet-beaker-rspec-infra
    description: |
      Run beaker-rspec functional tests with puppet 4 on Ubuntu Xenial.
    vars:
      puppet_version: 4

- project-template:
    name: system-config-puppet-apply-jobs
    description: |
      Runs puppet apply tests for OpenStack Infrastructure.
    check:
      jobs:
        - system-config-puppet-apply-4-ubuntu-xenial
    gate:
      jobs:
        - system-config-puppet-apply-4-ubuntu-xenial

- project-template:
    name: system-config-puppet-beaker-jobs
    description: |
      Runs puppet beaker tests for OpenStack Infrastructure.
      The jobs are run on Ubuntu Xenial.
    check:
      jobs:
        - system-config-puppet-beaker-rspec-puppet-4-infra
    gate:
      jobs:
        - system-config-puppet-beaker-rspec-puppet-4-infra

- job:
    name: system-config-legacy-logstash-filters
    parent: legacy-base
    required-projects:
      - opendev/ansible-role-puppet
      - openstack/logstash-filters
      - opendev/puppet-askbot
      - opendev/puppet-asterisk
      - opendev/puppet-bandersnatch
      - opendev/puppet-bugdaystats
      - opendev/puppet-bup
      - opendev/puppet-diskimage_builder
      - opendev/puppet-elastic_recheck
      - opendev/puppet-elasticsearch
      - opendev/puppet-ethercalc
      - opendev/puppet-germqtt
      - opendev/puppet-grafyaml
      - opendev/puppet-graphite
      - opendev/puppet-haveged
      - opendev/puppet-hound
      - opendev/puppet-httpd
      - opendev/puppet-jeepyb
      - opendev/puppet-jenkins
      - opendev/puppet-kerberos
      - opendev/puppet-kibana
      - opendev/puppet-lodgeit
      - opendev/puppet-log_processor
      - opendev/puppet-logrotate
      - opendev/puppet-logstash
      - opendev/puppet-lpmqtt
      - opendev/puppet-mailman
      - opendev/puppet-mediawiki
      - opendev/puppet-meetbot
      - opendev/puppet-mosquitto
      - opendev/puppet-mqtt_statsd
      - opendev/puppet-mysql_backup
      - opendev/puppet-nodepool
      - opendev/puppet-openafs
      - opendev/puppet-openstackci
      - opendev/puppet-openstack_health
      - opendev/puppet-openstackid
      - opendev/puppet-pgsql_backup
      - opendev/puppet-pip
      - opendev/puppet-planet
      - opendev/puppet-project_config
      - opendev/puppet-ptgbot
      - opendev/puppet-redis
      - opendev/puppet-refstack
      - opendev/puppet-reviewday
      - opendev/puppet-simpleproxy
      - opendev/puppet-ssh
      - opendev/puppet-ssl_cert_check
      - opendev/puppet-statusbot
      - opendev/puppet-storyboard
      - opendev/puppet-subunit2sql
      - opendev/puppet-sudoers
      - opendev/puppet-tmpreaper
      - opendev/puppet-ulimit
      - opendev/puppet-unattended_upgrades
      - opendev/puppet-unbound
      - opendev/puppet-user
      - opendev/puppet-vcsrepo
      - opendev/puppet-zanata
      - opendev/puppet-zuul
      - opendev/system-config
    run: playbooks/zuul/logstash-filters/run.yaml
    post-run: playbooks/zuul/logstash-filters/post.yaml
    timeout: 1800
    nodeset: ubuntu-xenial

- project-template:
    name: system-config-logstash-filter-jobs
    check:
      jobs:
        - system-config-legacy-logstash-filters
    gate:
      jobs:
        - system-config-legacy-logstash-filters