Wednesday, 2013-10-30

*** michchap has joined #openstack-ironic00:05
*** anniec has quit IRC00:06
*** anniec has joined #openstack-ironic00:10
*** michchap_ has joined #openstack-ironic00:30
*** matsuhashi has joined #openstack-ironic00:30
*** michchap has quit IRC00:33
*** michchap_ has quit IRC00:44
*** rloo has quit IRC00:45
*** rloo has joined #openstack-ironic00:46
*** michchap has joined #openstack-ironic00:47
*** nosnos has joined #openstack-ironic01:03
*** sjing has joined #openstack-ironic01:40
*** sjing has quit IRC02:07
*** sjing has joined #openstack-ironic02:09
*** anniec has quit IRC02:26
*** michchap has quit IRC02:48
*** lnxnut has joined #openstack-ironic02:58
*** anteaya has quit IRC03:00
*** rloo has quit IRC03:12
openstackgerritRuby Loo proposed a change to openstack/ironic: 123456789012345678903234567890423456789123456789 Changes power_state and adds last_error field  https://review.openstack.org/5446603:16
*** prekarat has joined #openstack-ironic03:23
*** prekarat has quit IRC03:24
*** lnxnut has quit IRC03:42
*** lnxnut has joined #openstack-ironic03:43
openstackgerritRuby Loo proposed a change to openstack/ironic: Changes power_state and adds last_error field  https://review.openstack.org/5446603:46
*** lnxnut has quit IRC03:47
*** harlowja has quit IRC04:07
*** jianingy_afk has quit IRC04:18
*** sjing has quit IRC04:47
*** sjing has joined #openstack-ironic04:48
*** prekarat has joined #openstack-ironic05:51
*** blamar has quit IRC06:14
*** martyntaylor has joined #openstack-ironic06:34
*** sjing has quit IRC06:42
*** sjing has joined #openstack-ironic06:44
*** Haomeng|2 has quit IRC07:20
*** Haomeng has joined #openstack-ironic07:39
*** prekarat has quit IRC07:41
*** prekarat has joined #openstack-ironic07:54
*** romcheg has joined #openstack-ironic08:00
GheRiveromorning ironic!08:08
HaomengMorning GheRivero:)08:19
*** prekarat has quit IRC08:33
*** sjing has quit IRC08:49
*** matsuhashi has quit IRC09:03
*** matsuhashi has joined #openstack-ironic09:03
*** derekh has joined #openstack-ironic09:05
*** jistr has joined #openstack-ironic09:06
*** matsuhas_ has joined #openstack-ironic09:08
*** matsuhashi has quit IRC09:08
lifelessdevanand1:09:09
lifelessdevanand1: https://bugs.launchpad.net/bugs/1237802 being 'opinion' surprises me09:09
*** romcheg has quit IRC09:13
Haomenglifeless: how are you09:28
HaomengI think devanand1 is away status09:28
*** prekarat has joined #openstack-ironic09:31
*** lucasagomes has joined #openstack-ironic09:32
*** romcheg has joined #openstack-ironic09:35
romcheglifeless: are you around?09:36
romchegMorning Haomeng and everyone else09:39
*** prekarat has quit IRC09:50
*** prekarat has joined #openstack-ironic09:59
romchegHi lucasagomes, are you around?10:21
lucasagomesromcheg, hey yes10:22
lucasagomeshow r u?10:22
romchegI'm good, thanks. Yourself?10:22
lucasagomesnot too bad :) sleepy10:22
romchegI'm just looking to the client and trying to make it compatible with py310:24
lucasagomes:D, I think there was a guy submitting a couple of patches around it while ago10:24
romchegfrom ironicclient.openstack.common.py3kcompat import urlutils10:25
lucasagomeshttps://review.openstack.org/#/q/status:merged+project:openstack/python-ironicclient,n,z10:25
lucasagomesKui Shi his name10:25
romchegI noticed that this file duplicates six.moves.urlparse10:25
romchegsix.moves.urllib even10:25
romcheghttp://pythonhosted.org/six/#module-six.moves.urllib.parse10:26
romchegDo you agree that it's necessary to remove it?10:27
Haomengmorning, Romcheg and lucasagomes and everyelse:)10:32
max_loburmorning Everyone :)10:35
lucasagomesromcheg, to remove the py3kcompat.urlutils layer? That's what other projects r using as well no?10:36
lucasagomesHaomeng, max_lobur morning10:36
romcheglucasagomes: Other projects use it, but the same functionality is already implemented in six10:37
lucasagomesromcheg, ah got what u mean (sorry I'm sleepy and slow), so if the layer is not needed anymore because it's already in six I would drop it yea, but we have to make sure we use the right version of six10:43
romchegok then10:43
romchegI also see that some of the py3 failures are related to keystoneclient10:44
romchegI will also try to figure that out10:44
lucasagomesyea, that's the reason why we have p3 non-voting now10:45
Haomengyes, i noticednow,but I have concern, how to make sure all  codes are Compatible   both p2 and p3 at the same time10:48
Haomengso we will keep one eye about 3rd libs10:49
*** prekarat has quit IRC10:51
*** matsuhas_ has quit IRC11:01
*** matsuhashi has joined #openstack-ironic11:02
*** prekarat has joined #openstack-ironic11:07
*** prekarat has quit IRC11:08
*** matsuhashi has quit IRC11:11
openstackgerritLucas Alvares Gomes proposed a change to openstack/python-ironicclient: Add driver-list  https://review.openstack.org/5368311:13
openstackgerritYuriy Zveryanskyy proposed a change to openstack/ironic: Add wrapper for keystone service catalog  https://review.openstack.org/5260111:22
*** matsuhashi has joined #openstack-ironic12:02
*** jbjohnso has quit IRC12:06
*** lucasagomes is now known as lucas-lunch12:12
*** nosnos has quit IRC12:27
*** jdob has joined #openstack-ironic12:27
Haomenglucasagomes:ping12:54
*** linggao has joined #openstack-ironic12:58
*** anteaya has joined #openstack-ironic13:00
*** fpavlik has joined #openstack-ironic13:00
*** fpavlik has quit IRC13:03
Haomenghi Ironic, good morning/evening:)13:04
Haomengwho can help to confirm if our unittest support the real database, such as database exceptions? I understand we use fake db in ut13:04
HaomengI am writing ut code, found it does not support  real database exceptions13:05
*** rloo has joined #openstack-ironic13:07
*** matsuhashi has quit IRC13:07
*** matsuhashi has joined #openstack-ironic13:08
*** matsuhas_ has joined #openstack-ironic13:09
*** matsuhashi has quit IRC13:10
openstackgerritHaomeng,Wang proposed a change to openstack/ironic: Change Port create API to EAFP  https://review.openstack.org/5453713:13
*** lucas-lunch is now known as lucasagomes13:15
*** rloo has quit IRC13:20
*** rloo has joined #openstack-ironic13:21
*** jbjohnso has joined #openstack-ironic13:21
*** rloo has quit IRC13:23
*** rloo has joined #openstack-ironic13:24
lucasagomeshi Haomeng13:39
lucasagomesyou have to mock it13:39
lucasagomesHaomeng, lemme test here locally and I show you how to do it13:40
Haomengthank you lucasagomes13:40
Haomengmock a database exception?13:41
jbjohnsodevanand1, I can probably soon reserve 0x34 command and then nest bridging so that something like moonshot can be supported, but I have no way to test the beast13:42
Haomenglucasagomes, if you are busy on other things, you can just give me a reference, I will try13:43
Haomengthis ismy patch -https://review.openstack.org/#/c/54537/13:44
lucasagomesHaomeng, it's alright I'm just commenting on ur patch how to do it13:44
lucasagomesso you can go and update it urself13:44
Haomengok13:45
*** rloo has quit IRC13:45
Haomengthank you:)13:45
Haomengok13:45
jbjohnsodevanand1, though I wonder if they actually have a reason to specify local_ipmb_address or not, hard to imagine a scenario where 0x20 isn't the value13:45
HaomengI will do bymyself, thankyou Lucas:)13:45
*** rloo has joined #openstack-ironic13:45
lucasagomesHaomeng, commented13:46
Haomenggot it, thank you:)13:46
lucasagomesHaomeng, np, so there you mocked the second save() forcing it to raise the desired exception13:47
Haomengyes, cool:)13:47
Haomengwill try your solution onmytomorrow morning:)13:48
Haomengwhat isyour time now?13:48
lucasagomes13:4813:48
HaomengI am tired today, will go tosleep first, good afternoon:)13:48
Haomeng:)13:48
lucasagomesHaomeng, ack! have a good night!13:48
Haomengmy timeis 9:48pm:)13:48
Haomeng:)13:49
lucasagomes^^ yea it's pretty late there13:49
lucasagomesenjoy ur night I see ya tomorrow13:49
Haomengtoday I am very tired, for other days,will work around11pm13:49
Haomengok13:49
Haomeng:)13:49
* devanand1 waves14:11
*** devanand1 is now known as devananda14:11
devanandalet's try that again14:11
* devananda waves14:11
devanandai'm only slightly here today. mostly in meetings / travelling14:11
devanandalifeless: being 'opinion' surprises me, too. correcting that14:12
lucasagomesdevananda, morning14:12
devanandalifeless: it's really not-a-bug since it's not possible for ironic to send an empty pw to ipmitool14:13
devanandalucasagomes: g'morning14:13
lucasagomesdevananda, as ur not staying for longer here today, lemme ask you about https://review.openstack.org/#/c/53627/6/ironic/tests/api/test_chassis.py, that is_older_than() test doesn't seems correctly to me, do you think that only checking if the field (created_at/update_at) is populated would be better?14:15
* lucasagomes have a cool in 1 min, it's a short one14:15
lucasagomescall*14:15
devanandathat looks a little odd to me, too14:16
devanandai would either check that field is not null OR use timeutils to set a known time, then test to isee if that came back14:16
devanandasecond seems better14:16
*** matsuhas_ has quit IRC14:25
*** matsuhashi has joined #openstack-ironic14:25
*** matsuhashi has quit IRC14:30
NobodyCamgood mornign Ironic14:54
lucasagomesmorning NobodyCam15:15
lucasagomesdevananda, yea, thanks :)15:15
NobodyCammorning lucasagomes15:16
romchegMorning guys15:21
*** kobier has joined #openstack-ironic15:22
*** jistr is now known as jistr|afk15:23
NobodyCamlucasagomes: have you seen GheRivero's comments on 54430?15:24
NobodyCammorning romcheg (did see you pop in)15:24
lucasagomesNobodyCam, haven't15:24
lucasagomesbut that's the same problem we had in ironic15:25
lucasagomesso15:25
lucasagomesthose changes were made on the stable/havanna branch15:25
lucasagomesbut the CI script is leaking and submitting those changes to our master15:25
lucasagomesto _all_ the other projects masters as well15:25
NobodyCam:) ahh15:25
lucasagomeshttps://bugs.launchpad.net/openstack-ci/+bug/124624915:26
lucasagomesNobodyCam, thanks for pointing that, I didn't see this one on the client15:27
lucasagomesbut yea it's an error15:27
lucasagomesNobodyCam, would be nice to add that gate-ironicclient-requirements, do you know how-to?15:28
NobodyCamlucasagomes: I know That if I asked clarkb he would know!15:32
lucasagomes:D15:32
NobodyCamlucasagomes: in the commit message on 53683 supported = enabled in the conductor,15:35
lucasagomesNobodyCam, hmm yea or active15:38
lucasagomesi think i put supported because of: https://github.com/openstack/ironic/blob/master/ironic/db/api.py#L32615:38
lucasagomesbut I can change15:39
NobodyCamna15:39
NobodyCamjust had the thought what happens when we have >1 conductor15:39
NobodyCamand htey have diffenrent drivers15:40
lucasagomesoh yea, that driver list is across all conductors15:41
lucasagomesso it's not actually checking a specific one15:41
romchegopenstack infra is so complicated15:43
NobodyCam:)15:44
romchegTo turn on tests for Ironic I had to patch 2 projects in 3 places15:44
lucasagomesromcheg, haha yea I'm pretty newbie on the infra part15:45
NobodyCamromcheg: do we have a ironic gate job now?15:45
romchegNot yet15:45
romchegThe patches are published15:45
romchegbut I have to make another one15:45
NobodyCamromcheg: can add the patches to the agenda so others can see them easily15:46
*** yuriyz has joined #openstack-ironic15:46
romchegWill do that15:48
NobodyCam:)15:48
*** blamar has joined #openstack-ironic15:49
NobodyCamAwesome TY romcheg15:49
lucasagomesawesome2 :) thanks15:50
*** rloo has quit IRC15:52
*** rloo has joined #openstack-ironic15:52
romcheghttps://review.openstack.org/#/c/54569/15:53
romchegThat should fix the problem with the other patch to devstack-gate and after that I will have just 4 published  patches that will need to be merged in order to enable devstack tests for ironic :)15:54
lucasagomeshaha15:54
lucasagomessounds over-complicated indeed15:55
romchegNobodyCam: done with the wiki15:59
romchegGotta rush now16:00
romchegHave a Spanish lesson in 20 minutes16:00
NobodyCamawesome TY romcheg16:00
*** lnxnut has joined #openstack-ironic16:00
*** romcheg has quit IRC16:03
*** jistr|afk is now known as jistr16:13
*** romcheg has joined #openstack-ironic16:17
*** Haomeng has quit IRC16:22
*** Haomeng has joined #openstack-ironic16:22
NobodyCamgood $LOCAL_TIME_OF_DAY Haomeng16:27
NobodyCambbt.... brb16:33
*** bauzas has quit IRC16:46
*** jistr has quit IRC17:21
*** harlowja has joined #openstack-ironic17:29
*** yuriyz has quit IRC17:33
openstackgerritLucas Alvares Gomes proposed a change to openstack/ironic: Required fields on nodes  https://review.openstack.org/5366417:36
openstackgerritLucas Alvares Gomes proposed a change to openstack/ironic: Add driver interfaces validation  https://review.openstack.org/5459317:37
* NobodyCam looks for man page updates17:38
NobodyCamlol ...JK17:38
*** derekh has quit IRC17:41
openstackgerritA change was merged to openstack/ironic: Fix test node manager  https://review.openstack.org/5387717:46
lucasagomesNobodyCam, lol17:47
lucasagomesurgh, yea, I'm so lazy to write haha I have it more complete here but I want to put more things on it17:47
lucasagomeslike I saw that some manpages they have a section for examples17:47
lucasagomesthat would be nice17:47
NobodyCam:) that would be awesome17:48
NobodyCamrunning to starbucks. brb 15 min17:49
NobodyCam(depending on drive thru line017:49
lucasagomes:)17:54
jbjohnsodevananda, fyi, I can't really do bridged ipmi comfortably until I have an implementation of such a thing to poke in pyghmi17:55
jbjohnsoI can take a good guess17:56
jbjohnsoone thing I'd be wondering *hard* is must the user enter so many details or can some of it be picked up on the way17:56
jbjohnsothere are a lots of areas where ipmitool pesters the users for stuff that could be autodetected17:57
* NobodyCam is back18:02
NobodyCamjbjohnso: I love autodetect so long as it can be overwritten when it detects things incorrectly for the task I am trying18:03
jbjohnsoNobodyCam, well, for example18:04
jbjohnsoNobodyCam, using a scheme to navigate RAKP where you need to know whether it is intel or other and how old the firmware is18:04
jbjohnsoNobodyCam, when there is a subtle difference that sidesteps that whole mess18:04
jbjohnsoNobodyCam, or asking user to provide some obscure bridge address when the intermediate hop offers up the value as a matter of course18:05
jbjohnsoa lot of the intelplus and sol hacks in ipmitool are the result of quick one-off patches on top of each other interacting in weird ways18:06
jbjohnsofor example, they did get device id but have no good way in their code to segregate SOL and non-SOL at a low level18:06
jbjohnsoso they started patching in high level functions all over the place to sidestep18:07
jbjohnsoand then someone added a replacement keepalive that wasn't ipmi command18:07
jbjohnsobut then it turns out that many ipmi devices don't actually treat empty sol packets as something to keep a connection alive18:07
NobodyCamoh nice18:08
jbjohnsoso they made it configurable even though the empty sol packet was a workaround for a bug that I sent a patch in for18:08
jbjohnsoof course, me and someone else sent two subtly different fixes for the issue18:08
jbjohnsoand they both got merged18:08
NobodyCamya18:08
jbjohnsoand then keepalive *never* detected a broken connection18:08
jbjohnsobecause our changes had some interesting deadlock when both applied18:08
lifelessdevananda: cool18:08
NobodyCammorning lifeless :)18:09
jbjohnsobridging is going to make my route_ipmi_response a tad more complicated, but not too bad18:10
jbjohnsothough I wonder how SOL works to those servers18:10
jbjohnsoI guess it depends on if the ipmi 2 payloads work in that context...18:11
NobodyCamI need to look at sol more18:11
jbjohnsoit might be straightforward...18:11
jbjohnsosol, it ain't pretty, but it's 'good enough' for short haul serial traffic18:12
jbjohnsoi.e. ~115200 at most18:12
jbjohnsosol over long haul gets noticably... chunky18:12
jbjohnsofor reasons anlogous to why tftp falls apart over long haul, tcp is just so much better at it than what the higher protocls can do18:13
jbjohnsowell, not *cn*, but had the will to do (whole point is something simpler than TCP, else they would have just done tcp)18:13
NobodyCamdoes it support ebcdic18:14
jbjohnsoof course it can ;)18:15
NobodyCam:)18:15
jbjohnsoSOL is encoding agnostic18:15
jbjohnsoit just has data18:16
jbjohnsoin fact my web interface18:16
jbjohnsotries multiple encodings18:16
jbjohnsoit tries utf-8 then cp452 if not valid utf-818:16
jbjohnsobecause the encoding will actually change over the boot process18:16
jbjohnsoBIOS tends to like to do cp452, OS tends to like to do utf-818:16
jbjohnsoerr 43718:17
jbjohnsoin fact, pyghmi might more properly return bytearray instead of string18:18
jbjohnsobut meh18:18
jbjohnsobytearray just gives you mutable which isn't relevant for this stuff18:18
*** romcheg has quit IRC18:31
*** romcheg has joined #openstack-ironic18:33
NobodyCamlucasagomes: still awake18:43
lucasagomesNobodyCam, yea, had a call just now18:43
lucasagomesbut I'm leaving very soon18:43
NobodyCam:)18:43
openstackgerritLucas Alvares Gomes proposed a change to openstack/ironic: Add driver interfaces validation  https://review.openstack.org/5459318:43
lucasagomesNobodyCam, another thing18:43
lucasagomesI was looking the git manpage18:43
lucasagomesand they break their commands into sections18:43
lucasagomesI was thinking about having like node, port, chassis sections for us as well18:44
lucasagomeswhat you think?18:44
lucasagomesinstead of having everything in one man page18:44
lucasagomesNobodyCam, like https://www.kernel.org/pub/software/scm/git/docs/git.html18:44
lucasagomeshttps://www.kernel.org/pub/software/scm/git/docs/git-add.html18:44
NobodyCam++18:45
NobodyCamya I like that18:45
lucasagomesyea I will look some other manpages as examples18:45
lucasagomesthey r all diff man18:45
lucasagomesI will try to come up with something nice for us18:46
NobodyCamjust some to think about18:46
NobodyCam# NOTE(d): For simpler code paths on the deployment side,18:46
NobodyCam#             we always create a swap partition. If the flavor18:46
NobodyCam#             does not specify any swap, we default to 1MB18:46
NobodyCamthats from 5132818:47
NobodyCamwhat do you think about making a valid swap size ie. == ram18:47
devananda--18:48
lucasagomesNobodyCam, well we don't know if there's space for that18:48
NobodyCam:) hi devananda18:48
devanandahi!18:48
lucasagomesram could be like 16gb at least so might need some space18:48
lucasagomesalthough, at first glance having 1mb swap also looks odd18:49
NobodyCamya18:49
lucasagomesI mean, it's pretty much useless18:49
NobodyCamlol18:49
romchegdevananda: Morning18:50
romchegCan you please ping someone to look at https://review.openstack.org/#/c/54569/ ?18:50
NobodyCamif we ever look at putting system to sleep will need a valid swap size18:51
NobodyCamthou we could create a swap file from with in the os itself and do a swapon kinda thing18:52
openstackgerritLucas Alvares Gomes proposed a change to openstack/ironic: Add driver interfaces validation  https://review.openstack.org/5459318:52
lucasagomesNobodyCam, yea could use a file on the fs18:52
lucasagomesbut hmm, I have to think more about it18:53
NobodyCamdevananda: how close are the nova bindings18:53
lucasagomesanother thing I think that would be cool is a way to use 100% of the disk18:53
NobodyCamI wanta do a nova-ironic element18:53
lucasagomesfor example if root_gb is not specified you could just use evertyhing (- swap size if specified)18:53
NobodyCamlucasagomes: I not so fond of that.18:54
NobodyCamadmins may want empty space for snap shots18:54
NobodyCamand other such things18:55
lucasagomeswell that is optional, whether he wants to use all the space or not18:55
NobodyCamI like use what root_gb says to use. Now something like root_gb=-118:55
NobodyCam= use all space18:56
lucasagomesI mean making it optional he doesn't even know exactly how much space there's on that disk he just says "use it all"18:56
lucasagomesNobodyCam, oh yea18:56
lucasagomeswhat I mean is, if root_gb is not specified or as u said, root_gb=-1 (as a flag)18:57
devanandaNobodyCam: not close. lemme get the review18:57
NobodyCamthats also use to match flavor to node in sch18:57
devanandahttps://review.openstack.org/#/c/51328/18:57
lucasagomesyea :( the way the scheduler finds a node is not very baremetal-friendly18:58
devanandahm?18:58
lucasagomescause for baremetal we wouldn't care about the numer of cpus or ram for example, it's always going to use 100%18:58
devanandalucasagomes: scheduler should do flavor == node spec18:58
devanandait may not right now .. but it should :)18:58
NobodyCamlucasagomes: we care for diff hardware specs18:58
devanandaalso, ironi has to expose all nodes to nova-scheduler. which doesn't scale when there are 100k nodes18:59
devanandaso host aggregaces or AZs will be needed18:59
devanandabut i digress18:59
lucasagomes:) I see18:59
lifeless100K in one scheduler should be fine19:00
lifelessisn't geekinutah running 400K hypervisors in one scheduler ?19:00
lifelessNobodyCam: huh, root_gb=-1 isn't a meaningful flavor19:00
lifelessNobodyCam: flavors define the characteristics of the machine to users19:00
NobodyCamlifeless: yes19:01
lifelessNobodyCam: for local stuff, thats what ephemeral can be used for19:01
NobodyCamjust talking with lucas about that19:01
lucasagomes:)19:02
devanandalifeless: i thought that was 40k19:03
devanandaor maybe i missed some conversation19:03
lifelessdevananda: nope19:03
devanandawow. then, that's awesome19:03
lifelessdevananda: ah, no 400K vms19:04
devanandaNobodyCam: if you were looking to push teh nova driver along, feel free to hack on and upload new revs for https://review.openstack.org/#/c/51328/19:04
devanandalifeless: ahh. that makes more sense.19:04
NobodyCam:)19:05
lifelessdevananda: I'm just digging for chapter and verse19:05
lifelessnope, what I found was a different thing again19:08
lifelessI dunno19:08
lifeless400K rows to consult in python is fairly small biscuits though19:08
lifelessparticularly if indexed well19:08
*** lucasagomes is now known as lucas-dinner19:11
*** ndipanov is now known as ndipanov_gone19:11
devanandalifeless: it's the "fetch 400k rows from db, iterate in nested loops" that bothers me. but maybe that's been improved in havana19:12
*** martyntaylor has quit IRC19:40
*** martyntaylor1 has joined #openstack-ironic19:40
linggaoHi lifeless, is HasLength a python function?19:44
linggaoI googled it and cannot find it.19:44
lifelesslinggao: it's in testtools.matchers - from testtools.matchers import HasLength #noqa19:46
linggaoself.assertThat([1, 2, 3], HasLength(2))19:49
linggao?19:49
lifelessfor instance, yes.19:51
lifelessassertThat(subject, matcher)19:51
lifelessassert that [1,2,3] has length 219:51
lifelessdevananda: yeah, I agree work may be needed.19:52
lifelessdevananda: I don't think we should design around making nova better though :)19:52
linggaoAnd lifeless, another thing is that you are saying that you prefer the expected value on left hand side for assert.19:52
linggaoIs this a standard for openstack or just personal preference? I saw a lot of places the expected values are on the right hand side.19:53
linggaoI personally like to put it on right hand side.19:53
lifelesstesttools.TestCase.assertEqual = assertEqual(self, expected, observed, message='') unbound testtools.testcase.TestCase method19:54
lifeless    Assert that 'expected' is equal to 'observed'.19:54
lifeless19:54
lifeless    :param expected: The expected value.19:54
lifeless    :param observed: The observed value.19:54
lifeless    :param message: An optional message to include in the error.19:54
lifelesslinggao: it is neither openstack specific nor personal preference.19:54
lifelesslinggao: it is how the function is defined.19:54
lifelesslinggao: the left side/right side thing is obviously a minor nit, and I wouldn't -1 a patch that had only that wrong with it.19:56
lifelesslinggao: but when there are other things to fix up, I will mention it.19:56
linggaolifeless, I understand. I just want to make sure that if I miss anything.20:04
linggaoFor example:20:05
linggaoassertEqual(first, second, msg=None)20:05
linggaoTest that first and second are equal. If the values do not compare equal, the test will fail.20:05
linggaoThis is what I got from the python doc http://docs.python.org/3/library/unittest.html20:05
lifelesslinggao: try 'pydoc testtools.TestCase.assertEqual'20:05
linggaook, got it. thanks a lot.20:06
linggaofor the important parts of the review,  the API and the CLI are discussed here already with devananda and NobodyCam and other. You can bring them up if you have questions.20:07
linggaoI can change the client API to be separate function though if the parameters are confusing.20:08
linggaolifeless, I mean you can bring them up here so we can discuss them again together.20:09
lifelesslinggao: sure, this is the instance_uuid api right ?20:13
linggaolifeless, yes20:14
linggao\/nodes/?instance_uuid=<uuid|null|notnull>20:14
lifelessrighto20:15
lifelesslinggao: got a link to the review?20:15
linggaohttps://review.openstack.org/#/c/53485/6/ironicclient/tests/v1/test_node.py20:16
linggaoLinr 14020:16
linggaoLine20:16
lifelessdevananda: hey so - in this review20:18
lifelessdevananda: I had some detailed feedback, but there is a broader question about the CLI20:18
lifelessdevananda: which linggao would like us to reach consensus on rather than being tossed around by reviewer comments :P20:19
linggao:)20:19
lifelessdevananda: I am suggesting that 'node-show' should stay super precise, and that -list is where all the instance_uuid querying should take place20:19
lifelessdevananda: I realise you're in meetings right now; I have to pop out to get my hair done so I don't impersonate a shaggy dog @ HK20:20
lifelessdevananda: but we should be able to carry on a moderate latency chat here?20:20
*** martyntaylor1 has left #openstack-ironic20:22
* NobodyCam notes that he has now added hair cut to his list of things that need doing before HK20:24
linggaolol20:24
rlooNobodyCam: I managed to get tripleo+ironic working this morning. I'll try to update the walkthru today, to use neutron-dhcp-agent.20:25
NobodyCamlinggao: I will be updating the walkthru based on https://review.openstack.org/#/c/44500/20:26
lifelessok, -> hair dressers bbiaw20:26
rlooNobodyCam: then I won't touch the walkthru?20:27
NobodyCam:)20:28
rlooquick question (I hope). I am adding a 'last_error' field to nodes db table. How do I test migration?20:28
linggaoNobodayCam, I do not know what is that for.20:29
rloolinggao: I think he meant me :-)20:30
linggaoah.20:30
NobodyCam:-p20:30
NobodyCamy yes I did20:30
devanandalifeless: yep, we can have async chat. i'll haev irc access for next few hours, then dinner & flight home20:30
devanandalifeless: a uuid is not a free-form string. it is (or should be) checked against uuidutils.is_uuid_like()20:32
devanandalifeless: null and notnull are not valid uuids20:33
linggaodavananda, lifeless: here is current implementation. the url is .../ nodes/?instance_uuid=<uuid|null|notnull>20:35
linggaoThe added CLIs are:  node-show [--instance-uuid] <id>20:38
linggaonode-list [--associated|--unassociated\20:39
NobodyCamnode-list [--[un]associated] :-p20:40
linggaoNobodyCam, yes.20:41
linggaolifeless is gone for hair cur :)20:42
devanandalinggao: I am comfortable with both that API and CLI. it seems lifeless is not, and i'm curious to know what he proposes for those20:44
devanandalinggao: there are also several comments from lifeless on the review which I agree with, regarding the internal API.20:44
devanandafor example, def list(self, associated=True, unassociated=True) -- I don't ilke this either20:45
NobodyCamdevananda: have you seen lifeless's comments on https://review.openstack.org/#/c/53485/6/ironicclient/tests/v1/test_node.py20:45
devanandayes20:46
NobodyCam:)20:46
linggaodevananda, for the internal API, I'll make them separate functions.20:47
devanandalinggao: see my comments above20:47
linggaodacananda, for def list(self, associated=True, unassociated=True)20:51
linggaoCan I make them 3 different APIs?20:52
linggaoget, get_associated, get_unassociated?20:52
linggaosorry get/list20:52
linggaodevananda, for   def get(self, node_id, instance_uuid=False):  I will split them to get and get_by_instance_uuid. All these are done in my sandbox.20:54
linggaoMy original attempt was not adding too may APIs but adding a few parameters to existing APIs. If this is confusing, then separate APIs seems a solution.20:55
devanandalifeless: suggestion is to use one parameter, overloaded with 4 possible options20:56
devananda<uuid>, None, True, False20:56
linggaothat will be more confusing.20:57
devanandahow do you propose to expose your 3 methods in the REST API ?20:58
linggaonodes/?instance_uuid=<uuid|null|notnull>20:58
devanandaso, same20:59
linggaoso with lifeless's suggestion, node-show will not show by instance_uuid, right?21:00
linggaoIt is moved to node-list?21:00
devanandathat is confusing to me21:01
NobodyCami find it less confusing.21:02
devanandanode-list should return a list of uuids21:02
linggaonode-show shows one node with more details.21:02
devanandanode-show should return the details of a node21:02
linggaonode-list shows a collection of nodes.21:02
*** jbjohnso has quit IRC21:02
devanandaright21:02
devanandaso it would be very inconsistent for node-list to return a single node with full details expanded21:03
linggaoyes.21:03
NobodyCamfilter the list to get what nodes you want then show those nodes by filtered list returned21:03
NobodyCamasking node show for all associated nodes seems inconsistent to me21:05
*** anniec has joined #openstack-ironic21:05
NobodyCam[un]associated21:05
linggaoNobodyCam, node-show only shows one node.   node-show --instance-uuid <id>21:06
linggaoIt has the same detailed output as node-show <nodeid>21:07
NobodyCamwhat would null and not null give21:07
linggaothat's in node-list21:07
linggaonode-list [--[un]associated]21:08
NobodyCamyes21:08
NobodyCamyour example was nodes/?instance_uuid=<uuid|null|notnull>21:08
linggaonode-show will call internal API get, node-list call list.21:08
NobodyCamseems /me is confused about what bits are confusing whom21:14
linggaodavananda, lifeless, I do not understand neither of your comments. on https://review.openstack.org/#/c/53485/6/ironicclient/tests/v1/test_node.py   Line 140.  Is there something I need to change there?21:19
linggaoare you debating with each other or telling me the same thing? :)21:20
NobodyCamlinggao: they are working that out... thus the async convo going on atm21:21
linggaoNobodyCam, I see.21:22
*** jdob has quit IRC21:40
*** romcheg has left #openstack-ironic21:56
*** linggao has quit IRC22:02
*** anniec has quit IRC22:05
*** rloo has quit IRC22:06
*** rloo has joined #openstack-ironic22:06
*** anniec has joined #openstack-ironic22:07
*** anniec has quit IRC22:12
*** linggao has joined #openstack-ironic22:26
*** crandquist has joined #openstack-ironic22:53
*** kobier has quit IRC22:56
* NobodyCam wanders away23:33
*** rwsu has quit IRC23:38
*** rwsu has joined #openstack-ironic23:45
*** lucas-dinner has quit IRC23:57

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