Let's not use any controllen-gen version we might find on the system,
always pull the version we need.
Same goes for yq.
Signed-off-by: Sébastien Han <seb@redhat.com>
Let's try to create a 'ceph' user with the uid 167 and add it to the
'disk' group so that if the permissions on the disk change then the OSD
should be able to access the disk.
Closes: https://github.com/rook/rook/issues/7405
Signed-off-by: Sébastien Han <seb@redhat.com>
this commit enables IT to run on multiple k8s version
and for master/release, all the 5 k8s version
'v1.15.12','v1.16.15','v1.18.15','v1.19.7','v1.20.0'
similar to jenkins.
Signed-off-by: subhamkrai <srai@redhat.com>
this commit enables gh action to run
Flex test on only 'v1.15.12',
Smoke and Helm tests on both 'v1.15.12','v1.20.2',
Mgr, Multicluster and upgrade tests on only 'v1.20.2'
Signed-off-by: subhamkrai <srai@redhat.com>
The integration tests run independently in the github actions so there is
no need to cleanup from every test. The cleanup is still needed in the
Jenkins tests where all the suites run serially.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
If one of the suite fails, it is sometimes handy to ssh into the
instance to precisely understand what's going on.
So by applying a debug label so as "debug-smoke-suite" you will be able
to ssh into the runner to debug. By default it looks
like the runner will be cancelled automatically after 6 hours as per the
official doc: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idtimeout-minutes
I've had a different experience, and somehow 45min seems to be the limit
but I might be wrong.
Once the label is applied, go into the check and the once you are
interested in and search the step "setup tmate session for debugging".
It should output lines with the connection details.
To get the list of all labels see: https://github.com/rook/rook/labels?q=debug-
Example run is available here: https://github.com/rook/rook/pull/7416/checks?check_run_id=2120103989
Signed-off-by: Sébastien Han <seb@redhat.com>
Finally! We can now stop editing manually our crds definition. Simply
run `make crds-gen`. These two files:
* `cluster/examples/kubernetes/ceph/crds.yaml`
* `cluster/charts/rook-ceph/templates/resources.yaml`
will be autogenerated for us.
We rely on the controller-gen tool, it reads our API definitions from
`pkg/apis/` and produces the CRD files accordingly.
It uses "markers" to add extra yaml fields to the CRD, for instance we
have a lot fields with:
```
nullable: true
x-kubernetes-preserve-unknown-fields: true
```
The corresponding API type markers are:
```
// +kubebuilder:pruning:PreserveUnknownFields
// +nullable
```
For more API convention see
https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#optional-vs-required
and for the markers see: https://book.kubebuilder.io/reference/markers/crd-validation.html
Signed-off-by: Sébastien Han <seb@redhat.com>
Fix an apt-get update issue by bumping to the latest (fixed) version of
manusa/actions-setup-minikube (v2.3.1).
Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
We now create 3 disks which will give us 2 OSDs and potentially help us
to catch more errors in our scenarios, especially on iterations.
Signed-off-by: Sébastien Han <seb@redhat.com>
Do not use old Ceph v15.2.7 in integration that was working around the
issue of ceph-volume partition support being removed in v15.2.8.
Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
(cherry picked from commit 99cee7648cfaf72b02d62e281a2ac3a18bce4132)
Github just switched to use Ubuntu 20.04 for the ubuntu-latest and it is
breaking some of our scenarios so far. Especially scenario creating
partitions.
Closes: https://github.com/rook/rook/issues/7327
Signed-off-by: Sébastien Han <seb@redhat.com>
codegen is currently broken in master.
this commit fix the broken codegen by fixing
the correct working directory in gh action.
Signed-off-by: subhamkrai <srai@redhat.com>
Changed the random port creation's max value from 255 to 254, as the IP
with value 255 fails.
Re-raise/propagate the 'ExecutionFailureException' exception so that we
don't end-up in ZERO exit value.
Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
Add missing OVC on LV-backed PVC test. Although we already have
the pvc test case, the code path of lv-backed pvc is a bit different
from raw device.
Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
The stale bot has stopped working. Now we use a github
action to mark and close the stale issues.
Issues will be marked as stale after 90 days
and closed after one week. PRs will be marked
as stale after 90 days and closed after two weeks.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
After each non-pvc and pvc scenario we run the
kubectl-check-ownerreferences tool to analyze potential incorrect owner
references. We had issues in the past with incorrect owner ref so this
tool might help us ensure we are doing things right.
Signed-off-by: Sébastien Han <seb@redhat.com>
The latest ceph-volume does not support creating OSDs on partitions.
The github actions only have a partition available, so we will run
the github tests on v14.2.12 and v15.2.7 that still support partitions,
while the Jenkins environment has a raw device available where we
can run the latest versions of Ceph in the tests.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
this commit add yaml validation check
by adding `--dry-run` and add path
'.github/workflows/**' to Canary integration
tests.
Signed-off-by: subhamkrai <srai@redhat.com>
to run the integration test there needs
to be a few changes in manifests like using
`deviceFilter` and other related changes.
Signed-off-by: subhamkrai <srai@redhat.com>
as we are planning to move toward Github actions
for integration test. This commit runs ceph
suites using Github action.
Signed-off-by: subhamkrai <srai@redhat.com>
The CRDs need to be installed and updated separately from the
rest of the manifests. Helm charts also do not have a way to update
CRDs, therefore, any updates to the CRD schema must be done separately
from the helm chart. Now the CRDs are created in a new crd.yaml that must
be created along with common.yaml and before creating the operator.
The helm chart still contains the CRDs for initial creation, though
the helm chart will never update or remove them.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
As a follow up to #6563 which fixed all the typos found in the
repository, to avoid adding more obvious typos.
Signed-off-by: Mateusz Gozdek <mgozdekof@gmail.com>