Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Syncing latest changes from upstream master for rook #571

Merged
merged 14 commits into from
Feb 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 2 additions & 5 deletions .github/workflows/canary-integration-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,12 @@ on:
paths-ignore:
- "Documentation/**"
- "design/**"
workflow_dispatch:
workflow_call:
inputs:
ceph-image:
description: 'Ceph image for creating Ceph cluster'
default: 'quay.io/ceph/ceph:v18'
type: string

defaults:
run:
Expand Down Expand Up @@ -1404,7 +1405,6 @@ jobs:
fetch-depth: 0

- name: consider debugging

uses: ./.github/workflows/tmate_debug
with:
use-tmate: ${{ secrets.USE_TMATE }}
Expand All @@ -1431,7 +1431,6 @@ jobs:
fetch-depth: 0

- name: consider debugging

uses: ./.github/workflows/tmate_debug
with:
use-tmate: ${{ secrets.USE_TMATE }}
Expand Down Expand Up @@ -1464,7 +1463,6 @@ jobs:
fetch-depth: 0

- name: consider debugging

uses: ./.github/workflows/tmate_debug
with:
use-tmate: ${{ secrets.USE_TMATE }}
Expand Down Expand Up @@ -1546,7 +1544,6 @@ jobs:
fetch-depth: 0

- name: consider debugging

uses: ./.github/workflows/tmate_debug
with:
use-tmate: ${{ secrets.USE_TMATE }}
Expand Down
69 changes: 12 additions & 57 deletions .github/workflows/daily-nightly-jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ name: Daily nightly jobs
on:
schedule:
- cron: "0 0 * * *" # every day at midnight
workflow_dispatch: {}

defaults:
run:
Expand Down Expand Up @@ -394,64 +395,18 @@ jobs:
name: ceph-upgrade-suite-quincy-artifact
path: /home/runner/work/rook/rook/tests/integration/_output/tests/

rgw-multisite-test-with-ceph-devel:
if: github.repository == 'rook/rook'
runs-on: ubuntu-20.04
# run default canary suite
canary-tests:
uses: ./.github/workflows/canary-integration-test.yml
secrets: inherit

# run canary suite with relevant ceph devel versions
canary-tests-devel:
uses: ./.github/workflows/canary-integration-test.yml
strategy:
matrix:
ceph-image-tag:
["latest-main-devel", "latest-quincy-devel", "latest-reef-devel"]

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: consider debugging
uses: ./.github/workflows/tmate_debug
with:
use-tmate: ${{ secrets.USE_TMATE }}

- name: run RGW multisite test
uses: ./.github/workflows/rgw-multisite-test
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
ceph-image: quay.io/ceph/daemon-base:${{ matrix.ceph-image-tag }}

- name: upload test result
uses: actions/upload-artifact@v4
if: always()
with:
name: rgw-multisite-testing-ceph-${{ matrix.ceph-image-tag }}
path: test

encryption-pvc-kms-ibm-kp:
if: github.repository == 'rook/rook'
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: consider debugging
uses: ./.github/workflows/tmate_debug
with:
use-tmate: ${{ secrets.USE_TMATE }}

- name: run encryption KMS IBM Key Protect
uses: ./.github/workflows/encryption-pvc-kms-ibm-kp
if: "env.IBM_KP_SERVICE_INSTANCE_ID != '' && env.IBM_KP_SERVICE_API_KEY != ''"
env:
IBM_KP_SERVICE_INSTANCE_ID: ${{ secrets.IBM_INSTANCE_ID }}
IBM_KP_SERVICE_API_KEY: ${{ secrets.IBM_SERVICE_API_KEY }}
with:
ibm-instance-id: ${{ secrets.IBM_INSTANCE_ID }}
ibm-service-api-key: ${{ secrets.IBM_SERVICE_API_KEY }}
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: upload test result
uses: actions/upload-artifact@v4
if: always()
with:
name: encryption-pvc-kms-ibm-kp
path: test
with:
ceph-image: quay.io/ceph/daemon-base:${{ matrix.ceph-image-tag }}
secrets: inherit
2 changes: 1 addition & 1 deletion .github/workflows/golangci-lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
with:
go-version: "1.21"
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
uses: golangci/golangci-lint-action@v4
with:
# Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version.
version: v1.55
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/multus.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
go-version: "1.21"

- name: Create KinD Cluster
uses: helm/kind-action@v1.8.0
uses: helm/kind-action@v1.9.0
with:
config: tests/scripts/multus/kind-config.yaml
cluster_name: kind
Expand Down
11 changes: 10 additions & 1 deletion Documentation/CRDs/Cluster/external-cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,16 @@ export RGW_POOL_PREFIX=default

1. Paste the above output from `create-external-cluster-resources.py` into your current shell to allow importing the source data.

2. Run the [import](https://github.com/rook/rook/blob/master/deploy/examples/import-external-cluster.sh) script.
1. The import script in the next step uses the current kubeconfig context by
default. If you want to specify the kubernetes cluster to use without
changing the current context, you can specify the cluster name by setting
the KUBECONTEXT environment variable.

```console
export KUBECONTEXT=hub-cluster
```

1. Run the [import](https://github.com/rook/rook/blob/master/deploy/examples/import-external-cluster.sh) script.

!!! note
If your Rook cluster nodes are running a kernel earlier than or equivalent to 5.4, remove
Expand Down
4 changes: 1 addition & 3 deletions Documentation/Helm-Charts/operator-chart.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ The following table lists the configurable parameters of the rook-operator chart
| `csi.cephFSKernelMountOptions` | Set CephFS Kernel mount options to use https://docs.ceph.com/en/latest/man/8/mount.ceph/#options. Set to "ms_mode=secure" when connections.encrypted is enabled in CephCluster CR | `nil` |
| `csi.cephFSPluginUpdateStrategy` | CSI CephFS plugin daemonset update strategy, supported values are OnDelete and RollingUpdate | `RollingUpdate` |
| `csi.cephFSPluginUpdateStrategyMaxUnavailable` | A maxUnavailable parameter of CSI cephFS plugin daemonset update strategy. | `1` |
| `csi.cephcsi.image` | Ceph CSI image | `quay.io/cephcsi/cephcsi:v3.10.1` |
| `csi.cephcsi.image` | Ceph CSI image | `quay.io/cephcsi/cephcsi:v3.10.2` |
| `csi.cephfsLivenessMetricsPort` | CSI CephFS driver metrics port | `9081` |
| `csi.cephfsPodLabels` | Labels to add to the CSI CephFS Deployments and DaemonSets Pods | `nil` |
| `csi.clusterName` | Cluster name identifier to set as metadata on the CephFS subvolume and RBD images. This will be useful in cases like for example, when two container orchestrator clusters (Kubernetes/OCP) are using a single ceph cluster | `nil` |
Expand Down Expand Up @@ -115,8 +115,6 @@ The following table lists the configurable parameters of the rook-operator chart
| `csi.rbdPluginUpdateStrategy` | CSI RBD plugin daemonset update strategy, supported values are OnDelete and RollingUpdate | `RollingUpdate` |
| `csi.rbdPluginUpdateStrategyMaxUnavailable` | A maxUnavailable parameter of CSI RBD plugin daemonset update strategy. | `1` |
| `csi.rbdPodLabels` | Labels to add to the CSI RBD Deployments and DaemonSets Pods | `nil` |
| `csi.readAffinity.crushLocationLabels` | Define which node labels to use as CRUSH location. This should correspond to the values set in the CRUSH map. | labels listed [here](../CRDs/Cluster/ceph-cluster-crd.md#osd-topology) |
| `csi.readAffinity.enabled` | Enable read affinity for RBD volumes. Recommended to set to true if running kernel 5.8 or newer. | `false` |
| `csi.registrar.image` | Kubernetes CSI registrar image | `registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.9.1` |
| `csi.resizer.image` | Kubernetes CSI resizer image | `registry.k8s.io/sig-storage/csi-resizer:v1.9.2` |
| `csi.serviceMonitor.enabled` | Enable ServiceMonitor for Ceph CSI drivers | `false` |
Expand Down
4 changes: 2 additions & 2 deletions Documentation/Storage-Configuration/Ceph-CSI/custom-images.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ kubectl -n $ROOK_OPERATOR_NAMESPACE edit configmap rook-ceph-operator-config
The default upstream images are included below, which you can change to your desired images.

```yaml
ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.10.1"
ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.10.2"
ROOK_CSI_REGISTRAR_IMAGE: "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.9.1"
ROOK_CSI_PROVISIONER_IMAGE: "registry.k8s.io/sig-storage/csi-provisioner:v3.6.3"
ROOK_CSI_ATTACHER_IMAGE: "registry.k8s.io/sig-storage/csi-attacher:v4.4.2"
Expand All @@ -32,7 +32,7 @@ ROOK_CSIADDONS_IMAGE: "quay.io/csiaddons/k8s-sidecar:v0.8.0"
If image version is not passed along with the image name in any of the variables above,
Rook will add the corresponding default version to that image.
Example: if `ROOK_CSI_CEPH_IMAGE: "quay.io/private-repo/cephcsi"` is passed,
Rook will add internal default version and consume it as `"quay.io/private-repo/cephcsi:v3.10.1"`.
Rook will add internal default version and consume it as `"quay.io/private-repo/cephcsi:v3.10.2"`.

### **Use default images**

Expand Down
3 changes: 2 additions & 1 deletion PendingReleaseNotes.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# v1.14 Pending Release Notes

## Breaking Changes

- The removal of `CSI_ENABLE_READ_AFFINITY` option and its replacement with per-cluster
read affinity setting in cephCluster CR (CSIDriverOptions section) in [PR](https://github.com/rook/rook/pull/13665)

## Features
6 changes: 0 additions & 6 deletions deploy/charts/rook-ceph/templates/configmap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -118,12 +118,6 @@ data:
CSI_TOPOLOGY_DOMAIN_LABELS: {{ .Values.csi.topology.domainLabels | join "," }}
{{- end }}
{{- end }}
{{- if .Values.csi.readAffinity }}
CSI_ENABLE_READ_AFFINITY: {{ .Values.csi.readAffinity.enabled | quote }}
{{- if .Values.csi.readAffinity.crushLocationLabels }}
CSI_CRUSH_LOCATION_LABELS: {{ .Values.csi.readAffinity.crushLocationLabels | join "," }}
{{- end }}
{{- end }}
{{- if .Values.csi.nfs }}
ROOK_CSI_ENABLE_NFS: {{ .Values.csi.nfs.enabled | quote }}
{{- end }}
Expand Down
13 changes: 1 addition & 12 deletions deploy/charts/rook-ceph/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -469,7 +469,7 @@ csi:

cephcsi:
# -- Ceph CSI image
# @default -- `quay.io/cephcsi/cephcsi:v3.10.1`
# @default -- `quay.io/cephcsi/cephcsi:v3.10.2`
image:

registrar:
Expand Down Expand Up @@ -531,17 +531,6 @@ csi:
# - topology.kubernetes.io/zone
# - topology.rook.io/rack

readAffinity:
# -- Enable read affinity for RBD volumes. Recommended to
# set to true if running kernel 5.8 or newer.
# @default -- `false`
enabled: false
# -- Define which node labels to use
# as CRUSH location. This should correspond to the values set
# in the CRUSH map.
# @default -- labels listed [here](../CRDs/Cluster/ceph-cluster-crd.md#osd-topology)
crushLocationLabels:

# -- Whether to skip any attach operation altogether for CephFS PVCs. See more details
# [here](https://kubernetes-csi.github.io/docs/skip-attach.html#skip-attach-with-csi-driver-object).
# If cephFSAttachRequired is set to false it skips the volume attachments and makes the creation
Expand Down
2 changes: 1 addition & 1 deletion deploy/examples/images.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
gcr.io/k8s-staging-sig-storage/objectstorage-sidecar/objectstorage-sidecar:v20230130-v0.1.0-24-gc0cf995
quay.io/ceph/ceph:v18.2.1
quay.io/ceph/cosi:v0.1.1
quay.io/cephcsi/cephcsi:v3.10.1
quay.io/cephcsi/cephcsi:v3.10.2
quay.io/csiaddons/k8s-sidecar:v0.8.0
registry.k8s.io/sig-storage/csi-attacher:v4.4.2
registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.9.1
Expand Down
Loading
Loading