Commit Graph
105 Commits
Author SHA1 Message Date
moricho f556add260 codegen: use the bopilerplate for the header of the generated codes
This specifies `--output-base` and `--go-header-file` option at executing `code-generator`.

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-30 17:54:56 +09:00
moricho 7d0215d820 ci: switch to use go.mod.check target
This switches to use `go.mod.check` target instead of `go.vendor.check` target.

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-17 16:48:43 +09:00
moricho 437a0b1d9b go: versionup sig-storage-lib-external-provisioner/controller
version up sig-storage-lib-external-provisioner/controller to v4.1.0 and
modify related files

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-17 16:47:55 +09:00
moricho 2beb731a7e go: move to gomodules
This switches Rook to use `go mod` instead of `dep` for
dependencies management.

Signed-off-by: moricho <ikeda.morito@gmail.com>
2020-03-17 16:47:53 +09:00
Travis Nielsen a960e263db ceph: remove obsolete longhaul tests
The longhaul tests have not been run for a very long time,
on the order of two years. The intention is to get them running
again, but until then it is better to purge the obsolete sources
than to attempt to keep them building. We'll need to rewrite them
when they are restored.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-02-17 14:11:39 -07:00
taeuk_kim 58a99c5410 build: fix typo in makelib
Fix a grammer typo in /build/makelib/golang.mk

Signed-off-by: taeuk_kim <taeuk_kim@tmax.co.kr>
2020-01-13 21:37:14 +09:00
Travis Nielsen 55c5f44cb1 Merge pull request #4632 from HaichaoLii/rook-arm
Dep: Update golang dep to support Arm64
2020-01-10 23:50:10 -07:00
Haichao Li 065bb6677e Dep: Update golang dep to support Arm64
Current Rook code uses go dep 0.5.0 and separates handling
for Arm and x86. It's because there's no dep 0.5.0 binary
for arm64.Dep has updated to 0.5.4 and supports arm64. Rook
code can be simplified by upgrading dep to fix gaps of Arm
and x86.

Change-Id: Id91a993ca059461faa8a83065c93dadc7cdffeb2
Signed-off-by: Haichao Li <haichao.li@arm.com>
2020-01-09 10:13:54 +08:00
Travis Nielsen 9a078bf9e6 minio: remove from rook
The minio operator has not had community support nor
any updates since being added to Rook. Support is being
removed from Rook due to this lack of community interest.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-01-08 15:45:21 -08:00
Ashish Ranjan ec7bd4dda0 enhance: Updates Makefile to allow compiling with go 1.13
This commit updates Makefile to allow compiling with golang 1.13.

Signed-off-by: Ashish Ranjan <aranjan@redhat.com>
2019-09-25 21:22:12 +05:30
Dinar Valeev df7580e86c Remove helm incompatible chars from values.yaml
Remove %% around VERSION in charts yaml, so helm can process it.

Otherwise helm complains:
"unmarshal vendor values: yaml: line 7: found character that cannot start any token"

Signed-off-by: Dinar Valeev <k0da@opensuse.org>
2019-09-16 10:29:10 +02:00
Dinar Valeev f81145a283 bugfix: copy helm chart aside for packaging
In order to not leave any modified file after release, lets put
chart tree aside and run sed logic on it.

Signed-off-by: Dinar Valeev <k0da@opensuse.org>
2019-09-01 19:12:26 +02:00
Travis Nielsen d11481ebe4 Merge pull request #3701 from k0da/helm_chart
helm: rename values.yaml.tmpl to values.yaml
2019-08-27 15:23:51 -06:00
Sameer Kulkarni dd9e51286e yugabytedb: rook/yugabutedb image build
Signed-off-by: Sameer Kulkarni <samkulkarni20@gmail.com>
2019-08-27 22:45:14 +05:30
Dinar Valeev d52bd0278b helm: rename values.yaml.tmpl to values.yaml
version can be set over values.yaml directly, there is no reason
to copy over a file, while lack of values.yaml file makes git tree
helm incompatible.

This is low effort fix for https://github.com/rook/rook/issues/3217

Signed-off-by: Dinar Valeev <k0da@opensuse.org>
2019-08-27 00:06:48 +02:00
Guy Margalit 2ce2382676 Refactor operator context init and allow to run local
Signed-off-by: Guy Margalit <guymguym@gmail.com>
Co-Authored-By: Sébastien Han <seb@redhat.com>
Co-Authored-By: Travis Nielsen <tnielsen@redhat.com>

This change is meant to allow running operators locally on a developer machine.
The idea is to allow faster development cycles by reducing the time and complexity of building -> deploying -> debugging on cluster.

For operators that rely only on kubernetes API this works easily - see cockroachdb and minio examples in development-flow doc.

The change includes:

- rook.NewContext() - Refactored to remove repeating initialization code that was copy-pasted in most of the operators in order to create the clusterd.Context and the Clientsets. Also it detects the mode of working in-cluster vs external and sets up the external mode with standard user config (~/.kube/config) and a job executor.
- rook.GetOperatorImage() - Refactor this repeating code in many operators to detect the operator pod image. Also added a global flag --operator-image that developers can use to override this when running locally.
- rook.TerminateOnError() - Added a convenient function.
2019-06-19 20:47:55 +03:00
Alexander Trost a33503493b Added Golang v1.12 to supported versions
Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2019-03-14 09:45:45 +01:00
John Mulligan 49f3b68dea build: support specifying custom sha-256 hash command
Create a makefile (and shell) variable that can be used to invoke a
different command line, such as 'sha256sum' instead of the default
'shasum -a 256'. The shasum tool is left as the default but, at least on
fedora, this comes from a perl package and it may be that sha256sum,
which comes from coreutils would allow building on a more minimal
install.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2019-02-25 18:49:11 -05:00
Dmitry Yusupov 4f958162e1 Edgefs Image
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2018-12-05 23:05:42 -08:00
Yannis Zarkadas 0ccc04cccd cassandra: controller scaffolding, image build and manifests
Scaffolding of a Kubernetes controller using the informer-workqueue
pattern.
Dockerfiles and Makefiles to build the cassandra operator image.
Manifests to deploy the Cassandra operator and create a Cluster CRD.

Signed-off-by: Yannis Zarkadas <yanniszarkadas@gmail.com>
2018-12-05 12:44:29 +02:00
Alexander Trost ac19f85fbb Allow specifying custom Ceph user and secret name for mounting
Introduce mount security mode for basic multi tenancy

Fixes #2164.

This adds three new parameters/options to StorageClass/flexvolume entry:
* `mountUser`
* `mountSecret`
* `mountSecretNamespace`

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-12-04 20:17:15 +01:00
travisn efd581e7ed start toolbox pod with the ceph image instead of a separate image
Signed-off-by: travisn <tnielsen@redhat.com>
2018-10-02 15:43:53 -06:00
Bassam Tabbara eabc9bde1a simplify dependencies and add vendor.update target
remove all cosntraints that are not really needed from Gopkg.toml.
we should only be adding constraints that are direct dependencies
of the project and we require a specific version/revision of.

added a vendor.update makefile target that can be used to update
dependencies to the latest.

Signed-off-by: Bassam Tabbara <bassam@upbound.io>
2018-09-30 16:01:43 -07:00
Bassam Tabbara 2464e32857 add vendor checks
this commit updates dep to version 0.5, and adds a check during
CI runs that enforces that the vendor dependencies have not changed.
There is a now a makefile target `make vendor.check` that performs
this check. Also removed the requirement that PR run make vendor as
this will be done by CI.

Signed-off-by: Bassam Tabbara <bassam@upbound.io>
2018-09-30 08:10:42 -07:00
Bassam Tabbara 1503484ce9 fix the check for dep ensure
the exit code from dep ensure --dry-run was not being checked
correctly resulting a lots of false negatives.

Signed-off-by: Bassam Tabbara <bassam@upbound.io>
2018-09-19 07:41:36 -07:00
Bassam Tabbara 98cefc66de use a consistent version of gofmt
Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
2018-09-12 10:53:53 -07:00
Ganesh Maharaj Mahalingam 92f91ab156 golang 1.11 support
Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
2018-09-12 10:53:53 -07:00
Dennis Chen 1c2de4b55d Add golang 1.11 version support
Now the golang version 1.1 has been released by the official
website[1], so let's add support for this version, else we'll
get below build error when using golang 1.11:

```
build/makelib/golang.mk:103: *** unsupported go version. Please
make install one of the following supported version: '1.7|1.8|1.9|1.10'.  Stop.
```

[1] https://golang.org/dl/

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2018-09-12 17:55:02 +08:00
rohan47 8d85b6f4a8 nfs: rook/nfs image build
Signed-off-by: rohan47 <rohanrgupta1996@gmail.com>
2018-08-22 10:34:40 +00:00
ichekrygin 09e99df974 Update version generation to produce a valid semver value
Adjust `sed` command for BSD version, which does not support '/x/y/2g'

Signed-off-by: ichekrygin <illya.chekrygin@gmail.com>
2018-08-14 23:53:45 -07:00
Blaine Gardner 483163fc21 make: Allow building select images
Raise the scope of the `IMAGES` config variable in the
`build/release/Makefile` to the `build/makelib/common.mk` file, and use
the `IMAGES` variable in the `images/Makefile` to allow users to build
only select images.

Examples of new use:
  make IMAGES='ceph ceph-toolbox' build
  make -C build/release IMAGES='ceph ceph-toolbox' publish

The 'images/image.mk' clean.build target was changed to use
`CLEAN_IMAGES` instead of `IMAGES`, as it was conflicting with use of
the parameter in image builds.

Added IMAGES option to top-level make's help text. The text for this
option exceeded 80 lines in the `Makefile` itself, so the help text was
refactored to eliminate `    @echo '<text>'`. The `Makefile` text should
now match exactly what is output to the user including line length.

Added IMAGES option to `INSTALL.md` file's "Build" section and also
moved some text around and added a few extra points of clarification
there to hopefully improve readability, especially for first-time
readers.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-07-20 15:49:46 -06:00
Blaine Gardner 2a872bf1cd images: Use ceph daemon-base as rook base
Instead of adding Ceph packages to Rook's base image, use
ceph-container's base image, which has Ceph packages preinstalled. Rook
now benefits from the testing the ceph-container project does, and the
scope of the Rook project no longer has to maintain builds of base
images containing Ceph packages.

The only ARM builds of ceph-container are CentOS, and as switching to
CentOS was already a thought, that is easily done at the same time as
this change.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-05-23 15:37:31 -06:00
Jared Watts 3a2a2d2021 build: rook/ceph image build
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-05-18 14:25:39 -07:00
Dennis Chen 31ca7a080d Golang dep tool workaround on AArch64
Currently there's no official `dep` tool release for arm64, so we
use `go get -u github.com/golang/dep/cmd/dep` command instead of
`curl` official release to workaround this issue, order to support
native build on arm64 server. Will remove this once official arm64
release of `dep` announced.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2018-04-20 16:30:49 +08:00
Dennis Chen f376651f63 Bump golang dep tool to v0.4.1 version
golang dep release v0.4.1 version on Jan 25 [1], this PR
bump its version from v0.3.2 to the latest version.

[1] https://github.com/golang/dep/releases

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2018-04-18 08:18:35 +00:00
Jared Watts c35754ece8 Add golang 1.10 to supported list, minor updates to dev flow instructions
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-02-26 14:41:28 -08:00
Bassam Tabbara 6b89a8feda build: use new S3 buckets
Signed-off-by: Bassam Tabbara <bassam@upbound.io>
2018-02-26 08:55:50 -08:00
Bassam Tabbara 07463fa0dd images: disable armhf image builds
While ceph can build fine on armhf it is not a tested configuration
today nor are debian packages for ceph published. Also ceph requires
more horsepower than is typically available on armhf machines.

We are dropping armhf support for now. arm64 is still supported.
2018-01-08 21:06:11 -08:00
Wil Reichert bf891be243 use BSD / GNU agnotic sed & date params 2017-11-17 17:24:02 -07:00
Bassam Tabbara e5d895a0a1 build: speedup calls to dep ensure
dep ensure blindly updates the whole vendor tree causing everything to be rebuilt. This workaround will only call dep ensure if the .lock file changes or if the vendor dir is non-existent.
2017-11-10 08:47:22 -08:00
Bassam Tabbara f123a46dee move to dep 2017-10-27 16:04:03 -07:00
Bassam Tabbara 1654ebe9eb build: upgrade glide to v0.13.0 2017-10-27 11:57:29 -07:00
Bassam Tabbara 9d5a7e945c build: ensure build concurrency only across platforms
this commit will ensure that any concurrency during the go build only happens across platforms, and no concurrent calls to go build or go install happen for a given platform.

the goal here is to reduce races between concurrent invocations of go build where package files are removed form the file system leading to "can't find import" errors.
2017-10-24 12:44:18 -07:00
Divesh Angula 21228d4d4b CI updates
- Add support for running individual test in a tests suite
 - building integration and longhaul test binaries
 - Addiing support for skipping CI or running just smoke test on a PR.
2017-09-21 15:52:12 -07:00
Bassam Tabbara a3c5a8e8d0 build: export GOARM env variable 2017-08-25 10:22:22 -07:00
Bassam Tabbara e868693cb1 build: upgrade to golang 1.9 2017-08-24 22:16:09 -07:00
Bassam Tabbara 181ddf1bc8 build: ensure we use always use a semver 2017-08-11 20:36:45 -07:00
Bassam Tabbara 9f6d3798e5 build: publish and promote helm charts
we now support charts.rook.io
2017-08-10 13:26:45 -07:00
Bassam Tabbara 556d221c93 build: build helm charts and reorganize demo dir
moved the helm charts and demo files to a `cluster` directory

helm charts are now built by the makefiles, and version tag is updated automagically.
2017-08-09 12:57:39 -07:00
Bassam Tabbara a9d4f68a8d build: fix image platform support 2017-07-21 22:18:25 -07:00