We need to pull the base image for arm64, not for amd64.
This PR add prefix `arm64v8` of `fedora:26` to pull
the image for arm64.
Signed-off-by: Dennis Chen <dennis.chen@arm.com>
The original base image `fedora:25` doesn't support multi-arch,
so we get below error message with `docker pull fedora:25`:
```
25: Pulling from library/fedora
no matching manifest for unknown in the manifest list entries
```
This PR bumps the fedora base image to `:26` which is multi-arch
version, to address the build issue.
Signed-off-by: Dennis Chen <dennis.chen@arm.com>
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>
Many of the `rook/images/<image>/` directory Makefiles defined a
variable called `IMAGES`, which was unused and causing some developer
confusion with the feature adding the ability to specify which backend
images to build. Remove these unused instances.
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
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>
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>
There is a deprecation warning in the `armhf` org on DockerHub.
> The armhf organization is deprecated in favor of the more-specific
arm32v7 and arm32v6 organizations, as per
https://github.com/docker-library/official-images#architectures-other-than-amd64.
Please adjust your usages accordingly.
Required changes to Rook:
`armhf` -> `arm32v7`
`aarch64` -> `arm64v8`
Install documentation has been updated as well.
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
Ceph is now installed from deb packages instead of being built from
source. This results in larger images sizes (roughly 60MB increase
compressed) but the maintenance and build burden is reduced. Future
versions of ceph will hopefully optimize for image size.
All support for building native code in containers has been removed,
as it is no longer needed. When we add other backends we will assume
that they can be installed using apt-get too.
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.
- Operator is deployed under namespace rook-system
- Operator deploys rook-agent on all nodes as daemonset also on
rook-system
- Rook-agent installs flexvolume driver on hosts
- Rook-agent listens on unix socket for driver requests
- Rook-agent perform attach/detach on its node
- Rook-agent creates/delete CRD volumeattach objects
- Added fencing to support ROX and RWO
- Added unit and integration tests
- Updated examples and docks
fixes#432
allow ROOK_API_SERVER_ENDPOINT to be set by user
toolbox: default to rook-api dns name when no k8s service env vars are
given
Added dnsPolicy to rook-tools (K8s required version >1.6)