# Developer install These instructions will take you through the minimal steps required to get a dev environment setup, so you can run the tests locally. ## Clone the repository First clone the repository locally using [Git](https://git-scm.com/downloads): ``` $ git clone git://github.com/epics-containers/ibek.git ``` ## Install dependencies You can choose to either develop on the host machine using a `venv` (which requires python 3.10 or later) or to run in a container under [VSCode](https://code.visualstudio.com/) ```{eval-rst} .. tab-set:: .. tab-item:: Local virtualenv .. code:: $ cd ibek $ python3 -m venv venv $ source venv/bin/activate $ pip install -e '.[dev]' .. tab-item:: VSCode devcontainer .. code:: $ code ibek # Click on 'Reopen in Container' when prompted # Open a new terminal .. note:: See the epics-containers documentation for more complex use cases, such as integration with podman. ``` ## See what was installed To see a graph of the python package dependency tree type: ``` $ pipdeptree ``` ## Build and test Now you have a development environment you can run the tests in a terminal: ``` $ tox -p ``` This will run in parallel the following checks: - `../how-to/build-docs` - `../how-to/run-tests` - `../how-to/static-analysis` - `../how-to/lint` [epics-containers]: https://epics-containers.github.io/change_linter_to_ruff/user/tutorials/devcontainer.html