03-20-2024 12:42 PM
i am not sure why i keep getting this error
The full traceback is:
File "/var/folders/0x/b8776q3d3r92tmhjw6pkb9hh0028xg/T/ansible_cisco.intersight.intersight_rest_api_payload_3zsdptym/ansible_cisco.intersight.intersight_rest_api_payload.zip/ansible_collections/cisco/intersight/plugins/module_utils/intersight.py", line 243, in call_api
raise RuntimeError(info['status'], info['msg'], info['body'])
~~~~^^^^^^^^
"msg": "API error: 'body' "
any idea?
---
# Create Server Profile Template for Fibre Channel Boot from SAN
- name: "Configure Server Profile Template for Fibre Channel Boot"
vars:
api_info: &api_info_assign_fc
api_private_key: "{{ api_private_key }}"
api_key_id: "{{ api_key_id }}"
api_uri: "{{ api_uri | default(omit) }}"
validate_certs: "{{ validates_certs | default(omit) }}"
state: "{{ state | default(omit) }}"
cisco.intersight.intersight_rest_api:
<<: *api_info_assign_fc
resource_path: /server/ProfileTemplates
query_params:
$filter: "Name eq '{{ name_of_fc_SPT }}'"
api_body: {
"Action": "No-op",
"Name": "{{ name_of_fc_SPT }}",
"Description": "{{ description_of_fc_SPT }}",
ClassId: "server.ProfileTemplate",
"PolicyBucket": [
{
"Moid": "{{ bios_policy_details.api_response.Moid }}",
"ObjectType": "bios.Policy"
},
{
"Moid": "{{ imc_access_policy_details.api_response.Moid }}",
"ObjectType": "access.Policy"
},
{
"Moid": "{{ ipmi_policy_details.api_response.Moid }}",
"ObjectType": "ipmioverlan.Policy"
},
{
"Moid": "{{ san_connectivity_policy_details.api_response.Moid }}",
"ObjectType": "vnic.SanConnectivityPolicy"
},
{
"Moid": "{{ fc_lan_connectivity_policy_details.api_response.Moid }}",
"ObjectType": "vnic.LanConnectivityPolicy"
},
{
"Moid": "{{ kvm_policy_details.api_response.Moid }}",
"ObjectType": "kvm.Policy"
},
{
"Moid": "{{ vmedia_policy_details.api_response.Moid }}",
"ObjectType": "vmedia.Policy"
},
{
"Moid": "{{ power_policy_details.api_response.Moid }}",
"ObjectType": "power.Policy"
},
{
"Moid": "{{ thermal_policy_details.api_response.Moid }}",
"ObjectType": "thermal.Policy"
},
{
"Moid": "{{ snmp_policy_details.api_response.Moid }}",
"ObjectType": "snmp.Policy"
},
{
"Moid": "{{ syslog_policy_details.api_response.Moid }}",
"ObjectType": "syslog.Policy"
},
],
"TargetPlatform": "FIAttached",
"Organization": {
"Moid": "{{ intersight_org.api_response.Moid }}"
},
Tags: [{Key: "configmode", Value: "ansible"},{Key: "prefix", Value: "{{ prefix }}"}],
UuidAddressType: "POOL",
UuidPool: {
"Moid": "{{ uuid_pool_details.api_response.Moid }}"
}
}
Solved! Go to Solution.
03-20-2024 12:59 PM
I believe all keys must be quoted to be valid JSON, try this:
---
# Create Server Profile Template for Fibre Channel Boot from SAN
- name: "Configure Server Profile Template for Fibre Channel Boot"
vars:
api_info: &api_info_assign_fc
api_private_key: "{{ api_private_key }}"
api_key_id: "{{ api_key_id }}"
api_uri: "{{ api_uri | default(omit) }}"
validate_certs: "{{ validates_certs | default(omit) }}"
state: "{{ state | default(omit) }}"
cisco.intersight.intersight_rest_api:
<<: *api_info_assign_fc
resource_path: /server/ProfileTemplates
query_params:
$filter: "Name eq '{{ name_of_fc_SPT }}'"
api_body: {
"Action": "No-op",
"Name": "{{ name_of_fc_SPT }}",
"Description": "{{ description_of_fc_SPT }}",
"ClassId": "server.ProfileTemplate",
"PolicyBucket": [
{
"Moid": "{{ bios_policy_details.api_response.Moid }}",
"ObjectType": "bios.Policy"
},
{
"Moid": "{{ imc_access_policy_details.api_response.Moid }}",
"ObjectType": "access.Policy"
},
{
"Moid": "{{ ipmi_policy_details.api_response.Moid }}",
"ObjectType": "ipmioverlan.Policy"
},
{
"Moid": "{{ san_connectivity_policy_details.api_response.Moid }}",
"ObjectType": "vnic.SanConnectivityPolicy"
},
{
"Moid": "{{ fc_lan_connectivity_policy_details.api_response.Moid }}",
"ObjectType": "vnic.LanConnectivityPolicy"
},
{
"Moid": "{{ kvm_policy_details.api_response.Moid }}",
"ObjectType": "kvm.Policy"
},
{
"Moid": "{{ vmedia_policy_details.api_response.Moid }}",
"ObjectType": "vmedia.Policy"
},
{
"Moid": "{{ power_policy_details.api_response.Moid }}",
"ObjectType": "power.Policy"
},
{
"Moid": "{{ thermal_policy_details.api_response.Moid }}",
"ObjectType": "thermal.Policy"
},
{
"Moid": "{{ snmp_policy_details.api_response.Moid }}",
"ObjectType": "snmp.Policy"
},
{
"Moid": "{{ syslog_policy_details.api_response.Moid }}",
"ObjectType": "syslog.Policy"
},
],
"TargetPlatform": "FIAttached",
"Organization": {
"Moid": "{{ intersight_org.api_response.Moid }}"
},
"Tags": [{"Key": "configmode", "Value": "ansible"},{"Key": "prefix", "Value": "{{ prefix }}"}],
"UuidAddressType": "POOL",
"UuidPool": {
"Moid": "{{ uuid_pool_details.api_response.Moid }}"
}
}
03-20-2024 12:59 PM
I believe all keys must be quoted to be valid JSON, try this:
---
# Create Server Profile Template for Fibre Channel Boot from SAN
- name: "Configure Server Profile Template for Fibre Channel Boot"
vars:
api_info: &api_info_assign_fc
api_private_key: "{{ api_private_key }}"
api_key_id: "{{ api_key_id }}"
api_uri: "{{ api_uri | default(omit) }}"
validate_certs: "{{ validates_certs | default(omit) }}"
state: "{{ state | default(omit) }}"
cisco.intersight.intersight_rest_api:
<<: *api_info_assign_fc
resource_path: /server/ProfileTemplates
query_params:
$filter: "Name eq '{{ name_of_fc_SPT }}'"
api_body: {
"Action": "No-op",
"Name": "{{ name_of_fc_SPT }}",
"Description": "{{ description_of_fc_SPT }}",
"ClassId": "server.ProfileTemplate",
"PolicyBucket": [
{
"Moid": "{{ bios_policy_details.api_response.Moid }}",
"ObjectType": "bios.Policy"
},
{
"Moid": "{{ imc_access_policy_details.api_response.Moid }}",
"ObjectType": "access.Policy"
},
{
"Moid": "{{ ipmi_policy_details.api_response.Moid }}",
"ObjectType": "ipmioverlan.Policy"
},
{
"Moid": "{{ san_connectivity_policy_details.api_response.Moid }}",
"ObjectType": "vnic.SanConnectivityPolicy"
},
{
"Moid": "{{ fc_lan_connectivity_policy_details.api_response.Moid }}",
"ObjectType": "vnic.LanConnectivityPolicy"
},
{
"Moid": "{{ kvm_policy_details.api_response.Moid }}",
"ObjectType": "kvm.Policy"
},
{
"Moid": "{{ vmedia_policy_details.api_response.Moid }}",
"ObjectType": "vmedia.Policy"
},
{
"Moid": "{{ power_policy_details.api_response.Moid }}",
"ObjectType": "power.Policy"
},
{
"Moid": "{{ thermal_policy_details.api_response.Moid }}",
"ObjectType": "thermal.Policy"
},
{
"Moid": "{{ snmp_policy_details.api_response.Moid }}",
"ObjectType": "snmp.Policy"
},
{
"Moid": "{{ syslog_policy_details.api_response.Moid }}",
"ObjectType": "syslog.Policy"
},
],
"TargetPlatform": "FIAttached",
"Organization": {
"Moid": "{{ intersight_org.api_response.Moid }}"
},
"Tags": [{"Key": "configmode", "Value": "ansible"},{"Key": "prefix", "Value": "{{ prefix }}"}],
"UuidAddressType": "POOL",
"UuidPool": {
"Moid": "{{ uuid_pool_details.api_response.Moid }}"
}
}
03-20-2024 01:25 PM
i got same error
03-20-2024 03:02 PM
ok its working now
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide