mirror of
https://github.com/minio/minio.git
synced 2025-01-25 21:53:16 -05:00
Merge pull request #151 from harshavardhana/pr_out_a_full_restructure
A full restructure
This commit is contained in:
commit
460fd63f05
17
CONTRIB.md
17
CONTRIB.md
@ -1,17 +0,0 @@
|
|||||||
### Contribution Guidelines
|
|
||||||
We welcome your contributions. To make the process as seamless as possible, we ask for the following:
|
|
||||||
* Go ahead and fork the project and make your changes. We encourage pull requests to discuss code changes.
|
|
||||||
- Fork it
|
|
||||||
- Create your feature branch (git checkout -b my-new-feature)
|
|
||||||
- Commit your changes (git commit -am 'Add some feature')
|
|
||||||
- Push to the branch (git push origin my-new-feature)
|
|
||||||
- Create new Pull Request
|
|
||||||
* If you have additional dependencies for ``minio``, ``minio`` manages its depedencies using [godep](https://github.com/tools/godep)
|
|
||||||
- Run `go get foo/bar`
|
|
||||||
- Edit your code to import foo/bar
|
|
||||||
- Run `make save` from top-level directory (or `godep restore && godep save ./...`).
|
|
||||||
* When you're ready to create a pull request, be sure to:
|
|
||||||
- Have test cases for the new code. If you have questions about how to do it, please ask in your pull request.
|
|
||||||
- Run go fmt
|
|
||||||
- Squash your commits into a single commit. git rebase -i. It's okay to force update your pull request.
|
|
||||||
- Make sure go test -race ./... passes, and go build completes.
|
|
40
DEVELOPER.md
Normal file
40
DEVELOPER.md
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
### Setup your Minio Github Repository
|
||||||
|
Fork [Minio upstream](https://github.com/Minio-io/minio/fork) source repository to your own personal repository. Copy the URL and pass it to ``go get`` command. Go uses git to clone a copy into your project workspace folder.
|
||||||
|
```sh
|
||||||
|
$ git clone https://github.com/$USER_ID/minio
|
||||||
|
$ cd minio
|
||||||
|
$ mkdir -p ${GOPATH}/src/github.com/minio-io
|
||||||
|
$ ln -s ${PWD} $GOPATH/src/github.com/minio-io/
|
||||||
|
```
|
||||||
|
|
||||||
|
### Compiling Minio from source
|
||||||
|
Minio uses ``Makefile`` to wrap around some of the limitations of ``go build``. To compile Minio source, simply change to your workspace folder and type ``make``.
|
||||||
|
```sh
|
||||||
|
$ cd $GOPATH/src/github.com/$USER_ID/minio/
|
||||||
|
$ make
|
||||||
|
Checking if proper environment variables are set.. Done
|
||||||
|
...
|
||||||
|
Checking dependencies for Minio.. Done
|
||||||
|
...
|
||||||
|
...
|
||||||
|
Installed minio into /home/userid/work/minio/gopath/bin
|
||||||
|
Installed new-cmd into /home/userid/work/minio/gopath/bin
|
||||||
|
```
|
||||||
|
### Developer Guidelines
|
||||||
|
|
||||||
|
``minio`` community welcomes your contribution. To make the process as seamless as possible, we ask for the following:
|
||||||
|
* Go ahead and fork the project and make your changes. We encourage pull requests to discuss code changes.
|
||||||
|
- Fork it
|
||||||
|
- Create your feature branch (git checkout -b my-new-feature)
|
||||||
|
- Commit your changes (git commit -am 'Add some feature')
|
||||||
|
- Push to the branch (git push origin my-new-feature)
|
||||||
|
- Create new Pull Request
|
||||||
|
* If you have additional dependencies for ``minio``, ``minio`` manages its depedencies using [godep](https://github.com/tools/godep)
|
||||||
|
- Run `go get foo/bar`
|
||||||
|
- Edit your code to import foo/bar
|
||||||
|
- Run `make save` from top-level directory (or `godep restore && godep save ./...`).
|
||||||
|
* When you're ready to create a pull request, be sure to:
|
||||||
|
- Have test cases for the new code. If you have questions about how to do it, please ask in your pull request.
|
||||||
|
- Run go fmt
|
||||||
|
- Squash your commits into a single commit. git rebase -i. It's okay to force update your pull request.
|
||||||
|
- Make sure go test -race ./... passes, and go build completes.
|
34
Makefile
34
Makefile
@ -11,54 +11,54 @@ getdeps: checkdeps
|
|||||||
@go get golang.org/x/tools/cmd/cover && echo "Installed cover"
|
@go get golang.org/x/tools/cmd/cover && echo "Installed cover"
|
||||||
|
|
||||||
build-erasure:
|
build-erasure:
|
||||||
@$(MAKE) $(MAKE_OPTIONS) -C pkgs/erasure/isal lib
|
@$(MAKE) $(MAKE_OPTIONS) -C pkg/erasure/isal lib
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/erasure
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/erasure
|
||||||
|
|
||||||
build-signify:
|
build-signify:
|
||||||
@$(MAKE) $(MAKE_OPTIONS) -C pkgs/signify
|
@$(MAKE) $(MAKE_OPTIONS) -C pkg/signify
|
||||||
|
|
||||||
build-cpu:
|
build-cpu:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/cpu
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/cpu
|
||||||
|
|
||||||
build-md5:
|
build-md5:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/crypto/md5/
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/crypto/md5/
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/crypto/md5c/
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/crypto/md5c/
|
||||||
|
|
||||||
build-sha1:
|
build-sha1:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/crypto/sha1/
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/crypto/sha1/
|
||||||
|
|
||||||
build-sha256:
|
build-sha256:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/crypto/sha256/
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/crypto/sha256/
|
||||||
|
|
||||||
build-sha512:
|
build-sha512:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/crypto/sha512/
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/crypto/sha512/
|
||||||
|
|
||||||
build-crc32c:
|
build-crc32c:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/checksum/crc32c
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/checksum/crc32c
|
||||||
|
|
||||||
build-scsi:
|
build-scsi:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/scsi
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/scsi
|
||||||
|
|
||||||
build-split: build-strbyteconv
|
build-split: build-strbyteconv
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/split
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/split
|
||||||
|
|
||||||
build-strbyteconv:
|
build-strbyteconv:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/strbyteconv
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/strbyteconv
|
||||||
|
|
||||||
build-storage: build-storage-append build-storage-encoded
|
build-storage: build-storage-append build-storage-encoded
|
||||||
|
|
||||||
build-storage-append:
|
build-storage-append:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/storage/appendstorage
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/storage/appendstorage
|
||||||
|
|
||||||
build-storage-encoded:
|
build-storage-encoded:
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/storage/encodedstorage
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/storage/encodedstorage
|
||||||
|
|
||||||
cover: build-erasure build-signify build-split build-crc32c build-cpu build-scsi build-storage build-md5 build-sha1 build-sha256 build-sha512
|
cover: build-erasure build-signify build-split build-crc32c build-cpu build-scsi build-storage build-md5 build-sha1 build-sha256 build-sha512
|
||||||
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkgs/gateway
|
@godep go test -race -coverprofile=cover.out github.com/minio-io/minio/pkg/gateway
|
||||||
|
|
||||||
install: build-erasure
|
install: build-erasure
|
||||||
@godep go install github.com/minio-io/minio/cmd/minio && echo "Installed minio into ${GOPATH}/bin"
|
@godep go install github.com/minio-io/minio/cmd/minio && echo "Installed minio into ${GOPATH}/bin"
|
||||||
@godep go install github.com/minio-io/minio/cmd/minio-cli && echo "Installed minio-cli into ${GOPATH}/bin"
|
@godep go install github.com/minio-io/minio/cmd/new-cmd && echo "Installed new-cmd into ${GOPATH}/bin"
|
||||||
@godep go install github.com/minio-io/minio/cmd/crypto && echo "Installed crypto into ${GOPATH}/bin"
|
@godep go install github.com/minio-io/minio/cmd/crypto && echo "Installed crypto into ${GOPATH}/bin"
|
||||||
|
|
||||||
save: restore
|
save: restore
|
||||||
|
35
README.md
35
README.md
@ -1,38 +1,21 @@
|
|||||||
## Introduction
|
## Introduction
|
||||||
|
|
||||||
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/Minio-io/minio?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
||||||
|
|
||||||
Minio is an open source object storage released under [Apache license v2](./LICENSE) . It uses ``Rubberband Erasure`` coding to dynamically protect the data.
|
Minio is an open source object storage released under [Apache license v2](./LICENSE) . It uses ``Rubberband Erasure`` coding to dynamically protect the data.
|
||||||
Minio's design is inspired by Amazon's S3 for its API and Facebook's Haystack for its immutable data structure.
|
Minio's design is inspired by Amazon's S3 for its API and Facebook's Haystack for its immutable data structure.
|
||||||
|
|
||||||
### Install BUILD dependencies
|
### Download
|
||||||
|
|
||||||
[Build Dependencies](./DEVELOPERS.md)
|
-- No releases have been made yet --
|
||||||
|
|
||||||
### Setup your Minio Github Repository
|
|
||||||
Fork [Minio upstream](https://github.com/Minio-io/minio/fork) source repository to your own personal repository. Copy the URL and pass it to ``go get`` command. Go uses git to clone a copy into your project workspace folder.
|
|
||||||
```sh
|
|
||||||
$ go get -u github.com/$USER_ID/minio
|
|
||||||
$ cd $GOPATH/src/github.com/$USER_ID/minio/
|
|
||||||
$ git remote add upstream https://github.com/Minio-io/minio.git
|
|
||||||
```
|
|
||||||
|
|
||||||
### Compiling Minio from source
|
|
||||||
Minio uses ``Makefile`` to wrap around some of the limitations of ``go build``. To compile Minio source, simply change to your workspace folder and type ``make``.
|
|
||||||
```sh
|
|
||||||
$ cd $GOPATH/src/github.com/$USER_ID/minio/
|
|
||||||
$ make
|
|
||||||
Checking dependencies for Minio.. SUCCESS
|
|
||||||
...
|
|
||||||
...
|
|
||||||
Installed minio into /home/harsha/.gvm/pkgsets/go1.4/global/bin
|
|
||||||
Installed minio-cli into /home/harsha/.gvm/pkgsets/go1.4/global/bin
|
|
||||||
```
|
|
||||||
|
|
||||||
### Join Community
|
### Join Community
|
||||||
|
* [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/Minio-io/minio?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||||
* [Howto Contribute](./CONTRIB.md)
|
|
||||||
* IRC join channel #minio @ irc.freenode.net
|
* IRC join channel #minio @ irc.freenode.net
|
||||||
* Google Groups - minio-dev@googlegroups.com
|
* Google Groups - minio-dev@googlegroups.com
|
||||||
|
|
||||||
|
### Developers
|
||||||
|
|
||||||
|
* [Get Source](./DEVELOPER.md)
|
||||||
|
* [Build Dependencies](./BUILDDEPS.md)
|
||||||
|
* [Development Workflow](./DEVELOPER.md#developer-guidelines)
|
||||||
|
|
||||||
[![Analytics](https://ga-beacon.appspot.com/UA-56860620-3/minio/readme)](https://github.com/igrigorik/ga-beacon)
|
[![Analytics](https://ga-beacon.appspot.com/UA-56860620-3/minio/readme)](https://github.com/igrigorik/ga-beacon)
|
||||||
|
23
checkdeps.sh
23
checkdeps.sh
@ -1,5 +1,26 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
echo -n "Checking if proper environment variables are set.. "
|
||||||
|
|
||||||
|
echo ${GOROOT:?} 2>&1 >/dev/null
|
||||||
|
if [ $? -eq 1 ]; then
|
||||||
|
echo "ERROR"
|
||||||
|
echo "GOROOT environment variable missing, please refer to Go installation document"
|
||||||
|
echo "https://github.com/Minio-io/minio/blob/master/BUILDDEPS.md#install-go-13"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ${GOPATH:?} 2>&1 >/dev/null
|
||||||
|
if [ $? -eq 1 ]; then
|
||||||
|
echo "ERROR"
|
||||||
|
echo "GOPATH environment variable missing, please refer to Go installation document"
|
||||||
|
echo "https://github.com/Minio-io/minio/blob/master/BUILDDEPS.md#install-go-13"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Done"
|
||||||
|
echo "Using GOPATH=${GOPATH} and GOROOT=${GOROOT}"
|
||||||
|
|
||||||
echo -n "Checking dependencies for Minio.. "
|
echo -n "Checking dependencies for Minio.. "
|
||||||
|
|
||||||
## Check all dependencies are present
|
## Check all dependencies are present
|
||||||
@ -28,4 +49,4 @@ if [ "x${MISSING}" != "x" ]; then
|
|||||||
echo
|
echo
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
echo "SUCCESS"
|
echo "Done"
|
||||||
|
@ -25,10 +25,10 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/codegangsta/cli"
|
"github.com/codegangsta/cli"
|
||||||
"github.com/minio-io/minio/pkgs/crypto/md5"
|
"github.com/minio-io/minio/pkg/crypto/md5"
|
||||||
"github.com/minio-io/minio/pkgs/crypto/sha1"
|
"github.com/minio-io/minio/pkg/crypto/sha1"
|
||||||
"github.com/minio-io/minio/pkgs/crypto/sha256"
|
"github.com/minio-io/minio/pkg/crypto/sha256"
|
||||||
"github.com/minio-io/minio/pkgs/crypto/sha512"
|
"github.com/minio-io/minio/pkg/crypto/sha512"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Options = []cli.Command{
|
var Options = []cli.Command{
|
||||||
|
@ -10,7 +10,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/codegangsta/cli"
|
"github.com/codegangsta/cli"
|
||||||
"github.com/minio-io/minio/pkgs/strbyteconv"
|
"github.com/minio-io/minio/pkg/strbyteconv"
|
||||||
)
|
)
|
||||||
|
|
||||||
// config representing cli input
|
// config representing cli input
|
||||||
|
@ -6,8 +6,8 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/minio-io/minio/pkgs/storage"
|
"github.com/minio-io/minio/pkg/storage"
|
||||||
es "github.com/minio-io/minio/pkgs/storage/encodedstorage"
|
es "github.com/minio-io/minio/pkg/storage/encodedstorage"
|
||||||
)
|
)
|
||||||
|
|
||||||
func erasureGetList(config inputConfig, objectPath string) (io.Reader, error) {
|
func erasureGetList(config inputConfig, objectPath string) (io.Reader, error) {
|
||||||
|
@ -9,7 +9,7 @@ import (
|
|||||||
"text/template"
|
"text/template"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/minio-io/minio/pkgs/utils"
|
"github.com/minio-io/minio/pkg/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
type source struct {
|
type source struct {
|
||||||
@ -19,7 +19,7 @@ type source struct {
|
|||||||
|
|
||||||
const (
|
const (
|
||||||
// Relative path from GOPATH default
|
// Relative path from GOPATH default
|
||||||
TEMPLATEREPO = "/src/github.com/minio-io/minio/templates/"
|
TEMPLATEREPO = "/src/github.com/minio-io/minio/cmd/minio-cli/templates/"
|
||||||
)
|
)
|
||||||
|
|
||||||
type option struct {
|
type option struct {
|
@ -28,7 +28,7 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
"unsafe"
|
"unsafe"
|
||||||
|
|
||||||
"github.com/minio-io/minio/pkgs/cpu"
|
"github.com/minio-io/minio/pkg/cpu"
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user