diff options
author | Michael S. Pedersen <michaelx.pedersen@intel.com> | 2020-10-23 12:24:43 +0000 |
---|---|---|
committer | Rihab Banday <rihab.banday@ericsson.com> | 2020-11-13 16:24:54 +0000 |
commit | 5d28b70edce08ee912c433386599424f8202f303 (patch) | |
tree | 98c1246797f5a03f9417d6e1e6843f5bd90e8e09 /playbooks/roles/pre-install/molecule | |
parent | e34b4d93d5e288bdbb5ec798602ea5e8f1bc3985 (diff) |
Add support for deploying to Equinix Metal bare-metal servers
Adds an additional hw_config which is simplified (equinix-metal).
Adds support for skipping HW provisioning (pre-provisioned through EM).
Usage: deploy.sh [k8s]
Adds a few new helper functions, and updates existing to support changes.
Signed-off-by: Michael S. Pedersen <michaelx.pedersen@intel.com>
Signed-off-by: Victor Morales <v.morales@samsung.com>
Change-Id: I2f84c662d183ba224e0edd8a218abe8b46c1fe45
Signed-off-by: Victor Morales <v.morales@samsung.com>
Reviewed-on: https://gerrit.opnfv.org/gerrit/c/kuberef/+/71301
Tested-by: jenkins-ci <jenkins-opnfv-ci@opnfv.org>
Reviewed-by: Rihab Banday <rihab.banday@ericsson.com>
Reviewed-by: Victor Morales <chipahuac@hotmail.com>
Diffstat (limited to 'playbooks/roles/pre-install/molecule')
3 files changed, 68 insertions, 0 deletions
diff --git a/playbooks/roles/pre-install/molecule/default/converge.yml b/playbooks/roles/pre-install/molecule/default/converge.yml new file mode 100644 index 0000000..c7904cf --- /dev/null +++ b/playbooks/roles/pre-install/molecule/default/converge.yml @@ -0,0 +1,16 @@ +--- +# SPDX-license-identifier: Apache-2.0 +############################################################################## +# Copyright (c) 2020 Samsung Electronics +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +- name: Converge + hosts: all + gather_facts: true + roles: + - role: pre-install + inventory_path: /home/kuberef/inventory diff --git a/playbooks/roles/pre-install/molecule/default/molecule.yml b/playbooks/roles/pre-install/molecule/default/molecule.yml new file mode 100644 index 0000000..a43f45f --- /dev/null +++ b/playbooks/roles/pre-install/molecule/default/molecule.yml @@ -0,0 +1,26 @@ +--- +# SPDX-license-identifier: Apache-2.0 +############################################################################## +# Copyright (c) 2020 Samsung Electronics +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +dependency: + name: galaxy +driver: + name: docker +lint: | + set -e + yamllint -c ../../../.yamllint . + ansible-lint +platforms: + - name: centos_7 + image: centos:7 +provisioner: + name: ansible +verifier: + name: testinfra + lint: + name: flake8 diff --git a/playbooks/roles/pre-install/molecule/default/tests/test_default.py b/playbooks/roles/pre-install/molecule/default/tests/test_default.py new file mode 100644 index 0000000..c992994 --- /dev/null +++ b/playbooks/roles/pre-install/molecule/default/tests/test_default.py @@ -0,0 +1,26 @@ +# Copyright 2020 Samsung Electronics +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License.# +# + +import os +import pytest + +import testinfra.utils.ansible_runner + +testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( + os.environ['MOLECULE_INVENTORY_FILE'] +).get_hosts('all') +def test_requirements_installed(host): + for pkg in ["lshw", "pciutils", "ethtool"]: + assert host.package(pkg).is_installed |