blob: d983ca08d5a2ddeb407e4f7360e57b36fb1bf823 [file] [log] [blame]
Samuli Silvius747a8e22019-03-29 13:20:28 +02001#! /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
21SCRIPT_DIR=$(dirname "${0}")
22LOCAL_PATH=$(readlink -f "$SCRIPT_DIR")
23# main root dir in this git repo (relative to this script location)
24ROOT_DIR=$(cd ${LOCAL_PATH}/../../../ && pwd)/
25PROJECT_ROOT_IN_CONTAINER=${PWD##${ROOT_DIR}}
26# Make dir structure same in container to make localhost ssh actions to match same dirs
27CONTAINER_ROOT=${ROOT_DIR}
28
29if [ "${PWD}" == "${PROJECT_ROOT_IN_CONTAINER}" ]; then
30 echo "Please run it under subdir of ${ROOT_DIR} directory"
31 exit 1
32fi
33
34env_params=(--env LOCALHOST_ANSIBLE_HOST=$(hostname -I | cut -f 1 -d ' '))
35env_params+=(--env LOCALHOST_ANSIBLE_USER=$(id -nu))
36
37if [ -e "${LOCAL_PATH}/.env" ]; then
38 env_file="--env-file ${LOCAL_PATH}/.env"
39fi
40
41MOLECULE_IMAGE=${MOLECULE_IMAGE:-molecule-dev}
42MOLECULE_IMAGE_VERSION=${MOLECULE_IMAGE_VERSION:-2.20.0}
43echo "Running molecule image: ${MOLECULE_IMAGE}:${MOLECULE_IMAGE_VERSION}"
44MOLECULE_CMD=${MOLECULE_CMD:-molecule}
45docker run --rm -it \
46 -v /var/run/docker.sock:/var/run/docker.sock \
47 -v ${ROOT_DIR}:${CONTAINER_ROOT}:rw \
48 -w ${CONTAINER_ROOT}/${PROJECT_ROOT_IN_CONTAINER} \
49 "${env_params[@]}" \
50 ${env_file} \
51 --name ${MOLECULE_IMAGE} \
52 ${MOLECULE_IMAGE}:${MOLECULE_IMAGE_VERSION} \
53 ${MOLECULE_CMD} "$@"
54