diff --git a/.zuul.yaml b/.zuul.yaml index 25d12cd2e..277a8257b 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -1,15 +1,20 @@ - job: name: designate-base parent: devstack-tempest - post-run: playbooks/designate-base/post.yaml vars: devstack_localrc: DESIGNATE_SERVICE_PORT_DNS: 5322 TEMPEST_PLUGINS: /opt/stack/designate-tempest-plugin + USE_PYTHON3: true devstack_plugins: designate: git://git.openstack.org/openstack/designate devstack_services: designate: true + s-account: false + s-container: false + s-object: false + s-proxy: false + c-bak: false tox_envlist: all-plugin tempest_test_regex: | designate_tempest_plugin.* @@ -28,8 +33,23 @@ - job: name: designate-bind9 + post-run: playbooks/designate-bind9/post.yaml parent: designate-base +- job: + name: designate-pdns4 + post-run: playbooks/designate-pdns4/post.yaml + parent: designate-base + vars: + devstack_localrc: + DESIGNATE_BACKEND_DRIVER: pdns4 + +- job: + name: designate-pdns4-postgres + parent: designate-pdns4 + vars: + database: postgres + - job: name: designate-bind9-manager-model parent: designate-bind9 @@ -41,11 +61,25 @@ designate-zone-manager: true - job: - name: designate-bind9-py36 + name: designate-bind9-py27 parent: designate-bind9 vars: devstack_localrc: - USE_PYTHON3: true + USE_PYTHON3: false + devstack_services: + s-account: true + s-container: true + s-object: true + s-proxy: true + c-bak: true + + +- job: + name: designate-pdns4-py27 + parent: designate-pdns4 + vars: + devstack_localrc: + USE_PYTHON3: false devstack_services: s-account: false s-container: false @@ -53,50 +87,6 @@ s-proxy: false c-bak: false -- job: - name: designate-devstack-base - parent: legacy-dsvm-base - vars: - database: mysql - python_version: py27 - identity_v3_only: 0 - manager_model: 0 - backend: pdns4 - required-projects: - - openstack-infra/devstack-gate - - openstack/designate - - openstack/designate-dashboard - - openstack/designate-tempest-plugin - - openstack/python-designateclient - - openstack/tempest - run: playbooks/legacy/designate-devstack-base/run.yaml - post-run: playbooks/legacy/designate-devstack-base/post.yaml - timeout: 4200 - irrelevant-files: - - ^.*\.rst$ - - ^api-ref/.*$ - - ^doc/.*$ - - ^etc/.*$ - -- job: - name: designate-devstack-agent-base - parent: legacy-dsvm-base - required-projects: - - openstack-infra/devstack-gate - - openstack/designate - - openstack/designate-dashboard - - openstack/designate-tempest-plugin - - openstack/python-designateclient - - openstack/tempest - run: playbooks/legacy/designate-devstack-agent-base/run.yaml - post-run: playbooks/legacy/designate-devstack-agent-base/post.yaml - timeout: 4200 - irrelevant-files: - - ^.*\.rst$ - - ^api-ref/.*$ - - ^doc/.*$ - - ^etc/.*$ - - job: name: designate-grenade-pdns4 parent: legacy-dsvm-base @@ -116,61 +106,27 @@ - ^doc/.*$ - ^etc/.*$ -- job: - name: designate-devstack-agent-djbdns - parent: designate-devstack-agent-base - vars: - backend_driver: djbdns - -- job: - name: designate-devstack-agent-gdnsd - parent: designate-devstack-agent-base - vars: - backend_driver: gdnsd - -- job: - name: designate-devstack-agent-knot2 - parent: designate-devstack-agent-base - vars: - backend_driver: knot2 - -- job: - name: designate-devstack-pdns4 - parent: designate-devstack-base - vars: - backend: pdns4 - -- job: - name: designate-devstack-pdns4-postgres - parent: designate-devstack-base - vars: - backend: pdns4 - database: postgres - - project-template: name: designate-devstack-jobs check: jobs: - designate-bind9 + - designate-pdns4 - designate-bind9-manager-model - - designate-bind9-py36 - - designate-devstack-pdns4 - - designate-devstack-pdns4-postgres + - designate-bind9-py27 + - designate-pdns4-py27 + - designate-pdns4-postgres - designate-grenade-pdns4 gate: queue: designate jobs: - designate-bind9 + - designate-pdns4 - designate-bind9-manager-model - - designate-bind9-py36 - - designate-devstack-pdns4 - - designate-devstack-pdns4-postgres + - designate-bind9-py27 + - designate-pdns4-py27 + - designate-pdns4-postgres - designate-grenade-pdns4 - experimental: - jobs: - - designate-devstack-agent-knot2 - - designate-devstack-agent-djbdns - - designate-devstack-agent-gdnsd - project: templates: diff --git a/contrib/vagrant/Vagrantfile b/contrib/vagrant/Vagrantfile index b8192a9b3..66a64018f 100644 --- a/contrib/vagrant/Vagrantfile +++ b/contrib/vagrant/Vagrantfile @@ -8,9 +8,6 @@ VM_RAM_SIZE = "8192" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.ssh.forward_agent = true - config.vm.network "forwarded_port", guest: 5354, host: 5354, protocol: "tcp" - config.vm.network "forwarded_port", guest: 5354, host: 5354, protocol: "udp" - config.vm.provider "virtualbox" do |vb, override| vb.customize ["modifyvm", :id, "--memory", VM_RAM_SIZE] if not RUBY_PLATFORM.downcase.include?("mswin") @@ -95,10 +92,6 @@ set -e # Fixup permissions on /opt/stack/ sudo chown vagrant:vagrant /opt/stack/ -# Copy over git config -cat << EOF > /home/vagrant/.gitconfig -#{GITCONFIG} -EOF # Clone DevStack if [ ! -d "/home/vagrant/devstack" ]; then @@ -123,7 +116,18 @@ ln -s /opt/stack/designate/rally-scenarios/plugins /home/vagrant/.rally/plugins SCRIPT - config.vm.define "ubuntu-xenial", primary: true do |ubuntu| + config.vm.define "ubuntu-bionic", primary: true do |ubuntu| + ubuntu.vm.box = "ubuntu/bionic64" + + ubuntu.vm.network :private_network, ip: "192.168.27.100" + + ubuntu.vm.provision :shell, :privileged => true, :inline => "DEBIAN_FRONTEND=noninteractive apt-get update" + ubuntu.vm.provision :shell, :privileged => true, :inline => "DEBIAN_FRONTEND=noninteractive apt-get install --yes git lvm2" + + ubuntu.vm.provision :shell, :privileged => false, :inline => $script + end + + config.vm.define "ubuntu-xenial", autostart: false do |ubuntu| ubuntu.vm.box = "yk0/ubuntu-xenial" ubuntu.vm.network :private_network, ip: "192.168.27.100" diff --git a/contrib/vagrant/local.conf b/contrib/vagrant/local.conf index b0698c19a..7f1072cbc 100644 --- a/contrib/vagrant/local.conf +++ b/contrib/vagrant/local.conf @@ -9,6 +9,7 @@ SERVICE_TOKEN=password # IP Address for services to bind to (Should match IP from Vagrantfile) SERVICE_HOST=192.168.27.100 +HOST_IP=$SERVICE_HOST # Logging #LOGFILE=/opt/stack/logs/stack.sh.log diff --git a/playbooks/designate-base/post.yaml b/playbooks/designate-bind9/post.yaml similarity index 100% rename from playbooks/designate-base/post.yaml rename to playbooks/designate-bind9/post.yaml diff --git a/playbooks/designate-pdns4/post.yaml b/playbooks/designate-pdns4/post.yaml new file mode 100644 index 000000000..103755c5f --- /dev/null +++ b/playbooks/designate-pdns4/post.yaml @@ -0,0 +1,4 @@ +- hosts: all + become: True + roles: + - pdns4-logs-conf diff --git a/roles/pdns4-logs-conf/defaults/main.yaml b/roles/pdns4-logs-conf/defaults/main.yaml new file mode 100644 index 000000000..f8fb8deac --- /dev/null +++ b/roles/pdns4-logs-conf/defaults/main.yaml @@ -0,0 +1 @@ +stage_dir: "{{ ansible_user_dir }}" diff --git a/roles/pdns4-logs-conf/tasks/main.yaml b/roles/pdns4-logs-conf/tasks/main.yaml new file mode 100644 index 000000000..f0d5fa52f --- /dev/null +++ b/roles/pdns4-logs-conf/tasks/main.yaml @@ -0,0 +1,38 @@ +- name: Ensure target directory exists + file: + path: "{{ stage_dir }}/etc/powerdns" + state: directory + +- name: Find pdns config files + find: + path: /etc/powerdns + file_type: any + register: pdns_configs + +- name: Dereference pdns4 configs + stat: + path: "{{ item.path }}" + with_items: "{{ pdns_configs.files }}" + register: pdns_configs_deref + +- name: Link configurations + file: + src: "{{ item.stat.lnk_source | default(item.stat.path) }}" + dest: "{{ stage_dir }}/etc/powerdns/{{ item.stat.path | basename }}" + state: hard + with_items: "{{ pdns_configs_deref.results }}" + when: item.stat.isreg or item.stat.islnk + +# NOTE(frickler) Copied from devstack role export-devstack-journal +- name: Ensure {{ stage_dir }}/logs exists + become: true + file: + path: "{{ stage_dir }}/logs" + state: directory + owner: "{{ ansible_user }}" + +- name: Collect pdns journal + become: true + shell: + cmd: | + journalctl -o short-precise --unit pdns | gzip - > {{ stage_dir }}/logs/pdns.txt.gz