blob: badd81e446f2f3f08a932bcee7c83eaab5bb6a24 [file] [log] [blame]
David Garcia82c5ffa2020-03-09 08:38:17 +01001# Copyright 2020 Canonical Ltd.
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14[tox]
15envlist = pep8
16skipsdist = True
17
18[testenv]
19setenv = VIRTUAL_ENV={envdir}
20 PYTHONHASHSEED=0
21whitelist_externals = juju
22 sleep
23passenv = HOME TERM CS_API_* OS_* AMULET_*
24install_command =
25 pip install {opts} {packages}
26
27
28[testenv:build]
29basepython = python3
30passenv=HTTP_PROXY HTTPS_PROXY NO_PROXY
31setenv = CHARM_LAYERS_DIR = ../layers
32 CHARM_INTERFACES_DIR = ../interfaces/
33whitelist_externals = git
34 charm
35 rm
36 mv
37commands =
38 rm -rf release
David Garcia02a5eb92020-11-28 14:41:22 +010039 rm -rf ../interfaces/mongodb
David Garcia82c5ffa2020-03-09 08:38:17 +010040 rm -rf ../interfaces/juju-relation-mysql
41 rm -rf /tmp/canonical-osm
David Garcia02a5eb92020-11-28 14:41:22 +010042 git clone https://git.launchpad.net/interface-mongodb ../interfaces/mongodb
David Garcia82c5ffa2020-03-09 08:38:17 +010043 git clone https://git.launchpad.net/canonical-osm/ /tmp/canonical-osm
44 mv /tmp/canonical-osm/charms/interfaces/juju-relation-mysql ../interfaces/juju-relation-mysql
45 charm build . --build-dir /tmp
46 mv /tmp/ro-k8s/ release/
47
48[testenv:lint]
49basepython = python3
50deps =
51 black
52 yamllint
53 flake8
54commands =
55 black --check --diff . --exclude "release/|.tox/"
56 yamllint .
57 flake8 reactive/ --max-line-length=100
58
59[testenv:pep8]
60basepython = python3
61deps=charm-tools
62commands = charm-proof
63
64[testenv:venv]
65commands = {posargs}