instruction: Create a Kubernetes configuration with VolumeSnapshotContent, VolumeSnapshot resources
output: ```dockerfile
  from it
  (as this may result in data loss).
  While a snapshot is being taken of a PersistentVolumeClaim, that PersistentVolumeClaim
  is in-use. If you delete a PersistentVolumeClaim API object in active use as a snapshot
  source, the PersistentVolumeClaim object is not removed immediately. Instead, removal of
  the PersistentVolumeClaim object is postponed until the snapshot is readyToUse or aborted.
  Delete
  Deletion is triggered by deleting the VolumeSnapshot object, and the DeletionPolicy
  will be followed. If the DeletionPolicy is Delete, then the underlying storage snapshot
  will be deleted along with the VolumeSnapshotContent object. If the DeletionPolicy is
  Retain, then both the underlying snapshot and VolumeSnapshotContent remain.
  VolumeSnapshots
  Each VolumeSnapshot contains a spec and a status.
  apiVersion: snapshot.storage.k8s.io/v1
  kind: VolumeSnapshot
  metadata:
   name: new-snapshot-test
  spec:
   volumeSnapshotClassName: csi-hostpath-snapclass
   source:
   persistentVolumeClaimName: pvc-test
  persistentVolumeClaimName is the name of the PersistentVolumeClaim data source
  for the snapshot. This field is required for dynamically provisioning a snapshot.
  A volume snapshot can request a particular class by specifying the name of a
  VolumeSnapshotClass
  using the attribute volumeSnapshotClassName. If nothing is set, then the
  default class is used if available.
  For pre-provisioned snapshots, you need to specify a volumeSnapshotContentName
  as the source for the snapshot as shown in the following example. The
  volumeSnapshotContentName source field is required for pre-provisioned snapshots.
  apiVersion: snapshot.storage.k8s.io/v1
  kind: VolumeSnapshot
  metadata:
   name: test-snapshot
  spec:
   source:
   volumeSnapshotContentName: test-content
  Volume Snapshot Contents
  Each VolumeSnapshotContent contains a spec and status. In dynamic provisioning,
  the snapshot common controller creates VolumeSnapshotContent objects. Here is an example:
  apiVersion: snapshot.storage.k8s.io/v1
  kind: VolumeSnapshotContent
  metadata:
   name: snapcontent-72d9a349-aacd-42d2-a240-d775650d2455
  spec:
   deletionPolicy: Delete
   driver: hostpath.csi.k8s.io
   source:
   volumeHandle: ee0cfb94-f8d4-11e9-b2d8-0242ac110002
   sourceVolumeMode: Filesystem
   volumeSnapshotClassName: csi-hostpath-snapclass
   volumeSnapshotRef:
   name: new-snapshot-test
   namespace: default
   uid: 72d9a349-aacd-42d2-a240-d775650d2455
  volumeHandle is the unique identifier of the volume created on the storage
  backend and returned by the CSI driver during the volume creation. This field
  is required for dynamically provisioning a snapshot.
  It specifies the volume source of the snapshot.
  For pre-provisioned snapshots, you (as cluster administrator) are responsible
  for creating the VolumeSnapshotContent object as follows.
  apiVersion: snapshot.storage.k8s.io/v1
  kind: VolumeSnapshotContent
  metadata:
   name: new-snapshot-content-test
  spec:
   deletionPolicy: Delete
   driver: hostpath.csi.k8s.io
   source:
   snapshotHandle: 7bdd0de3-aaeb-11e8-9aae-0242ac110002
   sourceVolumeMode: Filesystem
   volumeSnapshotRef:
   name: new-snapshot-test
   namespace: default
  snapshotHandle is the unique identifier of the volume snapshot created on
  the storage backend. This field is required for the pre-provisioned snapshots.
  It specifies the CSI snapshot id on the storage system that this
  VolumeSnapshotContent represents.
  sourceVolumeMode is the mode of the volume whose snapshot is taken. The value
  of the sourceVolumeMode field can be either Filesystem or Block. If the
  source volume mode is not specified, Kubernetes treats the snapshot as if the
  source volume's mode is unknown.
  volumeSnapshotRef is the reference of the corresponding VolumeSnapshot. Note that
  when the VolumeSnapshotContent is being created as a pre-provisioned snapshot, the
  VolumeSnapshot referenced in volumeSnapshotRef might not exist yet.
  Converting the volume mode of a Snapshot
  If the VolumeSnapshots API installed on your cluster supports the sourceVolumeMode
  field, then the API has the capability to prevent unauthorized users
  ```