Skip to content

Commit fa01a49

Browse files
committed
block device support
1 parent e532bbe commit fa01a49

28 files changed

+1115
-1740
lines changed

block/pod.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
apiVersion: v1
2+
kind: Pod
3+
metadata:
4+
name: app
5+
spec:
6+
containers:
7+
- name: app
8+
image: busybox
9+
command: ["/bin/sh", "-c"]
10+
args: ["tail -f /dev/null"]
11+
volumeDevices:
12+
- name: data
13+
devicePath: /dev/xvda
14+
volumes:
15+
- name: data
16+
persistentVolumeClaim:
17+
claimName: block-claim

block/pvc.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
apiVersion: v1
2+
kind: PersistentVolumeClaim
3+
metadata:
4+
name: block-claim
5+
spec:
6+
accessModes:
7+
- ReadWriteOnce
8+
volumeMode: Block
9+
storageClassName: powervs-sc
10+
resources:
11+
requests:
12+
storage: 10Gi

block/sc.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
kind: StorageClass
2+
apiVersion: storage.k8s.io/v1
3+
metadata:
4+
name: powervs-sc
5+
provisioner: powervs.csi.ibm.com
6+
volumeBindingMode: WaitForFirstConsumer
7+
parameters:
8+
type: tier3

cmd/main.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,10 @@ func main() {
3535
driver.WithExtraTags(options.ControllerOptions.ExtraTags),
3636
//river.WithExtraVolumeTags(options.ControllerOptions.ExtraVolumeTags),
3737
driver.WithMode(options.DriverMode),
38+
driver.WithDebug(options.ServerOptions.Debug),
3839
driver.WithVolumeAttachLimit(options.NodeOptions.VolumeAttachLimit),
3940
driver.WithKubernetesClusterID(options.ControllerOptions.KubernetesClusterID),
41+
driver.WithPVMCloudInstanceID(options.ServerOptions.PVMCloudInstanceID),
4042
)
4143
if err != nil {
4244
klog.Fatalln(err)

cmd/options/server_options.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,14 @@ import (
2828
type ServerOptions struct {
2929
// Endpoint is the endpoint that the driver server should listen on.
3030
Endpoint string
31+
// PowerVS Cloud Instance ID
32+
PVMCloudInstanceID string
33+
// Debug
34+
Debug bool
3135
}
3236

3337
func (s *ServerOptions) AddFlags(fs *flag.FlagSet) {
3438
fs.StringVar(&s.Endpoint, "endpoint", driver.DefaultCSIEndpoint, "Endpoint for the CSI driver server")
39+
fs.StringVar(&s.PVMCloudInstanceID, "pvm-cloud-instance-id","","ID of the PVM Cloud Instance ID")
40+
fs.BoolVar(&s.Debug, "debug",false,"Debug option PowerVS client(Prints API requests and replies)")
3541
}

deploy/kubernetes/base/clusterrole-attacher.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
---
2-
# Source: powervs-csi-driver/templates/clusterrole-attacher.yaml
32
kind: ClusterRole
43
apiVersion: rbac.authorization.k8s.io/v1
54
metadata:
6-
name: ebs-external-attacher-role
5+
name: powervs-external-attacher-role
76
labels:
87
app.kubernetes.io/name: powervs-csi-driver
98
rules:

deploy/kubernetes/base/clusterrole-provisioner.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
---
2-
# Source: powervs-csi-driver/templates/clusterrole-provisioner.yaml
32
kind: ClusterRole
43
apiVersion: rbac.authorization.k8s.io/v1
54
metadata:
6-
name: ebs-external-provisioner-role
5+
name: powervs-external-provisioner-role
76
labels:
87
app.kubernetes.io/name: powervs-csi-driver
98
rules:
Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
---
2-
# Source: powervs-csi-driver/templates/clusterrolebinding-attacher.yaml
32
kind: ClusterRoleBinding
43
apiVersion: rbac.authorization.k8s.io/v1
54
metadata:
6-
name: ebs-csi-attacher-binding
5+
name: powervs-csi-attacher-binding
76
labels:
87
app.kubernetes.io/name: powervs-csi-driver
98
subjects:
109
- kind: ServiceAccount
11-
name: ebs-csi-controller-sa
10+
name: powervs-csi-controller-sa
1211
namespace: kube-system
1312
roleRef:
1413
kind: ClusterRole
15-
name: ebs-external-attacher-role
14+
name: powervs-external-attacher-role
1615
apiGroup: rbac.authorization.k8s.io
Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
---
2-
# Source: powervs-csi-driver/templates/clusterrolebinding-provisioner.yaml
32
kind: ClusterRoleBinding
43
apiVersion: rbac.authorization.k8s.io/v1
54
metadata:
6-
name: ebs-csi-provisioner-binding
5+
name: powervs-csi-provisioner-binding
76
labels:
87
app.kubernetes.io/name: powervs-csi-driver
98
subjects:
109
- kind: ServiceAccount
11-
name: ebs-csi-controller-sa
10+
name: powervs-csi-controller-sa
1211
namespace: kube-system
1312
roleRef:
1413
kind: ClusterRole
15-
name: ebs-external-provisioner-role
14+
name: powervs-external-provisioner-role
1615
apiGroup: rbac.authorization.k8s.io

deploy/kubernetes/base/controller.yaml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,40 @@
11
---
2-
# Source: powervs-csi-driver/templates/controller.yaml
3-
# Controller Service
42
kind: Deployment
53
apiVersion: apps/v1
64
metadata:
7-
name: ebs-csi-controller
5+
name: powervs-csi-controller
86
namespace: kube-system
97
labels:
108
app.kubernetes.io/name: powervs-csi-driver
119
spec:
1210
replicas: 2
1311
selector:
1412
matchLabels:
15-
app: ebs-csi-controller
13+
app: powervs-csi-controller
1614
app.kubernetes.io/name: powervs-csi-driver
1715
template:
1816
metadata:
1917
labels:
20-
app: ebs-csi-controller
18+
app: powervs-csi-controller
2119
app.kubernetes.io/name: powervs-csi-driver
2220
spec:
2321
nodeSelector:
2422
kubernetes.io/os: linux
25-
serviceAccountName: ebs-csi-controller-sa
23+
serviceAccountName: powervs-csi-controller-sa
2624
priorityClassName: system-cluster-critical
2725
tolerations:
2826
- operator: Exists
2927
containers:
30-
- name: ebs-plugin
28+
- name: powervs-plugin
3129
image: quay.io/powercloud/powervs-csi-driver:v0.0.1
3230
imagePullPolicy: Always
3331
args:
3432
# - {all,controller,node} # specify the driver mode
3533
- --endpoint=$(CSI_ENDPOINT)
3634
- --logtostderr
3735
- --v=5
36+
- --pvm-cloud-instance-id=7845d372-d4e1-46b8-91fc-41051c984601
37+
- --debug
3838
env:
3939
- name: CSI_ENDPOINT
4040
value: unix:///var/lib/csi/sockets/pluginproxy/csi.sock

0 commit comments

Comments
 (0)