zfs-localpv/e2e-tests/experiments/zfs-localpv-provisioner/run_e2e_test.yml
Kiran Mova 9d2966057a
chore(ci): updating branch reference from master to develop(HEAD) (#384) (#385)
* chore(ci): updating branch reference from master to develop(HEAD) (#384)


Signed-off-by: mittachaitu <sai.chaithanya@mayadata.io>
Co-authored-by: sai chaithanya <sai.chaithanya@mayadata.io>
2021-09-15 18:58:12 +05:30

129 lines
6.5 KiB
YAML

---
apiVersion: batch/v1
kind: Job
metadata:
generateName: zfs-localpv-provisioner-
namespace: e2e
spec:
template:
metadata:
labels:
test: zfs-localpv-provisioner
spec:
serviceAccountName: e2e
restartPolicy: Never
containers:
- name: ansibletest
image: openebs/zfs-localpv-e2e:ci
imagePullPolicy: IfNotPresent
env:
- name: ANSIBLE_STDOUT_CALLBACK
#value: log_plays
value: default
# This test will download the zfs-localpv operator file from this branch.
# Change the env value according to versioned branch name for zfs-localpv provisioner
# from openebs/zfs-localpv repo. for e.g. (v1.4.x , v1.5.x OR develop)
# by default test-specific value of `ZFS_BRANCH` is develop.
- name: ZFS_BRANCH
value: 'develop'
# After v1.5.0 in each branch of openebs/zfs-localpv repo zfs-localpv driver image is set to
# `ci` tag `openebs/zfs-driver:ci`. Give the full image name here with desired image tag to replace
# it with `ci` tag. for e.g. (openebs/zfs-driver:1.5.0). Leaving this env empty will
# apply the operator yaml with by default present `ci` tag i.e. `openebs/zfs-driver:ci`
- name: ZFS_DRIVER_IMAGE
value: ''
# This is the namespace where the zfs driver will create all its resources.
# By default it is in openebs namespace. If we want to change it to use a different
# namespace change the value of this env with desired namespace name.
- name: ZFS_OPERATOR_NAMESPACE
value: 'openebs'
# In addition to provisioning of zfs-localpv driver if we want to create zpool on worker nodes,
# use `true` as the value for this env else leave it blank or false. If zpool is already present and no need of zpool
# creation via this test script then then set this value as `false`.
# by default this `env` value is `false` and will skip zpool creation on nodes.
- name: ZPOOL_CREATION
value: ''
# In case if we have use value as `true` in `ZPOOL_CREATION` env, provide here
# the name for zpool by which name it will be created via this test script else leave blank.
# If we don't want to create volume group on nodes via this test but still
# wants to create some generally used storage_classes for provisioning of zfs volumes
# provide here the zpool name which you have already setted up and it will be
# used in storage class template.
# by default test-specific value of zpool name is `zfs-test-pool`.
- name: ZPOOL_NAME
value: 'zfs-test-pool'
# If we want to create encrypted zpool provide value `on` else `off`
# by default value is `off`
- name: ZPOOL_ENCRYPTION
value: 'off'
# For creating encrypted zpool this test uses the keyformat as passphrase.
# to create one such passphrase provide here a character string of minimum length as 8 (for e.g. test1234)
# which will be used in automatically when zpool create command promts for passphrase.
# by default this test will use password as `test1234` for zpool encryption
# you can use a different one for your zpools.
- name: ZPOOL_ENCRYPTION_PASSWORD
value: 'test1234'
# This is the env to decide which type of zpool we want to create, or we have already set up
# this type of zpool. by default test specific value for this env is `striped`.
# supported values are (stripe, mirror, raidz, raidz2 and raidz3)
- name: ZPOOL_TYPE
value: 'stripe'
# In case if we have use value as `true` in `ZPOOL_CREATION` env, provide here
# the name of the disks to use them for creation of zpool, else leave blank. for e.g. `/dev/sdb`
# If we want to use more than one disk (when mirrored or raidz pools) give the names in space seperated format
# for e.g. "/dev/sdb /dev/sdc"
- name: ZPOOL_DISKS
value: ''
# In case if we have use value as `true` in `ZPOOL_CREATION` env, provide here
# the name of nodes on which we want zpools to be created. Leaving this blank
# will create zpools on all the schedulabel nodes.
# Provide node names in comma seperated format for e.g. ('node-1,node-2,node-3')
- name: ZPOOL_NODE_NAMES
value: ''
# If we want to create some generally used storage_classes and snapshot class for provisioning
# of zfs volumes and taking zfs snapshots provide `true` as the value for this env. Leaving this value
# blank will consider as false. by default test-specific value for this env is `true`.
- name: STORAGE_CLASS_CREATION
value: 'true'
# Snapshot class will be created with name which will be provided here
# by default test specific value is
- name: SNAPSHOT_CLASS
value: 'zfs-snapshot-class'
# If data compression is needed use value: 'on' else 'off'
# by default test-specific value is `off`
- name: COMPRESSION
value: 'off'
# If data duplication is needed give value: 'on' else 'off'
# by default test-specific value is `off`
- name: DEDUP
value: 'off'
# This env value will be used in storage classes templates in case of xfs and ext or btrfs file system,
# where we create a ZVOL a raw block device carved out of ZFS Pool.
# provide the blocksize with which you want to create the block devices. by default test-specific value
# will be `4k`. Supported values: Any power of 2 from 512 bytes to 128 Kbytes
- name: VOLBLOCKSIZE
value: '4k'
# This env value will be used in storage classes templates in case of zfs file system
# provide recordsize which is the maximum block size for files and will be used to create ZFS datasets
# by default test-specific value will be `4k`. Supported values: Any power of 2 from 512 bytes to 128 Kbytes
- name: RECORDSIZE
value: '4k'
command: ["/bin/bash"]
args: ["-c", "ansible-playbook ./e2e-tests/experiments/zfs-localpv-provisioner/test.yml -i /etc/ansible/hosts -v; exit 0"]