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

Update CI Task #80

Closed
kmcallorum opened this issue Aug 23, 2017 · 3 comments
Closed

Update CI Task #80

kmcallorum opened this issue Aug 23, 2017 · 3 comments

Comments

@kmcallorum
Copy link

Inside the function I have found a difficulty and I am trying to test to see if still exists in latest build but the one we have in production has rolled on this very item.

On the CI for the application we have satisifiesTicketNumber. In XLR when we go to update that field if it does not exist it gives a key error. If I go to XLD and enter some data, then in xlr it works. So if the field does not exist it will not add a new field it tries to update the old field but in the return it does not exist.
for example
http://XXXXX:4516/deployit/repository/ci/Applications/DPY/Plugins/uhg-xlr-svn-migration-plugin/1.1.2
returns
<udm.DeploymentPackage id="Applications/DPY/Plugins/uhg-xlr-svn-migration-plugin/1.1.2" token="26e12cbc-1ed9-4a22-b92d-c89aa997ec1f" created-by="dployeng" created-at="2017-03-29T10:14:01.752-0500" last-modified-by="kmcallo" last-modified-at="2017-08-23T11:11:06.659-0500">


false
false
false




LATEST
false
</udm.DeploymentPackage>

So in XLR we get Exception during execution: KeyError: u'satisfiesTicketNumber' in <script> at line number 16

But if I go to XLD and add this data, then it works because the return from the first call is
<udm.DeploymentPackage id="Applications/DPY/Plugins/uhg-xlr-svn-migration-plugin/1.1.2" token="26e12cbc-1ed9-4a22-b92d-c89aa997ec1f" created-by="dployeng" created-at="2017-03-29T10:14:01.752-0500" last-modified-by="kmcallo" last-modified-at="2017-08-23T11:11:06.659-0500">


false
false
false
CHG123




LATEST
false
</udm.DeploymentPackage>

I have went so far right now to identify
inside XLDeployClient.py

There is this
def update_ci_property(self, ci_id, ci_property, property_value):
363 if self.check_ci_exist(ci_id):
364 ci = self.get_ci(ci_id, 'json')
365 data = json.loads(ci)
366 if isinstance(data[ci_property], list):
367 data[ci_property] = eval(property_value)
368 else:
369 data[ci_property] = property_value
370 self.update_ci(ci_id, json.dumps(data), 'json')
371 else:
372 raise Exception("Did not find ci with id [%s]" % ci_id)

I see in access logs. These two run
if self.check_ci_exist(ci_id):
364 ci = self.get_ci(ci_id, 'json')

But I am not sure when you introduced the isinstance... and if it works.

@kmcallorum
Copy link
Author

With the latest jar 3.2.3 on a 7.0.2 instance of XLR still gets Exception during execution: KeyError: u'satiesfiesTicketNumber' in <script> at line number 16

When trying to update the CI property of a deployment package.

@jdewinne
Copy link
Contributor

Thank you for reporting! Fixed this in v3.3.1

robert-parry added a commit to robert-parry/xlr-xldeploy-plugin that referenced this issue Aug 25, 2017
@kmcallorum
Copy link
Author

need to re-open against 3.7

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

No branches or pull requests

2 participants