This is the main code repository of Onedata - a global data management system, providing easy access to distributed storage resources, supporting wide range of use cases from personal data management to data-intensive scientific computations.
Onedata is composed of several components:
This repository combines these components into one source package, which can be used to build and test complete Onedata platform. Each of the components consists of the following submodules of this repository:
Submodule | URL | Description |
---|---|---|
Cluster Manager | https://github.com/onedata/cluster-manager | Common Onedata component shared between Onezone and Oneprovider, which monitors and controls Onedata worker processes at site level. |
Cluster Worker | https://github.com/onedata/cluster-worker | Common Onedata worker process implementation, shared between Onezone and Oneprovider. |
Submodule | URL | Description |
---|---|---|
Onezone worker | https://github.com/onedata/oz-worker | Main Onezone functional component, based on the Cluster Worker framework. |
Submodule | URL | Description |
---|---|---|
Oneprovider worker | https://github.com/onedata/op-worker | Main Oneprovider functional component, based on the Cluster Worker framework. |
Submodule | URL | Description |
---|---|---|
Oneclient | https://github.com/onedata/oneclient | Oneclient command line tool implementation. |
Submodule | URL | Description |
---|---|---|
Onepanel | https://github.com/onedata/onepanel | Onepanel administration service implementation. |
Submodule | URL | Description |
---|---|---|
LUMA | https://github.com/onedata/luma | Local User MApping service reference implementation. |
Submodule | URL | Description |
---|---|---|
Appmock | https://github.com/onedata/appmock | Appmock is used during testing to mock any service which exposes REST API. |
Bamboo scripts | https://github.com/onedata/bamboos | Bamboos is used for automating test deployments in bamboo during Onedata integration tests. |
Tests | https://github.com/onedata/tests | Main Onedata tests repository. |
In order to initialize all submodules please use:
make submodules
instead of directly invoking Git submodule
commands.
The easiest way to get started with using or deploying Onedata is to start with our official documentation.
In order to try deploying Onedata, or specific components we have prepared a set of example configurations and scenarios.
The best way to use Onedata is to use our Docker images available at Docker Hub or the binary packages available here. Currently the binary packages are only available for Oneclient component.
This repository can be also used to build entire Onedata system by invoking:
make
The build process itself is fully based on Docker containers, so no other prerequisites other than Docker should be necessary. In case of problems with Docker cache, please set NO_CACHE=1
environment variable.
Please use GitHub issues mechanism as the main channel for reporting bugs and requesting support or new features.
For more detailed support and discussions online please contact as at our public HipChat channel, however our availability at this channel is a on a best effort basis.
More information about support can be found here.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
This work was supported in part by 2017's research funds in the scope of the co-financed international projects framework (project no. 3711/H2020/2017/2).