Skip to content

Commit

Permalink
Merge develop into master 1.11.0 (#650)
Browse files Browse the repository at this point in the history
  • Loading branch information
Arbel Nathan authored Jan 24, 2023
1 parent 2656501 commit 4613eff
Show file tree
Hide file tree
Showing 148 changed files with 9,842 additions and 3,306 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,6 @@
/bin/
node/mocks
build/reports
csi_general/
/.run/
docs/.vscode/settings.json
4 changes: 2 additions & 2 deletions Dockerfile-controllers.test
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
# This Dockerfile.test is for running the csi controller local tests inside a container.
# Its similar to the Dockerfile, but with additional requirements-tests.txt and ENTRYPOINT to run the local tests.

FROM registry.access.redhat.com/ubi8/python-38:1-75.1638364053 as builder
FROM registry.access.redhat.com/ubi8/python-38:1-115.1669838006 as builder
USER root
RUN if [[ "$(uname -m)" != "x86"* ]]; then yum install -y rust-toolset; fi
USER default
Expand All @@ -39,7 +39,7 @@ COPY controllers/tests/requirements.txt ./requirements-tests.txt
RUN pip3 install -r ./requirements-tests.txt


FROM registry.access.redhat.com/ubi8/python-38:1-100
FROM registry.access.redhat.com/ubi8/python-38:1-115.1669838006

COPY --from=builder /opt/app-root /opt/app-root
COPY ./common /driver/common
Expand Down
6 changes: 3 additions & 3 deletions Dockerfile-csi-controller
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.

FROM registry.access.redhat.com/ubi8/python-38:1-75.1638364053 as builder
FROM registry.access.redhat.com/ubi8/python-38:1-115.1669838006 as builder
USER root
RUN if [[ "$(uname -m)" != "x86"* ]]; then yum install -y rust-toolset; fi
USER default
Expand All @@ -30,10 +30,10 @@ RUN ./csi_pb2.sh
RUN pip3 install .


FROM registry.access.redhat.com/ubi8/python-38:1-100
FROM registry.access.redhat.com/ubi8/python-38:1-115.1669838006
MAINTAINER IBM Storage

ARG VERSION=1.10.0
ARG VERSION=1.11.0
ARG BUILD_NUMBER=0

###Required Labels
Expand Down
10 changes: 5 additions & 5 deletions Dockerfile-csi-host-definer
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM registry.access.redhat.com/ubi8/python-38:1-75.1638364053 as builder
FROM registry.access.redhat.com/ubi8/python-38:1-115.1669838006 as builder

USER root
RUN if [[ "$(uname -m)" != "x86"* ]]; then yum install -y rust-toolset; fi
Expand All @@ -17,9 +17,9 @@ COPY controllers/scripts/csi_general .
RUN ./csi_pb2.sh
RUN pip3 install .

FROM registry.access.redhat.com/ubi8/python-38:1-100
FROM registry.access.redhat.com/ubi8/python-38:1-115.1669838006

ARG VERSION=1.10.0
ARG VERSION=1.11.0
ARG BUILD_NUMBER=0

###Required Labels
Expand All @@ -29,9 +29,9 @@ LABEL name="IBM block storage CSI driver host definer" \
version=$VERSION \
release=$BUILD_NUMBER \
summary="The host definer defines Kubernetes nodes on IBM block storage" \
description="The host definer defines container orchestrators, such as Kubernetes and OpenShift, nodes on IBM block storage." \
description="The host definer defines container orchestrator nodes on IBM block storage." \
io.k8s.display-name="IBM block storage CSI driver host definer" \
io.k8s.description="The host definer defines container orchestrators, such as Kubernetes and OpenShift, nodes on IBM block storage." \
io.k8s.description="The host definer defines container orchestrator nodes on IBM block storage." \
io.openshift.tags=ibm,csi,ibm-block-csi-driver,host-definer

COPY --from=builder /opt/app-root /opt/app-root
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile-csi-node
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,10 @@ COPY . .
RUN make ibm-block-csi-driver

# Final stage
FROM registry.access.redhat.com/ubi8/ubi-minimal:8.6-854
FROM registry.access.redhat.com/ubi8/ubi-minimal:8.7-1049
MAINTAINER IBM Storage

ARG VERSION=1.10.0
ARG VERSION=1.11.0
ARG BUILD_NUMBER=0

LABEL name="IBM block storage CSI driver node" \
Expand Down
3 changes: 2 additions & 1 deletion Dockerfile-csi-test
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.

FROM golang:1.16
FROM golang:1.18

ARG CSI_PARAMS=csi_params

Expand All @@ -31,6 +31,7 @@ WORKDIR /usr/local/go/src/github.com/kubernetes-csi/csi-test
ENV JUNIT_OUTPUT="/tmp/test_results/out_client.xml"
ENV SECRET_FILE="/usr/local/go/src/github.com/kubernetes-csi/csi-test/ibm-driver/csi_secrets"
ENV PARAM_FILE="/usr/local/go/src/github.com/kubernetes-csi/csi-test/ibm-driver/${CSI_PARAMS}"
ENV SNAPSHOT_PARAM_FILE="/usr/local/go/src/github.com/kubernetes-csi/csi-test/ibm-driver/snapshot_params"
ENV ENDPOINT="/tmp/k8s_dir/nodecsi"
ENV ENDPOINT_CONTROLLER="/tmp/k8s_dir/f"
ENV TESTS_TO_SKIP_FILE="/usr/local/go/src/github.com/kubernetes-csi/csi-test/ibm-driver/csi_tests_to_skip"
Expand Down
12 changes: 6 additions & 6 deletions NOTICES
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ This file details additional third party software license agreements
and third party notices and information that are required
to be reproduced for the following programs:

IBM Block Storage CSI Driver version 1.10.0
IBM Block Storage CSI Driver version 1.11.0



Expand Down Expand Up @@ -1414,7 +1414,7 @@ End of GNU GPL Version 3.0 License

===========================================================================
END OF TERMS AND CONDITIONS FOR SEPARATELY LICENSED CODE for IBM Block
Storage CSI Driver version 1.10.0
Storage CSI Driver version 1.11.0
===========================================================================


Expand All @@ -1426,7 +1426,7 @@ Storage CSI Driver version 1.10.0

GNU GPL and / or LGPL Source Code for:

IBM Block Storage CSI Driver 1.10.0
IBM Block Storage CSI Driver 1.11.0

===========================================================================

Expand All @@ -1445,7 +1445,7 @@ GNU General Public License 2.0.
Red Hat Universal Base Image 8 Python 3.8

Source code to any of the above-listed packages distributed with IBM Block
Storage CSI Driver 1.10.0 is available at the website below, when a URL is
Storage CSI Driver 1.11.0 is available at the website below, when a URL is
provided, or by sending a request to the following address or email:

IBM Corporation
Expand Down Expand Up @@ -1473,7 +1473,7 @@ GNU General Public License 3.0.
Red Hat Universal Base Image 8 Python 3.8

Source code to any of the above-listed packages distributed with IBM Block
Storage CSI Driver 1.10.0 is available at the website below, when a URL is
Storage CSI Driver 1.11.0 is available at the website below, when a URL is
provided, or by sending a request to the following address or email:

IBM Corporation
Expand Down Expand Up @@ -2394,6 +2394,6 @@ END OF yaml-2.2.8 NOTICES AND INFORMATION

===========================================================================
END OF NOTICES AND INFORMATION FOR IBM Block Storage CSI
Driver 1.10.0
Driver 1.11.0
===========================================================================

2 changes: 1 addition & 1 deletion common/config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
identity:
name: block.csi.ibm.com
version: 1.10.0
version: 1.11.0
capabilities:
Service: [ CONTROLLER_SERVICE, VOLUME_ACCESSIBILITY_CONSTRAINTS ]
VolumeExpansion: ONLINE
Expand Down
56 changes: 48 additions & 8 deletions controllers/array_action/array_action_types.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,21 @@


@dataclass
class Volume:
class ArrayObject:
name: str
id: str
internal_id: str
array_type: str


@dataclass
class ThinVolume(ArrayObject):
capacity_bytes: int
source_id: str = ""


@dataclass
class Volume(ArrayObject):
capacity_bytes: int
id: str
internal_id: str
Expand All @@ -14,6 +28,13 @@ class Volume:
array_type: str
pool: str
space_efficiency_aliases: set = field(default_factory=set)
volume_group_id: str = None
volume_group_name: str = None


@dataclass
class VolumeGroup(ArrayObject):
volumes: list = field(default_factory=list)


@dataclass
Expand All @@ -22,14 +43,24 @@ class Snapshot(Volume):
is_ready: bool = False


@dataclass
class Replication:
def __init__(self, name, volume_internal_id, other_volume_internal_id, copy_type, is_ready, is_primary=None):
self.name = name
self.volume_internal_id = volume_internal_id
self.other_volume_internal_id = other_volume_internal_id
self.copy_type = copy_type
self.is_ready = is_ready
self.is_primary = is_primary
name: str
copy_type: str
is_ready: bool
replication_type: str
is_primary: bool
volume_group_id: str = None


@dataclass
class ReplicationRequest:
volume_internal_id: str
other_volume_internal_id: str
other_system_id: str
copy_type: str
replication_type: str
replication_policy: str = None


@dataclass
Expand All @@ -52,3 +83,12 @@ class ObjectIds:

def __bool__(self):
return bool(self.internal_id or self.uid)


@dataclass
class VolumeGroupIds:
internal_id: str = ''
name: str = ''

def __bool__(self):
return bool(self.internal_id or self.name)
8 changes: 4 additions & 4 deletions controllers/array_action/array_mediator_abstract.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
from retry import retry

import controllers.array_action.errors as array_errors
import controllers.servers.utils as utils
from controllers.array_action.array_mediator_interface import ArrayMediator
from controllers.array_action.config import (NVME_OVER_FC_CONNECTIVITY_TYPE,
FC_CONNECTIVITY_TYPE,
ISCSI_CONNECTIVITY_TYPE)
from controllers.array_action.errors import NoConnectionAvailableException, UnsupportedConnectivityTypeError
from controllers.array_action.settings import (NVME_OVER_FC_CONNECTIVITY_TYPE,
FC_CONNECTIVITY_TYPE,
ISCSI_CONNECTIVITY_TYPE)
from controllers.array_action.utils import convert_scsi_id_to_nguid
from controllers.common.csi_logger import get_stdout_logger
import controllers.servers.utils as utils

logger = get_stdout_logger()

Expand Down
Loading

0 comments on commit 4613eff

Please sign in to comment.