diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..578c7fb --- /dev/null +++ b/README.md @@ -0,0 +1,129 @@ +# ONAP data provider + +Data ingestion service for ONAP + +## Description + +Data provider is a project to provide a tool to automate common ONAP resource creation. For many of tasks in ONAP some resources are needed and could be created once, like cloud region, complex or customer in A\&AI. With that tool it can be automated to create them for every ONAP instance. It can be also used to create requested resource on already running instance on demand. + +## Usage + +This project is intended to be included in automation chain, e.g. triggered from the pipeline. +You can also run it locally using Python interpreter or Docker image. + +### Installation + +To run `onap-data-provider` Python >= 3.8 version is required. Install it using + +``` +python setup.py install +``` + +command. You can call then + +``` +onap-data-provider +``` + +command. + +### Run locally + +When installed `onap-data-provider` is ready to work. We need some data to be created. Let's use `samples/vendor.yaml` and create SDC's Vendor resource. Call + +``` +onap-data-provider -f samples/vendor.yaml +``` + +and in your ONAP instance Vendor resource should be created. If that resource already exists no new data will be created. Check `samples` directory to get more examples of files which describes resources to create. + +You can use multiple files as an input: + +``` +onap-data-provider -f samples/vendor.yaml -f samples/vsp.yaml +``` + +Directories could be used as well: + +``` +onap-data-provider -f samples/ +``` + +### Configuration + +Configuration is needed if your environment setup is different that usuall so ONAP components listen on different hosts/ports than default, so are available on other URLs than: + +``` +AAI_URL = "https://aai.api.sparky.simpledemo.onap.org:30233" +CDS_URL = "http://portal.api.simpledemo.onap.org:30449" +MSB_URL = "https://msb.api.simpledemo.onap.org:30283" +SDC_BE_URL = "https://sdc.api.be.simpledemo.onap.org:30204" +SDC_FE_URL = "https://sdc.api.fe.simpledemo.onap.org:30207" +SDNC_URL = "https://sdnc.api.simpledemo.onap.org:30267" +SO_URL = "http://so.api.simpledemo.onap.org:30277" +VID_URL = "https://vid.api.simpledemo.onap.org:30200" +CLAMP_URL = "https://clamp.api.simpledemo.onap.org:30258" +VES_URL = "http://ves.api.simpledemo.onap.org:30417" +DMAAP_URL = "http://dmaap.api.simpledemo.onap.org:3904" +``` + +If you want to use another URLs you need to override default `onap-data-provider` settings by create Python file with values you want to use. Example: I want to test `onap-data-provider` data creation on my "test" ONAP instance which is available on "172.17.0.1" IP address, so I need to create `my_test_onap_instance_settings.py` Python file which looks: + +``` +AAI_URL = "https://172.17.0.1:30233" +CDS_URL = "http://172.17.0.1:30449" +MSB_URL = "https://172.17.0.1:30283" +SDC_BE_URL = "https://172.17.0.1:30204" +SDC_FE_URL = "https://172.17.0.1:30207" +SDNC_URL = "https://172.17.0.1:30267" +SO_URL = "http://172.17.0.1:30277" +VID_URL = "https://172.17.0.1:30200" +CLAMP_URL = "https://172.17.0.1:30258" +VES_URL = "http://172.17.0.1:30417" +DMAAP_URL = "http://172.17.0.1:3904" +``` + +and then if I call + +``` +ONAP_PYTHON_SDK_SETTINGS=my_test_onap_instance_settings onap-data-provider ... +``` + +all data are going to be created on my local instance. + +### Set proxy + +ONAP data provider can be run with proxy configured. You need to pass urls you want to use for proxy connection as `--proxy` arguments. Call `onap-data-provider -f <infra-file> --proxy http://localhost:8080 https://localhost:8080` to setup proxy for `http` and `https` on `localhost:8080` address. + +## Data verification + +You can verify the data provided is correct, before you would try to actually push it +to the ONAP instance. To do so, use the flag `--validate-only`: + +``` +onap-data-provider -f samples/vendor.yml --validate-only +``` + +For reference, please see example data files under `samples/` directory. + +## Development and testing + +The following utilities are used within the project: + +- Black +- mypy +- pydocstyle + +To run all the tests (unit tests, linter and mypy checks), install tox and then run it: + +``` +pip install tox +tox . +``` + +## Licenses + +The software that data-provider is built on uses the following licenses. + +- Apache 2 License: onapsdk +- MIT license: PyYAML, jsonschema |