blob: 9fbaad51aa16315d41fa07dae4b6711262fd2cb1 [file] [log] [blame]
Samuli Silviuscceed252019-04-16 15:41:26 +03001#! /usr/bin/env bash
2
3# COPYRIGHT NOTICE STARTS HERE
4
5# Copyright 2019 © Samsung Electronics Co., Ltd.
6#
7# Licensed under the Apache License, Version 2.0 (the "License");
8# you may not use this file except in compliance with the License.
9# You may obtain a copy of the License at
10#
11# http://www.apache.org/licenses/LICENSE-2.0
12#
13# Unless required by applicable law or agreed to in writing, software
14# distributed under the License is distributed on an "AS IS" BASIS,
15# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16# See the License for the specific language governing permissions and
17# limitations under the License.
18
19# COPYRIGHT NOTICE ENDS HERE
20
21#
22# This is a main wrapper script to run Molecule tests
23# Main usage is for the CI usage to keep interface stable and the way to call
24# Molecule can be adjusted in this script independently.
25#
26
27SCRIPT_DIR=$(dirname "${0}")
28LOCAL_PATH=$(readlink -f "$SCRIPT_DIR")
29
30ROLE_PATH=$1
31MOLECULE_CONTAINER=${MOLECULE_CONTAINER:-true}
32
33echo "Build all pre-build images"
34${LOCAL_PATH}/../images/docker/build-all.sh
35
36# Use Molecule container
37if [ "${MOLECULE_CONTAINER}" == "true" ]; then
38 echo "Build Molecule-dev docker container"
39 ${LOCAL_PATH}/../molecule-docker/build.sh
40 MOLECULE_BINARY=${LOCAL_PATH}/../bin/molecule.sh
41
42else # Install Molecule natively in the target platform
43 echo "Install Molecule with virtualenv"
44 source ${LOCAL_PATH}/../bin/install-molecule.sh
45 MOLECULE_BINARY=molecule
46fi
47
48${MOLECULE_BINARY} --version
49
50cd ${ROLE_PATH}
51${MOLECULE_BINARY} test --all
52cd -