Skip to content
Snippets Groups Projects

Update README.md

Merged JORGE SASIAIN requested to merge jorge.sasiain-develop-patch-69917 into develop
1 file
+ 25
54
Compare changes
  • Side-by-side
  • Inline
+ 25
54
# Modeling of Trunk service in WFO
## Environment and dependencies
This is a dummy implementation of a trunk service in workflow orchestrator. The "pieces" of the trunk service are mapped to Products. The parameters of the trunk service are modelled as Resource Types.
- Install python 3.10 if you don't have it already:
- ``add-apt-repository ppa:deadsnakes/ppa``
## Quickstart
- ``apt install python3.10 python3.10-distutils``
- Follow Steps 1 and 2 from here to install dependencies and setup DB: https://workfloworchestrator.org/orchestrator-core/workshops/beginner/debian/
- Follow Steps 1 and 2 from here: https://workfloworchestrator.org/orchestrator-core/workshops/beginner/debian/
- To install the orchestrator GUI, you can follow the steps 5 and 6 from the above link.
- To install the orchestrator GUI, you can follow the steps 5 and 6 from the above link.
- Clone this repo:
- Create a virtualenv:
- ``pip install -r requirements.txt``
- ``source /usr/share/virtualenvwrapper/virtualenvwrapper.sh``
- from the top-level directory:
- ``mkvirtualenv --python python3.10 gso``
 
- To use the virtualenv:
 
- `source /usr/share/virtualenvwrapper/virtualenvwrapper.sh`
 
- `workon gso`
 
 
## Install
 
 
Do all of this inside the virtualenv.
 
- Clone this repo and ``cd`` into it
 
- ``pip install -r requirements.txt``
 
- If you get an error because you pip version is too old, run this: `curl -sS https://bootstrap.pypa.io/get-pip.py | python3.10`
- ``pip install -e .``
- ``pip install -e .``
- Create ``oss-params.json``
- `cd` into `gso` directory and create ``oss-params.json`` based on the ``oss-params-example.json`` file.
- Export the oss-params file: ``export OSS_PARAMS_FILENAME="/path/to/file.json"``
- Export the oss-params file: ``export OSS_PARAMS_FILENAME="/path/to/oss-params.json"``
 
- Upgrade DB to latest revision: `PYTHONPATH=. python main.py db upgrade heads`
 
 
## Run
 
- The core of workflow orchestrator can be started with ``uvicorn --host 0.0.0.0 --port 8080 main:app`` from inside the ``gso`` directory of this repo.
- The core of workflow orchestrator can be started with ``uvicorn --host 0.0.0.0 --port 8080 main:app`` from inside the ``gso`` directory of this repo.
- The GUI can be started with ``yarn start``.
- The GUI can be started with ``yarn start``.
## Structure description
### Products & fixed inputs
- Trunk
- Reference to PB Trunk
- TrunkConfig
- Reference to PB TrunkConfig
- TrunkConfigCommon
- Reference to PB TrunkConfigCommon
- TrunkConfigSide
- Reference to PB TrunkConfigSide
### Product blocks & resource types
- Trunk
- Id
- GeantSSid
- Name
- TrunkConfig
- Id
- Reference to PB Trunk
- TrunkConfigCommon
- Id
- Speed
- IsLeasedLine
- IsIsMetric
- MinimumLinks
- Reference to PB TrunkConfig
- TrunkConfigSide
- Id
- Name
- AEName
- GeantASid
- IPv4Address
- IPv6Address
- Members
- Reference to PB TrunkConfig
### Workflows
- Workflows included are CREATE and TERMINATE for:
- Trunk
- TrunkConfig
- TrunkConfigCommon
- TrunkConfigSide
## Useful WFO Resources
## Useful WFO Resources
 
- WFO API (Swagger): https://workfloworchestrator.org/orchestrator-core/architecture/application/api/
- WFO API (Swagger): https://workfloworchestrator.org/orchestrator-core/architecture/application/api/
- WFO API (repo): https://github.com/workfloworchestrator/orchestrator-core/tree/main/orchestrator/api/api_v1/endpoints
- WFO API (repo): https://github.com/workfloworchestrator/orchestrator-core/tree/main/orchestrator/api/api_v1/endpoints
- Carolina notes:
- Carolina notes:
Loading