Commit Graph
218 Commits
Author SHA1 Message Date
travisn 1d97a6089d build: sanitize the master tag
The master branch uses the first tag from the last release
to create the version tag. Since the 1.1 release this tag
can include the alpha, beta, or rc tags, which only make
sense for the release tags, but not the master tag. This
change removes the suffix from the master tag.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-10-14 10:58:51 -06: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
Dmitry Yusupov b0dffa6f9b Merge pull request #3702 from sabbot/transition-to-v1
Declare EdgeFS CRDs as v1
2019-08-29 11:26:45 -07:00
Anton Skriptsov c0fe6af712 Initial v1
Signed-off-by: Anton Skriptsov <sabbotagge@gmail.com>
2019-08-28 15:18:38 -07:00
travisn 82b5c0d48d allow git tags to be added for alpha, beta, or rc releases
The tag pipeline currently only allows a strict versioning tag to be
applied with the major, minor, and patch numbers such as v1.1.0.
This change allows adding a suffix to the tag to support alpha,
beta, or rc releases. For example, the version can now be
v1.1.0-alpha.0 or v1.1.0-beta.1 or v1.1.0-rc.2

Signed-off-by: travisn <tnielsen@redhat.com>
2019-08-27 16:18:26 -06: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
travisn 9e073857c5 ceph: remove legacy conversion from v1beta1 to v1
In the 0.9 release rook converted the v1beta1 CRD resources
to v1 resources. This conversion code is no longer necessary
as we will be using v1 resources going forward.
The code paths will not be triggered anymore, thus
removing the dead code.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-07-15 16:58:37 -06: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
travisn 81f55a12eb build: promote builds only to master and release
The alpha, beta, and stable channels do not match the rook release process.
Each storage provider defines their own stability based on the CRDs
rather than defining it with the release process. Rook really
only has two release streams: master and the official releases.
Master is published with each merge, while releases go through
a signoff process to ensure quality. Thus, the alpha, beta,
and stable channels are removed and replaced with a
single release channel.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-27 22:49:11 -06:00
Anton Skriptsov 5746c03446 v1beta1 api's and codegenerated files
Signed-off-by: Anton Skriptsov <sabbotagge@gmail.com>
2019-04-24 16:32:47 -07:00
travisn ecdb55b2be ceph: correct code generation for plural CephNFSes
Signed-off-by: travisn <tnielsen@redhat.com>
2019-04-23 13:36:45 -06: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 c3e863d1a9 build: support specifying custom 'docker' command in run script
Allow the default 'docker' command to be overridden by an environment
variable in the "build/run" shell script and the supporting library
file.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
2019-02-25 18:49:11 -05: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
Michael Goff f88a9b78ba docs: Update the build process to use the new docs build process
Signed-off-by: Michael Goff <thephred@gmail.com>
2019-02-13 11:20:41 -08:00
Dmitry Yusupov 18634ccb87 Edgefs codegen and clientset
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2018-12-05 23:05:43 -08:00
Dmitry Yusupov 4f958162e1 Edgefs Image
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2018-12-05 23:05:42 -08:00
travisn df78f6ad6e remove obsolete rook v1alpha1 types
Signed-off-by: travisn <tnielsen@redhat.com>
2018-12-05 14:33:10 -07:00
travisn 501c3a6681 codegen for the ceph v1 types
Signed-off-by: travisn <tnielsen@redhat.com>
2018-12-05 14:33:00 -07: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
Yannis Zarkadas 2b0614a77c cassandra: code generation
Edited codegen.sh to include cassandra.
Then, run make codegen to generate the rest of the files.

Signed-off-by: Yannis Zarkadas <yanniszarkadas@gmail.com>
2018-12-05 12:41:27 +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
Bassam Tabbara e2fd1eb8e6 Merge pull request #2054 from SUSE/ceph-makefiles-skip-image-save
Image build/release: do not save image for builds; save only for release
2018-08-23 10:09:19 -07:00
Blaine Gardner 60b4a1e4d3 Image make: Move save image step to release builds
The image save step in the image build makefiles takes half or more of
the time of builds, and this step is not necessary for development
builds. Move this functionality to the `build/release/Makefile` so that
images are saved during release builds but not during dev builds. This
will allow developers to iterate more quickly on their builds.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-08-23 09:49:56 -06:00
rohan47 8d85b6f4a8 nfs: rook/nfs image build
Signed-off-by: rohan47 <rohanrgupta1996@gmail.com>
2018-08-22 10:34:40 +00:00
Jared Watts dd948b155a build: remove support for quay.io
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-08-17 14:03:55 -07: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
Jared Watts 31d29fe4e7 release: update release approval policy to be in accordance with governance
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-08-02 16:24:44 -07:00
Bassam Tabbara d898618dd9 Merge pull request #1912 from SUSE/make-allow-building-select-images
make: Allow building select images
2018-07-23 10:00:34 -07:00
Alexander Trost ae3563caa6 Fix codegen script replace
This was a tab at some point and was accidentally replaced by spaces.

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-07-21 19:55:39 +02: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
Jared Watts 088278d28e Define release criteria and checklist
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-07-11 17:40:54 -07:00
Jared Watts 2a6813bc4e build: add ceph.rook.io/v1beta1 to codegen
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-07-11 09:23:46 -07:00
Alexander Trost 869173718e build: Removed unnecessary whitespaces/new lines in scripts/docs
cluster: Removed unnecessary whitespaces/new lines in scripts/docs

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-06-24 18:39:37 +02:00
Tony Allen 7442f8713b Implement Minio operator w/ tests.
Signed-off-by: Tony Allen <tony@upbound.io>
2018-06-21 16:41:30 -07:00
Jared Watts a80f05cf51 cockroachdb: rook/cockroachdb image build
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-06-18 17:09:45 -07:00
Alexander Trost 239bb98f36 build: Make codegen sed usage compatible with GNU and BSD
Fix issues with sed usage with GNU and BSD sed.

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-06-06 19:17:30 +02: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 e48e951d1c Rename toolbox to make it Ceph specific, short names for CRDs, upgrade guide tweaks
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-05-22 12:31:38 -07:00