docs: update install.md to denote the option for installing locally and reference that as a possibility in other instructions
This commit is contained in:
parent
efdce20afb
commit
7790d4aa00
3 changed files with 59 additions and 22 deletions
|
@ -74,11 +74,14 @@ sudo apt remove core
|
|||
|
||||
## Automated Installation
|
||||
|
||||
The automated install will install the various tools needed to help automate
|
||||
the CORE installation (python3, pip, pipx, invoke, poetry). The script will
|
||||
also automatically clone, build, and install the latest version of OSPF MDR.
|
||||
Finally it will install CORE scripts and a systemd service, which have
|
||||
been modified to use the installed poetry created virtual environment.
|
||||
The automated install will install do the following:
|
||||
* install base tools needed for installation
|
||||
* python3, pip, pipx, invoke, poetry
|
||||
* installs system dependencies for building core
|
||||
* installs latest version of [OPSF MDR](https://github.com/USNavalResearchLaboratory/ospf-mdr)
|
||||
* installs core into poetry managed virtual environment or locally, if flag is passed
|
||||
* installs scripts pointing to python interpreter being used
|
||||
* installs systemd service, disabled by default
|
||||
|
||||
After installation has completed you should be able to run the various
|
||||
CORE scripts for running core.
|
||||
|
@ -92,10 +95,11 @@ git clone https://github.com/coreemu/core.git
|
|||
cd core
|
||||
|
||||
# run install script
|
||||
# script usage: install.sh [-d] [-v]
|
||||
# script usage: install.sh [-v] [-d] [-l] [-p <prefix>]
|
||||
#
|
||||
# -v enable verbose install
|
||||
# -d enable developer install
|
||||
# -l enable local install, not compatible with developer install
|
||||
# -p install prefix, defaults to /usr/local
|
||||
./install.sh
|
||||
```
|
||||
|
@ -117,16 +121,17 @@ After the installation complete it will have installed the following scripts.
|
|||
|
||||
| Name | Description |
|
||||
|---|---|
|
||||
| core-cleanup | tool to help removed lingering core created containers, bridges, directories |
|
||||
| core-cli | tool to query, open xml files, and send commands using gRPC |
|
||||
| core-daemon | runs the backed core server providing TLV and gRPC APIs |
|
||||
| core-gui | runs the legacy tcl/tk based GUI |
|
||||
| core-pygui | runs the new python/tk based GUI |
|
||||
| core-cleanup | tool to help removed lingering core created containers, bridges, directories |
|
||||
| core-imn-to-xml | tool to help automate converting a .imn file to .xml format |
|
||||
| core-manage | tool to add, remove, or check for services, models, and node types |
|
||||
| core-pygui | runs the new python/tk based GUI |
|
||||
| core-python | provides a convenience for running the core python virtual environment |
|
||||
| core-route-monitor | tool to help monitor traffic across nodes and feed that to SDT |
|
||||
| core-service-update | tool to update automate modifying a legacy service to match current naming |
|
||||
| coresendmsg | tool to send TLV API commands from command line |
|
||||
| core-cli | tool to query, open xml files, and send commands using gRPC |
|
||||
| core-manage | tool to add, remove, or check for services, models, and node types |
|
||||
|
||||
## Running User Scripts
|
||||
|
||||
|
@ -142,28 +147,57 @@ environment interpreter or to run a script within it.
|
|||
core-python <script>
|
||||
```
|
||||
|
||||
## Manually Install EMANE
|
||||
If CORE was installed locally, then you can run scripts using the default python3
|
||||
interpreter.
|
||||
|
||||
EMANE can be installed from deb or RPM packages or from source. See the
|
||||
[EMANE GitHub](https://github.com/adjacentlink/emane) for full details.
|
||||
```shell
|
||||
python3 <script>
|
||||
```
|
||||
|
||||
There is an invoke task to help with installing EMANE, but has issues,
|
||||
which attempts to build EMANE from source, but has issue on systems with
|
||||
older protobuf-compilers.
|
||||
## Installing EMANE
|
||||
|
||||
> **NOTE:** installng emane for the virtual environment is known to work for 1.21+
|
||||
> **NOTE:** automated install currently targets 1.25
|
||||
|
||||
There is an invoke task to help with installing EMANE, which attempts to
|
||||
build EMANE from source, but has issue on systems with older protobuf-compilers.
|
||||
|
||||
```shell
|
||||
cd <CORE_REPO>
|
||||
|
||||
# install to virtual environment
|
||||
inv install-emane
|
||||
|
||||
# install locally to system python3
|
||||
inv install-emane -l
|
||||
```
|
||||
|
||||
Alternatively, you can
|
||||
Alternatively EMANE can be installed from deb or RPM packages or from source. See the
|
||||
[EMANE GitHub](https://github.com/adjacentlink/emane) for full details.
|
||||
With the caveat that the python bindings need to be installed into CORE's
|
||||
virtualenv, unless installed locally.
|
||||
|
||||
### Installing EMANE Python Bindings for Virtual Environment
|
||||
|
||||
If you need to just install the EMANE python bindings to the CORE virtual
|
||||
environment, since you are installing EMANE itself from pre-built packages.
|
||||
You can run the following
|
||||
|
||||
Leveraging the following wiki:
|
||||
[build EMANE](https://github.com/adjacentlink/emane/wiki/Build)
|
||||
from source and install the python
|
||||
bindings into the core virtual environment.
|
||||
|
||||
The following would install the EMANE python bindings after being
|
||||
successfully built.
|
||||
```shell
|
||||
# clone and build emane python bindings
|
||||
git clone https://github.com/adjacentlink/emane.git
|
||||
cd emane
|
||||
./autogen.sh
|
||||
PYTHON=python3 ./configure --prefix=/usr
|
||||
cd src/python
|
||||
make
|
||||
|
||||
# install to core virtual environment
|
||||
cd <CORE_REPO>/daemon
|
||||
poetry run pip install <EMANE_REPO>/src/python
|
||||
```
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue