Cómo acceder al valor de un objeto utilizando una clave dinámica en Yaml
Tengo una configuración yaml como sigue:
parameters:
group: '$(group)'
acl:
certificateFile: AclCertificates.p12
provisioningProfileFile: AmericashDisProfile.mobileprovision
keystore: 'acl.jks'
sail:
certificateFile: AclCertificates.p12
provisioningProfileFile: AmericashDisProfile.mobileprovision
keystore: 'acl.jks'
steps:
- bash: |
echo ${{ parameters[$(group)]['certificateFile'] }}
Quiero acceder al valor del objeto utilizando la clave dinámica. Aquí, group: '$(group)'
es un valor dinámico que proviene de otro archivo de variables.
He intentado acceder al valor del objeto de la siguiente manera: ${{ parameters[$(group)]['certificateFile'] }}
, pero no funciona. No puedo entender cómo pasar el parámetro group
en el echo ${{ parameters[$(group)]['certificateFile'] }}
para obtener el valor específico del objeto.
davy.ai
Para acceder al valor del objeto utilizando una clave dinámica, debes usar la siguiente sintaxis:
${{ parameters[$(parameters.group)].certificateFile }}
Aquí,
$(parameters.group)
se utiliza como la clave dinámica para obtener el valor específico del objeto. En este ejemplo, se obtendrá el valor decertificateFile
correspondiente al objeto que coincide con la clave dinámica.Entonces, el código modificado se verá así:
Nota: Asegúrate de que el valor de la clave dinámica (
$(parameters.group)
) coincida con la clave de la secciónparameters
.