diff --git a/devstack/settings b/devstack/settings index 6d31fa64c8..9783efdd65 100644 --- a/devstack/settings +++ b/devstack/settings @@ -9,4 +9,4 @@ source $DEST/ironic/devstack/common_settings local_mtu=$(ip link show | sed -ne 's/.*mtu \([0-9]\+\).*/\1/p' | sort -n | head -1) # 50 bytes is overhead for vxlan (which is greater than GRE # allowing us to use either overlay option with this MTU. -PUBLIC_BRIDGE_MTU=$((local_mtu - 50)) +PUBLIC_BRIDGE_MTU=${OVERRIDE_PUBLIC_BRIDGE_MTU:-$((local_mtu - 50))} diff --git a/playbooks/legacy/ironic-dsvm-standalone/run.yaml b/playbooks/legacy/ironic-dsvm-standalone/run.yaml deleted file mode 100644 index a3dea600b7..0000000000 --- a/playbooks/legacy/ironic-dsvm-standalone/run.yaml +++ /dev/null @@ -1,77 +0,0 @@ -- hosts: all - name: Autoconverted job legacy-ironic-dsvm-standalone from old job gate-ironic-dsvm-standalone-ubuntu-xenial - tasks: - - - shell: - cmd: | - cat << 'EOF' >> ironic-vars-early - # use tempest plugin - export DEVSTACK_LOCAL_CONFIG+=$'\n'"TEMPEST_PLUGINS+=' /opt/stack/new/ironic-tempest-plugin'" - export TEMPEST_CONCURRENCY=4 - EOF - chdir: '{{ ansible_user_dir }}/workspace' - environment: '{{ zuul | zuul_legacy_vars }}' - - - shell: - cmd: | - cat << 'EOF' >> ironic-extra-vars - export DEVSTACK_GATE_TEMPEST_REGEX="ironic_standalone" - - EOF - chdir: '{{ ansible_user_dir }}/workspace' - environment: '{{ zuul | zuul_legacy_vars }}' - - - shell: - cmd: | - set -e - set -x - export PROJECTS="openstack/ironic $PROJECTS" - export PROJECTS="openstack/ironic-lib $PROJECTS" - export PROJECTS="openstack/ironic-python-agent $PROJECTS" - export PROJECTS="openstack/ironic-tempest-plugin $PROJECTS" - export PROJECTS="openstack/python-ironicclient $PROJECTS" - export PYTHONUNBUFFERED=true - export DEVSTACK_GATE_TEMPEST=1 - export DEVSTACK_GATE_IRONIC=1 - export DEVSTACK_GATE_NEUTRON=1 - export DEVSTACK_GATE_IRONIC_BUILD_RAMDISK=0 - export DEVSTACK_GATE_VIRT_DRIVER=ironic - export DEVSTACK_GATE_IRONIC_DRIVER=ipmi - export OVERRIDE_ENABLED_SERVICES="g-api,g-reg,q-agt,q-dhcp,q-l3,q-svc,key,mysql,rabbit,ir-api,ir-cond,s-account,s-container,s-object,s-proxy,tempest" - - export BRANCH_OVERRIDE="{{ zuul.override_checkout | default('default') }}" - if [ "$BRANCH_OVERRIDE" != "default" ] ; then - export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE - fi - - export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_COUNT=6" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEPLOY_DRIVER=ipmi" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEFAULT_DEPLOY_INTERFACE=direct" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"SWIFT_ENABLE_TEMPURLS=True" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"SWIFT_TEMPURL_KEY=secretkey" - export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_AUTOMATED_CLEAN_ENABLED=False" - - # NOTE(pas-ha) ansible deploy is new in Queens, - # and this job does not exist in Newton/Ocata. - # Do not enable ansible deploy for Pike so that stable/pike job on - # branch-less ironic-tempest-plugin passes using zuul.override_checkout. - if [[ "$ZUUL_BRANCH" != "stable/pike" && "$BRANCH_OVERRIDE" != "stable/pike" ]]; then - export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_ENABLED_DEPLOY_INTERFACES=iscsi,direct,ansible" - fi - - # Ensure the ironic-vars-EARLY file exists - touch ironic-vars-early - # Pull in the EARLY variables injected by the optional builders - source ironic-vars-early - - # Ensure the ironic-EXTRA-vars file exists - touch ironic-extra-vars - # Pull in the EXTRA variables injected by the optional builders - source ironic-extra-vars - - cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh - ./safe-devstack-vm-gate-wrap.sh - executable: /bin/bash - chdir: '{{ ansible_user_dir }}/workspace' - environment: '{{ zuul | zuul_legacy_vars }}' diff --git a/zuul.d/ironic-jobs.yaml b/zuul.d/ironic-jobs.yaml new file mode 100644 index 0000000000..2c73f17577 --- /dev/null +++ b/zuul.d/ironic-jobs.yaml @@ -0,0 +1,126 @@ +- job: + name: ironic-base + description: Base job for devstack/tempest based ironic jobs. + parent: devstack-tempest + timeout: 10800 + required-projects: + - openstack/ironic + - openstack/ironic-python-agent + - openstack/ironic-tempest-plugin + - openstack/pyghmi + - openstack/virtualbmc + irrelevant-files: + - ^.*\.rst$ + - ^api-ref/.*$ + - ^doc/.*$ + - ^install-guide/.*$ + - ^ironic/locale/.*$ + - ^ironic/tests/.*$ + - ^releasenotes/.*$ + - ^setup.cfg$ + - ^tools/.*$ + - ^tox.ini$ + vars: + tox_envlist: all + tempest_test_regex: ironic_tempest_plugin.tests.scenario + tempest_concurrency: 1 + devstack_localrc: + DEFAULT_INSTANCE_TYPE: baremetal + FORCE_CONFIG_DRIVE: True + INSTALL_TEMPEST: False # Don't install a tempest package globaly + OVERRIDE_PUBLIC_BRIDGE_MTU: 1400 + TEMPEST_PLUGINS: "'{{ ansible_user_dir }}/src/git.openstack.org/openstack/ironic-tempest-plugin'" + VIRT_DRIVER: ironic + + IRONIC_BAREMETAL_BASIC_OPS: True + IRONIC_BUILD_DEPLOY_RAMDISK: False + IRONIC_CALLBACK_TIMEOUT: 600 + IRONIC_DEPLOY_DRIVER: ipmi + IRONIC_INSPECTOR_BUILD_RAMDISK: False + IRONIC_RAMDISK_TYPE: tinyipa + IRONIC_TEMPEST_BUILD_TIMEOUT: 600 + IRONIC_VM_COUNT: 1 + IRONIC_VM_EPHEMERAL_DISK: 1 + IRONIC_VM_LOG_DIR: '{{ devstack_base_dir }}/ironic-bm-logs' + IRONIC_VM_SPECS_RAM: 384 + + Q_AGENT: openvswitch + Q_ML2_TENANT_NETWORK_TYPE: vxlan + + SWIFT_ENABLE_TEMPURLS: True + SWIFT_TEMPURL_KEY: secretkey + devstack_plugins: + ironic: git://git.openstack.org/openstack/ironic + zuul_copy_output: + '{{ devstack_base_dir }}/ironic-bm-logs': 'logs' + devstack_services: + c-api: False + c-bak: False + c-sch: False + c-vol: False + cinder: False + + s-account: False + s-container: False + s-object: False + s-proxy: False + + dstat: True + g-api: True + g-reg: True + key: True + mysql: True + n-api: True + n-api-meta: True + n-cauth: True + n-cond: True + n-cpu: True + n-novnc: True + n-obj: True + n-sch: True + placement-api: True + q-agt: False + q-dhcp: False + q-l3: False + q-meta: False + q-metering: False + q-svc: False + neutron-api: True + neutron-agent: True + neutron-dhcp: True + neutron-l3: True + neutron-metadata-agent: True + neutron-metering: True + rabbit: True + +- job: + name: ironic-dsvm-standalone + description: Test ironic standalone + parent: ironic-base + irrelevant-files: + - ^test-requirements.txt$ + vars: + tempest_test_regex: ironic_standalone + tempest_concurrency: 4 + devstack_localrc: + FORCE_CONFIG_DRIVE: False + + IRONIC_AUTOMATED_CLEAN_ENABLED: False + IRONIC_DEFAULT_DEPLOY_INTERFACE: direct + IRONIC_ENABLED_DEPLOY_INTERFACES: "iscsi,direct,ansible" + IRONIC_VM_COUNT: 6 + devstack_services: + n-api: False + n-api-meta: False + n-cauth: False + n-cond: False + n-cpu: False + n-novnc: False + n-obj: False + n-sch: False + nova: False + placement-api: False + s-account: True + s-container: True + s-object: True + s-proxy: True diff --git a/zuul.d/legacy-ironic-jobs.yaml b/zuul.d/legacy-ironic-jobs.yaml index 0cef0e6be2..1a260b916f 100644 --- a/zuul.d/legacy-ironic-jobs.yaml +++ b/zuul.d/legacy-ironic-jobs.yaml @@ -104,30 +104,6 @@ run: playbooks/legacy/tempest-dsvm-ironic-bfv/run.yaml timeout: 9600 -- job: - name: ironic-dsvm-standalone - parent: legacy-ironic-dsvm-base - run: playbooks/legacy/ironic-dsvm-standalone/run.yaml - timeout: 10800 - irrelevant-files: - - ^test-requirements.txt$ - - ^.*\.rst$ - - ^api-ref/.*$ - - ^doc/.*$ - - ^install-guide/.*$ - - ^ironic/locale/.*$ - - ^ironic/tests/.*$ - - ^releasenotes/.*$ - - ^setup.cfg$ - - ^tools/.*$ - - ^tox.ini$ - required-projects: - - openstack-infra/devstack-gate - - openstack/ironic - - openstack/ironic-lib - - openstack/ironic-python-agent - - openstack/python-ironicclient - - job: name: ironic-tempest-dsvm-ironic-inspector parent: legacy-ironic-dsvm-base