currently, we are setting the rook operator as the
owner on the csidriver objects, as csidriver is cluster
the scoped object we should not set a namespaced object
as owner on cluster scoped object.
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
this commit will add a new flag to the osd pods
which will be named according to the name of the
storageClassDeviceSet. This will help in differentiate
pods immediately.
Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
In K8s 1.19 the integration tests are not running in PRs since no test suites
were assigned to 1.19. Similarly, the flex suite was not being run since 1.14
was removed from the test matrix in master.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
Added E2E testing to create,delete and restore
a snapshot, create a pvc-pvc clone, install
and uninstall snapshot controller and snapshot
CRD.
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
If the mon failover fails, if the mon is on a pvc, the pvc could remain
orphaned. This is likely to happen if there is not a node available
for scheduling the mon. Therefore, the operator will ensure after a failover
that any orphaned mon pvc is cleaned up.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
When the mons are based on pvcs, the pvc_name label was not being set
as expected. Now the label will always be set on both the canary and
the daemon pods.
The mon pvcs were also never being deleted during canary cleanup. This
code is now removed since we must be very careful when the pvcs are
removed.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
The PRs only test against amd64 and have no need for the arm64
builds. This will save several minutes of build time.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
Co-authored-by: Sébastien Han <seb@redhat.com>
If we try to run the integration test with `go test`, it fails as follows.
```
$ go test -v -timeout 1800s -run CephMultiClusterDeploySuite github.com/rook/rook/tests/integration
=== RUN TestCephMultiClusterDeploySuite
2020-09-02 00:00:31.874738 I | installer: test environment variable (default) "STORAGE_PROVIDER_TESTS"=""
2020-09-02 00:00:31.950226 I | testutil: Loaded kubectl context kubernetes at https://192.168.123.2:6443. secure=false
2020-09-02 00:00:31.951121 I | integrationTest: running all tests
2020-09-02 00:00:32.027964 I | testutil: Loaded kubectl context kubernetes at https://192.168.123.2:6443. secure=false
2020-09-02 00:00:32.028640 I | installer: Rook Version: master
2020-09-02 00:00:32.028667 I | installer: Ceph Version: ceph/ceph:v14
2020-09-02 00:00:32.028686 I | installer: test environment variable "TEST_HELM_PATH"="/tmp/rook-tests-scripts-helm/linux-amd64/helm"
2020-09-02 00:00:32.031927 I | installer: test environment variable "TEST_SCRATCH_DEVICE"="/dev/sdb"
2020-09-02 00:00:32.031982 I | testutil: Running tests/scripts/localPathPV.sh [/dev/sdb]
ceph_multi_cluster_test.go:161:
Error Trace: ceph_multi_cluster_test.go:161
ceph_multi_cluster_test.go:151
ceph_multi_cluster_test.go:81
suite.go:102
ceph_multi_cluster_test.go:62
Error: Received unexpected error:
fork/exec tests/scripts/localPathPV.sh: no such file or directory
Test: TestCephMultiClusterDeploySuite
--- FAIL: TestCephMultiClusterDeploySuite (0.16s)
FAIL
FAIL github.com/rook/rook/tests/integration 0.211s
FAIL
$
```
Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
currently, cephobjectstore monitoring is never
stopped for the following flow:
1. objectstore is deleted
2. go routine is stopped
3. objectstore is created
4. objectstore is deleted
so, removing clusterResourceDeleted flag and
working with the map only.
Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
If an OSD is down and needs to be removed from the cluster,
a job can be run that will remove the OSD deployment
and purge the OSD from ceph. If the OSD is still up,
the purge will be rejected.
To purge multiple OSDs at the same time, the OSD IDs can be
specified as a comma-separated list.
Signed-off-by: Servesha Dudhgaonkar <sdudhgao@redhat.com>
When the cluster is external there are no running pods so setting a
Selector on the Service Spec does not make sense, even worse, it makes
Kubernetes reconciling and overriding the configured endpoint.
Signed-off-by: Sébastien Han <seb@redhat.com>
Earlier, we were returning only when the object was not the config
override configmap, we want the opposite.
Also, this was blocking all subsequent conditions and add the correct
check to avoid cm to reconcile.
Signed-off-by: Sébastien Han <seb@redhat.com>
When the cluster is external the service monitor port name should match
with the name of the external metrics one.
Signed-off-by: Sébastien Han <seb@redhat.com>
It's messy to answer `y` everytime in `tests/script/kubeadm.sh clean.`
Since the cluster only exists for testing, it's safe to reset without prompting.
Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
Add a note that NFS service names created by efscli need to comply with
k8 DNS naming restrictions. Failure to do so will result in an invalid NFS
object manifest name.
Signed-off-by: Obleskar <benjamindeuson@gmail.com>