kni@ocp-edge04 ~]$ # Create a FAR CR without specifying sharedSecretName
[kni@ocp-edge04 ~]$ cat <<EOF | oc apply -f -
> apiVersion: fence-agents-remediation.medik8s.io/v1alpha1
> kind: FenceAgentsRemediation
> metadata:
>   name: test-no-default
>   namespace: openshift-workload-availability
> spec:
>   agent: fence_ipmilan
>   remediationStrategy: OutOfServiceTaint
>   sharedparameters:
>     "--ip": "1.1.1.1"
> EOF
Error from server (Forbidden): error when creating "STDIN": admission webhook "vfenceagentsremediation.kb.io" denied the request: invalid spec: mandatory parameters are missing
[kni@ocp-edge04 ~]$ 
[kni@ocp-edge04 ~]$ # Check if the field was automatically filled
[kni@ocp-edge04 ~]$ oc get far test-no-default -n openshift-workload-availability -o jsonpath='{.spec.sharedSecretName}'
Error from server (NotFound): fenceagentsremediations.fence-agents-remediation.medik8s.io "test-no-default" not found
[kni@ocp-edge04 ~]$ cat <<EOF | oc apply -f -
> apiVersion: fence-agents-remediation.medik8s.io/v1alpha1
> kind: FenceAgentsRemediation
> metadata:
>   name: test-no-default
>   namespace: openshift-workload-availability
> spec:
>   agent: fence_ipmilan
>   remediationStrategy: OutOfServiceTaint
>   # Providing dummy parameters to satisfy the mandatory fields check
>   sharedparameters:
>     "--ip": "1.1.1.1"
>     "--ipport": "623"
>     "--username": "dummy"
>     "--password": "dummy"
>     "--action": "reboot"
>   nodeparameters:
>     "--ip":
>       worker-0-2: "1.1.1.1"
> EOF
fenceagentsremediation.fence-agents-remediation.medik8s.io/test-no-default created
[kni@ocp-edge04 ~]$ 
[kni@ocp-edge04 ~]$ # Now check if the field was automatically filled
[kni@ocp-edge04 ~]$ oc get far test-no-default -n openshift-workload-availability -o jsonpath='{.spec.sharedSecretName}'
[kni@ocp-edge04 ~]$ oc get far test-no-default -n openshift-workload-availability -o jsonpath='{.spec.sharedSecretName}'
[kni@ocp-edge04 ~]$ oc get far test-no-default -n openshift-workload-availability -o jsonpath='{.spec.sharedSecretName}'
[kni@ocp-edge04 ~]$ oc create secret generic fence-agents-credentials-shared -n openshift-workload-availability
secret/fence-agents-credentials-shared created
[kni@ocp-edge04 ~]$ cat <<EOF | oc apply -f -
> apiVersion: fence-agents-remediation.medik8s.io/v1alpha1
> kind: FenceAgentsRemediation
> metadata:
>   name: test-workaround-auto-add
>   namespace: openshift-workload-availability
> spec:
>   agent: fence_ipmilan
>   remediationStrategy: OutOfServiceTaint
>   sharedparameters:
>     "--ip": "1.1.1.1"
>     "--ipport": "623"
>     "--username": "dummy"
>     "--password": "dummy"
>     "--action": "reboot"
>   nodeparameters:
>     "--ip":
>       worker-0-2: "1.1.1.1"
> EOF
fenceagentsremediation.fence-agents-remediation.medik8s.io/test-workaround-auto-add created
[kni@ocp-edge04 ~]$ oc get far test-workaround-auto-add -n openshift-workload-availability -o jsonpath='{.spec.sharedSecretName}'
[kni@ocp-edge04 ~]$ oc delete secret fence-agents-credentials-shared -n openshift-workload-availability --ignore-not-found
secret "fence-agents-credentials-shared" deleted from openshift-workload-availability namespace
[kni@ocp-edge04 ~]$ cat <<EOF | oc apply -f -
> apiVersion: fence-agents-remediation.medik8s.io/v1alpha1
> kind: FenceAgentsRemediation
> metadata:
>   name: test-workaround-auto-remove
>   namespace: openshift-workload-availability
> spec:
>   agent: fence_ipmilan
>   sharedSecretName: fence-agents-credentials-shared  # <--- Setting it manually
>   remediationStrategy: OutOfServiceTaint
>   sharedparameters:
>     "--ip": "1.1.1.1"
>     "--ipport": "623"
>     "--username": "dummy"
>     "--password": "dummy"
>     "--action": "reboot"
>   nodeparameters:
>     "--ip":
>       worker-0-2: "1.1.1.1"
> EOF
Error from server (Forbidden): error when creating "STDIN": admission webhook "vfenceagentsremediation.kb.io" denied the request: secret 'fence-agents-credentials-shared' not found in namespace 'openshift-workload-availability': Secret "fence-agents-credentials-shared" not found
[kni@ocp-edge04 ~]$ oc delete far test-no-default -n openshift-workload-availability --ignore-not-found
fenceagentsremediation.fence-agents-remediation.medik8s.io "test-no-default" deleted from openshift-workload-availability namespace
[kni@ocp-edge04 ~]$ oc delete secret fence-agents-credentials-shared -n openshift-workload-availability --ignore-not-found