From ac74320876ac6c771d69b85ebb30058fe4eb3692 Mon Sep 17 00:00:00 2001 From: Colleen Murphy Date: Thu, 17 Oct 2019 10:12:00 -0700 Subject: [PATCH] Add voting k2k tests With the addition of K2K-specific tests in the tempest plugin and a config toggle in the plugin to disable use of the external IdP, we can safely add a voting federation job. This also fixes the devstack plugin to install the xmlsec1 tool which is needed for K2K. Change-Id: I9dc634e073657ff337751ec67363a57bd10e20d4 Depends-on: https://review.opendev.org/689222 (cherry picked from commit fb0be8e59917b5b637926d9526a64676af07ebf0) --- .zuul.yaml | 11 +++++++++++ devstack/lib/federation.sh | 9 +++++++++ 2 files changed, 20 insertions(+) diff --git a/.zuul.yaml b/.zuul.yaml index 5cf8997ae7..8fa6bb277c 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -57,6 +57,13 @@ zuul_copy_output: /etc/shibboleth: logs +- job: + name: keystone-dsvm-py3-functional-federation-opensuse15-k2k + parent: keystone-dsvm-py3-functional-federation-opensuse15 + vars: + devstack_localrc: + IDP_ID: k2k + # This job will execute 'tox -e upgrade' from the OSA # repo specified in 'osa_test_repo'. - job: @@ -196,6 +203,8 @@ - keystone-dsvm-py3-functional-federation-opensuse15: voting: false irrelevant-files: *irrelevant-files + - keystone-dsvm-py3-functional-federation-opensuse15-k2k: + irrelevant-files: *irrelevant-files - keystoneclient-devstack-functional: voting: false irrelevant-files: *irrelevant-files @@ -227,6 +236,8 @@ irrelevant-files: *irrelevant-files - keystone-dsvm-py3-functional: irrelevant-files: *irrelevant-files + - keystone-dsvm-py3-functional-federation-opensuse15-k2k: + irrelevant-files: *irrelevant-files - tempest-full: irrelevant-files: *tempest-irrelevant-files - tempest-full-py3: diff --git a/devstack/lib/federation.sh b/devstack/lib/federation.sh index 7497859be9..fec6363589 100644 --- a/devstack/lib/federation.sh +++ b/devstack/lib/federation.sh @@ -102,6 +102,8 @@ function install_federation { elif is_suse; then # Install Shibboleth install_package shibboleth-sp + # Install xmlsec dependency needed only for opensuse + install_package libxmlsec1-openssl1 # Create a new keypair for Shibboleth sudo /etc/shibboleth/keygen.sh -f -o /etc/shibboleth @@ -113,6 +115,9 @@ function install_federation { fi pip_install pysaml2 + + # xmlsec1 needed for k2k + install_package xmlsec1 } function upload_sp_metadata_to_samltest { @@ -182,6 +187,10 @@ function configure_tests_settings { # Here we set any settings that might be need by the fed_scenario set of tests iniset $TEMPEST_CONFIG identity-feature-enabled federation True + # If not using samltest as an external IdP, tell tempest not to test that scenario + if [[ "$IDP_ID" != "samltest" ]] ; then + iniset $TEMPEST_CONFIG identity-feature-enabled external_idp false + fi # Identity provider settings iniset $TEMPEST_CONFIG fed_scenario idp_id $IDP_ID