Commit Graph

91 Commits

Author SHA1 Message Date
Niels de Vos
8b2d5aea40 ci: do not use ${..} variable notation in jjb templates
It seems that `${RUN_DISPLAY_URL}` is not expanded correctly in the
Jenkins Job Builder YAML files anymore. `$RUN_DISPLAY_URL` should be the
correct notation.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-05-29 16:53:57 +02:00
Niels de Vos
460073521b ci: prepare Jenkins jobs for Kubernetes 1.30
Kubernetes 1.30 is in Alpha state, it should be usable for testing
Ceph-CSI against now.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-02-22 13:14:07 +01:00
Niels de Vos
203b377137 ci: correct the format of pipeline-scm.scm
It seems the `git` component of `pipeline-scm.scm` needs to be a list.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-01-31 10:33:57 +01:00
Niels de Vos
9273955d92 ci: replace inline dsl: script by Groovy files
Jenkins Jobs Builder does not like the inline `dsl:` scripts anymore, so
replace them by Groovy files in the main directory, similar to other
jobs.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-01-31 09:54:41 +01:00
Niels de Vos
ad0a645324 ci: move inline script into separate build-images.groovy file
Signed-off-by: Niels de Vos <ndevos@ibm.com>
2024-01-30 17:43:25 +01:00
Riya Singhal
e61b2f4aaf rebase: update jobs for kubernetes 1.29
add support to run kubernetes 1.29 jobs

Signed-off-by: Riya Singhal <rsinghal@redhat.com>
2024-01-04 10:09:30 +00:00
karthik-us
c659487084 ci: make test_type optional
Make test_type parameter optional to keep the current test run
behavior intact.

Signed-off-by: karthik-us <ksubrahm@redhat.com>
2023-11-06 06:57:20 +00:00
karthik-us
674b1e811a ci: add capability to run specific e2e tests
The current e2e test runs will trigger all 3 types of
tests which takes a lot of time to complete. If the
patch impacta only a single type, then having an option
to trigger only that particular e2e test can save
considerable amount of time based on the test type.

This can also help in reducing the time in testing when
a patch failed on a particular e2e test type and triggering
only that e2e with the fix for the failure or re-trigger
only that test again to check for false positives.

Signed-off-by: karthik-us <ksubrahm@redhat.com>
2023-11-06 06:57:20 +00:00
Madhu Rajanna
932c7c5879 rebase: use kubernetes 1.27 in upgrade jobs
update kubernetes version to v1.27 in upgrade
jobs.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-08-17 11:17:52 +00:00
Madhu Rajanna
fe2043e66f rebase: update jobs for kubernetes 1.28
add support to run kubernetes 1.28 jobs

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-08-17 11:17:52 +00:00
karthik-us
2ab3e8337f ci: Update csi_upgrade_version
Point the csi_upgrade_version from v3.7.2 to the
latest release v3.9.0.

Updates: #3911
Signed-off-by: karthik-us <ksubrahm@redhat.com>
2023-07-13 08:12:53 +00:00
Niels de Vos
ab521dba96 ci: fix trigger command for ci/centos/mini-e2e-helm jobs
The `/test ci/centos/mini-e2e-helm` has been broken with the last change
where `/test all` was removed. A remaining '(' makes the regular
expression invalid, and jobs fail to get started.

Fixes: f9f3bb9 ("ci: remove `/retest all` command for Jenkins jobs")
Signed-off-by: Niels de Vos <ndevos@ibm.com>
2023-07-03 15:26:37 +00:00
Niels de Vos
f9f3bb90a5 ci: remove /retest all command for Jenkins jobs
`/retest all` causes a spike in resource consumption in Jenkins and the
OpenShift cluster kills the Pod. That means tests are not fully running
yet, and results never arrive back in the PR. Instead of `/retest all`,
the `ok-to-test` label can be used to trigger required tests with a
slight delay between each command.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2023-06-29 11:10:48 +00:00
Rakshith R
a6ac81133f ci: remove k8s 1.24 support
K8s 1.24 will be End of Life on 2023-07-28.
Therefore, this commit removes support
for k8s 1.24.

refer:
https://kubernetes.io/releases/#release-v1-24

Signed-off-by: Rakshith R <rar@redhat.com>
2023-06-21 10:53:42 +00:00
Madhu Rajanna
f7942edc6c ci: remove kubernetes 1.23 support
removed ability to run tests with
kubernetes 1.23 as its no longer
maintained version.

fixes: #3636

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-04-18 10:05:26 +02:00
Niels de Vos
f7ba14b2ed ci: add jobs for running with Kubernetes 1.27
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2023-01-30 09:48:56 +00:00
Madhu Rajanna
69329b5592 ci: use kubernetes 1.25 for upgrade tests
Upgrade tests always runs with the latest
release of kubernetes, updating the
kubernetes to latest available release
in the CI.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-10-28 19:49:45 +00:00
Madhu Rajanna
253b6a9d2b ci: remove kubernetes 1.22 from CI
As we dont longer required to test with
Kubernetes 1.22 removing it from the CI.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-10-28 19:49:45 +00:00
Madhu Rajanna
65411d7975 ci: update outdates kubernetes version
use latest used kubernetes version or supported
kubernetes version for upgrade testing.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-10-26 10:18:14 +00:00
Madhu Rajanna
8cabc0327f ci: run upgrade tests with latest release
Run E2E tests with latest available release.

fixes: #2818

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-10-26 10:18:14 +00:00
Madhu Rajanna
c1255f809b ci: disable e2e tests by default in CI
Disable e2e tests by default in CI to
save resources. cephcsi maintainers or
contributors can add the ok-to-test label
to trigger the e2e tests.

depends on #3468

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-10-26 04:43:41 +00:00
Niels de Vos
a55c539f2a ci: run k8s v1.26 jobs on request
Kubernetes 1.26 has reached Alpha state, so the project can now be used
to run CI jobs against.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
2022-09-22 04:50:27 +00:00
Madhu Rajanna
f7782eeac2 ci: run e2e on kubernetes 1.25
Deploy kubernetes 1.25 and run e2e
tests on it on demand.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-09-05 15:22:49 +00:00
Madhu Rajanna
8bb8a12928 ci: remove Kubernetes 1.21 from CI
We will run CI on 3 latest kubernetes
releases removing Kubernetes 1.21 support
as we have Kubernetes 1.22, 1.23 and 1.24 for
CI Jobs.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-07-25 07:32:51 +00:00
Madhu Rajanna
35007a76d3 ci: run e2e on Kubernetes v1.24 by default
As we have stable CI for kubernetes v1.24 and
Kubernetes v1.24 released sometime back, defaulting
Kubernetes v1.24 for the CI run.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-07-25 07:32:51 +00:00
Madhu Rajanna
a0eccf47b4 ci: run tests on kubernetes 1.24
This commits adds the kuberenetes
1.24 to run on request for now.

Note:- Once the kubernetes 1.24 job is stable
will run it by default

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-05-05 09:44:57 +00:00
Niels de Vos
fe922b8805 ci: pass GOARCH when building images in OpenShift
It seems that regular jobs in the OpenShift environment fail with the
following error:

    Missing GOARCH argument for building image, install Golang or run: make containerized-test GOARCH=amd64

This happens for both the `devel` and `test` image builds since December
13 when installing Golang in the container-images was added.

Fixes: 8a3fe53e "ci: install arch specific go in Dockerfile.devel"
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2022-02-03 10:26:34 +00:00
Madhu Rajanna
b22fe5f059 ci: remove kubernetes 1.20 from CI
removing kubernetes test run with 1.20
as with  #2705 we dont need 1.20 CI
results to merge a PR and we have kube 1.23
latest release.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2021-12-13 04:46:06 +00:00
Madhu Rajanna
31d037eb95 ci: run tests on kubernetes 1.23 by default
The e2e tests are running fine on kubernetes
1.23. This commit runs the tests on kubernetes
1.23 by default.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2021-12-10 06:58:46 +00:00
Madhu Rajanna
d351e00992 ci: run tests on kubernetes 1.23
This commits removes the older version (1.19
and 1.20) from testing and adds the kuberenetes
1.23 to run on request for now.

Note:- Once the kubernetes 1.23 job is stable
will run it by default

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2021-12-09 09:06:18 +00:00
Niels de Vos
83e483bb8d ci: automatically run k8s-e2e-external-storage/1.22 job
The job is currently stable and passes usually. It can now be used for
validation.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
2021-09-29 07:13:16 +00:00
Yug Gupta
2be0306c82 ci: run tests on k8s v1.22 in place of v1.19
As kubernetes v1.19 is heading towards its EOL
on 2021-09-30, run tests on kubernetes v1.22
and require it to pass for merging.

Signed-off-by: Yug Gupta <yuggupta27@gmail.com>
2021-08-12 11:32:43 +00:00
Yug
f69921afb1 ci: remove temp job mini-e2e-helm-sc
Since the job passes, we can now get rid
of the temp job.

Signed-off-by: Yug <yuggupta27@gmail.com>
2021-07-06 07:44:47 +00:00
Yug
4a102b44cb e2e: force deploy storageclass and secret
Add a temp job to test the deployment
of sc and secret via helm.

Signed-off-by: Yug <yuggupta27@gmail.com>
2021-06-30 15:55:53 +00:00
Niels de Vos
2909e85e23 ci: add Kubernetes 1.22 as optional version for CI jobs
Kubernetes 1.22 is in the release process and can be used for testing
already. The CI jobs will be available and can be triggered by leaving a
comment in the PRs like

    /test ci/centos/mini-e2e-helm/k8s-1.22

See-also: https://github.com/kubernetes/sig-release/tree/master/releases/release-1.22
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2021-06-30 09:44:54 +00:00
Niels de Vos
a3e235774a ci: run jobs with Kubernetes 1.21
Kubernetes 1.21 is the latest stable release, and Ceph-CSI should be
tested with that. Currently 1.19 is still supported too, so we will need
to run the CI jobs with 1.19, 1.20 and 1.21.

See-also: https://kubernetes.io/releases/
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2021-06-30 09:44:54 +00:00
Rakshith R
6337a9fc06 ci: update upgrade-version to v3.3.1 for upgrade tests
This commit updates `upgrade-version` to `v3.3.1` for
e2e upgrade tests.

Signed-off-by: Rakshith R <rar@redhat.com>
2021-05-19 05:17:58 +00:00
Niels de Vos
a75430ce21 ci: rebuild infra container images after merge
When the `ci/centos` branch has been merged, the container images that
are built from it may need to be rebuilt. Instead of conditionally
rebuilding images only on a change, just rebuild them always, as there
are very few changes in the CI branch anyway.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
2021-05-17 10:12:28 +00:00
Niels de Vos
2fb24c3c4c ci: provide k8s-e2e-external-storage jobs for different k8s versions
The Kubernetes e2e external storage tests from v1.21 do not work yet
with Ceph-CSI. In order to address the issues, the job is now provided
and can be run with:

     /test ci/centos/k8s-e2e-external-storage/1.21

The job for v1.20 is enabled by default, and identified by the
ci/centos/k8s-e2e-external-storage/1.20 context in PRs.

Updates: #2017
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2021-05-03 07:30:50 +00:00
Niels de Vos
918d5e0870 ci: enable running of k8s-e2e-external-storage job by default
The job seems stable, and can be run by default now. Once it has been
run on several PRs, the `ci/centos/k8s-e2e-external-storage` job ID
can be added to the Mergify configuration.

See-also: https://jenkins-ceph-csi.apps.ocp.ci.centos.org/blue/organizations/jenkins/k8s-e2e-external-storage/activity
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2021-04-26 04:18:39 +00:00
Niels de Vos
b5aa0b11d7 ci: add optional Kubernetes 1.21 job
To test a PR with Kubernetes 1.21, leave a comment in the PR like:

    /test ci/centos/mini-e2e-helm/k8s-1.21

The status of the job will be recorded in the PR, but running this job
is not required (yet).

Updates: #1963
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2021-04-20 07:08:16 +00:00
Yug
e030097eaa ci: Disable containerized-tests job
The containerized-test job should run only if
manually triggered.

Signed-off-by: Yug <yuggupta27@gmail.com>
2021-04-07 14:16:38 +00:00
Niels de Vos
1c2974d49e ci: the "master" branch got renamed to "devel"
Closes: #1193
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2021-03-01 05:22:06 +00:00
Niels de Vos
0b78359b9b ci: do not run jobs with Kubernetes v1.18 anymore
Kubernetes v1.20 has been released, so lets use that for testing. Note
that v1.18 is still maintained, but our CI jobs will not consume it
anymore.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
2020-12-18 06:35:49 +00:00
Niels de Vos
5562a6ded9 ci: add jobs with Kubernetes v1.20
Add CI jobs for Kubernetes v1.20 testing. These jobs will run, but are
not (yet) required before changes get merged.

Updates: #1784
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2020-12-15 13:19:04 +00:00
Niels de Vos
629a8e0166 ci: do not run commitlint on "/retest all"
The commitlint job is not used normally, so there is no need to run it
when all CI jobs need retesting.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
2020-11-17 10:16:46 +00:00
Niels de Vos
2ad602e9f2 ci: fix Blue Ocean status-url for JJB templates
As ${RUN_DISPLAY_URL} also matches the format for template
substitutions, it can not be used like this for all Jenkins Jobs Builder
files. Instead, $RUN_DISPLAY_URL can be used, as it does not have the
{curly_braces} format and the template engine skips it.

Fixes: 87870369 (ci: link to the job in the Blue Ocean webui)
Signed-off-by: Niels de Vos <ndevos@redhat.com>
2020-11-04 09:58:46 +00:00
Niels de Vos
8787036903 ci: link to the job in the Blue Ocean webui
The new Blue Ocean webui is much easier to navigate than the traditional
Jenkins webui. Developers that want to check failures of CI jobs will be
able to find the logs much quicker as each stage/step has a clear
success or failed status.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
2020-11-04 04:51:49 +00:00
Niels de Vos
9c4009bd14 ci: pass BASE_IMAGE to "oc start-build"
Because the parallel steps, the build.env is not in the local directory
where the command is executed. So fetch the BASE_IMAGE before continuing
with 'oc start-build', and pass the name of the image on the
commandline.

Signed-off-by: Niels de Vos <ndevos@redhat.com>
2020-11-04 04:28:28 +00:00
liranmauda
c281511a11 ci: Add the ability to run JJB from private branch/fork
Add the ability to run JJB from private branch/fork

jjb-deploy.yaml:
- Add GIT_REPO parameter (not required) with default value

jjb.sh:
- Changing PS4 for more indicative debug prompt
- Adding flags to get the repo and branch

jjb-deploy.yaml:
- Calling the jjb.sh with the correct flags

Signed-off-by: liranmauda <liran.mauda@gmail.com>
2020-11-03 07:26:43 +00:00