diff --git a/README.md b/README.md index c4b3791cd..f2c88610c 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,6 @@ ![logo](Documentation/media/logo.png?raw=true "Rook") -[![Circle CI](https://circleci.com/gh/rook/rook.svg?style=svg&circle-token=2b2ee7eb7f621e612a76f861353e141a8caaf8dd)](https://circleci.com/gh/rook/rook) -[![Build Status](https://jenkins.rook.io/job/ci-build-stateful/badge/icon)](https://jenkins.rook.io/job/ci-build-stateful/) +[![Build Status](https://jenkins.rook.io/job/ci-rook/badge/icon)](https://jenkins.rook.io/job/ci-rook/) ## Open, Cloud Native, and Universal Distributed Storage @@ -41,34 +40,42 @@ On a modern Linux host run the following: 1. Download the latest binaries -```bash -$ wget https://github.com/rook/rook/releases/download/v0.0.6/rook-v0.0.6-linux-amd64.tar.gz -$ tar xvf rook-v0.0.6-linux-amd64.tar.gz -``` + ```bash + $ wget https://github.com/rook/rook/releases/download/v0.1.0/rook-v0.1.0-linux-amd64.tar.gz + $ tar xvf rook-v0.1.0-linux-amd64.tar.gz + ``` 2. Start a one node Rook cluster -```bash -$ ./rookd --data-dir /tmp/rook-test -``` + ```bash + $ ./rookd --data-dir /tmp/rook-test + ``` 3. Now in a different shell (in the same path) create a new volume image (10MB) -```bash -$ ./rook block create --name test --size 10485760 -``` + ```bash + $ ./rook block create --name test --size 10485760 + ``` 4. Mount the block volume and format it -```bash -sudo ./rook block mount --name test --path /tmp/rook-volume -``` + ```bash + sudo ./rook block mount --name test --path /tmp/rook-volume + sudo chown $USER:$USER /tmp/rook-volume + ``` 5. Write and read a file -```bash -echo "Hello Rook!" > /tmp/rook-volume/hello -cat /tmp/rook-volume/hello -``` + + ```bash + echo "Hello Rook!" > /tmp/rook-volume/hello + cat /tmp/rook-volume/hello + ``` + +6. Cleanup + + ```bash + sudo ./rook block unmount --path /tmp/rook-volume + ``` ### Kubernetes @@ -131,4 +138,6 @@ Please use the following to reach members of the community: ## Licensing -Rook is under the Apache 2.0 license. +Rook and Etcd are under the Apache 2.0 license. Ceph is mostly under the LGPL 2.0 license. Some portions +of the code are under different licenses. The appropriate license information can be found in the headers +of the source files. diff --git a/pkg/cephmgr/cephd/cephd.go b/pkg/cephmgr/cephd/cephd.go index d12de3759..ce79c9e79 100644 --- a/pkg/cephmgr/cephd/cephd.go +++ b/pkg/cephmgr/cephd/cephd.go @@ -12,7 +12,33 @@ 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. + +Some of the code below came from https://github.com/ceph/go-ceph +which has the following license: + +The MIT License (MIT) + +Copyright (c) 2014 Noah Watkins + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. */ + package cephd // #cgo CFLAGS: -I${SRCDIR}/../../../ceph/src/include @@ -137,10 +163,6 @@ func (c *ceph) RunDaemon(daemon string, args ...string) error { return nil } -// TODO: the below rados_connect and rados_mon_command is from go-ceph: https://github.com/ceph/go-ceph -// If it stays, then applicable LICENSE needs to be added. A better approach would be to create a -// wrapper in libcephd around MonCommand, and remove this go-ceph code and embedded librados altogether. - // conn is a connection handle to a Ceph cluster. type conn struct { cluster C.rados_t diff --git a/pkg/util/proc/process_unix.go b/pkg/util/proc/process_unix.go index 883113600..2daaddc37 100644 --- a/pkg/util/proc/process_unix.go +++ b/pkg/util/proc/process_unix.go @@ -1,23 +1,27 @@ /* -Copyright 2016 The Rook Authors. All rights reserved. +The MIT License (MIT) -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 +Copyright (c) 2014 Mitchell Hashimoto - http://www.apache.org/licenses/LICENSE-2.0 +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -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. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. */ -// TODO: this source is from https://github.com/mitchellh/go-ps/blob/master/process_unix.go -// and it has some additional functionality. Propery license this code, or even better fork -// the repo and get our additions into upstream, then just consume upstream via vendoring. - package proc import (