{"id":25495958,"url":"https://github.com/opennetworkinglab/spring-open","last_synced_at":"2025-11-09T21:30:21.866Z","repository":{"id":24188903,"uuid":"27579947","full_name":"opennetworkinglab/spring-open","owner":"opennetworkinglab","description":null,"archived":false,"fork":false,"pushed_at":"2015-01-20T21:22:51.000Z","size":36594,"stargazers_count":6,"open_issues_count":0,"forks_count":4,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-03-26T18:02:33.118Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/opennetworkinglab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-12-05T07:28:36.000Z","updated_at":"2021-11-09T10:56:03.000Z","dependencies_parsed_at":"2022-07-27T04:32:26.980Z","dependency_job_id":null,"html_url":"https://github.com/opennetworkinglab/spring-open","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opennetworkinglab%2Fspring-open","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opennetworkinglab%2Fspring-open/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opennetworkinglab%2Fspring-open/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opennetworkinglab%2Fspring-open/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/opennetworkinglab","download_url":"https://codeload.github.com/opennetworkinglab/spring-open/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239576797,"owners_count":19662113,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-19T00:52:49.388Z","updated_at":"2025-11-09T21:30:21.818Z","avatar_url":"https://github.com/opennetworkinglab.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"ONOS for SPRING-OPEN\n====\n\nONOS (Open Networking Operating System) was release publicly Dec 5th -- ONOS Avocet.\nFor details see here:\n\nhttps://wiki.onosproject.org/display/ONOS/Downloads\n\nThe segment routing use case is built on an older internal release of ONOS (Sept 2014). The following instructions do not apply to ONOS 1.0.0 (Avocet), and are meant only for the SPRING-OPEN project.\n\n\nGetting Started with SPRING-OPEN\n-------------------------\n\nFollowing URL has the instructions how to get started with ONOS for spring-open, starting from \ndownloading the pre-built VM:\n\nhttps://wiki.onosproject.org/display/ONOS/Installation+Guide\n\nUsing the instructions on the wiki is recommended. \n\nThe instructions below are kept only for historical purposes.\n\n\nBuilding ONOS\n-------------\n\n1. Cleanly build ONOS\n\n        $ cd ${ONOS_HOME}/\n        $ mvn clean compile\n\nExternal Dependencies\n---------------------\n1. Required packages\n\n        $ sudo apt-get install maven python-flask python-cmd2 python-pyparsing\n\n2. ZooKeeper\n\n    Download and install apache-zookeeper-3.4.6:\n    http://zookeeper.apache.org/releases.html\n    \n    By default ONOS expect ZooKeeper to be installed in `~/zookeeper-3.4.6`.  \n    This can be changed by specifing the path using `ZK_HOME` environment variable.\n    \n    Data directory ZooKeeper uses by default is `/var/lib/zookeeper`.\n    You will need to give current user permission to write to this directory.\n    \n    This directory can be changed using specifying `ZK_LIB_DIR` environment variable and \n    running `./onos.sh setup` to generate `${ONOS_HOME}/conf/zoo.cfg`.\n    \n    See Configuration for details about `./onos.sh setup`.\n\n\n    \nConfiguration\n-------------\n`./onos.sh setup` script is used to generate ONOS related configuration files.\nThis script read configuration from \"${ONOS_CONF_DIR}/onos_node.\\`hostname\\`.conf\".\n\nCopy the file \"${ONOS_HOME}/conf/onos_node.conf\" to match the hostname and configure \nthe content appropriately.  \n\n\nOnce you're done with required configuration run following to generate configuration files.\n\n        $ cd ${ONOS_HOME}/\n        $ ./onos.sh setup\n\n\nRunning ONOS and required components\n------------------------------------\nTo start ZooKeeper,  and ONOS core.\n\n        $ cd ${ONOS_HOME}/\n        $ ./onos.sh start \n\nTo stop all the above\n\n        $ cd ${ONOS_HOME}/\n        $ ./onos.sh stop\n\n\nRunning ONOS components one by one\n----------------------------------\nYou can manually start/stop individual ONOS components as follows:\n\n1. Start Zookeeper\n\n        $ cd ${ONOS_HOME}/\n        $ ./onos.sh zk start\n\n        ## Confirm Zookeeper is running:\n        $ ./onos.sh zk status\n\n\n2. Start ONOS\n\n        $ cd ${ONOS_HOME}/\n        $ ./onos.sh core start\n\n        ## Confirm ONOS is running:\n        $ ./onos.sh core status\n\n\nRunning unit tests\n------------------\nUnit tests bundled with ONOS source code, can be executed by using the following:\n\n        $ cd ${ONOS_HOME}/\n        $ mvn test\n\nSome of the unit tests, which take longer time to execute are excluded from the above goal.\nTo force running all the unit tests, use the following commands:\n\n        $ cd ${ONOS_HOME}/\n        $ mvn test -P all-tests\n\nTo run only a subset of the unit tests, use the following commands:\n\n        $ cd ${ONOS_HOME}/\n        $ mvn test -Dtest=PortNumberTest\n\nComma and wildcards can be used to specify multiple test cases.\nSee [maven-surefire-plugin website](http://maven.apache.org/surefire/maven-surefire-plugin/examples/single-test.html) for details.\n\nRunning static analysis\n-----------------------\nONOS utilizes several [static analysis tools](https://wiki.onlab.us/display/onosdocs/ONOS+Coding+Style#ONOSCodingStyle-Codestaticanalysistools) to detect programmatic and formatting errors.\nTo run some of the analysis against the code, use the following commands:\n\n        $ cd ${ONOS_HOME}\n        $ mvn clean verify -P error-prone\n\n\nDownloading dependencies (Optional)\n-----------------------------------\n\nMaven need the Internet connection to download required dependencies and plugins,\nwhen they're used for the first time.\n\nIf you need to develop ONOS in an Internet unreachable environment\nyou may want to run the following helper script before you go offline,\nso that required dependencies and plugins for frequently used maven target will be\ndownloaded to your local environment.\n\n        $ ./prep-for-offline.sh\n\nLicense\n-------\nApache 2.0\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopennetworkinglab%2Fspring-open","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopennetworkinglab%2Fspring-open","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopennetworkinglab%2Fspring-open/lists"}