Skip to content
This repository has been archived by the owner on Oct 25, 2023. It is now read-only.

Commit

Permalink
chore: rename dothill-csi to san-iscsi-csi
Browse files Browse the repository at this point in the history
BREAKING CHANGE: The docker image and helm chart are now called san-iscsi-csi instead of dothill-csi
  • Loading branch information
paullaffitte committed Jun 11, 2021
1 parent 2dbd03f commit f09b5fc
Show file tree
Hide file tree
Showing 36 changed files with 335 additions and 335 deletions.
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ test/.env
_legacy

# binaries
dothill-node
dothill-controller
san-iscsi-csi-node
san-iscsi-csi-controller

# generated documentation and license
/helm/*/README.md
Expand Down
16 changes: 8 additions & 8 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ build and push:
- docker login -u "$DOCKER_HUB_USER" -p "$DOCKER_HUB_PASSWORD"
script:
- VERSION="$CI_COMMIT_TAG" make push
- docker tag "enix/dothill-csi:$CI_COMMIT_TAG" enix/dothill-csi
- docker push enix/dothill-csi
- docker tag "enix/san-iscsi-csi:$CI_COMMIT_TAG" enix/san-iscsi-csi
- docker push enix/san-iscsi-csi
only:
- tags

Expand All @@ -63,21 +63,21 @@ push helm chart:
- git config --global user.name "Monkeynator"
script:
- git clone --single-branch --branch master git@github.com:enix/helm-charts.git
- rm -rf ./helm-charts/charts/dothill-csi
- cp ./LICENSE ./helm/dothill-csi/
- cp -R ./helm/dothill-csi ./helm-charts/charts/dothill-csi
- cd ./helm-charts/charts/dothill-csi
- rm -rf ./helm-charts/charts/san-iscsi-csi
- cp ./LICENSE ./helm/san-iscsi-csi/
- cp -R ./helm/san-iscsi-csi ./helm-charts/charts/san-iscsi-csi
- cd ./helm-charts/charts/san-iscsi-csi
- >
sed -i
-e "s/version: 0\.0\.0-DIRTY/version: ${CI_COMMIT_TAG:1}/g"
-e "s/appVersion: 0\.0\.0-DIRTY/appVersion: $CI_COMMIT_TAG/g"
-e "s/image: enix\/dothill-csi:0\.0\.0-DIRTY/image: enix\/dothill-csi:$CI_COMMIT_TAG/g"
-e "s/image: enix\/san-iscsi-csi:0\.0\.0-DIRTY/image: enix\/san-iscsi-csi:$CI_COMMIT_TAG/g"
./Chart.yaml
- helm-docs
- rm ./README.md.gotmpl
- git add --all
- >
git commit -m "bump(dothill-csi): bump chart version to $CI_COMMIT_TAG"
git commit -m "bump(san-iscsi-csi): bump chart version to $CI_COMMIT_TAG"
- git push --set-upstream origin master
only:
- tags
Expand Down
2 changes: 1 addition & 1 deletion .releaserc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
# Arthur Chaloin <arthur.chaloin@enix.fr>
# Alexandre Buisine <alexandre.buisine@enix.fr>

repositoryUrl: git@github.com:enix/dothill-csi.git
repositoryUrl: git@github.com:enix/san-iscsi-csi.git
branches:
- main
plugins:
Expand Down
318 changes: 159 additions & 159 deletions CHANGELOG.md

Large diffs are not rendered by default.

18 changes: 9 additions & 9 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,27 +35,27 @@ COPY Makefile ./

ARG version

RUN BIN="/dothill" VERSION="$version" make controller
RUN BIN="/dothill" VERSION="$version" make node
RUN BIN="/san-iscsi-csi" VERSION="$version" make controller
RUN BIN="/san-iscsi-csi" VERSION="$version" make node

###########################################

FROM ubuntu:18.04

LABEL maintainer="Enix <no-reply@enix.fr>" \
org.opencontainers.image.title="Dothill CSI" \
org.opencontainers.image.description="A dynamic persistent volume provisioner for Dothill AssuredSAN based storage systems." \
org.opencontainers.image.url="https://github.com/enix/dothill-csi" \
org.opencontainers.image.source="https://github.com/enix/dothill-csi/blob/master/Dockerfile" \
org.opencontainers.image.documentation="https://github.com/enix/dothill-csi/blob/master/README.md" \
org.opencontainers.image.title="SAN iSCSI CSI driver" \
org.opencontainers.image.description="A dynamic persistent volume provisioner for iSCSI-compatible SAN based storage systems." \
org.opencontainers.image.url="https://github.com/enix/san-iscsi-csi" \
org.opencontainers.image.source="https://github.com/enix/san-iscsi-csi/blob/master/Dockerfile" \
org.opencontainers.image.documentation="https://github.com/enix/san-iscsi-csi/blob/master/README.md" \
org.opencontainers.image.authors="Enix <no-reply@enix.fr>" \
org.opencontainers.image.licenses="Apache 2.0"

COPY --from=build /dothill-* /usr/local/bin/
COPY --from=build /san-iscsi-csi-* /usr/local/bin/

ENV PATH="${PATH}:/lib/udev"

CMD [ "/usr/local/bin/dothill-controller" ]
CMD [ "/usr/local/bin/san-iscsi-csi-controller" ]

ARG version
ARG vcs_ref
Expand Down
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,14 @@ endif
ifndef VERSION
VERSION = latest
else
VERSION_FLAG = -X github.com/enix/dothill-csi/pkg/common.Version=$(VERSION)
VERSION_FLAG = -X github.com/enix/san-iscsi-csi/pkg/common.Version=$(VERSION)
endif

ifndef BIN
BIN = dothill
BIN = san-iscsi-csi
endif

IMAGE = $(DOCKER_HUB_REPOSITORY)/dothill-csi:$(VERSION)
IMAGE = $(DOCKER_HUB_REPOSITORY)/san-iscsi-csi:$(VERSION)

all: bin image
.PHONY: all
Expand Down
18 changes: 9 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Dothill-csi dynamic provisioner for Kubernetes
# SAN iSCSI CSI driver

A dynamic persistent volume (PV) provisioner for Dothill AssuredSAN based storage systems.
A dynamic persistent volume (PV) provisioner for iSCSI-compatible SAN based storage systems.

[![Build status](https://gitlab.com/enix.io/dothill-csi/badges/main/pipeline.svg)](https://gitlab.com/enix.io/dothill-csi/-/pipelines)
[![Go Report Card](https://goreportcard.com/badge/github.com/enix/dothill-csi)](https://goreportcard.com/report/github.com/enix/dothill-csi)
[![Build status](https://gitlab.com/enix.io/san-iscsi-csi/badges/main/pipeline.svg)](https://gitlab.com/enix.io/san-iscsi-csi/-/pipelines)
[![Go Report Card](https://goreportcard.com/badge/github.com/enix/san-iscsi-csi)](https://goreportcard.com/report/github.com/enix/san-iscsi-csi)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)

## Introduction
Expand All @@ -26,7 +26,7 @@ It is also privately labeled by some of the world's most prominent storage brand

## This project

`Dothill-CSI` implements the **Container Storage Interface** in order to facilitate dynamic provisioning of persistent volumes on kubernetes cluster.
`san-iscsi-csi` implements the **Container Storage Interface** in order to facilitate dynamic provisioning of persistent volumes on kubernetes cluster.

All dothill AssuredSAN based equipements share a common API which **may or may not be advertised** by the final integrator.
Although this project is developped and tested on HPE MSA 2050 & 2060 equipments, it should work with a lot of other references from various brands.
Expand Down Expand Up @@ -78,7 +78,7 @@ service multipathd start

### Multipathd additionnal configuration

For the plugin to work with multipathd, you have to install the following configuration on your hosts. We advise to put it in `/etc/multipath/conf.d/dothill.conf`.
For the plugin to work with multipathd, you have to install the following configuration on your hosts. We advise to put it in `/etc/multipath/conf.d/san-iscsi-csi.conf`.

```conf
defaults {
Expand All @@ -94,21 +94,21 @@ After the configuration has been created, restart multipathd to reload it (`serv

### Deploy the provisioner to your kubernetes cluster

The preferred approach to install this project is to use the provided [Helm Chart](https://artifacthub.io/packages/helm/enix/dothill-csi).
The preferred approach to install this project is to use the provided [Helm Chart](https://artifacthub.io/packages/helm/enix/san-iscsi-csi).

#### Configure your release

Create a `values.yaml` file. It should contain configuration for your release.

Please read the dothill-csi helm-chart [README.md](https://github.com/enix/helm-charts/blob/master/charts/dothill-csi/README.md#values) for more details about this file.
Please read the san-iscsi-csi helm-chart [README.md](https://github.com/enix/helm-charts/blob/master/charts/san-iscsi-csi/README.md#values) for more details about this file.

#### Install the helm chart

You should first add our charts repository, and then install the chart as follows.

```sh
helm repo add enix https://charts.enix.io/
helm install my-release enix/dothill-csi -f ./example/values.yaml
helm install my-release enix/san-iscsi-csi -f ./example/values.yaml
```

### Create a storage class
Expand Down
6 changes: 3 additions & 3 deletions cmd/controller/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ import (
"flag"
"fmt"

"github.com/enix/dothill-csi/pkg/common"
"github.com/enix/dothill-csi/pkg/controller"
"github.com/enix/san-iscsi-csi/pkg/common"
"github.com/enix/san-iscsi-csi/pkg/controller"
"k8s.io/klog"
)

Expand All @@ -36,6 +36,6 @@ func main() {
klog.InitFlags(nil)
flag.Set("logtostderr", "true")
flag.Parse()
klog.Infof("starting dothill storage controller %s", common.Version)
klog.Infof("starting SAN iSCSI CSI controller %s", common.Version)
controller.New().Start(*bind)
}
6 changes: 3 additions & 3 deletions cmd/node/node.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ import (
"fmt"
"syscall"

"github.com/enix/dothill-csi/pkg/common"
"github.com/enix/dothill-csi/pkg/node"
"github.com/enix/san-iscsi-csi/pkg/common"
"github.com/enix/san-iscsi-csi/pkg/node"
"k8s.io/klog"
)

Expand All @@ -45,6 +45,6 @@ func main() {
}
}

klog.Infof("starting dothill storage node plugin %s", common.Version)
klog.Infof("starting SAN iSCSI CSI node %s", common.Version)
node.New().Start(*bind)
}
4 changes: 2 additions & 2 deletions docs/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ iscsiadm -m discovery -t st -p 10.14.84.215
iscsiadm -m node -L all
```

## AttachVolume.Attach failed for volume "xxx" : CSINode xxx does not contain driver dothill.csi.enix.io
## AttachVolume.Attach failed for volume "xxx" : CSINode xxx does not contain driver san-iscsi.csi.enix.io

Typically, this error happens when you use RancherOS. Since the kubelet path is `/opt/rke/var/lib/kubelet` instead of `/var/lib/kubelet`, the plugin cannot be registered using the default path.

Expand All @@ -36,7 +36,7 @@ It's because your storage class miss parameters `csi.storage.k8s.io/controller-e

## multipath is inconsistent: devices WWIDs differ

This issue can be caused by various reasons. In the case the full message looks like the following, it's most probably because you forgot to install the configuration file for multipathd, or forgot to reload it. To find the configuration to apply, refers to the section [multipathd additionnal configuration](https://github.com/enix/dothill-csi/blob/main/README.md#multipathd-additionnal-configuration) in `README.md`.
This issue can be caused by various reasons. In the case the full message looks like the following, it's most probably because you forgot to install the configuration file for multipathd, or forgot to reload it. To find the configuration to apply, refers to the section [multipathd additionnal configuration](https://github.com/enix/san-iscsi-csi/blob/main/README.md#multipathd-additionnal-configuration) in `README.md`.

```
rpc error: code = Unavailable desc = multipath is inconsistent: devices WWIDs differ: mpathb (wwid:3600c0ff00052098834d1c16001000000) != mpathb (wwid:mpathb)
Expand Down
10 changes: 5 additions & 5 deletions example/snapshot.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -48,18 +48,18 @@ spec:
apiVersion: snapshot.storage.k8s.io/v1beta1
kind: VolumeSnapshotClass
metadata:
name: snapshot-class-dothill
driver: dothill.csi.enix.io
name: snapshot-class-san-iscsi-csi
driver: san-iscsi.csi.enix.io
deletionPolicy: Delete
parameters:
csi.storage.k8s.io/snapshotter-secret-name: dothill-api
csi.storage.k8s.io/snapshotter-secret-namespace: dothill-system
csi.storage.k8s.io/snapshotter-secret-name: san-iscsi-csi-api
csi.storage.k8s.io/snapshotter-secret-namespace: san-iscsi-csi-system
---
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshot
metadata:
name: test-snapshot
spec:
volumeSnapshotClassName: snapshot-class-dothill
volumeSnapshotClassName: snapshot-class-san-iscsi-csi
source:
persistentVolumeClaimName: claim
18 changes: 9 additions & 9 deletions example/storage-class.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,19 +19,19 @@

apiVersion: storage.k8s.io/v1
kind: StorageClass
provisioner: dothill.csi.enix.io # Required for the plugin to recognize this storage class as handled by itself.
provisioner: san-iscsi.csi.enix.io # Required for the plugin to recognize this storage class as handled by itself.
volumeBindingMode: WaitForFirstConsumer # Prefer this value to avoid unschedulable pods (https://kubernetes.io/docs/concepts/storage/storage-classes/#volume-binding-mode)
allowVolumeExpansion: true
metadata:
name: my-marvelous-storage # Choose the name that fits the best with your StorageClass.
parameters:
# Secrets name and namespace, they can be the same for provisioner, controller-publish and controller-expand sections.
csi.storage.k8s.io/provisioner-secret-name: dothill-api
csi.storage.k8s.io/provisioner-secret-namespace: dothill-system
csi.storage.k8s.io/controller-publish-secret-name: dothill-api
csi.storage.k8s.io/controller-publish-secret-namespace: dothill-system
csi.storage.k8s.io/controller-expand-secret-name: dothill-api
csi.storage.k8s.io/controller-expand-secret-namespace: dothill-system
csi.storage.k8s.io/provisioner-secret-name: san-iscsi-csi-api
csi.storage.k8s.io/provisioner-secret-namespace: san-iscsi-csi-system
csi.storage.k8s.io/controller-publish-secret-name: san-iscsi-csi-api
csi.storage.k8s.io/controller-publish-secret-namespace: san-iscsi-csi-system
csi.storage.k8s.io/controller-expand-secret-name: san-iscsi-csi-api
csi.storage.k8s.io/controller-expand-secret-namespace: san-iscsi-csi-system
fsType: ext4 # Desired filesystem
iqn: iqn.2015-11.com.hpe:storage.msa2050.2002518b4c # Appliance IQN
pool: A # Pool to use on the IQN to provision volumes
Expand All @@ -40,8 +40,8 @@ parameters:
apiVersion: v1
kind: Secret
metadata:
name: dothill-api
namespace: dothill-system
name: san-iscsi-csi-api
namespace: san-iscsi-csi-system
type: Opaque
data:
apiAddress: aHR0cHM6Ly8xMC4wLjAuNDI= # base64 encoded api address
Expand Down
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
// Arthur Chaloin <arthur.chaloin@enix.fr>
// Alexandre Buisine <alexandre.buisine@enix.fr>

module github.com/enix/dothill-csi
module github.com/enix/san-iscsi-csi

go 1.16

Expand All @@ -38,4 +38,4 @@ require (
// replace github.com/enix/dothill-api-go => ./pkg/dothill-api-go

// replace github.com/kubernetes-csi/csi-lib-iscsi => ./pkg/csi-lib-iscsi
replace github.com/kubernetes-csi/csi-lib-iscsi => github.com/enix/csi-lib-iscsi v0.0.0-dothill-4-0-0
replace github.com/kubernetes-csi/csi-lib-iscsi => github.com/enix/csi-lib-iscsi v0.0.0-san-iscsi-csi-4-0-0
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,8 @@ github.com/eapache/go-resiliency v1.1.0/go.mod h1:kFI+JgMyC7bLPUVY133qvEBtVayf5m
github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1:+020luEh2TKB4/GOp8oxxtq0Daoen/Cii55CzbTV6DU=
github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I=
github.com/edsrzf/mmap-go v1.0.0/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M=
github.com/enix/csi-lib-iscsi v0.0.0-dothill-4-0-0 h1:r3J88AT1OKYYt5F/QrlxI92+cJaGAAGl0zYJUIGOcXQ=
github.com/enix/csi-lib-iscsi v0.0.0-dothill-4-0-0/go.mod h1:c/keGS6bErOzLrFyNgafdDWT6h72v2XQiA/p2R7yghU=
github.com/enix/csi-lib-iscsi v0.0.0-san-iscsi-csi-4-0-0 h1:MOVxgatjMYKahnbh7KeOUNMowBryKtEDiRqeLd/vnKg=
github.com/enix/csi-lib-iscsi v0.0.0-san-iscsi-csi-4-0-0/go.mod h1:c/keGS6bErOzLrFyNgafdDWT6h72v2XQiA/p2R7yghU=
github.com/enix/dothill-api-go/v2 v2.0.0 h1:ygITsust2Y/tuTA8kzd8rBWgQwB+QAxvrFALifjOoJ4=
github.com/enix/dothill-api-go/v2 v2.0.0/go.mod h1:Kc2euNhJbjY31KKXW9ld1+ypvBNlqQUpEUPIodh208o=
github.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g=
Expand Down
File renamed without changes.
12 changes: 6 additions & 6 deletions helm/dothill-csi/Chart.yaml → helm/san-iscsi-csi/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@
# Alexandre Buisine <alexandre.buisine@enix.fr>

apiVersion: v2
name: dothill-csi
name: san-iscsi-csi
version: 0.0.0-DIRTY
appVersion: 0.0.0-DIRTY
description: A dynamic persistent volume (PV) provisioner for Dothill AssuredSAN based storage systems.
description: A dynamic persistent volume (PV) provisioner for iSCSI-compatible SAN based storage systems.
type: application
home: https://github.com/enix/dothill-csi
home: https://github.com/enix/san-iscsi-csi
sources:
- https://github.com/enix/dothill-csi/tree/main/helm/dothill-csi
- https://github.com/enix/san-iscsi-csi/tree/main/helm/san-iscsi-csi
keywords:
- storage
- iscsi
Expand All @@ -43,5 +43,5 @@ maintainers:
email: arthur.chaloin@enix.fr
annotations:
artifacthub.io/images: |
- name: dothill-csi
image: enix/dothill-csi:0.0.0-DIRTY
- name: san-iscsi-csi
image: enix/san-iscsi-csi:0.0.0-DIRTY
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,14 @@ Add our Charts repository:
$ helm repo add enix https://charts.enix.io
```

Install the {{ template "chart.name" . }} with release name `{{ template "chart.name" . }}` in the `dothill-system` namespace:
Install the {{ template "chart.name" . }} with release name `{{ template "chart.name" . }}` in the `san-iscsi-csi-system` namespace:
```
$ helm install -n dothill-system {{ template "chart.name" . }} enix/{{ template "chart.name" . }} --values {{ template "chart.name" . }}.values.yaml
$ helm install -n san-iscsi-csi-system {{ template "chart.name" . }} enix/{{ template "chart.name" . }} --values {{ template "chart.name" . }}.values.yaml
```

The `upgrade` command is used to change configuration when values are modified:
```
$ helm upgrade -n dothill-system {{ template "chart.name" . }} enix/{{ template "chart.name" . }} --values {{ template "chart.name" . }}.values.yaml
$ helm upgrade -n san-iscsi-csi-system {{ template "chart.name" . }} enix/{{ template "chart.name" . }} --values {{ template "chart.name" . }}.values.yaml
```

# Upgrading the Chart
Expand All @@ -50,7 +50,7 @@ $ helm upgrade {{ template "chart.name" . }} enix/{{ template "chart.name" . }}

# Creating a storage class

In order to dynamically provision persistants volumes, you first need to create a storage class. To do so, please refer to the project [documentation](https://github.com/enix/dothill-csi).
In order to dynamically provision persistants volumes, you first need to create a storage class. To do so, please refer to the project [documentation](https://github.com/enix/san-iscsi-csi).

{{ template "chart.maintainersSection" . }}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Thank you for using Dothill-CSI. It will be soon up and running.
Thank you for using SAN iSCSI CSI driver. It will be soon up and running.

In order to dynamically provide a persistant volume, you have to create a storage class first. Please refer to this example to do so: https://github.com/enix/dothill-csi/blob/main/example/storage-class.yaml
Don't forget to install packages open-iscsi and multipath-tools on your hosts if it's not done yet, make sure iscsid and multipathd are running and that you added the configuration file for multipathd given in the README.md file, available in the github repository (https://github.com/enix/dothill-csi/blob/main/README.md#multipathd-additionnal-configuration).
In order to dynamically provide a persistant volume, you have to create a storage class first. Please refer to this example to do so: https://github.com/enix/san-iscsi-csi/blob/main/example/storage-class.yaml
Don't forget to install packages open-iscsi and multipath-tools on your hosts if it's not done yet, make sure iscsid and multipathd are running and that you added the configuration file for multipathd given in the README.md file, available in the github repository (https://github.com/enix/san-iscsi-csi/blob/main/README.md#multipathd-additionnal-configuration).
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@
# Paul Laffitte <paul.laffitte@enix.fr>
# Alexandre Buisine <alexandre.buisine@enix.fr>

{{- define "dothill.labels" -}}
{{- define "san-iscsi-csi.labels" -}}
app.kubernetes.io/name: {{ .Chart.Name | kebabcase }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end -}}

{{- define "dothill.extraArgs" -}}
{{- define "san-iscsi-csi.extraArgs" -}}
{{- range .extraArgs }}
- {{ toYaml . }}
{{- end }}
Expand Down

0 comments on commit f09b5fc

Please sign in to comment.