Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CALM-DSL changes for v4.0.0 #318

Merged
merged 68 commits into from
Dec 3, 2024
Merged

CALM-DSL changes for v4.0.0 #318

merged 68 commits into from
Dec 3, 2024

Conversation

dwivediprab
Copy link
Contributor

No description provided.

bekkamaditya and others added 30 commits November 12, 2024 06:32
…che (#387)

Post account delete, ignore exceptions in deleting the entity from cache
JIRA: https://jira.nutanix.com/browse/CALM-43345

(cherry picked from commit 827d34c9a640b9aafd3605bdb57ac3dee03e29c2)
FEAT JIRA: https://jira.nutanix.com/browse/FEAT-12600

Release Version: **(PC2024.3, Calm 4.0.0)**

PR for supporting Custom Provider flows from DSL. Highlevel changes
include CLI commands to:
* compile/create/get/list/delete & perform test-executions of custom
providers & resource types
* perform CRUD & verify accounts of custom providers
* consume custom provider accounts in User Runbooks (CRUD & Execute) &
invoke Resource Type actions
* CRUD & execute MPI runbooks containing Resource Type Actions

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - -

Supporting Docs:
PRD:
https://docs.google.com/document/d/16uprQ23wM5OGyiOfUvEymbpKqf41HYK5kbPu41B-fi8/edit#
Engg Document:
https://docs.google.com/document/d/1gD43uANa-nJNaY6ok_KGkP5pPxujx-uRdjteBHRP8gs/edit#heading=h.yw79odci1uqg

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - -
Report portal links for regression run:

Test Suite-1:
http://rp.calm.nutanix.com/ui/#calm/launches/all%7Cpage.page=1&page.size=50&page.sort=start_time%2Cnumber%2CDESC/664cf4722ab79c0001d9fe6f?page.page=1&page.size=50&page.sort=start_time%2CASC

Test Suite-2:

http://rp.calm.nutanix.com/ui/#calm/launches/all%7Cpage.page=1&page.size=50&page.sort=start_time%2Cnumber%2CDESC/664d97982ab79c0001de6c27?page.page=1&page.size=50&page.sort=start_time%2CASC

---------

Co-authored-by: imranpasha1 <imran.pasha1@nutanix.com>
Co-authored-by: Utkarsh Bairolia <utkarsh.bairolia@nutanix.com>
Co-authored-by: Nirbhay Bagmar <nirbhay.bagmar@nutanix.com>
Co-authored-by: Richa Kumari <richa.kumari@nutanix.com>
(cherry picked from commit 317a8077da84634a91c6b1a39e52281936331d52)
Fix Automation Bug - https://jira.nutanix.com/browse/CALM-45281

---------

Co-authored-by: imranpasha1 <imran.pasha1@nutanix.com>
Co-authored-by: Utkarsh Bairolia <utkarsh.bairolia@nutanix.com>
Co-authored-by: Nirbhay Bagmar <nirbhay.bagmar@nutanix.com>
Co-authored-by: Richa Kumari <richa.kumari@nutanix.com>
(cherry picked from commit 9490ea606a601781f22b4ba6e6468b4dbbbc28aa)
This review address to create download file from export_file command.
Currently it is not downloading provider file, this code will make
ensure the downloaded provider file will get created.

---------

Co-authored-by: Bekkam Venkata Aditya <bekkamvenkata.aditya@nutanix.com>
Co-authored-by: Utkarsh Bairolia <utkarsh.bairolia@nutanix.com>
Co-authored-by: Nirbhay Bagmar <nirbhay.bagmar@nutanix.com>
Co-authored-by: Richa Kumari <richa.kumari@nutanix.com>
(cherry picked from commit 05f57919ea110282146dc87ce3c67974d5ba1dd5)
Bugs fixed as part of this PR:

1 - [CALM-45346](https://jira.nutanix.com/browse/CALM-45346)
In Decompile flows, regular CalmTask for type=HTTP doesn't support
inline URL fields. So, ensured that when Task template is rendered as
part of dynamic variables, CalmVarTask is used. Else the regular
CalmTask. Modified "user_attrs" & task jinja files as part of this
change

2 - [CALM-45348 ](https://jira.nutanix.com/browse/CALM-45348)
When basic auth WITHOUT creds are present in RTOpTask inargs' HTTP
variables, decompile is not creating a credential for the basic auth
details. Made changes to support this. As part of the same ticket, have
extended the same support to provider decompile flow as well.

3 - [CALM-45350](https://jira.nutanix.com/browse/CALM-45350)
When multiple RTs are present in the provider, a new line is not being
added between them during decompiled. Fixed this issue

4 - [CALM-45352](https://jira.nutanix.com/browse/CALM-45352)
As of now, there is no usecase for having "value" field for dynamic
variables in RB/BP as they are always set during Launch/Execute. But for
CP, values need to be provided for dynamic variables during RB save
itself (RTOpTask). Added changes to set the same for such runbooks
during decompile

5 - [CALM-45685](https://jira.nutanix.com/browse/CALM-45685)
This is an issue even with existing RB/BP flows. The JIRA description
mentions what the issue exactly is. To fix this, changed the request
body of HTTP tasks' decompile to use "repr(request_body)" instead of
json.dumps. Also, removed the default request body ("{}") being set for
DELETE tasks

(cherry picked from commit 8ba29a9ce2c3bde69dff2b3d29b463122f0eeb4d)
### PR Description
__Summary__:
Support new field code_range_list for HTTP task Response code mapping.
- Support both code and code_range_list field for compile and decompile.

__Test Plan__: Test compilation and decompilation for http task response
code mapping

__Bugs__: [CALM-31096](https://jira.nutanix.com/browse/CALM-31096)

__Associated Dependent PR__:

__Reviewers__:

__Related PRs__:

(cherry picked from commit ca37c6dfc75ddba9d7f51ae423a3a66df1280fde)
Added helper for downloading provider.

---------

Co-authored-by: bekkamaditya <bekkamvenkata.aditya@nutanix.com>
(cherry picked from commit 6f51344d2ff297e4699b98783bd349f15865052a)
### PR Description
__Summary__:
Add HTTPResponseHandle import in builtins

__Test Plan__: Custom Provider Decompile and compile should work.
__Bugs__: [CALM-45790](https://jira.nutanix.com/browse/CALM-45790)

__Associated Dependent PR__:

__Reviewers__:

__Related PRs__:

Co-authored-by: Vartika Singh <vartika.singh>
(cherry picked from commit 51068f8e49f4dc87f31b3c41af47f79980f901f8)
…renced in providers and accounts (#474)

Includes below bug fixes -
1. Task with same names in different resource_type actions to be
assigned with different uuids -
[CALM-42949](https://jira.nutanix.com/browse/CALM-42949)
2. Action and a task within it having same names should also be assigned
with different uuids -
[CALM-42951](https://jira.nutanix.com/browse/CALM-42951)
3. Variables at runbook and task level with same name to be assigned
with different uuids -
[CALM-43094](https://jira.nutanix.com/browse/CALM-43094)
4. Headers in a http variable having same name to be assigned with
different uuids -
[CALM-44932](https://jira.nutanix.com/browse/CALM-44932)
5. Output variable and input variable with same name in a runbook should
be assigned with different uuids -
[CALM-45638](https://jira.nutanix.com/browse/CALM-45638)

Previous implementation of insert_uuid ->
1. A single name_uuid_map is used for to compute mapping between name
and uuid across the list of actions. Here name_uuid_map is a map with
key being name and value being a uuid.
2. During traversing through the list / dict, if name exists in the
name_uuid_map the corresponding uuid is assigned to the block, else a
new uuid is assigned and added to the name_uuid_map.

Drawback in this approach -
1. There are chances that we have similar names for actions, tasks or
variables - in such cases same uuid is being assigned to all such
entities

Current approach ->
1. In the callee function, we are sending a unique name_uuid_map for
each action in an action_list -> ensuring no two similar naming entity
in 2 different actions have same uuids.
2. Categorising an action entity as 'action' and others like runbook /
task / variable as 'non_action' -> differentiating between an action and
a task (since these are two entities whose names are decided by the
user)
So adding this will change the name_uuid_map look like this with a task
and action having same name -> {'common_name': {'action': uuid1,
'non_action': uuid2}}
6. For every variable_list, headers and output_variable_list, we are
sending a unique name_uuid_map -> ensures variables at different levels
with same names have different uuids

http://erdinger.eng.nutanix.com/blue/organizations/jenkins/QA%2FDSL_Regression/detail/DSL_Regression/654/tests/
(cherry picked from commit 2440b9a0da1b3771020e3ba3121113d007f408c4)
Updating the name_uuid_map to pass credentials in required format while
inserting uuids in action_list

Bug fix - [CALM-46033](https://jira.nutanix.com/browse/CALM-46033)

(cherry picked from commit 7724151bb1a1898b9a570551cbb3ed4547433ff8)
JIRA: https://jira.nutanix.com/browse/CALM-46070

PR includes the following changes:
* Fix for http task decompile when request body is empty string ('')
* Deleting UUIDs of icons during provider upload. Since its not
supported now from backend, removing it

(cherry picked from commit 3b6a31a7c647797d9c92809776e439485b06f5f1)
Fix for below bug -
[CALM-44963](https://jira.nutanix.com/browse/CALM-44963)
Resource type action tasks ordering is getting changed upon creating
provider from DSL
RCA - uuid was missing in dag_task :: attrs :: edges.

Impact of no uuid in edges -
1. When task is deleted - UI has to also delete all the incoming and
outgoing edges to that task and remove task ref from
`child_tasks_local_reference_list` in DAG task.
2. For removing task ref from dag-task, UI uses ORM method
`updateObject` , which will update all the indexed data in ORM.
3. At this stage, since ORM does not find any UUIDs for edge entities in
DAG task, it fails to index them and then the updated DAG task has
`attrs.edges` as emtpy list.
4. So whenever, UI does not find any incoming edge to task, UI will
render it as direct child of start task.

(cherry picked from commit 39f5fa0c07326d1d9f0d9795923a59ec32461413)
There was black check failure due to below files not properly formatted.
This PR includes fix for it.

(cherry picked from commit 83605f4b89852c5ddee0f415f3129e08d2fd8646)
QA uses the `create_account` method to create accounts required from
DSL. As cache update happens in the `create_account_from_dsl` method,
the cache was not getting updated, causing errors in automation and
forcing to do a `calm update cache` manually. Moved code to
create_account

(cherry picked from commit 7a45d8fcde781ba430122dfe266c326e8c522eb1)
…e Task. (#436)

### PR Description
__Summary__:
Support status mapping for Decision, While loop, Execute, Set Variable
Task.
Support new field code_range_list for HTTP task Response code mapping.
- Support both code and code_range_list field for compile and decompile.

__Test Plan__: Test compilation and decompilation for status mapping and
http task response code mapping

__Bugs__: [CALM-31096](https://jira.nutanix.com/browse/CALM-31096)

__Associated Dependent PR__:

__Reviewers__:

__Related PRs__:

---------

Co-authored-by: Bekkam Venkata Aditya <bekkamvenkata.aditya@nutanix.com>
Co-authored-by: imranpasha1 <imran.pasha1@nutanix.com>
Co-authored-by: Utkarsh Bairolia <utkarsh.bairolia@nutanix.com>
Co-authored-by: Nirbhay Bagmar <nirbhay.bagmar@nutanix.com>
Co-authored-by: Richa Kumari <richa.kumari@nutanix.com>
Co-authored-by: Vartika Singh <vartika.singh>
(cherry picked from commit 8a7fa20960175ee357a69742296bc2d5157a21b2)
(cherry picked from commit ee567220a042ba3d8015d5c5eeb6fd99287228f9)
Co-authored-by: Vartika Singh <vartika.singh>
(cherry picked from commit bf3ee9ff44f886470196119a49d0d763b29337ab)
Co-authored-by: Vartika Singh <vartika.singh>
(cherry picked from commit 2dfe5f91b14a81f2c7b6d5f61466b5b8ecfb1935)
Due to runbook pod changes present in calm master and following tests
are disabled in DSL master. We hit test failure on PC having calm
version 390.

1. `tests/api_interface/test_runbooks/test_vm_actions.py`
2. `tests/api_interface/test_runbooks/test_vm_endpoints_failures.py`

(cherry picked from commit f39ecc26791e268521754380a21571320e332713)
(cherry picked from commit 5c08344c8e3ccac6c8fe3ccf7986179db935bf23)
Added View Container permissions while creating ACPs via DSL.

JIRA - [ENG-674126](https://jira.nutanix.com/browse/ENG-674126)

Tested manually to verify if the permission shows up fine -
<img width="260" alt="Screenshot 2024-07-08 at 5 25 54 AM"
src="https://github.com/ideadevice/calm-dsl/assets/110883161/d8a0bef3-93cb-41ec-bc06-988a819f2dbe">

---------

Co-authored-by: Utkarsh Bairolia <utkarsh.bairolia@nutanix.com>
Co-authored-by: Prabhat Dwivedi <prabhat.dwivedi@nutanix.com>
(cherry picked from commit 8533e01933cd8bd71356fe0321bd4705170fb37e)
Added cloner runbook command.

JIRA link: https://jira.nutanix.com/browse/CALM-39775

Target version: Calm-4.0.0

---------

Co-authored-by: Prabhat Dwivedi <prabhat.dwivedi@nutanix.com>
(cherry picked from commit 7f2da5ea8460285a4481705ca23d86b0672a58e3)
As part of Custom Provider, we are adding support for output_variables
in provider actions. Changes for supporting output_variables as list of
objects instead of list of strings and supporting in provider actions as
well as user runbooks.

---------

Co-authored-by: Bekkam Venkata Aditya <bekkamvenkata.aditya@nutanix.com>
Co-authored-by: imranpasha1 <imran.pasha1@nutanix.com>
Co-authored-by: Utkarsh Bairolia <utkarsh.bairolia@nutanix.com>
Co-authored-by: Nirbhay Bagmar <nirbhay.bagmar@nutanix.com>
Co-authored-by: Richa Kumari <richa.kumari@nutanix.com>
Co-authored-by: Vartika Singh <vartika.singh>
(cherry picked from commit 9549604611cd177b3ed91dd1766ea9f068896aca)
… 3.8.1 (#515)

Adding View Container permissions while creating ACPs via DSL from
version 3.8.1 onwards itself, rather than 4.0.0.

JIRA - [ENG-674126](https://jira.nutanix.com/browse/ENG-674126)

(cherry picked from commit 122505b76f574b12df4e2b85128354573aa42158)
Issue Link: https://jira.nutanix.com/browse/CALM-46812

PR: ideadevice/calm-dsl#312 modified describe
command for AHV only, which broke `calm describe app` command for other
providers.

This PR fixes command for all providers.

1. Tested for Vmware:

![image](https://github.com/user-attachments/assets/06869014-38f5-4f37-841d-d9b902c53f97)

2. Tested for Azure:

![image](https://github.com/user-attachments/assets/2580481a-c073-45c3-9c91-300a46ec0035)

3. Tested for AHV:

![image](https://github.com/user-attachments/assets/0b96d14f-942e-41ff-a8db-fe1e9cf08f3a)

4. Tested for AWS:

![image](https://github.com/user-attachments/assets/8dc25287-91bd-49bc-aff1-9ebfcb6a462f)

5. Tested for GCP:

![image](https://github.com/user-attachments/assets/0dbda0b1-f937-4590-b3ec-cfd35fe4765e)

(cherry picked from commit d7a3094e37a7cda49538a92ee7d91b6a6314edb4)
(cherry picked from commit 44dde3a60b5c4cc360a8f3c55202fd22b5b39520)
- Minor regression was caused by this commit:
ideadevice/calm-dsl#452. This changes fixes the
regression.
- Few of the provider flows are still using runbook APIs. Fixed these to
ensure provider APIs are used at all applicable places

(cherry picked from commit 53e9d8d55dce91d4efb1fec61692c501dc053693)
(cherry picked from commit 6b31295a6cfa0be83580b551b07d8b8f423fe19b)
Added dsl changes to support shell and powershell variables

Test plan -
Tested create and decompile flows for runbooks, blueprints and custom
providers

BUGS - [CALM-46460](https://jira.nutanix.com/browse/CALM-46460)

(cherry picked from commit f5e5627cf6108a4c30de8e99080e47eed8e4f8f9)
Query all runbooks when looking for an original one, since both deleted
and non-deleted runbooks can be cloned.

JIRA ticket: https://jira.nutanix.com/browse/CALM-47142

(cherry picked from commit 3015dad6e6267118550c149e0ee0f1838a6ca550)
dwivediprab and others added 28 commits November 19, 2024 10:06
…i data (#552)

CALM-48037: https://jira.nutanix.com/browse/CALM-48037

Description:
1. We are fetching latest mpi data according to latest version that is
in state: ['PENDING', 'APPROVED', 'PUBLISHED']
2. Then assigning projects, icon related info. If user hasn't supplied
these info then it will assign projects, icon data according to latest
version values it fetched.
3. This change is to publish both blueprints, runbooks to marketplace
manager.

(cherry picked from commit 1a2ebc7900e600ebc32cfa922a508ccfee84b8fa)
* Do not error out when de-referencing auth creds of RTOpTask inargs.
#CALM-47256
* Support json format for output of get-providers command. #CALM- 47916
* Support format command for provider files. #CALM-47917

---------

Co-authored-by: Prabhat Dwivedi <prabhat.dwivedi@nutanix.com>
(cherry picked from commit 4fb32154e7bce7b395c4682d11fa078a9f3b78dc)
…bp (#560)

Issue link: https://jira.nutanix.com/browse/CALM-39565

Description:
1. If blueprint has snapshot configs but no protection policy data.
During launch time from UI we ask to fill it's protection policies.
2. In DSL we follow the same flow but if user tries to launch by
ignoring runtime editable then in this particular scenario. We create
application without it's protection policy data.
3. Therefore, if user passes `--ignore_runtime_variables/-i` while
launching a bp having no protection policy then we will block the launch
with this change.
4. If user launches with normal flow. Then it will ask protection
policies as usual.

(cherry picked from commit 0479420bf98c350e825fe004bca822b6bb014694)
…it bp (#561)

Issue link: https://jira.nutanix.com/browse/CALM-47578

Description:
1. DirectNic gives issues like: `ERROR Details: INVALID_ARGUMENT: NIC
type:kDirectNic is not supported with Atlas network: 10`
2. To make it consistent we are using NormalNic for nics in bp's
generated through `calm init bp`

(cherry picked from commit 794bfd630640de2a518bcb6b68db6a720d3f1af7)
Decompile of bp fails incase of multiline string variable
https://jira.nutanix.com/browse/CALM-48341

(cherry picked from commit 976c047cc510e124a03c386afd7f9f90885d30bb)
…ds (#557)

Issue link: https://jira.nutanix.com/browse/CALM-47860

Description:
1. Publish to marketplace manager without platform dependent spec works
for 5 providers (AHV, Vmware, Azure, AWS, GCP) from Calm-3.8.0 version.
Adding same functionality through DSL.
2. Platform dependent fields are fetched through:
`api/calm/v3.0/platform_dependent_fields/list` for each substrate
present in blueprint. Then we iterate through bp spec and assign
equivalent null value for these fields.
3. On client side, added a switch `--without-platform-fields/-wp` in
`calm publish bp` command which invokes function to remove these
platform dependent fields.

(cherry picked from commit 4c0ebe7ba3b9e1de99ec707fe2aecf1b2e68886e)
Issue link: https://jira.nutanix.com/browse/CALM-47418

Description:
1. While rendering ref object of endpoint we were updating ui name with
dsl class name. This affects existing endpoint names which should
resemble exactly what it looks like in UI.
2. Modified logic to store UI and DSL name mapping of endpoints and use
them while decompiling.
3. Tested this change for both bp and runbook decompile and it's working
fine.

Ran regression corresponding to this change:
http://erdinger.eng.nutanix.com/blue/organizations/jenkins/QA%2FDSL_Regression/detail/DSL_Regression/699/pipeline/

(There is no test case that is affected due to this change in decompile
phase.)

(cherry picked from commit eec85d983a62002082cb65eaa1a6f4bd5ef00810)
Adding DSL file of NutanixPaaS in examples/ folder. Contents of the PR
is created by decompiling preseeded NutanixPaaS provider

JIRA: https://jira.nutanix.com/browse/CALM-48185
(cherry picked from commit 8b64d933b4c69abd79bf15bbf69d310709a71fea)
### PR Description
__Summary__: Modify error code for endpoint validation

__Test Plan__: Incase VMs not present in the Project or not accessible
to the User, 422 should be raised.

__Bugs__: [CALM-46852](https://jira.nutanix.com/browse/CALM-46852)

__Associated Dependent PR__:
ideadevice/calm#4027

__Reviewers__:

__Related PRs__:

Co-authored-by: Vartika Singh <vartika.singh>
Co-authored-by: Prabhat Dwivedi <prabhat.dwivedi@nutanix.com>
(cherry picked from commit 77d1c4fb27aecf63ceaa0f3d93019c37e1267ebf)
Changing UT version to 4.0.0 as backend changes are present both in
4.0.0 and master (4.1.0)

(cherry picked from commit c84271f2a434451eeed748414b99e3e67f9891e3)
Issue Link: https://jira.nutanix.com/browse/CALM-47711

Description:
1. Tc's were failing in get_job function when we are trying to delete a
job. While deleting we call get_job function with `all=True` parameter
which also searches for deleted jobs. Ideally, it should be `all=False`
2. There was no waiting time for app provision to be successful. Added a
sleep time.
3. Few TC's were failing due to `start time specified less than current
time`. This happened because of difference in timezone. Added UTC
timezone in jobs created in TC.

Test result after fix:

![image](https://github.com/user-attachments/assets/ad9dd88f-d507-454a-986b-2df96fc89ec5)

Triaged results of regression here:

http://rp.calm.nutanix.com/ui/#calm/launches/New_filter%7Cpage.page=1&page.size=50&page.sort=start_time,number%2CDESC/6707509c2ab79c00015ba570?page.page=1&page.size=50&filter.eq.has_childs=false&filter.in.status=FAILED%2CINTERRUPTED&filter.in.type=STEP&page.sort=start_time%2CASC
(cherry picked from commit 5b38549f663701a4a5d58052367e21a50dda1708)
Issue link: https://jira.nutanix.com/browse/CALM-47522

Description:
1. Removed centos image in bp's generated through `calm init bp`
3. Add placeholder (VM_DISK_IMAGE) for user to fill in disk image for
single/multi vm.
4. Updated package install script to run for all disk image given by
user.
5. Issued necessary warnings in client side.
6. Documentation on how to add rocky image (as an example) will be
tracked using: (https://jira.nutanix.com/browse/CALM-48419)

(cherry picked from commit 271cab22ab975ece90dd5b5c89d703dc88226fd8)
Issue link: https://jira.nutanix.com/browse/CALM-48700

Description:
1. We should not query deleted apps to create executable object of
scheduler jobs. Hence, modifying param `all=False`.

(cherry picked from commit 2c9ec49bb2dff036eca1299603df300d0b0849aa)
**PR Description**

Summary: marker_to_be_removed_for_test_http_failure_scenarios

Test Plan: Jenkins passed link -
http://rp.calm.nutanix.com/ui/#calm/launches/New_filter%7Cpage.page=1&page.size=50&filter.cnt.description=DSL_Regression%2F&page.sort=start_time,number%2CDESC/670f63b12ab79c0001a8d0e6

Bugs: #CALM-48812

Associated Dependent PR:

Reviewers:

Related PRs:

(cherry picked from commit 58020f2f0ecf1729c1eec4bd921e4319d1a71769)
Due to change in: #563 add extra step to add vm image details in `calm
init dsl` command

(cherry picked from commit 61040342adbcd2120cd3bc0d64ee995e92c709ee)
Issue link: https://jira.nutanix.com/browse/CALM-49368

Description:
1. Tested the installation in windows machine. Command make windev works
fine to install DSL.

(cherry picked from commit 95cf35782970a94ad19081f6d07c880900a409a4)
(cherry picked from commit 85d493fc8c5986619995a0b5cf0b8230ff2ae6ae)
Minor fixes in a provider command docstring & init template

(cherry picked from commit 6d9d14d6b233f3c4e33a13b12c5c5de54d7c1eed)
…s_list (#594)

### PR Description
__Summary__:
Fix UTs affected due to change of output_variables to
output_variables_list

__Test Plan__: All affected UTs should pass
__Bugs__: [CALM-47236](https://jira.nutanix.com/browse/CALM-47236)

__Associated Dependent PR__:

__Reviewers__:

__Related PRs__:

---------

Co-authored-by: Vartika Singh <vartika.singh>
Co-authored-by: Prabhat Dwivedi <prabhat.dwivedi@nutanix.com>
(cherry picked from commit 90e867a31ffb44e7f19d45f0260b279d16364892)
…pty (#598)

Co-authored-by: Vartika Singh <vartika.singh>
(cherry picked from commit 5d11fe6114f55f081350fb2dad839d5188daeb04)
Issue link: https://jira.nutanix.com/browse/CALM-48136

Description:
1. Added `exec_target_reference` to fix DSL testcase failure in
`tests/existing_vm_example_with_target_endpoint/test_existing_vm_bp_with_endpoint_target_task.py`
`tests/existing_vm_example/test_existing_vm_bp.py`
2. If calm version < 400 then this field is not present therefore remove
them from `known_json`. For calm version > 400 this field will be
present in `known_json`

![Screenshot 2024-11-14 at 4 26
48 PM](https://github.com/user-attachments/assets/43ac26c9-9bcb-4b24-8ad7-86543e7b8e14)
![Screenshot 2024-11-14 at 4 27
22 PM](https://github.com/user-attachments/assets/d675fada-64cb-4054-be1e-ae07efe38a6b)

(cherry picked from commit 75fb2d44edbb4b72d226f8b7380415371edc3ade)
(cherry picked from commit c46c6fb1f0d04dcc434131d70982bf4dd70818ef)
(cherry picked from commit 01d5b11165b75a23605b421a3e2af83c22ca0d0d)
Issue link: https://jira.nutanix.com/browse/CALM-49890

Description:
1. Launch state was not verified after polling is performed for bp
launch in MPI.
2. Added condition similar to
https://github.com/ideadevice/calm-dsl/blob/01d5b11165b75a23605b421a3e2af83c22ca0d0d/calm/dsl/cli/apps.py#L724

Tested MPI launch and nothing is breaking:
[log.txt](https://github.com/user-attachments/files/17977346/log.txt)

<img width="1316" alt="image"
src="https://github.com/user-attachments/assets/8b6e9e08-1c32-4fa9-b2d6-f541db99281d">

(cherry picked from commit bd249dfa58c305c3937c697c47ea6e61bf498495)
@dwivediprab dwivediprab merged commit c85ed3a into master Dec 3, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.