Wednesday, 2013-11-13

*** matsuhashi has joined #openstack-ironic00:18
* NobodyCam wanders away...00:23
*** hemna has quit IRC00:23
*** hemna has joined #openstack-ironic00:27
*** urulama has quit IRC00:45
*** urulama has joined #openstack-ironic00:46
*** urulama_ has joined #openstack-ironic00:49
*** urulama has quit IRC00:50
*** hemna has quit IRC00:51
*** ctracey1 has quit IRC00:57
*** urulama_ has quit IRC01:03
*** hemna has joined #openstack-ironic01:05
*** urulama has joined #openstack-ironic01:09
*** nosnos has joined #openstack-ironic01:13
*** nosnos has quit IRC01:13
*** nosnos has joined #openstack-ironic01:14
*** rloo has quit IRC01:18
*** urulama has quit IRC01:19
*** urulama has joined #openstack-ironic01:20
*** urulama has quit IRC01:28
*** urulama has joined #openstack-ironic01:28
*** ctracey1 has joined #openstack-ironic01:34
*** hemna has quit IRC01:34
*** itooon has quit IRC01:38
*** urulama_ has joined #openstack-ironic01:38
*** urulama has quit IRC01:39
*** urulama_ has quit IRC01:43
*** ctracey1 has quit IRC01:43
*** urulama has joined #openstack-ironic01:48
*** itooon has joined #openstack-ironic01:52
*** urulama has quit IRC01:57
*** urulama has joined #openstack-ironic01:58
*** urulama has quit IRC02:08
*** urulama has joined #openstack-ironic02:08
*** urulama has quit IRC02:12
*** urulama has joined #openstack-ironic02:18
*** urulama_ has joined #openstack-ironic02:27
*** nosnos_ has joined #openstack-ironic02:27
*** urulama has quit IRC02:28
*** nosnos has quit IRC02:30
*** urulama_ has quit IRC02:37
*** urulama has joined #openstack-ironic02:38
*** urulama has quit IRC02:42
*** urulama has joined #openstack-ironic02:47
*** urulama_ has joined #openstack-ironic02:57
*** urulama has quit IRC02:57
*** matsuhashi has quit IRC03:02
*** matsuhashi has joined #openstack-ironic03:03
*** matsuhashi has quit IRC03:03
*** urulama_ has quit IRC03:07
*** urulama has joined #openstack-ironic03:07
*** urulama has quit IRC03:12
openstackgerritHaomeng,Wang proposed a change to openstack/ironic: ipmitool SHOULD accept empty username/password  https://review.openstack.org/5488603:13
*** matsuhashi has joined #openstack-ironic03:13
openstackgerritA change was merged to openstack/python-ironicclient: Add driver-list  https://review.openstack.org/5368303:14
openstackgerritA change was merged to openstack/python-ironicclient: Fix cmd usage msg for ironic port-create  https://review.openstack.org/5589803:16
openstackgerritA change was merged to openstack/python-ironicclient: Remove Python 2.4 all() implementation  https://review.openstack.org/5605103:16
*** urulama has joined #openstack-ironic03:16
sandeeprNobodyCam, you around?03:18
sandeepr!ping lifeless03:19
openstackpong03:19
lifelesssandeepr: ?03:20
sandeeprlifeless, from the scale tests i did on bm provisioning, i had found a bug https://bugs.launchpad.net/nova/+bug/122617003:24
lifelessjust one ?03:25
sandeepryour comment "first recommendation is to turn off file injection"03:25
sandeeprone out of the many few i guess03:25
lifelessyes, absolutely. I have to go pick up daughter from kindy etc; I'll be back here in about 2.5 hours03:25
lifelesssorry ;)03:26
sandeeprok,03:26
sandeepri'll ping you around that time03:26
sandeeprthanks03:26
*** urulama_ has joined #openstack-ironic03:26
*** urulama has quit IRC03:26
*** urulama_ has quit IRC03:36
*** urulama has joined #openstack-ironic03:36
*** urulama has quit IRC03:41
*** urulama has joined #openstack-ironic03:43
*** matsuhashi has quit IRC03:45
*** matsuhashi has joined #openstack-ironic03:46
*** matsuhas_ has joined #openstack-ironic03:49
*** matsuhashi has quit IRC03:50
*** urulama has quit IRC04:36
*** urulama has joined #openstack-ironic04:36
*** nosnos_ has quit IRC04:44
*** nosnos has joined #openstack-ironic04:44
*** itooon has quit IRC05:03
*** rameshg87 has joined #openstack-ironic05:48
*** matsuhas_ has quit IRC05:58
rameshg87Hi05:58
rameshg87i had a question regarding ironic compute node and its database05:59
Haomengrameshg, good morning05:59
Haomeng!ping lifeless05:59
openstackpong05:59
rameshg87good morning, Haomeng06:00
Haomeng:)06:00
*** blamar has quit IRC06:00
*** matsuhashi has joined #openstack-ironic06:00
*** blamar has joined #openstack-ironic06:00
openstackgerritJenkins proposed a change to openstack/ironic: Imported Translations from Transifex  https://review.openstack.org/5596706:01
*** matsuhashi has quit IRC06:01
Haomengjust feel free for your any questions are welcome06:01
rameshg87when ironic is ready, a nova compute node which has ironic-baremetal driver will be running nova-compute and will be contacting ironic to get the jobs done, right ?06:01
*** matsuhashi has joined #openstack-ironic06:02
Haomengyes, our Ironic driver for nova compute is under construction06:02
Haomengnot it is not ready to use06:02
lifelessHaomeng: ?06:02
lifelessHaomeng: when you do !ping I read that as 'not ping'06:03
Haomenglifeless: I have a question, can you help about https://review.openstack.org/#/c/55231/506:03
Haomengyes, but irc response is "<openstack> pong"06:03
Haomeng:)06:04
rameshg87so, there can be more than one nova-compute node running this ironic inorder to achieve some load-balancing as well, right ?06:04
HaomengI think the "!" is indicator for IRC internal commands "!ping" can probe the connection with your IRC client06:04
Haomengrameshg: great idea, we have such plan06:05
*** ctracey has quit IRC06:05
lifelessHaomeng: it's a command to the openstack irc bot, nothing to do with any person06:05
rameshg87when we run multiple instances of ironic, each ironic instance will have its own DB also, right ?06:05
Haomengrameshg87: this is our IRONIC TODO/UnderContrustion Actions, we can find the "HA / failover for ironic-conductor" in " Do these awesome things later" list06:06
lifelessHaomeng: you may be thinking of CTCP which can do irc client to client commands06:06
Haomengok, got06:07
Haomeng:)06:07
*** yanhcdl has joined #openstack-ironic06:08
Haomenglifeless: for https://review.openstack.org/#/c/55231/5, Sergey suggest to remove the behavior which dbapi can filter port with MacAddress as input06:08
Haomengmy fix is just add condition for GET/UPDATE/DELETE api call06:08
HaomengI just want to know how do you think for such issue06:08
lifelessHaomeng: so it can be useful to search for nodes by MacAddress06:09
HaomengI searched our code, some codes will call db api to get port with address as input06:09
lifelessHaomeng: would that use the dbapi feature as well ?06:09
Haomengso I think for our API, we can export with UUID as input, but for internal, maybe the macaddress is required to filter, how do you think?06:09
Haomenglet me shou you current dbapi.get_node code06:12
lifelessHaomeng: what code passes mac addresses to get_port ?06:13
Haomenglet me check06:13
Haomengalmostly should be unittest code I think06:14
lifeless./api/controllers/v1/port.py _check_address does06:14
lifelessbut thats buggy, it's doing read-then-write06:14
lifelessit should have a unique index and do write-then-catch instead.06:14
Haomengyes06:14
lifelessand test code06:15
lifelessso06:15
lifelessI think sergey is right06:15
Haomengso can we modify this https://github.com/openstack/ironic/blob/master/ironic/db/sqlalchemy/api.py#L278, to remove the macaddress as filter supporting06:15
Haomengyes06:15
lifelessbut we need to fix ./api/controllers/v1/port.py _check_address first.06:15
HaomengI just discuss with you about the solution06:15
Haomengok06:15
Haomengshould we fix this on port object level, or db level06:16
Haomengcurrent, my fix is on API level, to reject macaddress06:16
Haomengthat is not 'root' I think, agree with  sergey06:16
Haomengour _check_address is called when port is creating, for new port, it will input with portaddress06:18
Haomengso I think this logic is required for us06:19
Haomengso here, we have to key, one is uuid, that is pyhsical key in db06:19
Haomenganother one is macaddress, that is networking 2-layer id06:19
Haomengso can I create new method to cover get_node_by_address06:20
Haomengshould be get_port_by_macaddress06:20
Haomengrameshg87: I think we have single db for Ironic, not very sure:)06:21
rameshg87great, thanks ..06:21
rameshg87i am just reading through the blueprints regarding this06:22
rameshg87http://summit.openstack.org/cfp/details/11206:22
rameshg87since you were in the middle of discussion, i didn't want to interrupt :-)06:22
Haomengwelcome06:22
HaomengI am not in the discussion:) welcome you06:22
Haomenglifeless: so in summary, I want to create new dbapi dbapi.get_port_by_address to filter with address only, and modify the existing one dbapi.get_port  to dbapi.get_port_by_uuid, and remove address filter from dbapi.get_port06:28
lifelessHaomeng: I don't think get_port_by_address is needed; what might be needed is get_node_by_port_address06:29
lifelessthe rest sounds fine06:30
lifelessHaomeng: _check_address should not try to lookup the port06:30
Haomengok, but current _check_address will call dbapi.get_port with macaddress06:30
lifelessHaomeng: it should just create the port and catch constraint violation errors06:31
lifelessHaomeng: the current _check_address code is racy - read-then-write is an antipattern06:31
Haomengyes, no need to check, because we can get dbexception, yes, I have another defect to fix this issue - https://review.openstack.org/#/c/54537/06:32
Haomengit changes Port create API to EAFP06:33
lifelesscool06:33
lifelessso once thats done, _check_address doesn't need to lookup the port06:33
lifelessand looking up port by address is just unneeded.06:34
Haomengyes06:34
Haomengthat is clear now:)06:34
Haomengthank you lifeless06:34
Haomengappreciate your supporting for my patches:)06:35
HaomengI am new guy for Ironic06:35
Haomengwill try my best to understand current code and do more contributions06:36
Haomenglifeless: one more question06:37
Haomengcan I fix this port address issue with one single patch? because we have dependency with anothe one  https://review.openstack.org/#/c/54537/06:37
lifelessmake your patch depend on 5453706:38
lifelessand then it can be simple yes06:38
Haomengok06:38
Haomengwhat is action to set dependency with our codereview sys06:39
Haomengi see the Dependencies section06:39
Haomengbut that looks like readonly06:39
lifelessif you have two patches in git in a row06:40
lifelessthen do git review06:40
lifelessit will create a dep on the higher patch on the lower patch06:41
lifelessso just rebase your patches from separate branches to one branch with two patches06:41
Haomengok06:42
Haomengthank you lifeless, but the other one has some unittest issue now, have to fix that one first:)06:42
sandeepr!ping lifeless06:44
openstackpong06:44
lifelesssandeepr: the ! is for the bot, it doesn't actually get me.06:45
sandeeproh ok06:46
*** sjing has joined #openstack-ironic06:46
sandeepri was asking on that bug "first recommendation is to turn off file injection" - how can file injection be turned off?06:47
lifelesssandeepr: nova.conf06:47
lifeless# If True, enable file injection for network info, files and06:47
lifeless# admin password (boolean value)06:47
lifeless#use_file_injection=true06:47
lifelesssandeepr: there is a Heat value for it in TripleO too.06:47
sandeeprwhat does this file injection actually do?06:50
*** matsuhashi has quit IRC06:53
sandeeprisn't that the cloud-init stuff?06:53
*** matsuhashi has joined #openstack-ironic06:53
lifelesssandeepr: nova mounts the disk image, rewrites arbitrary files within it, then unmounts it, then finally actually sends it to the node06:56
*** matsuhashi has quit IRC06:57
sandeeprwhen you say finally actually sends it to the node, do you mean the arbitrary files?07:01
lifelessthe disk image07:04
*** matsuhashi has joined #openstack-ironic07:06
sandeeprwow you mean the qcow2? by turning off file_injection what will we loose?07:11
*** nosnos_ has joined #openstack-ironic07:11
*** nosnos has quit IRC07:14
lifelessif you're dependent on it for setting up /etc/network/interfaces, you'll break :)07:18
lifelesssandeepr: anyhow, point is - we have a bunch of optimisations queued up07:18
lifelesssandeepr: the dd thing being single threaded is something we might want to revisit, but too much concurrency will push the sum(average_time_to_live) up, but slow disks will be slower than the network - most single disks are around 1Gbps; and DC networks get up to 10Gbps07:19
GheRiveromorning all07:23
sandeeprwhat is the 1Gbps on the disks?07:26
sandeeprmorning GheRivero07:30
*** urulama has quit IRC07:31
lifelesssandeepr: bandwidth to a spinning disk - 150MBps for linear I/O last I checked.07:31
*** nosnos_ has quit IRC07:31
lifelesssandeepr: which is 1.2Gbps07:31
*** urulama has joined #openstack-ironic07:31
anteayamorning GheRivero07:31
*** nosnos has joined #openstack-ironic07:32
anteayageneral call to ironic, neutron is experiencing issues with bringing up 150 vms: https://bugs.launchpad.net/neutron/+bug/125016807:33
anteayathe communication traffic is too high and timeouts are preventing action07:33
anteayain comment #17 there is an idea proposed to move network allocation from the compute to api node and some acknowledgement of bare-metal07:34
lifelessit's not ironic specific07:35
lifelessI will point that out07:35
anteayawanted to let you know in the hopes someone or more than one has interest in following the conversation07:35
anteayalifeless: agreed07:35
anteayaand participating in cross-project conversation if they can07:35
anteayajust trying to tap as many wells as a I can to facilitate a stable fix07:35
anteayaI am willing to knock on closed doors to do so07:36
*** urulama has quit IRC07:36
sandeeprlifeless, the optimisations - is there a list which you guys have planned?07:40
lifelessnot really.07:41
lifelessWe have some cards open, and some bugs, here and there.07:41
lifelessThe problem is that we have lots of possible optimisations, but no @ scale test harness at the moment07:41
lifelesssandeepr: so it requires lots of care07:42
*** sjing has quit IRC07:46
sandeeprlifeless, ok.07:55
sandeeprlifeless, how does iscsi work - what is the request sent by nova to indicate the iscsi info to which the os needs to be installed?07:55
lifelesssandeepr: EPARSE: I don't understand what you're actually asking. iscsi is an IETF standard - you can read the RFC for it to understand how it works.07:56
*** urulama has joined #openstack-ironic08:02
sandeeprlifeless, hmmm, during provisioning there is "expose disks via iscsi"08:05
sandeeprdeploy ramdisk exposes the nodes local disk via iscsi08:07
sandeeprso how does nova know the iscsi info?08:08
sandeeprso the image can be deployed08:08
*** jistr has joined #openstack-ironic08:18
*** jistr is now known as jistr|mtg08:19
lifelesssandeepr: it pings deploy-helper08:26
openstackgerritJenkins proposed a change to openstack/ironic: Updated from global requirements  https://review.openstack.org/5585408:26
*** Krast has joined #openstack-ironic08:32
sandeeprlifeless, what will be the response of the deploy-helper? will it send the iqn #?08:34
lifelesssandeepr: I suggest you read the code; it will be faster and more comprehensive08:34
sandeeprhttps://github.com/openstack/nova/blob/master/nova/virt/baremetal/volume_driver.py  - this one?08:35
lifelessbaremetal_deploy_helper.py08:35
lifelessand pxe.py08:35
Haomenglifeless: I found baremetal_deploy_helper.py is removed from Ironic, right?08:36
Haomengbaremetal_deploy_helper.py is from our Nova bm08:36
*** matsuhashi has quit IRC08:36
Haomenghttps://github.com/openstack/nova/blob/master/nova/cmd/baremetal_deploy_helper.py08:37
lifelessHaomeng: sandeepr filed a bug about nova-bm08:37
*** matsuhashi has joined #openstack-ironic08:37
Haomengok, got08:37
lifelessHaomeng: so thats what we're discussing :)08:37
lifelessyes, in Ironic the deploy-helper is replaced by the Ironic API08:37
Haomengyes08:37
Haomengit is a service08:38
sandeeprthanks Haomeng for the link08:39
sandeeprlifeless, i'll go through them08:39
Haomengwelcome:)08:39
sandeeprlifeless, the test i did was on bulk deployment w/ diff images and flavor08:40
sandeeprmay i ask if you have any thought of other possible scenario i can test for the perf/scale?08:41
lifelessmost large deployments will have lots of identical images08:41
*** romcheg has joined #openstack-ironic08:49
Haomengnight08:59
*** matsuhashi has quit IRC09:08
*** matsuhashi has joined #openstack-ironic09:11
openstackgerritHaomeng,Wang proposed a change to openstack/ironic: Supporting both Python 2 and Python 3 with six  https://review.openstack.org/5616909:11
openstackgerritHaomeng,Wang proposed a change to openstack/ironic: ipmitool SHOULD accept empty username/password  https://review.openstack.org/5488609:15
Haomenglifeless: are you here, looks like you sleep very late:)09:21
*** lucasagomes has joined #openstack-ironic09:24
*** derekh has joined #openstack-ironic09:28
*** nosnos_ has joined #openstack-ironic09:33
*** nosnos has quit IRC09:37
*** matsuhashi has quit IRC09:45
*** matsuhashi has joined #openstack-ironic09:46
*** matsuhashi has quit IRC09:51
*** matsuhashi has joined #openstack-ironic09:51
openstackgerritLucas Alvares Gomes proposed a change to openstack/ironic: Required fields on nodes  https://review.openstack.org/5366410:00
*** Krast has quit IRC10:07
*** Krast has joined #openstack-ironic10:07
*** Krast has quit IRC10:07
openstackgerritA change was merged to openstack/ironic: Pass Ironic API url to deploy ramdisk in PXE driver  https://review.openstack.org/5530210:19
*** rameshg87 has quit IRC10:23
*** matsuhashi has quit IRC10:36
*** matsuhashi has joined #openstack-ironic10:36
*** matsuhashi has quit IRC10:41
*** ctracey has joined #openstack-ironic10:43
*** matsuhashi has joined #openstack-ironic10:49
openstackgerritHaomeng,Wang proposed a change to openstack/ironic: Supporting both Python 2 and Python 3 with six  https://review.openstack.org/5616910:49
*** prekarat has joined #openstack-ironic10:51
*** matsuhashi has quit IRC10:56
*** matsuhashi has joined #openstack-ironic10:57
*** matsuhas_ has joined #openstack-ironic11:00
*** matsuhashi has quit IRC11:00
*** romcheg1 has joined #openstack-ironic11:07
*** romcheg has quit IRC11:11
*** nosnos_ has quit IRC11:52
*** nosnos has joined #openstack-ironic11:53
*** nosnos has quit IRC11:53
*** nosnos has joined #openstack-ironic11:54
*** matsuhas_ has quit IRC11:58
*** nosnos has quit IRC11:58
*** matsuhashi has joined #openstack-ironic11:59
*** nosnos has joined #openstack-ironic11:59
*** jistr|mtg is now known as jistr12:02
*** ndipanov_gone is now known as ndipanov12:03
*** matsuhashi has quit IRC12:03
*** nosnos has quit IRC12:04
*** prekarat has quit IRC12:07
*** jistr is now known as jistr|eng12:50
*** lucasagomes is now known as lucas-hungry12:59
*** urulama has quit IRC13:20
*** jdob has joined #openstack-ironic13:29
*** linggao has joined #openstack-ironic13:41
*** rloo has joined #openstack-ironic13:45
*** urulama has joined #openstack-ironic13:45
*** jdob has quit IRC13:53
*** jdob has joined #openstack-ironic13:53
openstackgerritYuriy Zveryanskyy proposed a change to openstack/ironic: Add power control to PXE driver  https://review.openstack.org/5040913:58
*** jbjohnso has joined #openstack-ironic14:00
*** yuriyz has joined #openstack-ironic14:03
*** ben_duyujie has joined #openstack-ironic14:05
*** ndipanov_ has joined #openstack-ironic14:05
*** ndipanov has quit IRC14:06
*** lucas-hungry is now known as lucasagomes14:10
linggaomorning rloo, lucasagomes,14:14
openstackgerritYuriy Zveryanskyy proposed a change to openstack/ironic: Add power control to PXE driver  https://review.openstack.org/5040914:17
yuriyzMorning all14:19
openstackgerritlinggao proposed a change to openstack/ironic: Supports get node by instance uuid in API  https://review.openstack.org/5326214:19
lucasagomeslinggao, yuriyz hey morning14:21
GheRiveromorning all14:21
*** romcheg has joined #openstack-ironic14:22
linggaomorning GheRivero yuriyz14:22
*** ndipanov_ is now known as ndipanov14:24
linggaolucasagomes, how do you like this: /v1/nodes/?associated=1 gives the following error: Invalid parameter value: 1, 'associated' can only be True/true or False/false.14:25
*** romcheg1 has quit IRC14:26
linggaoI changed "True or False' to 'True/true or False/false' becaue we use .lower() for the next link.14:26
lucasagomeslinggao, hmm I would that, as it's an URL we should always go with the lower case14:27
lucasagomesso imo 'true or false' would looks better14:27
linggaolucasagomes, I agree with you. I'll make the change now.14:28
linggaothat error message looks overloaded with True/true or False/false.14:29
lucasagomeshehe yea indeed14:30
openstackgerritlinggao proposed a change to openstack/ironic: Supports get node by instance uuid in API  https://review.openstack.org/5326214:31
rloomorning linggao14:34
romchegMorning everyone14:34
*** jistr|eng is now known as jistr14:34
rlooafternoon romcheg, lucasagomes, yuriyz14:35
lucasagomesrloo, hey ya :)14:35
rloolinggao - was wondering why 1/0 wasn't accepted for associated.14:35
max_loburg'morning Everyone14:38
linggaorloo, that was the result of the discussion here a couple of weeks ago.14:39
GheRiveroone silly question. How are you people testing the API/client? I have a hand made enviroment, but fearing the day I have to ercreate it14:39
rloolinggao: I wondered about that. I think nova allows 1/0 so it seemed odd, but. wrt true/false, True/False, I would have thought there was a convention already but maybe not.14:40
rlooGheRivero: c'mon. Be adventurous! :-)14:41
rlooGheRivero: I've been using tripleo/ironic to test. I think devstack works too?14:41
romchegGheRivero: I have created several tempest tests for Ironic API14:43
romchegThey are on their road to master14:43
romcheghttps://review.openstack.org/#/c/48109/14:44
linggaoGheRievro, I use 2 ways.  1. unit tests cases. 2 devstack to install then use brower to test.14:44
yuriyzGheRivero, https://wiki.openstack.org/wiki/Ironic#Try_it_on_Devstack14:48
GheRiverothanks all, i will take a look to all those options14:48
linggaorloo, do you want to bring it up again? we have had a very lengthy discussion/debate on external url  and CLI for the association.14:50
rloolinggao: no, I trust that the experts know what they are talking about :-)14:50
linggaorloo, I am on the same boat with you. I just make the pluming working. letting the experts worry about the externals.14:51
rloolinggao: I think what would be useful is to document these things, but I'm not sure where. I can only guess at what things are doing/meant to do, by looking at the code14:51
rloolinggao: eg, if we've decided that for boolean parameters, we're only allowing True/False/true/false, we have to remember to be consistent throughout.14:52
linggaorloo, yes. one reviewer mentioned about the doc, but we found out that the API doc is way out of sync, so I think lucasagomes opend a bug for the doc overall.14:53
linggaoopen/opened14:53
lucasagomesyup there's an open bug there14:54
rloolinggao: yes, at least no one will be bored with nothing to do :-)14:54
lucasagomesbut also, soon we are going to change the way we document the API, it will be auto generated14:54
linggaolol14:54
linggaolucasagomes, that would be great! CLI does it today.14:55
linggaoI mean CLI does the on line help today.14:55
lucasagomesyea :)14:56
lucasagomesI start working on it soon14:57
rloohi yuriyz, do you have a few minutes?15:04
yuriyzyes15:05
rlooabout your comments for https://review.openstack.org/#/c/5446615:05
rlooso I didn't know about the task_manager stuff. It seems then, that if you want to get info about the node, you should use the task's node, not the 'node_obj' passed to the function?15:06
yuriyz3 min ..15:07
rlooeg, if I look through the code in conductor/manager.py, within the 'with task_manager.acquire() as task:, I see references to node_obj. That may not be quite correct?15:08
yuriyzrloo, look at https://github.com/openstack/ironic/blob/master/ironic/conductor/resource_manager.py#L5515:10
yuriyznode manager get a node from db15:11
rlooyuriyz, and that is done as part of the acquire, so the node info would not get changed, right?15:11
yuriyzrloo, if we have concurrent power task running exclisive lock already used15:12
rloook, so nothing else would have changed the node info. Good. So I think the code in manager.py ought to be changed to use the task's node, rather than the node_obj passed into the functions.15:13
rlooThx for pointing it out. One day, I hope to be as good as you yuriyz!15:14
yuriyzrloo, node info may be changed, but not target_power_state15:14
rlooyuriyz, how would node info be changed outside of the task, since it has an exclusive lock?15:15
yuriyzbecause target_power_state != None only inside task manager context (and node is locked)15:15
rlooyuriyz: let me make sure I understand you. The code I put to check for if node_obj['target_power_state'] is not None, is not needed cuz it will never happen, right?15:17
rlooyuriyz: and if I used task.node instead of node_obj, I wouldn't have had to do a node_obj.refresh()15:18
yuriyzyes, if target_power_state is set by concurrent task we get exception 'node locked'15:19
yuriyzbut I am not sure that another race condition not possible15:19
yuriyzrloo, and let Devananda will look :)15:22
rlooyuriyz: yes, I hope he'll look at it :-)  At least, we've fixed one race condition...15:23
NobodyCamGood Morning Ironic15:23
rlooThank you yuriyz!15:25
rlooNobodyCam: Hello!15:26
linggaomorning NobodyCam.15:26
NobodyCammorning rloo linggao and yuriyz :)15:28
yuriyzMorning NobodyCam15:30
*** mdenny has joined #openstack-ironic15:30
NobodyCamyuriyz: do you you get your hoodie?15:33
*** ndipanov has quit IRC15:33
yuriyzyes, i like it15:33
NobodyCamw00t :)15:34
yuriyzNobodycam, are you tried small drinks?15:35
NobodyCamthe vodka :)15:38
yuriyzukrainian vodka -> gorilka15:38
NobodyCam:)15:39
*** urulama has quit IRC15:43
NobodyCamreboot ing... brb15:45
*** ndipanov has joined #openstack-ironic15:47
rloohey lucasagomes, yt?15:53
lucasagomesrloo, hey15:54
rlooi think you missed a try/except in 5366415:54
lucasagomesyt!?15:54
lucasagomesahh15:54
rloohttps://review.openstack.org/#/c/53664/7/ironic/api/controllers/v1/port.py,unified15:54
rloolucasagomes: do you see it? the lsat .check_required_attributes()?15:55
rloolucasagomes: or is it in a bigger try/except. would be nice to see all the code.15:56
lucasagomesrloo, ops! I see15:56
lucasagomesthe ports didn't have it on patch() only nodes15:56
lucasagomesurgh I will fix that :)15:56
rloolucasagomes: ok, thx. sorry about that.15:56
lucasagomesrloo, thanks for pointing it out!15:57
rloolucasagomes: yw, although I feel like I'm a pain-in-the-butt. I'm going to at least try to review things faster.15:57
lucasagomesrloo, no that's grand :)15:58
rloolucasagomes. You say that now. Let me know when you think otherwise :D15:58
lucasagomeshaha, seriously it's fine15:58
rloolucasagomes: seriously, in the future! ^^16:00
lucasagomes:P16:00
openstackgerritLucas Alvares Gomes proposed a change to openstack/ironic: Required fields on nodes  https://review.openstack.org/5366416:04
NobodyCambrb16:07
NobodyCamhey hey lucasagomes look at 55888416:15
NobodyCamgah16:15
NobodyCam55999416:15
NobodyCamoutput file on print finctions16:15
lucasagomesNobodyCam, yes?16:16
NobodyCamhow / where would I enable that output16:16
lucasagomesoh it's just to make tests/debugging easier16:16
lucasagomesI don't think it should be something confiurable to the user16:16
lucasagomesthat's what I understood from lifeless comments16:17
NobodyCamahh :) that makes sense :)16:17
lucasagomesbecause before I had to fake out the stdout16:17
lucasagomesso having a way to redirect it when testing is way easier and clear16:18
NobodyCamwhere are lifeless's comments. on the review I just see LGTM?16:18
lucasagomesit was on another patch16:18
lucasagomesthe unicode one16:18
NobodyCamahh16:18
lucasagomesNobodyCam, https://review.openstack.org/#/c/54942/2/ironicclient/tests/test_utils.py16:18
NobodyCamgotch ya16:19
NobodyCam:-p16:19
lucasagomes:)16:19
NobodyCamlol I just +2 +a that one too16:19
NobodyCamlol16:19
* NobodyCam need more coffee16:20
lucasagomeshaha thanks :D16:20
openstackgerritA change was merged to openstack/python-ironicclient: Custom output file on the print_*() functions  https://review.openstack.org/5599416:29
openstackgerritA change was merged to openstack/python-ironicclient: Deal with unicode strings  https://review.openstack.org/5494216:29
NobodyCam:)16:29
*** kobier has quit IRC16:50
NobodyCambbt ... brb16:59
*** jistr has quit IRC17:02
*** bauzas has quit IRC17:03
*** blamar has quit IRC17:06
max_loburHi Everyone again17:15
romchegOh, it looks like I got an enlightenment!17:17
max_loburhave anybody been working with serialize_remote_exception, deserialize_remote_exception methods17:17
max_loburand all those stuff about transfering exceptions over RPC17:17
romchegAnd by enlightenment I mean that I found why CI for Ironic fails now17:18
romchegmax_lobur: It looks like it's something in unified object model, isn't it?17:18
max_loburyea, it's under openstack.common17:19
max_loburI was trying to find a way to fix https://bugs.launchpad.net/ironic/+bug/124474717:19
max_loburand the main problem is in ronic/openstack/common/rpc/common.py17:20
max_loburso I assume if I want to change that I need to go to Oslo, right?17:20
romchegLemme walk to you. Will be faster :)17:20
max_lobur=)17:20
yuriyzmax, I think this is in WSME code https://github.com/stackforge/wsme/blob/master/wsme/api.py#L20217:24
yuriyzthis code do format exceptions for REST API clients17:27
*** ben_duyujie has quit IRC17:30
*** yuriyz has quit IRC17:32
max_loburyes, that17:42
max_lobur* thats for wsme level17:42
max_loburtalked with romcheg , decided to try push some code to Oslo to make this work properly. there is silly  deserialize_remote_exception method under ironic/openstack/common/rpc/common.py17:44
max_loburit builds Conductor traceback into the error message itself17:45
max_loburso it's not so easy to get it out from there =)17:45
*** hemna has joined #openstack-ironic17:46
*** yuriyz has joined #openstack-ironic17:48
*** ndipanov has quit IRC17:51
*** blamar has joined #openstack-ironic17:51
yuriyzmax, and I see it is hardcoded in oslo RPC code https://github.com/openstack/oslo-incubator/blob/master/openstack/common/rpc/common.py#L31117:51
*** yuriyz has quit IRC17:51
*** jimjiang has quit IRC17:54
*** romcheg has quit IRC17:54
*** derekh has quit IRC18:00
max_loburgeneral question - do I need to ping someone to review new bugs created by me (e.g. determine bug's Importance etc) or our core team periodically review those18:08
NobodyCammax_lobur: Deva will be going thru them as he he does the Bp's based of the last summit, I beleieve.18:13
NobodyCams/he he does/he re does/18:14
max_loburNobodyCam, ok thanks18:22
yjiang5hi, can anyone reply the question on the mailing list as  http://www.mail-archive.com/openstack-dev@lists.openstack.org/msg08390.html  ? That's also interesting to me.18:29
*** lucasagomes has quit IRC18:44
jbjohnsoso I have a couple of potential areas for interest to mention19:06
jbjohnsoI do now have a remote media deployment that avoids tftp entirely, the size of my one right now is a 700 kilobyte iso image19:06
jbjohnsoso if remote media is happy enough to do 700 kilobytes19:08
jbjohnsoyou can skip the whole tftp dance altogether19:11
jbjohnsootherwise, you have to do ~136kibibytes of tftp19:11
jbjohnsoeither way, tftp load is pretty much trivial19:13
jbjohnsoeven when needed, the tftp load can be absolutely static19:13
jbjohnsoanother thing is a boot configuration server that can sidestep a hard need to do a lot of interaction with dhcpd config19:14
*** epim has joined #openstack-ironic19:15
*** bauzas has joined #openstack-ironic19:15
jbjohnsoand finally, whether you want to delegate sensor readings and such to a separate process managing it's own cache and such19:15
jbjohnsoor just call pyghmi directly in whatever fashion you feel like19:15
* devananda waves19:26
jbjohnsohello or goodbye?19:27
devanandahello ;)19:27
jbjohnsoor 'go away'19:27
jbjohnso;)19:27
jbjohnsoanyhow, xCAT's been in the business of putting tftp out of it's misery for a while19:27
NobodyCam:)19:28
NobodyCamwelcome devananda19:28
jbjohnsoWindows UEFI boot is the last bastion of evil tftp19:28
jbjohnsobeen trying to get with microsoft on that one.... esxi and linux were easy enough since both use open boot loaders19:28
NobodyCamwe have requests to support windows deploys19:28
jbjohnsoso in BIOS style boot19:28
jbjohnsoyou can reasonably netboot a windows pe image (e.g. if you need to do driver injection to said image for it to boot)19:29
jbjohnsowithout resorting to tftp19:29
jbjohnsoand also without a port 4011 server19:29
jbjohnsogoing to UEFI style boot, back to tftp hell and also you need a sane looking port 4011 response19:29
jbjohnsoI have been hoping someone gets microsoft's ear and I can describe to them what I'd want out of bootmgfw.efi19:30
jbjohnsoI should do my next inquiry with all caps SECURITY in front of it, maybe that would work19:30
NobodyCamjbjohnso: try and get primemin1sterp ear19:32
NobodyCamdevananda: that the correct nic ^^^^19:32
jbjohnsoanyway, with that in place, you could merrily do http and https for things19:33
jbjohnsohttp*s* can get complicated and fragile though19:33
jbjohnsowhat with the whole 'your firmware clock is probably wrong' and 'your certificate may be so new that it isn't valid yet'19:34
jbjohnsowell, that and unless you replace the cert in the boot loader, you can't use self-signed or private certs at all19:34
devanandajbjohnso: https://blueprints.launchpad.net/ironic/+spec/windows-pxe-localboot019:35
jbjohnsoactually, that doesn't seem very windows-specific to me19:35
jbjohnsothat's the way we have done for a long time, that netboot usually is boot to local disk19:35
devanandajbjohnso: so, the purpose of the developer summit every 6 months is for us all to get together and make plans about what we're going to do19:36
jbjohnsoand only when it has something interesting would pxe say do something interesting19:36
devanandajbjohnso: most of what we discussed was captured at a high level here: https://etherpad.openstack.org/p/IcehouseIronicNextSteps19:36
jbjohnsothough with UEFI boot and IPMI in play, things get much much more straightforward if you are in the process of requesting one-time-pxe boots19:36
jbjohnsoso when does the train come to RTP? ;)19:37
jbjohnsoredeploying ease with 'boot from network first' becomes harder when the OSes have the ability to remove network boot at will19:38
jbjohnsofyi, ipxe continues to have a problem they haven't sucked a patch in for that's in the xnba tree19:39
jbjohnsoI would recommend iPXE person perhaps add their voice to people asking for snponly.efi to work again19:40
jbjohnsosecure deploy is possible19:41
jbjohnsobut the strategy is not secure boot compatible ;)19:41
jbjohnsofor the hardware discovery piece....19:41
jbjohnsoI can provide snooping and efficient search for ibm equipment easy enough19:42
jbjohnsobut can only fingerprint so many things in my lab19:42
jbjohnsohey, I see Sun Jing owns replicating genesis, cool19:44
*** epim has quit IRC19:54
*** epim has joined #openstack-ironic20:03
devanandajbjohnso: next summit will be in Atlanta in May. think you'll make it? :)20:04
jbjohnsoso hard to be hodophobic in this world20:10
*** bauzas has quit IRC20:28
rloojbjohnso: i had to look it up. For real?20:30
jbjohnsoI could be being melodramatic20:31
jbjohnsoI'm certainly anxious about travel and am very very happy to be home after a trip, but it's not like I'm paralyzed or anything20:31
rloojbjohnso. I'm sure we can figure out a way (we = deva, ha) so you can be effective w/o going to atlanta.20:32
devanandajbjohnso: can other folks from IBM proxy for you // use skype or something similar to give you a virtual presence during the summit sessions?20:34
devanandajbjohnso: there were several IBM folks there last week20:34
rloodevananda: has anyone looked into video conferencing at the summits?20:35
devanandarloo: yes. we tried it back in san diego, IIRC.20:35
devanandarloo: was barely used, very slow, and overall too expensive to put in every room20:36
rloodevananda: ah. ok. phone line would be == skype or something similar I guess.20:36
devanandaalso, the general noise of a design session doesn't translate well over a phone or mic20:37
devanandaregardless of quality20:37
devanandait can be hard for the remote participant t omake sense of the discussion when several voices are going20:37
devananda(can be hard for the non-remote folks too ....)20:38
rlooyeah, true. it wasn't always easy to hear even for the participants in the room.20:38
devananda:)20:38
jbjohnsojust need telepresence bots20:38
jbjohnsopreferably large, bulletproof, and software to make my voice sound like Schwarzenagger20:39
devananda++20:39
NobodyCamlol20:39
rloojbjohnso. where are you located? maybe you can lobby for the summit to be held there in 2015 or ??20:39
rloo(maybe that's too long to wait!)20:39
jbjohnsoRaleigh area, but I can get over myself20:39
devanandajbjohnso: that's why i asked about atlanta -- probably as close to Raleigh as you'll get20:40
devanandathe fall summit will be in Paris20:40
jbjohnsooh, come on, in Raleigh we have.... uhh... pretty trees20:40
devananda:)20:40
rlooI'm SURE it is prettier than Atlanta...20:41
jbjohnsoI really need to go to the new(ish) redhat building sometime20:41
devanandarloo: did you volunteer for any of the specific tasks in the last session?20:42
rloodevananda. Nope :-)20:42
rlooI think you had volunteers for everything that you listed.20:42
devanandai forgot a few (didn't copy from earlier sessions)20:42
rloodid you need volunteers for anything?20:42
devanandahttps://etherpad.openstack.org/p/IcehouseIronicNextSteps20:42
devanandalook down to "Copied from other sessions"20:43
jbjohnsoso quick question, for sensor data20:43
hemnadevananda, howdy.   I wanted to ping you about working on cinder support in ironic for boot from cinder volume.20:43
devanandahemna: hi!20:43
jbjohnsowould you be wanting to recreate pyghmi objects every time20:43
jbjohnsoor wanting to perisist and reuse them?20:43
hemnadevananda, I work with Gary Thunquest at HP (and work as core on Cinder)20:43
devanandahemna: did we talk at the summit about it?20:43
devanandahemna: ah! great20:43
jbjohnsoand if you didn't want to reuse, how about delegating to a process that wold?20:43
hemnadevananda, yah you chatted with gary about it, but I was stuck in cinder sessions at the time.20:43
devanandahemna: yep. np. also introduced gary to mikyung kang @ usc/isi, who also need it for their tilera cluster20:44
devanandajbjohnso: recreating objects thousands of times per minute seems wasteful.20:44
jbjohnsodevananda, well, I mean like persisting them a long time20:45
jbjohnsodevananda, If I ask for sensor data now and then sensor data 5 minutes for now, it'd be nice if the same objects are coming at me20:45
jbjohnsodevananda, trying not to do the xCAT strategy where we required disk space20:45
devanandahemna: care to file a BP to describe how you'd like to do it?20:45
jbjohnsoand also I start getting worried about dynamic SDRs if not tying caching to session lifetime20:46
devanandahemna: and have you seen teh etherpads with our notes on it?20:46
hemnadevananda, I need to plug into ironic first to get up to speed20:46
hemnaI haven't20:46
rloodevananda: there was something in tripleo session about putting mac address in neutron as source-of-truth?20:47
devanandahemna: i lied - we actually dont have notes on that .... but this may still give you some context: https://etherpad.openstack.org/p/IcehouseIronicNextSteps20:47
devanandahemna: you'll find it under "important next steps"20:48
hemnaok thanks20:48
devanandahemna: once you're up to speed a bit, please file a BP: https://blueprints.launchpad.net/ironic20:48
devanandadescribing, roughly, how you'll implement it20:48
rloodevananda: wrt "Copied from other sessions", most I have no idea how to do, so ah, which would you like me to volunteer for? (no hurry)20:48
jbjohnsodevananda, also, my console server already shares sessionsbetween things like ipmi 'commands' and sol data20:49
hemnadevananda, ok will do.  I'll work with Gary a bit on getting a BP done as soon as we can.20:49
NobodyCambbiab20:49
devanandajbjohnso: not sure i follow why you'd care to get the same objects one or five min later20:49
jbjohnsodevananda, an optimization in ipmi20:49
jbjohnsodevananda, when you use ipmitool to read sensors, it is dog slow20:49
jbjohnsodevananda, but reading sensors is generally very easy and fast20:49
devanandahemna: thanks. also, please reach out to mkkang@isi.edu20:49
jbjohnsothe slow bit is retrieving SDRs20:49
devanandahemna: I'd like this feature to be implemented in a way that both teams benefit, if at all possible20:50
jbjohnsoin xCAT, we cache those to disk if requested assuming that a given firmware version, mfg, and product tuple will have stable SDR data20:50
jbjohnsowhich has thus far always been the case20:50
hemnayah of course.   this would be a big win for both IMO20:50
jbjohnsoI was thinking in pyghmi, the SDR cache data could instead live in memory and get populated per session connection20:50
devanandarloo: no worries then. do what you can :)20:50
jbjohnso3.4 seconds to retrieve SDRs and read sensors, 0.9 seconds to read senosrs with SDR cached20:52
jbjohnsoon a system I just checked20:52
jbjohnsoand that's with 800 milliseconds of overhead20:53
rloodevananda: I'd like to get the power_state/provision_state /last_error done first.20:53
jbjohnsoso read all sensors is something that should take less than 0.1 seconds, but sdr retrieval adds 2.5 seconds20:53
devanandarloo: ah! right, i need to review that :)20:54
jbjohnsodevananda, the other fun fact is that 'power state' without persistent session takes 14 packets, with persistent session, 2 packets20:55
jbjohnsothough generally the 12 packets are barely noticed20:55
devanandarloo: random thought - the API for lock breaking wouldn't be that hard20:55
rloodevananda: yeah, I started looking at provision states, and yuriy pointed out some stuff, so now i have some questions. (well, i had before too).20:56
devanandarloo: it's basically some way to trigger "UPDATE nodes SET instance_uuid=NULL, *_state=NULL, WHERE ...", with a few safeguards around it20:56
rloodevananda: ok, if you say so :-)  I'll put my name down for that, and ping you later about it.20:57
*** jamespage_ has joined #openstack-ironic21:13
*** jamespage_ has quit IRC21:13
devanandarloo: ok, on the power state stuff, you had questions?21:15
rloodevananda: I'm wondering about the 'break' between the api call, and the rpc call. until you get the lock on a node, the node's state/info could have changed.21:16
devanandarloo: correct21:16
rlooand the code for provision state isn't all there.21:16
rlooso if a node's info could change, does it mean that the checking that is done in the api part, needs to be rechecked after getting the lock?21:17
devanandarloo: that's why i suggested to remove the checking in the api :)21:17
rloodevananda. yes... but then, the code does 'wait' to get a lock, it craps out if it doesn't get a lock.21:18
rloodoesn't I mean, not does.21:18
devanandarloo: true. which is possible *anyway*. but perhaps less likely21:18
rloodevananda. maybe it doesn't matter. if you want to change the power, and there's a lock on it already, you can't change it.21:18
devanandathe issue isn't the timeout or 'wait'21:19
devanandait's the race condition between the API checking and then the manager actually getting a lock21:19
devanandathere is such a thing as an 'intent lock', which we may need to implement at some point to solve things like this21:20
rlooyes, there's the race condition that we don't want. but from user's point of view. i issue a command to turn power on. and api forwards request but can't get lock. what kind of response do i get, 'try again later'?21:20
devanandarloo: yes. regardless of our implementation, if user says "power on" but node is already locked (eg for firmware update that takes 10 minutes), user should get a 500 or 503 error, with a message to retry later21:23
devananda(i'm open to debate whether that's a 4xx or 5xx class error)21:24
devanandamight be a 408 or 409?21:24
rloodevananda: ok, so any? checking should be done after getting the lock. Gad, error classes, do we have an expert on that?21:25
devanandalucas or martyn, i suspect21:25
rloodevananda: i'll think about the error class or not; see if reviewers agree/disagree...21:26
devanandarloo: as for a lock waiting -- afaik, acquire() doesn't wait. it raise()s if it cant lock21:26
rloodevananda: thx, i'll redo things and see what you/yuriy think ;)21:26
rloodevananda: yes, it doesn't wait. seems like there may be times where you want to wait. but anyway.21:27
devanandathere's a catch21:27
devanandachange_node_power_state is a cast, not call21:27
jbjohnsodevananda, on things like firmware update, I actually have a more comprehensive thought21:27
devanandawe can't return an error from it21:27
rloodevananda: ugh, right. unless we look at last_error.21:27
jbjohnsodevananda, so long as we are talking about ipmi class devices for now....21:27
devanandarloo: right. but if we fail to get the lock, we had best not change anything at all21:28
jbjohnsothen set firmware firewall so even the BMC would reject power control commands for that duration21:28
rloodevananda. more ugh.21:28
jbjohnsolock at a higher layer sure, but I'd feel cozier of the platform was protected at the lowest level too21:28
jbjohnsocould probably more simply reduce priveleg level on a channel to 'user', which would forbid all sorts of operator action21:29
jbjohnsoyou could still read sensors and get power state, but not actually modify state remotely until released21:30
jbjohnsothough at least in flex, the only way out of that is through  cll to the enclosure manager...21:30
* devananda noodles on the locking problem21:30
jbjohnsoto be honest it's been a while since I dealt with a firmware update that could corrupt a system21:31
devanandajbjohnso: that was a huge cnocern from several folks in audience21:31
jbjohnsowell, ipmi level remote lockout is feasible in most cases21:32
jbjohnsowhich would afford the greatest protection21:32
jbjohnsofirmware firewall against just the handful of relevant commands could be more fine grained...21:33
jbjohnsothe nice thing about that is if a firmware update process included that scheme21:34
jbjohnsoregardless of whether the management infrastructure is openstack or bob's ipmi scripts, it would protect itself21:34
jbjohnsoeven if said infrastructure has no idea a firmware update is in progress21:35
jbjohnsolot's of firmware updates could be applied without trying to coordinate with the management solution anyhow21:35
*** epim has quit IRC21:38
openstackgerritA change was merged to openstack/ironic: Supports get node by instance uuid in API  https://review.openstack.org/5326221:43
devanandajbjohnso: problem needs to be solved at a higher level21:44
devanandajbjohnso: eg, combine a PDU power driver with a ramdisk-based firmware update21:44
devanandajbjohnso: ironic is an abstraction layer on top of _many_ types of hardware (or more precisely, taht's our collective vision fo rit)21:45
devanandarloo: yuriy has an interesting point as well, L173 of https://review.openstack.org/#/c/54466/4/ironic/conductor/manager.py21:46
rloodevananda. right. if we assume that target_power_state will only get modified wi a lock?21:47
devanandarloo: right. under normal operations21:47
rlooso what about non-normal operations?21:47
devanandarloo: what happens if a conductor instance dies?21:48
rloodevananda: i was hoping you'd tell me that!21:48
devanandai suppose this mandates that our lock-breaking also clears target_power_state21:48
devananda:)21:48
devanandawhich seems reasonable21:48
rlooha ha. devananda, I guess you foresaw the future.21:49
devanandaso, leaving the check in the API exposes a race condition, a small one, but it's not as bad as i thought21:49
devanandaAPi check pass -> RPC -> condcutor fails to get lock -> silent error, but no corruption of data21:49
devanandathat could happen if two requests come in at the same time. both pass the API check but only one can get the lock21:50
rloodevananda: ok, i wouldn't call that a race condition since nothing gets corrupted. i'd call it bad timing. but yeah.21:50
devanandafrom user perspective, it's broken. he gets a "202" but nothing happens21:50
devanandaand there's no error21:50
rlooright. if check is done in api and target is set, all is 'good'. if target isn't set, and it can't get lock, then user gets some sort of error.21:51
rlooif target isn't set, and can get lock, then if eg request is to turn power on, and power is on -- code returns exception. Is that considered an error?21:52
devananda(in case anteaya is watching, I say "he" because statistically, men break things more often) ... (/me makes up random statistics to justify fictitious claims)21:53
rlooha ha. I agree cuz I'm sexist (my spouse would kill me)21:53
devanandarloo: well, neither of your scenarios are quite right. in first case, user does not get any error, because manager.change_node_power_state _cant_ return anything21:54
anteayawatch how I break things21:54
rloooh oh, anteaya is on the war path.21:54
devanandarloo: and in second case, again, even though an exception is raised and logged, the user won't see it21:54
devanandaanteaya: hi :)21:54
rloodevananda. sorry. right. in the first case, the user doesn't know what happened.21:54
anteayahi devananda21:54
rloodevananda: in the second case, the user won't see the exception. why do we bother with the exception?21:55
devanandaat least the admin could see it in the logs??? :(21:55
rloodevananda: but if someone requests to do something, and it is already in that state, is it worth logging?21:55
devanandano21:55
devanandawell. maybe21:55
rloodevananda: just wondering if baremetal is a special case. i have no idea, it just isn't21:56
rloonormal21:56
rloodevananda: if anything, it would seem to be an eg log.info?21:56
rloodevananda: anyway, probably not a big deal. I was just trying to understand.21:57
devanandarloo: for instance, node should be off, deploy is called, but for some reason, when it gets down to here, node is actually on21:58
devanandarloo: now, the deploy is going to fail, because pxe deploy depends on the DHCP request from PXE module when machine starts21:59
devanandarloo: this was dealt with in noav-bm by having deploy() call power-off, power-on21:59
devanandaand squelching any error from power-off if machine was alerady off21:59
devanandaif that logic isn't preserved in our pxe driver, someone should add it :)22:00
* devananda jumps on a ph call22:00
rloodevananda: hmm, need to think about it. thx.22:01
openstackgerritlinggao proposed a change to openstack/python-ironicclient: Modifies CLI to show nodes by instance uuid  https://review.openstack.org/5348522:08
*** epim has joined #openstack-ironic22:08
*** jdob has quit IRC22:16
*** jbjohnso has quit IRC22:17
*** linggao has quit IRC22:23
*** hemna has quit IRC22:35
*** epim has quit IRC22:37
*** blamar has quit IRC22:39
openstackgerritA change was merged to openstack/ironic: Imported Translations from Transifex  https://review.openstack.org/5596723:04
devanandaNobodyCam: ^ :)23:19
openstackgerritHaomeng,Wang proposed a change to openstack/ironic: Supporting both Python 2 and Python 3 with six  https://review.openstack.org/5616923:20
NobodyCam:)23:21
NobodyCamdo I have to gen a pot file now :-p23:21
NobodyCamseems I need to go walkies ... brb23:33
*** matsuhashi has joined #openstack-ironic23:57

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!