created baseline doc to support poetry based installations

This commit is contained in:
Blake Harnden 2020-07-10 20:02:41 -07:00
parent 8cf89fa114
commit 80eaa27469

View file

@ -1,27 +1,63 @@
# Commands Used Ubuntu
# Installing CORE
## Overview
CORE provides a script to help automate installing all required software
to build and run, including a python virtual environment to run it all in.
The following tools will be leveraged during installation:
|Tool|Description|
|---|---|
|pip|used to install pipx|
|pipx|used to install standalone python tools (invoke, poetry)|
|invoke|used to run provided tasks (install, daemon, gui, tests, etc)|
|poetry|used to install the managed python virtual environment for running CORE|
## Supported Linux Distributions
Plan is to support recent Ubuntu and CentOS LTS releases.
Verified:
* Ubuntu - 18.04, 20.04
* CentOS - 7.8, 8.0*
> **NOTE:** Ubuntu 20.04 requires installing legacy ebtables for WLAN
> functionality
> **NOTE:** CentOS 8 does not provide legacy ebtables support, WLAN will not
> function properly
## Running Installation
```shell
# get pip
sudo apt install python3-pip python3-venv
# clone CORE repo
git clone https://github.com/coreemu/core.git
cd core
git checkout enhancement/poetry-invoke
# install pipx
python3 -m pip install --user pipx
python3 -m pipx ensurepath
# run install script
./install2.sh
```
# install invoke
pipx install invoke
## Using Invoke Tasks
# install core
inv install
The invoke tool installed by way of pipx provides conveniences for running
CORE tasks to help ensure usage of the create python virtual environment.
# run daemon
```shell
Available tasks:
cleanup run core-cleanup removing leftover core nodes, bridges, directories
daemon start core-daemon
gui start core-pygui
install install core
test run core tests
test-emane run core emane tests
test-mock run core tests using mock to avoid running as sudo
```
Example running the core-daemon task from the root of the repo:
```shell
inv daemon
# run gui
inv gui
```
Commands Used CentOS
```shell
```