Tuesday, 2015-03-03

rfchapmanNobodyCam: One thing I noticed is,  even though I have one box set up for ubuntu and the other box for fedora.  no matter which image i deploy, openstack tries it on both boxes.00:01
openstackgerritYuiko Takada proposed stackforge/ironic-discoverd: Consider dropping check on power state  https://review.openstack.org/16022300:02
rfchapmanI would only expect it to deploy on boxes that have the corasponding deploy images.00:02
NobodyCamrfchapman: thats strange. do you have the retry schudeler loded in nova00:03
rfchapmanNobodyCam: Not sure, what is it?00:03
NobodyCamhttp://docs.openstack.org/icehouse/config-reference/content/section_compute-scheduler.html00:06
openstackgerritYuiko Takada proposed stackforge/ironic-discoverd: Add scripts to manage translations  https://review.openstack.org/15898100:06
*** rloo has quit IRC00:12
*** rloo has joined #openstack-ironic00:12
*** chlong has quit IRC00:15
rfchapmanNobodyCam: it's currently configured as default #scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler00:19
*** hj-hp has quit IRC00:22
rfchapmanOK, I'm starting to see how this functions...  I don't have any of the filter/instance types configured.  That would explaine why it tries them all.00:23
*** mtanino_ has joined #openstack-ironic00:28
*** mtanino has quit IRC00:29
*** BadCub has quit IRC00:31
rfchapmanNobodyCam: When I deploy the fedora image, it seems to give me the ubuntu deploy_kernel  I did a md5sum on the image that I created for ubuntu as well as the "deploy_kernel" in the pxe cfg dir and they are the same.00:35
NobodyCamrfchapman: how did you build your deploy ramdisk?00:36
*** naohirot has joined #openstack-ironic00:46
rfchapmanNobodyCam: I followed the baremetal instructions.  using the diskimager tool00:49
rfchapmanI'm sorry the diskimage builder tool00:50
NobodyCamrfchapman: so I expect you only have one type of deployment ramdisk00:50
NobodyCamdiskimage-builder/bin/ramdisk-image-create -a amd64 ubuntu deploy-ironic -o <DEPLOY_IMAGE_NAME> <- for ubuntu00:50
NobodyCamdiskimage-builder/bin/ramdisk-image-create -a amd64 fedora deploy-ironic -o <DEPLOY_IMAGE_NAME> <- for fedora00:51
rfchapmanYep that is the one.00:52
rfchapmanI think I'm going to wipe what I have and start from scratch.  I'm thinking I may have made a mistake before.00:54
jiangfei|3NobodyCam: hi, i have one question.  Juno's known issues about ' IPMI passwords are visible to users with cloud admin privileges, via Ironic's API.' This problem has been solved yet?00:55
NobodyCamrfchapman: if you start over may I suggest http://docs.openstack.org/developer/ironic/dev/dev-quickstart.html#deploying-ironic-with-devstack00:55
rfchapmanThanks, I'll give it a go.00:56
NobodyCamjiangfei|3: ipmi password are part of driver info00:56
NobodyCamjiangfei|3: I have to check there was some work around that. I'm actually not sure at what state its at00:57
jrolljiangfei|3: they are masked in API responses on the master branch, will be released in kilo00:57
jrolljiangfei|3: per a policy setting IIRC00:57
jiangfei|3jroll: ok, thank you00:58
*** Marga_ has quit IRC00:58
NobodyCamsee :)01:01
NobodyCamthank you jroll01:02
* NobodyCam is going to step away.01:02
jiangfei|3jroll: does this have a link01:02
jrolljiangfei|3: um, one sec01:03
jrolljiangfei|3: here's the commit, unsure if there's anything else https://github.com/openstack/ironic/commit/efb321c71a709a6f5b33d9de62587117f0c29ba301:04
jiangfei|3jroll: thank you :).01:04
jiangfei|3jroll: do we need to store ipmitool-password encryption in DB?01:11
jrolljiangfei|3: what do you mean? should ironic encrypt passwords in the database?01:11
jiangfei|3jroll: yes,  currently  we store ipmitool-password  in DB directlly. we also can get the password by DB operation. so may be we should  be encrypted.01:14
jrolljiangfei|3: yes, I think it should, but that's not something we've done yet01:16
jrolljiangfei|3: also, most BMC authentication can be broken if you have network access01:16
jiangfei|3jroll: yes01:17
jrollwe've talked about it, but priorities :(01:18
jiangfei|3jroll: i got it, i will be merge this commit to my Juno Release, thank you very much.01:19
*** krtaylor has quit IRC01:20
jrolljiangfei|3: you're welcome, don't forget to set policy.json :)01:20
jiangfei|3jroll: ok01:20
mrdaat least a DOS attack on the BMC...01:23
openstackgerritMerged openstack/ironic: Use mock instead of fixtures when appropriate  https://review.openstack.org/15989801:27
*** jmccrory has quit IRC01:29
*** krtaylor has joined #openstack-ironic01:33
*** chenglch|2 has joined #openstack-ironic01:34
*** chenglch|2 has quit IRC01:34
*** chenglch|2 has joined #openstack-ironic01:35
openstackgerritJosh Gachnang proposed openstack/ironic: Implement execute clean steps  https://review.openstack.org/15556101:37
*** achanda has quit IRC01:38
openstackgerritJosh Gachnang proposed openstack/ironic: Fix nits in cleaning  https://review.openstack.org/16059901:48
*** rwsu is now known as rwsu-afk02:06
*** dmellado has quit IRC02:21
*** dmellado has joined #openstack-ironic02:22
*** mtanino_ has quit IRC02:24
*** jerryz_ has joined #openstack-ironic02:24
*** lazy_prince has quit IRC02:46
*** yuanying has joined #openstack-ironic02:49
*** yuanying has quit IRC02:57
*** ndipanov_gone has quit IRC03:01
*** yuanying has joined #openstack-ironic03:05
*** ijw has quit IRC03:07
*** yuanying has quit IRC03:07
*** yuanying has joined #openstack-ironic03:07
*** Nisha has joined #openstack-ironic03:09
*** rloo has quit IRC03:14
*** spandhe has quit IRC03:16
*** yuanying has quit IRC03:29
*** yuanying has joined #openstack-ironic03:32
*** yuanying has quit IRC03:35
*** dmellado_ has joined #openstack-ironic03:36
*** Nisha has quit IRC03:36
*** dmellado has quit IRC03:37
*** dmellado_ is now known as dmellado03:37
*** yuanying has joined #openstack-ironic03:37
*** zer0c00l has quit IRC03:47
openstackgerritYuiko Takada proposed stackforge/ironic-discoverd: Add scripts to manage translations  https://review.openstack.org/15898103:47
*** zer0c00l has joined #openstack-ironic03:48
*** Marga_ has joined #openstack-ironic04:08
*** harlowja_ is now known as harlowja_away04:13
*** BadCub_Away has joined #openstack-ironic04:13
BadCub_AwayEvening Ironic :-)04:16
*** BadCub_Away is now known as BadCub04:16
*** killer_prince has joined #openstack-ironic04:18
*** killer_prince is now known as lazy_prince04:18
*** rameshg87 has joined #openstack-ironic04:19
*** Haomeng has joined #openstack-ironic04:21
*** jmccrory has joined #openstack-ironic04:21
*** jmccrory has joined #openstack-ironic04:21
*** Haomeng|2 has quit IRC04:22
rameshg87good morning ironic04:29
*** stendulker has joined #openstack-ironic04:30
naohirotgood morning rameshg8704:33
openstackgerritMerged stackforge/proliantutils: Support CDROM in get/set persistent boot methods  https://review.openstack.org/15979904:33
rameshg87naohirot, o/04:34
naohirotrameshg87: I got different comment about dib vfloppy from dib team.04:34
rameshg87naohirot, oh let me check04:34
rameshg87naohirot, they might be making more sense than me :)04:35
naohirotrameshg87: I'd like to know if my patch #2 is different from what you are thinking or not.04:35
rameshg87naohirot, checking right away ..04:35
naohirotrameshg87: yes, please.04:35
*** jmccrory has quit IRC04:37
*** coolsvap_ is now known as coolsvap04:37
rameshg87naohirot, yeah this is what i meant04:38
rameshg87naohirot, i mean have a mechanism for different vendors to plugin their virtual media device filename and their timeouts04:38
naohirotrameshg87: which one? my patch #2 or Clint's comment?04:39
rameshg87naohirot, patch #204:39
rameshg87naohirot, but i don't quite get Clint's comment04:39
rameshg87naohirot, we might need to check with him04:39
naohirotrameshg87: Okay, I'll ask Client about his intention.04:40
rameshg87naohirot, okay04:40
rameshg87naohirot, so while building the ramdisk, vendors have a mechanism to provide their virtual media device filename, correct ?04:41
naohirotrameshg87: but regarding patch #2, it it the way to passing parameter via kernel parameter?04:41
naohirotrameshg87: Yes, each vendor can pass parameter via env variable.04:42
rameshg87naohirot, no, in your patch #2 the string will be passed and it will hardcoded in the ramdisk built, right ?04:42
rameshg87naohirot, if it's urgent for you to get this merged04:43
naohirotrameshg87: Yes, so I meant it is pre-processing when ramdisk is created.04:43
rameshg87naohirot, i am just wondering if we should go back to your patch set #1 and do this kind of generic mechanism later04:43
rameshg87naohirot, i am fine doing this later as well .. i understand you need this for kilo04:44
naohirotrameshg87: is patch #2 different from the way you called passing kernel parameter?04:44
rameshg87naohirot, yeah it04:44
rameshg87naohirot, yeah it's different, but providing a mechanism for different vendors is all i wanted actually :)04:45
rameshg87naohirot, right now, only both of us are the consumers04:45
*** Nisha has joined #openstack-ironic04:46
naohirotrameshg87: Is the passing kernel parameter executed in baremetal server?04:46
devanandaevening, all04:47
rameshg87naohirot, actually since the kernel cmdline arguments for the deploy kernel are hardcoded within the iso04:47
naohirotrameshg87: I'm thinking if there is a way to passing parameters not using virtual floppy,04:47
rameshg87naohirot, we will end up hardcoding the name of virtual media device filename anyway04:47
rameshg87devananda, o/04:47
naohirotrameshg87: why do we use virtual flopopy?04:47
rameshg87naohirot, to pass the arguments for the deploy to the ramdisk04:47
*** oomichi_ has joined #openstack-ironic04:48
rameshg87naohirot, arguments like iscsi_iqn, ironic_api_url, etc04:48
rameshg87naohirot, in ilo driver, since we attach the iso file directly from swift, we need to pass the deploy info in some way to the bare metal04:48
naohirotrameshg87: Yeah, I'd like to know how to passing parameter without virtual floppy.04:48
rameshg87naohirot, i couldn't think of any04:49
*** faizan has joined #openstack-ironic04:49
rameshg87naohirot, if you can come up with a way - great ;-)04:49
naohirotrameshg87: I'm puzzled :)04:49
rameshg87:)04:50
*** Haomeng has quit IRC04:51
naohirotrameshg87: So okay, passing parameter via pre-processing the init-func shell script is the way to customize parameter among vendors. Am I right?04:51
*** Haomeng has joined #openstack-ironic04:51
rameshg87naohirot, yeah04:52
naohirotrameshg87: Yep, thanks. By the way, what 'iirc' stands for?04:52
naohirotrameshg87: I notice other Ironiker used 'iirc' too, today04:54
naohirotrameshg87: s/notice/noticed/04:54
rameshg87naohirot, if i remember correctly (iirc)04:54
rameshg87naohirot, that's way in which you can tell you are not sure about something :)04:54
jroll\o04:55
rameshg87jroll, o/04:55
naohirotgood evening devananda04:55
naohirotgood evening jroll04:55
jrollhi :)04:55
jrollwhat patch are y'all talking about?04:55
rameshg87jroll, if the question was to us - it was https://review.openstack.org/#/c/159888/04:56
naohirotrameshg87: that means "./imagebuild/coreos/full_trusty_build.sh iirc", in this case iirc is not argument?04:56
rameshg87naohirot, oh04:57
rameshg87naohirot, i mean if i remember correctly, i ran the script "./imagebuild/coreos/full_trusty_build.sh"04:57
naohirotrameshg87: just IRC abbribiation?04:57
rameshg87naohirot, yeah04:58
naohirotrameshg87: lol04:58
jroll:P04:58
naohirotrameshg87: Now I got it, If I Remember Correctly = iirc04:58
rameshg87yeah04:59
naohirotrameshg87: :)04:59
naohirotrameshg87: I thought Ironic something :)04:59
jrollso I think what SpamapS (clint) is saying there is: instead of the __VARIABLE__ placeholders, just use a $VARIABLE, and then set VARIABLE in elements/ramdisk-base/extra-data.d/01-inject-ramdisk-build-files04:59
jrollor rather in that file, write a file with the varaibles, that you can later read the variables from05:00
SpamapSright, basically, rather than edit+parse yourself, just let bash/dash/busybox do your parsing. ;)05:00
jroll:P05:01
devanandameeting time :)05:01
jrolloh snap05:01
mrda\o/05:01
naohirotjroll: SpamapS: thanks, let me come back after the meeting :)05:01
mrdameeting-3 right?05:03
JoshNangyup05:03
mrdaoh good, just others running REALLY late05:03
jrollheh05:05
jrollor not paying attention to the clock >.>05:05
*** david-lyle_afk has joined #openstack-ironic05:06
*** pradipta has joined #openstack-ironic05:06
*** stendulker has quit IRC05:12
*** stendulker has joined #openstack-ironic05:12
*** Nisha has quit IRC05:16
*** Nisha has joined #openstack-ironic05:16
*** stendulker has quit IRC05:17
*** stendulker has joined #openstack-ironic05:18
*** stendulker has quit IRC05:21
*** stendulker has joined #openstack-ironic05:22
*** stendulker has quit IRC05:22
*** stendulker has joined #openstack-ironic05:22
*** takadayuiko has joined #openstack-ironic05:23
*** Marga_ has quit IRC05:28
*** lazy_prince has quit IRC05:28
*** killer_prince has joined #openstack-ironic05:29
*** killer_prince is now known as lazy_prince05:29
NobodyCamcan you mount nfs in fuse?05:43
*** david-lyle_afk has quit IRC05:44
*** Nisha has quit IRC05:45
*** pradipta has quit IRC05:45
*** Nisha has joined #openstack-ironic05:46
mrdaNobodyCam: I would expect it to be possible05:47
mrdaNobodyCam: I just haven't done it05:47
rameshg87JoshNang, you around ?05:51
JoshNangrameshg87: o/05:51
rameshg87JoshNang, before you leave for the day05:51
rameshg87JoshNang, we will talk on (your tomorrow)05:51
*** Nisha_away has joined #openstack-ironic05:51
rameshg87JoshNang, regarding the things in zapping :)05:51
*** Nisha has quit IRC05:51
JoshNangsounds good :) i'll pobably be on around 8am pst05:52
rameshg87JoshNang, sure i will be come around that time too05:52
jrollNobodyCam: I posted a comment on Nisha's thing for you05:53
NobodyCam:)05:54
rameshg87jroll, NobodyCam, we were talking about that change 2 days back in the channel05:55
rameshg87jroll, NobodyCam, this was introduced as part of a commit long time back - https://review.openstack.org/#/c/40219/05:55
*** takadayuiko has quit IRC05:56
jrollrameshg87: indeed05:56
rameshg87jroll, NobodyCam, wondered why such a check is required in that place05:56
rameshg87jroll, NobodyCam, i felt it shouldn't be there05:56
jrollrameshg87: I tend to think the same way, but05:56
jrollduring inspection the node is locked05:57
jrollbut inspection may delete/create ports05:57
*** yuanying has quit IRC05:58
rameshg87jroll, but the node is locked by the same thread in that place which it has no way to figure out :(05:58
jrollrameshg87: not sure what you mean05:59
rameshg87jroll, i mean this piece of code: https://github.com/openstack/ironic/blob/master/ironic/db/sqlalchemy/api.py#L136-L14406:00
*** BadCub has quit IRC06:00
jrollrameshg87: I think it's ok that the node is locked... because that thread has the lock06:00
rameshg87jroll, currently it checks in the db layer if someone has reserved06:00
*** Marga_ has joined #openstack-ironic06:01
jrollright...06:01
rameshg87jroll, but if someone locked the node themselves and tried destroy_port06:01
rameshg87jroll, i assume that would fail06:01
rameshg87jroll, but have to check how ironic port-delete works :)06:02
jrollrameshg87: right, that's what should happen06:02
jrollOH06:02
jrollrameshg87: I see what you mean, ironic port-delete probably doesn't lock06:02
jrolllol06:02
rameshg87jroll, yeah06:02
rameshg87jroll, that's even bigger problem :)06:02
jrollrameshg87: so the real fix is for that RPC call to lock06:02
naohirotjroll: devananda: I read both of your comments.06:02
*** stendulker_ has joined #openstack-ironic06:02
jrollrameshg87: and remove this check06:03
rameshg87jroll, yeah06:03
rameshg87jroll, exacly06:03
rameshg87jroll, we shouldn't be doing any sort of that checks in the db layer06:03
devanandano. we need to06:03
devanandathe locking IS done at the db layer06:03
jrollrameshg87: oh, it doesn't get to the API https://github.com/openstack/ironic/blob/master/ironic/api/controllers/v1/port.py#L35506:03
jrolldevananda: we sholdn't be checking `node.reservation is not None` at the dbapi layer06:04
jrolldevananda: we should be acquiring a lock and calling dbapi.destroy_port()06:04
rameshg87jroll, yeah that's what i meant. calling destroy() without a lock06:04
devanandajroll: right06:04
*** stendulker has quit IRC06:04
jrollrameshg87: indeed, that's a problem06:04
devanandathe locking is still done at the db layer06:04
jrolldevananda: https://github.com/openstack/ironic/blob/master/ironic/db/sqlalchemy/api.py#L136-L14406:05
devanandathe lock is (and should remain) on the node06:05
jrollis the contention here06:05
Nisha_awaydevananda, i have proposed the following change for above https://review.openstack.org/#/c/151596/24/ironic/db/sqlalchemy/api.py06:05
rameshg87devananda, but if it's done at db layer, it has no way to figure out who actually locked ?06:05
rameshg87devananda, like if we ourselves acquired locked on the node, we should be allowed to destroy port, right ?06:05
rameshg87devananda, but db layer has no way to identify this06:05
jrollrameshg87: +106:05
Nisha_awaydevananda, but inspection we need to delete the port if MAC is not discovered anymore06:05
rameshg87Nisha_away, yeah we were talking about that06:06
jrollrameshg87: you should comment about this on gerrit since you're clearly smarter than I am06:06
jroll:)06:06
rameshg87:)06:06
Nisha_awayrameshg87, yes i know06:06
naohirotdevananda: jroll: I'll update the spec. This is just my misunderstanding. I didn't take this is a contention, but just suggestion.06:06
rameshg87jroll, but the problem was we didn't know why that change was made. there was no bug as well :(06:07
rameshg87jroll, may be code has changed so much after that - it was needed then06:07
jrollrameshg87: I'm finding that with many old changes these days06:07
jrollnaohirot: I'm sorry that wasn't clear, however I think it is a real issue06:07
naohirotjroll: I'll follow the Ironic design policy :)06:08
Nisha_awayjroll, i saw the comment the db change06:08
Nisha_awaywhy we shouldnt do it based on state?06:08
jrollnaohirot: I wouldn't say it's Ironic's policy specifically, but at any rate thank you :)06:08
devanandarameshg87: my suggestion - file a bug describing this, then propose a fix, and base your secure boot patch on that06:08
jrollNisha_away: I just feel like there's a layer violation there, I think rameshg87's idea is the best option here06:09
rameshg87devananda, yeah it should be fixed separately06:09
rameshg87devananda, and it's for ilo inspection (not secure boot) :)06:09
devanandarameshg87: d'oh! yes - i just closed some tabs and looked at the wrong one06:10
rameshg87:)06:10
*** killer_prince has joined #openstack-ironic06:10
jrollI always do the opposite, open 10 tabs and lose them06:10
*** lazy_prince has quit IRC06:10
*** killer_prince is now known as lazy_prince06:10
*** rameshg87 is now known as rameshg87-away06:10
jrollok, I think this is a good point for me to go to be06:10
jrolld06:10
jrollespecially when I can't type the word bed06:11
devanandaok folks, i'm going to wander off to sleep soon06:11
jrollgood night everybody06:11
devanandaheh ... yeap, that's a good sign06:11
devanandag'night all06:11
Nisha_awayg'night06:11
*** achanda has joined #openstack-ironic06:14
naohirotjroll: no problem, thanks :)06:14
*** yuanying has joined #openstack-ironic06:16
naohirotjroll: anyway I'm still leaning how to develop OSS anyway. I definitly leaned one thing this time :)06:16
*** yuanying has quit IRC06:17
naohirotjroll: s/leaning/learning/06:17
*** yuanying has joined #openstack-ironic06:31
*** russell_h has quit IRC06:38
*** stendulker has joined #openstack-ironic06:43
openstackgerritNisha Agarwal proposed openstack/ironic: follow-up patch for generic node inspection  https://review.openstack.org/16066506:44
*** david-lyle_afk has joined #openstack-ironic06:44
*** ukalifon1 has joined #openstack-ironic06:45
*** stendulker_ has quit IRC06:46
*** yuanying has quit IRC06:48
*** yuanying has joined #openstack-ironic06:48
*** Nisha_away has quit IRC06:48
*** jroll has quit IRC06:49
*** yuanying has quit IRC06:50
*** yuanying has joined #openstack-ironic06:51
*** jroll has joined #openstack-ironic06:59
*** yuanying has quit IRC07:01
*** mrda is now known as mrda-away07:04
*** oomichi_ has quit IRC07:18
*** foexle has joined #openstack-ironic07:20
*** openstackgerrit has quit IRC07:22
*** openstackgerrit has joined #openstack-ironic07:22
*** AnxiousGarlic has joined #openstack-ironic07:24
*** AnxiousGarlic has left #openstack-ironic07:25
*** yuanying has joined #openstack-ironic07:33
*** ndipanov_gone has joined #openstack-ironic07:35
*** yuanying has quit IRC07:36
*** Marga_ has quit IRC07:48
*** yuanying has joined #openstack-ironic07:54
*** dlpartain has joined #openstack-ironic07:56
*** krtaylor has quit IRC07:58
*** Marga_ has joined #openstack-ironic07:58
*** ndipanov_gone has quit IRC07:59
*** dlpartain has left #openstack-ironic07:59
*** Haomeng has quit IRC08:01
*** ifarkas has joined #openstack-ironic08:01
*** Haomeng has joined #openstack-ironic08:03
*** Marga_ has quit IRC08:06
*** jcoufal has joined #openstack-ironic08:07
*** krtaylor has joined #openstack-ironic08:08
openstackgerritShivanand Tendulker proposed openstack/ironic: Common changes for secure boot support  https://review.openstack.org/15397408:16
*** lsmola has joined #openstack-ironic08:16
openstackgerritShivanand Tendulker proposed openstack/ironic: Secure boot support for pxe_ilo driver  https://review.openstack.org/15480808:21
*** mtanino has joined #openstack-ironic08:21
*** yuanying has quit IRC08:24
*** mtanino has quit IRC08:26
*** eglute has quit IRC08:26
*** yuanying has joined #openstack-ironic08:26
*** athomas has joined #openstack-ironic08:27
*** dtantsur|afk is now known as dtantsur08:30
dtantsurMorning08:30
*** yuanying has quit IRC08:31
*** eglute has joined #openstack-ironic08:31
*** chenglch has joined #openstack-ironic08:31
*** chenglch|2 has quit IRC08:34
rameshg87-awaydtantsur, o/08:41
*** rameshg87-away is now known as rameshg8708:41
dtantsuro/08:41
openstackgerritMerged stackforge/ironic-discoverd: Consider dropping check on power state  https://review.openstack.org/16022308:44
openstackgerritShivanand Tendulker proposed openstack/ironic: Secure boot support for iscsi_ilo driver  https://review.openstack.org/15481408:45
openstackgerritShivanand Tendulker proposed openstack/ironic: Secure boot support for agent_ilo driver  https://review.openstack.org/15481608:45
*** jistr has joined #openstack-ironic08:46
*** achanda has quit IRC08:55
openstackgerritShivanand Tendulker proposed openstack/ironic: Ilo drivers sets capabilities:boot_mode in node  https://review.openstack.org/15573108:57
*** lifeless has quit IRC09:05
*** lifeless has joined #openstack-ironic09:06
*** mgoddard has joined #openstack-ironic09:06
*** andreykurilin_ has joined #openstack-ironic09:06
*** JoshNang has quit IRC09:07
*** MattMan has joined #openstack-ironic09:11
*** andreykurilin_ has quit IRC09:12
*** andreykurilin_ has joined #openstack-ironic09:12
*** vdrok_afk has quit IRC09:17
*** andreykurilin_ has quit IRC09:26
*** rameshg87 is now known as rameshg87-brb09:27
*** andreykurilin_ has joined #openstack-ironic09:27
*** Haomeng|2 has joined #openstack-ironic09:29
*** Haomeng has quit IRC09:30
*** romcheg has joined #openstack-ironic09:30
*** vdrok has joined #openstack-ironic09:32
vdrokmorning ironic09:32
vdrokdtantsur, morning, around?09:33
dtantsurvdrok, morning yeah09:34
vdrokdtantsur, have a question about your comment here - https://review.openstack.org/#/c/136741/31/doc/source/deploy/install-guide.rst09:34
*** romcheg has quit IRC09:35
vdrokdtantsur, when I tested it without dhcp provider everything worked fine without additional config editing09:35
openstackgerritYuriy Zveryanskyy proposed openstack/ironic: Do not save auth token on TFTP server in PXE driver  https://review.openstack.org/15981909:35
vdrokdtantsur, switch_pxe_config seems to work fine09:35
dtantsurwell, maybe, I didn't test it personally09:35
vdrokdtantsur, ok, then I'll just mention local boot :)09:36
dtantsurvdrok, it's worth mentioning :) if you can confirm things work with PXE boot too, that's good :)09:36
vdrokdtantsur, will do09:36
openstackgerritNisha Agarwal proposed openstack/ironic: Follow-up patch for generic node inspection  https://review.openstack.org/16066509:39
*** Nisha has joined #openstack-ironic09:41
Nishadtantsur, hi09:43
dtantsuro/09:44
Nishajust responded to one of the comment in follow up patch09:44
Nishadid u happen to see it?09:44
dtantsurlooking now09:45
*** romcheg has joined #openstack-ironic09:46
dtantsurNisha, my only point is that fallback last_error makes no sense whatsoever and should be deleted :) either assume last_error is always provided or use some sane default09:46
Nishai just raised the patch without addressing it09:46
Nishabut if we use timeout word ruby has objection09:46
Nishashe is like this method can be used for any filter criteria09:47
Nishait may not be timeout always09:47
*** naohirot has quit IRC09:49
Nishadtantsur, ^^^^09:50
dtantsurNisha, ok, but this wording is even worse, because it lies to a user... please do something about it (e.g. delete completely)09:51
*** foexle has quit IRC09:51
*** coolsvap is now known as coolsvap_09:52
Nishais it ok to leave last_erro empty if its not provided?09:52
Nishaif thats fine i will delete it09:52
dtantsurNisha, I think so09:53
dtantsurNisha, if folks invent some better wording - good09:54
Nishadtantsur, so should i wait for comments?09:54
Nishaor should i remove it?09:54
dtantsurNisha, go ahead :)09:54
Nishai will reove then09:55
Nisharemove*09:55
openstackgerritNisha Agarwal proposed openstack/ironic: Follow-up patch for generic node inspection  https://review.openstack.org/16066509:59
Nishadtantsur, ^^^ removed the default error message09:59
*** foexle has joined #openstack-ironic10:08
openstackgerritRamakrishnan G proposed stackforge/proliantutils: HPSSA: Handle all storage units  https://review.openstack.org/15900110:26
*** PaulCzar has quit IRC10:27
*** dtantsur is now known as dtantsur|bbl10:28
*** andreykurilin_ has quit IRC10:46
openstackgerritVladyslav Drok proposed openstack/ironic: Check UUID correctness for Glance images  https://review.openstack.org/15195110:49
*** chenglch has quit IRC10:50
openstackgerritVladyslav Drok proposed openstack/ironic: Address comments on Iec8e1f862d29639363b71c67d60e711d35d2ed94  https://review.openstack.org/16073210:51
*** pelix has joined #openstack-ironic11:03
*** Haomeng has joined #openstack-ironic11:05
*** rameshg87-brb has quit IRC11:06
*** Haomeng|2 has quit IRC11:06
*** stendulker has quit IRC11:13
*** coolsvap_ is now known as coolsvap11:17
*** Nisha has quit IRC11:35
*** Nisha_away has joined #openstack-ironic11:35
*** romcheg has quit IRC11:49
openstackgerritNisha Agarwal proposed openstack/ironic: Follow-up patch for generic node inspection  https://review.openstack.org/16066511:58
openstackgerritTan Lin proposed openstack/ironic: Add server's supported API versions to exception HTTPNotAcceptable(406)  https://review.openstack.org/16075812:02
*** EmilienM|afk is now known as EmilienM12:05
*** killer_prince has joined #openstack-ironic12:06
*** lazy_prince has quit IRC12:07
*** killer_prince is now known as lazy_prince12:07
openstackgerritNaohiro Tamura proposed openstack/ironic-specs: iRMC Virtual Media Deploy Driver for Ironic  https://review.openstack.org/13486512:20
*** dtantsur|bbl is now known as dtantsur12:22
*** gridinv has joined #openstack-ironic12:33
*** faizan has quit IRC12:37
openstackgerritImre Farkas proposed openstack/ironic: POC: DRAC RAID configuration  https://review.openstack.org/14546413:02
*** jroll has quit IRC13:07
*** jroll has joined #openstack-ironic13:07
openstackgerritDmitry Tantsur proposed openstack/ironic: Add iter_nodes() helper to the conductor manager  https://review.openstack.org/15910013:08
*** ifarkas has quit IRC13:09
*** ifarkas has joined #openstack-ironic13:12
*** Nisha_away has quit IRC13:18
*** dprince has joined #openstack-ironic13:26
*** ukalifon1 has quit IRC13:37
*** romcheg has joined #openstack-ironic13:42
*** jjohnson2 has joined #openstack-ironic13:45
openstackgerritDmitry Tantsur proposed openstack/ironic: Add module for in-band inspection using ironic-discoverd  https://review.openstack.org/15656213:47
*** rameshg87 has joined #openstack-ironic13:51
rameshg87good evening folks :)13:52
*** rameshg87 is now known as rameshg87-brb13:52
*** trown|outttypeww is now known as trown13:54
*** absubram has joined #openstack-ironic13:55
*** rloo has joined #openstack-ironic14:00
openstackgerritTan Lin proposed openstack/python-ironicclient: Enable ironicclient with --ironic-api-version 1.x  https://review.openstack.org/15562414:03
*** kkoski has joined #openstack-ironic14:15
openstackgerritVladyslav Drok proposed openstack/ironic: Fix nits for supporting non-glance images  https://review.openstack.org/16073214:16
openstackgerritNisha Agarwal proposed openstack/ironic: Follow-up patch for generic node inspection  https://review.openstack.org/16066514:18
*** lazy_prince has quit IRC14:19
jrollmorning all :)14:19
*** kkoski has quit IRC14:20
dtantsurjroll, morning!14:21
*** killer_prince has joined #openstack-ironic14:24
*** killer_prince is now known as lazy_prince14:24
*** romcheg has quit IRC14:24
*** kkoski has joined #openstack-ironic14:24
openstackgerritNaohiro Tamura proposed openstack/ironic-python-agent: Add iRMC virtual floppy media support  https://review.openstack.org/16081314:25
jrolldtantsur: thoughts on getting a spec for this? https://review.openstack.org/#/c/159819/514:26
jrollthere's a lot to bikeshed about there14:26
dtantsurwell...14:26
*** kkoski has quit IRC14:26
*** erwan_taf has quit IRC14:26
dtantsurjroll, not sure, what are your bikeshed points? my only concern is doing it that late in the cycle14:27
*** chlong has joined #openstack-ironic14:27
jrollwell, that's one thing14:27
jrollbut this doesn't actually improve security of the deploy14:27
jrolljust security of the admin creds14:28
*** absubram has quit IRC14:28
jrollthat is to say, I'm +1 on that patch but I think there's much more to do14:28
dtantsurI personally treat it like an important improvements14:28
*** kkoski has joined #openstack-ironic14:28
dtantsur(and matches what you do with the agent and I do with discoverd)14:28
*** kkoski has quit IRC14:29
*** kkoski has joined #openstack-ironic14:29
jrollyeah14:29
jrollok, sounds good :) thanks14:30
* jroll also noticed when looking at test failures that we should set trace mode in our bash ramdisk14:30
*** romcheg has joined #openstack-ironic14:30
*** Marga_ has joined #openstack-ironic14:35
*** BadCub has joined #openstack-ironic14:36
BadCubMorning Ironic14:36
*** rameshg87-brb is now known as rameshg8714:37
*** Marga_ has quit IRC14:37
jrollmorning BadCub :)14:38
*** Marga_ has joined #openstack-ironic14:38
*** ndipanov has joined #openstack-ironic14:38
rameshg87question to everyone: why do we have this kind of checking in our api: https://github.com/openstack/ironic/blob/master/ironic/api/controllers/v1/node.py#L66-L9014:38
rameshg87do we intend to add such kind of checks (in the future) for disallowing features based on minor version of api ?14:39
jrollrameshg87: exactly that14:39
rameshg87jroll, but it will be headache, right ?14:40
jrollwe need to make it better so we don't clutter the code14:40
dtantsurit already is :D14:40
rameshg87jroll, to add a method of disallowing everytime14:40
jrollfor us, yes, for deployers it will help them (I think)14:40
jrollright...14:40
rameshg87jroll, how ?14:40
jrollso nova does some decorator madness14:40
jrollrameshg87: so tooling doesn't break because we change the API14:40
rameshg87jroll, sorry, what is tooling here ?14:40
jrollrameshg87: tools that operators use to interact with the API14:41
rameshg87jroll, to bundle appropriate version of client or something ?14:41
jrollwell, the client should have an argument for the version14:41
jrollso a good example is when we changed NOSTATE to AVAILABLE14:41
jrollwithout this check, my tools would break: https://github.com/openstack/ironic/blob/master/ironic/api/controllers/v1/node.py#L59-6314:42
jroll(also nova and tempest would break)14:42
rameshg87jroll, i agree for that14:42
rameshg87jroll, but why for logical names ?14:42
rameshg87jroll, logical names was a new feature right ?14:42
* dtantsur is not sure too...14:42
rameshg87jroll, no client before that would know that we can pass logical names in /v1/nodes/<>/14:42
rameshg87jroll, previous clients would keep on sending uuid and we are still happy with it14:43
jrollrameshg87: the client is released separately fromt the server...14:43
*** zz_jgrimm is now known as jgrimm14:43
jrollmy client may be newer than my server14:43
*** coolsvap is now known as coolsvap_14:43
rameshg87jroll, oh so we provide support for older client with newer server ?14:44
rameshg87jroll, i don't think that's possible :)14:44
jrollI don't see why not14:44
rameshg87jroll, i add 3 new api endpoints for raid14:44
rameshg87jroll, newer clients know about it14:44
rameshg87jroll, but older server doesn't know about it14:44
rameshg87jroll, so newer client + older server is broken, right ?14:44
jrollrameshg87: it's not broken, it just doesn't support raid14:45
rameshg87jroll, hmm ..14:45
jrollrameshg87: also, keep in mind some tols may not use the client14:46
jrollrameshg87: bumping the version for a new feature makes that feature discoverable14:46
rameshg87jroll, do you direct curl requests ?14:46
jrollthe user can know if logical names is supported just by checking if v1.5 works14:46
jrollrameshg87: sometimes14:47
jrollrameshg87: and sometimes I use python-request14:47
jrollrameshg87: and sometimes I use node.js14:47
rameshg87jroll, bumping the version i agree14:47
rameshg87jroll, but separate disallowing checks based on minor version, why would we do it for features ?14:48
jrollrameshg87: it makes the feature discoverable without trying the actual endpoint14:48
jrolle.g. I can do /v1/nodes/uuid on v1.5 to see if logical names are available14:48
jrollrather than doing /v1/nodes/name, getting a 404, and wondering if logical names isn't available or if I just got the name wrong14:49
rameshg87jroll, but isn't there a generic mechanism to query the current max version of api14:49
rameshg87jroll, if someone knows from 1.5 logical names is supported14:50
rameshg87jroll, they can just query it and figure out also, right ?14:50
* rameshg87 wonders if i am missing something 14:50
jrollhrm14:50
rloorameshg87: have you seen the nova spec on microversions, that might help14:50
jrollrameshg87: I see your point... however this check is also used for setting a name etc14:51
rloorameshg87: i can't seem to copy/paste. maybe i should go back to sleep14:51
* jroll hands rloo his caffeine IV14:51
rameshg87rloo, i haven't. should read it first ?14:51
rameshg87:)14:51
* rameshg87 searches for devanandas mail14:52
rloorameshg87: that's what ironic's microversioning is based off of14:52
jrollrameshg87: http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/api-microversions.html14:52
rameshg87rloo, jroll, but i still it's odd to add checks for each feature :(14:52
* rameshg87 wonders if nova does the same14:53
rloorameshg87: to be honest, I haven't totally understood the microversioning too, and when to bump up the microversion etc.14:53
jrollrameshg87: nova is trying to but they are slow, see that spec14:53
devanandaso one thing to keep in mind as we continue to evolve the API, even with microversions, we must not break compatibility with older clients within the /v1/ URI14:53
rameshg87devananda, but for features (like logical names) backward compatibility is not broken14:54
devanandacorrect14:54
jrollrameshg87: another point -- providing well-defined, versioned, APIs helps us do frequent releases, helps deployers do continuous deploymeny, helps improve our testing story (if we can trust the API to not break, we can do less integration tests)14:54
* jroll would like to convince other projects to do this (well)14:55
rameshg87devananda, my question was do we still add a check to disallow a particular feature (for minor api versions before it was introduced) ?14:55
rameshg87devananda, even if it's truly a new feature (i mean an extension which doesn't break backward compatibility)14:56
devanandarameshg87: ah, good point.14:56
devanandain principle, no14:56
devanandahowever, since we have the facility to do so easily, we will be tempted to do so14:56
rameshg87oh14:56
devanandaI'm not sure that we *should*14:57
rameshg87devananda, so i was checked for code: https://github.com/openstack/ironic/blob/master/ironic/api/controllers/v1/node.py#L66-L9014:57
rameshg87devananda, do you feel these are not actually required ?14:57
rameshg87devananda, logical names, driver internal info, manage+inspect14:57
rameshg87devananda, all these are new things as i understand14:57
rloorameshg87: the logical names does change the response of eg a node show, because there is now a 'name' field. so even if you use uuids, if we return that new field, it could break someone's whatever if they weren't expecting that new field.14:58
openstackgerritImre Farkas proposed openstack/ironic: DRAC RAID testing: provide a way to manipulate target_raid_config from API -- DO NOT MERGE  https://review.openstack.org/16082514:58
devanandarameshg87: hide_driver_internal_info is definitely not required -- an older client should just ignore that part of the response14:58
rameshg87okay14:59
devanandabut rloo is correct re: logical names. that one could easily break an older client in some circumstances (eg, if the client didn't properly type check its input and someone passed it a name)14:59
rameshg87devananda, but we have a official python-ironicclient for everyone to use15:00
jrollwe can't require people to use the official requirement15:00
jrolland it would be silly to do so15:00
devanandarameshg87: sure. but there's also openstackclient (common client library) and other language clients15:00
rameshg87jroll, i didn't mean that15:00
jrolls/requirement/client/15:01
rameshg87devananda, if i understood correctly the concern was15:01
devanandapython-ironicclient, while produced by us, is definitely not the only client15:01
jrollrameshg87: I should say, we can't break other clients just because we have the official client15:01
devanandajroll: well said15:01
rameshg87devananda, someone calling /v1/nodes/my-node would have expected an error if they didn't know about logical names15:01
jrollfor example, I have a node.js application that talks to ironic15:01
devanandarameshg87: correct15:01
jrollif you break that I will throw things at you15:01
rameshg87devananda, but if newer server had such a node, it might return something15:02
*** gridinv has quit IRC15:02
devanandarameshg87: similarly, calling PUT {'target': 'inspect'} /v1/nodes/NNNN/state/provision15:02
devanandarameshg87: or s/inspect/any other random word/ -- someone would expect an error15:03
*** gridinv has joined #openstack-ironic15:03
devanandabut we changed what verbs are allowed there, thus we changed what the client should expect15:03
rameshg87devananda, how about new endpoints ?15:03
rameshg87devananda, i have in my generic raid code 3 new endpoints for raid: https://review.openstack.org/#/c/155230/15:03
rameshg87devananda, should i disallow based on minor version ?15:03
rameshg87devananda, i would think there is no need15:04
NobodyCamGood Morning Ironic15:04
rameshg87devananda, someone using older client might never know of such a feature15:04
rameshg87NobodyCam, o/15:04
NobodyCammorining devananda rameshg8715:04
NobodyCam:)15:04
devanandarameshg87: fair point. I'm inclined to agree -- but let me think on it a bit15:05
jrollI'm curious if disallowing a new endpoint/feature/whatever based on the version hurts anything... need to ponder15:05
jrollmorning NobodyCam :)15:05
rameshg87devananda, okay ..15:05
NobodyCammorning jroll :)15:05
rameshg87jroll, basically for every new feature i feel it just bloats the code15:05
devanandajroll: I can't see it hurting anything to hide it behind a version. but I'm also not sure it /helps/ anything15:05
* devananda gets coffee15:05
* NobodyCam seconds the coffee statement15:06
jrolldevananda: yeah15:06
jrollrameshg87: yeah, I hear you15:06
rameshg87jroll, :)15:06
rameshg87jroll, thanks :)15:06
jrollrameshg87: so I think we should make the helper code better so that we don't bloat the code :)15:07
rameshg87jroll, exactly15:07
jrollrameshg87: see how nova is using decorators, that might be a good option15:07
rameshg87jroll, @disallow_below_api_version(min_version=1.5)15:08
rameshg87jroll, something like that ?15:08
rameshg87jroll, if that feature provides a new function in itself15:08
jrollrameshg87: indeed, something like that... what nova is doing is different15:08
rloojroll, rameshg87: now that my copy/paste is working again. this might be useful too: docs.openstack.org/developer/nova/devref/api_microversions.html15:08
jrollhttp://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/api-microversions.html#implementation-design-details15:08
rameshg87jroll, yeah similar thing15:09
rameshg87jroll, for things like verbs15:09
rameshg87jroll, rloo, we could just do with method calls15:09
rameshg87jroll, rloo, i guess anything that would simplify might help15:09
jrollrameshg87: yeah, need to thing/talk about it15:10
rameshg87jroll, yeah may be live with it for kilo and refactor in early L release ?15:10
jrollrameshg87: yeah, I think so, too much code in flight to be refactoring that stuff around IMO15:11
rlooi was thinking that if we could punt this til L*, we could talk to the nova folks and get their experience15:11
rameshg87okay15:11
*** absubram has joined #openstack-ironic15:11
NobodyCamrameshg87: jlvillal: thank you for the reviews will address shortly15:12
*** Marga_ has quit IRC15:13
*** jerryz_ has quit IRC15:15
rameshg87rloo, https://review.openstack.org/#/c/150142/22/ironic/conductor/manager.py15:18
rloorameshg87: ?15:18
rameshg87rloo, can't we just a non-shared lock for infer_image_type ?15:18
rloorameshg87: no15:18
rloorameshg87: i mean, we could, almost anything is possible. but we shouldn't.15:18
rameshg87rloo, why ?15:18
NobodyCammorning rloo :)15:19
rloorameshg87: cuz up to now, the validate calls are meant to validate, not change the node15:19
rloomorning NobodyCam15:19
rameshg87rloo, but i assume we are not supposed to write to database without having a non-shared lock, right ?15:19
rloorameshg87: I don't see any reason for that to change for this. i'd rather the code be more inefficient for now, than to add yet another lock. we already have a problem with too many exclusive locks.15:19
rameshg87rloo, i mean we could degrade the lock after we are done calling infer_image_type15:19
rloorameshg87: yeah, w/o an exclusive lock, one shouldn't modify a node, but ...15:20
rameshg87rloo, degrade into a shared lock15:20
rloorameshg87: what if you can't get an exclusive lock. then what? err out on the validate()?15:20
gridinvjroll: hi, i am looking at network provider bp, trying to implement it for nuage neutron plugin/tor switch.15:21
rameshg87rloo, but with shared=True would we always succeed ?15:21
rameshg87rloo, i mean i have to check the code15:21
rloorameshg87: no, even with shared=true, if a node has been exclusively locked, it would fail15:21
jrollgridinv: hi! how can I help? :)15:21
gridinvjroll: basically got it working, have a issue though15:22
dtantsurrloo, will it?15:22
dtantsurshared lock is not a lock, it's just get15:22
rloorameshg87: it is a problem today. if you do a validate and say a periodic task is doing a power sync, you could get a fail.15:22
rameshg87rloo, i would assume 2 people could have locks with shared=True and shared=True15:22
NobodyCammornign dtantsur :)15:22
rameshg87rloo, but not with shared=True and shared=False15:22
gridinvjroll: plugin has same code base for  ironic/libvirt15:22
dtantsuroh morning NobodyCam, devananda, rloo and other folks :)15:22
rloodtantsur: can you get a shared lock for the same node that someone has taken an exclusive lock on?15:22
NobodyCam:)15:22
rloohi dtantsur ;)15:22
gridinvjroll: When nova creates port for instance there is no way to distinguish between those cases15:22
rameshg87rloo, yeah15:22
gridinvjroll: But in case of ironic, plugin should avoid to do some call to sdn controller.15:23
gridinvjroll: did you ever felt the need to be able to ditinguish between vm/bm cases?15:23
dtantsurrloo, shared lock is not a lock, it's just a get request to database15:23
rameshg87dtantsur, but nobody is supposed to modify anything while i have shared lock15:23
dtantsurrameshg87, in a non-atomic way - yes15:24
jrollgridinv: so, we solve this by not actually writing the configs until ironic says to write them in https://github.com/rackerlabs/ironic-neutron-plugin15:24
dtantsurrloo, rameshg87, https://github.com/openstack/ironic/blob/master/ironic/conductor/task_manager.py#L197-L20015:24
jrollgridinv: we have a 'commit' argument that defaults to False, ironic sends commit=True and then the config gets committed to the switch15:24
*** anderbubble has joined #openstack-ironic15:24
jrollgridinv: we also don't run ironic-neutron-plugin for virt things, only baremetal15:25
rameshg87dtantsur, oh15:25
*** alexpilotti has joined #openstack-ironic15:25
jrollgridinv: to be clear, when I say "we" here I mean rackspace, not ironic15:26
dtantsurrameshg87, rloo, actually, as shared lock is not a lock at all, we should not modify database even atomically while holding only it IMO15:26
rloodtantsur: thx. wondering now what i was thinking of...15:26
rameshg87rloo, then i think it nova-validate cannot fail during a power-state sync15:26
rameshg87s/nova-validate/node-validate15:26
rameshg87dtantsur, thanks15:26
rloodtantsur: https://github.com/openstack/ironic/blob/master/ironic/conductor/task_manager.py#L20915:26
rloodtantsur: that can happen if the the node wasn't locked15:27
dtantsurwell yeah...15:27
gridinvjroll: yes, i had a look at it. wanted to avoid changinng existing plugin data model.15:27
rameshg87rloo, so rloo it's a change of behaviour, right ?15:27
rameshg87rloo, that node-validate can fail if we do change to shared=False there15:28
rameshg87rloo, i mean today it doesn't fail (assuming)15:28
*** wuhg has quit IRC15:29
jrollI believe node-validate does fail if something else has a lock15:30
* jroll will check15:30
*** kkoski1 has joined #openstack-ironic15:31
*** kkoski has quit IRC15:31
* rloo wonders how/whether this discussion becomes moot when we implement VALIDAT* states15:31
jrolloops, rameshg87 is right, it doesn't fail today15:32
jrollVALIDAT* states??15:32
rameshg87brb15:32
rloojroll: http://specs.openstack.org/openstack/ironic-specs/specs/kilo/new-ironic-state-machine.html15:32
*** rameshg87 is now known as rameshg87-brb15:32
jrollrloo: oh, those. you should still be able to run node-validate at any time, though15:32
rloojroll: are our existing validate() calls different than doing the VALIDAT* stuff in the new state machine15:32
rloojroll: so after validating, passwords, etc, could still be changed.15:33
jrollrloo: AIUI, ENROLL -> MANAGEABLE requires validating the node15:33
jrollbut you may want to validate later15:33
jrollfor example, if you go back to MANAGEABLE and replace some hardware15:33
rloojroll: but you can't go to VALIDAT* from MANAGEABLE.15:34
rloojroll: so whatever happens, we'll still need to call the *validate()s before provisioning.15:34
jrollrloo: right, I don't think we should restrict the node-validate call to VALIDAT* states15:34
jrollrloo: for example, nova calls node-validate before deploying15:35
gridinvjroll: thanks, thought maybe something is going on nova side to make it easier.15:36
jrollgridinv: nope, no magic here :)15:36
rloojroll: well, we need to distinguish what GET ../nodes/validate means, vs PUT ../states/provision/target=validate15:37
jrollrloo: in hindsight, I have no idea why VALIDAT* is a state15:37
* jroll reads15:37
jrollrloo: though I'm thinking that PUT /states/provision?target=manage from ENROLL just implicitly puts the node through these validat* states15:38
rloojroll: we can always update the spec. But it does have an explicit 'validate' verb there.15:39
jrollrloo: ah15:39
jrollyeah, this seems weird to me15:39
rloojroll: well, the idea could be that someone enrolls a bunch of nodes, and we want them to explicitly say 'ok, i have provided all the info you need and i think they are ready to be managed'. so yeah, maybe 'manage' might be better than 'validate'.15:40
rloojroll: regardless, it is an explicit ack from the user that the nodes are ready to be managed.15:41
rloojroll: right now, we kind of guess, do stuff or not, based on whether we have the required info.15:41
jrollrloo: indeed, though 'manage' is the verb to go from ABAILABLE -> MANAGE15:41
rloojroll: you can use the same verb again, that isn't a problem.15:41
rloojroll: eg, we use 'done' and 'fail'.15:42
jrollah, true15:42
*** rameshg87-brb is now known as rameshg8715:43
rloojroll: it just seems murky if we can't 'guarantee' anything beyond VALIDATE. Eg, maybe we can't allow required driver_info properties to change after that, or only allow updates if the nodes are in eg 'enroll' state. dunno.15:44
rloojroll: but i guess i digressed. i'm not sure if this helps at all wrt the problem rameshg87 was discussing.15:45
jrollrloo: dunno, should be able to change things like deploy ramdisk without deleting the node from the db (the only way to get to ENROLL is to create a new node)15:45
* dtantsur is wondering when we are going to actually have ENROLL...15:46
rloojroll: well, we could change the code (we have the power!) to allow getting to ENROLL w/o deleting the node ;)15:46
jrollheh15:46
jrollrloo: I think that's the point of MANAGE. idk.15:46
*** lazy_prince has quit IRC15:47
rloojroll: for me, that goes back to what VALIDATE does, and what it means (if anything) after a node has been VALIDATEd.15:47
jrollrloo: right15:47
rloodtantsur: what does it mean to you, if we have nodes in ENROLL state?15:47
rloodtantsur: like, we could add ENROLL now, and then transition them all to MANAGEABLE right away.15:48
dtantsurthat confuses me as well actually15:48
* jroll does not care for about this ENROLL state much, mostly because he doesn't care about inspection15:48
dtantsur(and right now we're starting with available even and have to go one step back to be able to INSPECT)15:48
dtantsurjroll, ENROLL is not related to inspection at all15:49
*** rameshg87 has quit IRC15:49
dtantsuronly discoverd can work with nodes without IPMI credentials (provided a user can press the physical button)15:49
jrollI thought the point of ENROLL was so you could throw nodes at ironic and figure out the details later15:49
rloomaybe people can hash out/revisit the states at the summit ;)15:49
jrollrloo: /me cries15:50
rloojroll: ha ha. oh, sorry :-(15:50
dtantsurjroll, 1. create a node with driver only - ENROLL; 2. set IPMI credentials - MANAGEABLE; 3. inspect/add manually scheduling properties - AVAILABLE15:50
dtantsurthat's how I see it ^^^15:50
jrolldtantsur: ah. then I definitely don't care about ENROLL :P15:51
rloodtantsur: so, 1. create a node with driver only - ENROLL; 2. set IPMI credentials in node.driver_info, issue 'validate' API, VALIDAT*->MANAGEABLE; 3. issue 'inspect' API, INSPECT*->MANAGEABLE; 4. issue 'provide' API, CLEAN*->AVAILABLE15:53
dtantsurmakes sense15:53
rloodtantsur: based on our state machine spec.15:53
dtantsurI'm a bit worried that we're likely to end up with incomplete version in K..15:54
rloodtantsur: the only thing about the above, is that discussion we had awhile ago, where you were going to not lock a node, and allow it to have different provision states I think, while the inspection was happening.15:54
rloodtantsur: does it matter if all the states aren't implemented in K*?15:54
*** hj-hp has joined #openstack-ironic15:55
jrollgonna need a new spec for L15:55
jroll:P15:55
* jroll runs away15:55
*** BadCub has quit IRC15:55
dtantsurrloo, now the flow is: 1. create an empty node (AVAILABLE), 2. fill in IPMI creds (still AVAILABLE!), 3. issue MANAGE, 4. issue INSPECT, 5. issue PROVIDE15:56
dtantsura bit ugly, isn't it?15:56
rloodtantsur: oh15:56
*** hj-hp has quit IRC15:56
victor_lowtherGood morning, Ironic15:56
dtantsurvictor_lowther, morning15:57
rloodtantsur: so it would be good to get the external API in K, so people don't have to change how they enroll etc their nodes in the future15:57
NobodyCammorning victor_lowther :)15:57
rloomorning victor_lowther15:57
*** BadCub has joined #openstack-ironic15:58
*** hj-hp has joined #openstack-ironic16:01
*** ekarlso has quit IRC16:03
*** SpamapS has quit IRC16:03
*** SpamapS has joined #openstack-ironic16:04
*** ekarlso has joined #openstack-ironic16:07
*** ChuckC has joined #openstack-ironic16:08
jgrimmis diskimage-builder ironic-agent valid way to build IPA deploy kernel/ramdisk?16:10
jrollit is valid, but it is huge (as in it requires 3gb of RAM to even boot)16:11
jrollI highly recommend using the coreos builder: https://github.com/openstack/ironic-python-agent/tree/master/imagebuild/coreos16:11
jrolljgrimm: ^16:11
jgrimmjroll, ok.. yeah it seemed to work, but noticed imagebuild too16:11
jrollthere's also a tarball available of the latest build from master if you aren't doing customizations16:11
jgrimmjroll, long term will both continue to work?16:11
jgrimmjroll, well, i'm looking to get this working over on our power 8 boxes, so sort of lacking the coreos/docker atm16:12
jrolljgrimm: long term, I know the coreos builder will continue to work, no idea about DIB16:12
jrolloh :(16:12
jgrimmjroll, heh.. honestly haven't looked to see how bad it will be.. but DIB seemed like an easy first target16:13
jrolljgrimm: ironic with power 8 is interesting though :D16:13
*** ifarkas has quit IRC16:13
jgrimmjroll, it has IPMI and netboot.. so really the image building is the only snag16:13
*** JoshNang has joined #openstack-ironic16:14
devanandadtantsur: initial state sould be ENROLLED ...16:16
*** erwan_taf has joined #openstack-ironic16:16
dtantsuryeah, it should be, but it's not right now IIRC16:16
devanandadtantsur: you are correct16:16
devanandadtantsur: we can't change the default state for older clients tho, so this goes back to the earlier conversation about versioning certain changes16:17
dtantsurright16:17
devanandaeg, a client which passes the version >= X should get different behavior when enrolling nodes16:17
devanandaso we need version support in the client to land to be able totest ENROLLED16:18
dtantsurso much to do... :(16:20
*** ChuckC has quit IRC16:20
*** a1exhughe5 has joined #openstack-ironic16:20
*** athomas has quit IRC16:23
openstackgerritVladyslav Drok proposed openstack/ironic: Check UUID correctness for Glance images  https://review.openstack.org/15195116:24
*** anderbubble has quit IRC16:29
*** anderbubble has joined #openstack-ironic16:30
*** spandhe has joined #openstack-ironic16:30
*** alexpilotti has quit IRC16:31
dtantsurrloo, is it ok to approve https://review.openstack.org/#/c/159100/ with only one +2?16:32
dtantsurno, I"m not against, just checking :D16:32
rloodtantsur: oh geez. my bad.16:34
rloodtantsur: not sure what I was thinking. (Not thinking.) thx for pointing that out.16:34
*** athomas has joined #openstack-ironic16:34
dtantsurrloo, np)16:35
*** spandhe has quit IRC16:35
*** david-lyle_afk has quit IRC16:37
*** Nisha has joined #openstack-ironic16:38
*** gridinv has quit IRC16:40
openstackgerritVladyslav Drok proposed openstack/ironic: Fix nits for supporting non-glance images  https://review.openstack.org/16073216:43
openstackgerritDmitry Tantsur proposed stackforge/ironic-discoverd: Add python-openstackclient plugin for ironic-discoverd  https://review.openstack.org/15744816:44
*** rameshg87 has joined #openstack-ironic16:45
*** rameshg87 is now known as rameshg87-limite16:45
*** rameshg87-limite is now known as rameshg8716:45
rameshg87JoshNang, you around ?16:45
JoshNango/16:45
rameshg87hey16:45
rameshg87JoshNang, can we talk about the zap thing ?16:45
JoshNangso i thought on how to boot the agent16:46
rameshg87okay, and how is it ?16:46
JoshNangthe agent driver will already be overriding execute_clean_step. if it detects the agent isn't booted, it'll boot the agent, and return that the command is going to be async. when the agent first checks in, it'll start executing that first step.16:46
JoshNangthat won't power the agent off again at the end though16:47
rameshg87JoshNang, so ironic would never know what all are the clean steps that agent executes ?16:48
JoshNangit will, right before it starts executing16:48
openstackgerritRamakrishnan G proposed openstack/ironic: Add driver interface for RAID configuration  https://review.openstack.org/15523016:48
*** mtanino has joined #openstack-ironic16:49
rameshg87JoshNang, so what will get_clean_steps return ?16:49
JoshNangwhen the conductor does get_clean_steps, the agent driver will ask the agent for the steps and return those, and then those will be mixed in and save to node.driver_internal_info['clean_steps']16:49
rameshg87JoshNang, but conductor does get_clean_steps before executing the first step, right ?16:50
* rameshg87 opens the cleaning review16:50
*** jistr has quit IRC16:50
JoshNangcorrect16:50
rameshg87JoshNang, so when are we actually booting the agent ?16:51
JoshNangah i see what you're saying :P16:51
*** killer_prince has joined #openstack-ironic16:51
*** killer_prince is now known as lazy_prince16:51
openstackgerritDmitry Tantsur proposed stackforge/ironic-discoverd: Add python-openstackclient plugin for ironic-discoverd  https://review.openstack.org/15744816:51
rameshg87JoshNang, i had one idea in mind but it conflicts with yours16:52
rameshg87JoshNang, conflicts yours that agent should return the clean steps16:52
JoshNangwell mine won't actually work :) so do tell16:52
rameshg87JoshNang, we can define the agent zap/clean method in ironic within an interface (deploy, management)16:53
rameshg87JoshNang, we decorate it with @boot_agent16:54
*** jcoufal has quit IRC16:54
rameshg87JoshNang, that decorator will check if agent is booted and heartbeating16:54
rameshg87JoshNang, if it is, it will call the method which will inturn send the command to the agent16:54
rameshg87JoshNang, if it isn't, it will save the method name in driver internal info16:54
rameshg87JoshNang, and return16:55
JoshNangthat takes away a ton of the flexibility of inband cleaning/zapping.16:55
rameshg87JoshNang, when agent boots and starts heartbeating, we call the method16:55
*** erwan_taf has quit IRC16:55
trowndtantsur: I am interested in the python-openstackclient, is there other client features to implement for discoverd outside of the patch 157448?16:55
rameshg87JoshNang, yeah, that would require ironic to know (in code) what all clean/zap methods are available16:56
dtantsurtrown, you may overtake 157448 if you want to. It lacks testing and API version support (e.g. http://docs.openstack.org/developer/python-openstackclient/plugins.html)16:56
dtantsurtrown, if you don't want to, this patch is missing 2 arguments for setting IPMI credentials16:57
JoshNangright. i think the simpler answer is "power on the node before cleaning"16:57
dtantsurtrown, these: https://github.com/stackforge/ironic-discoverd/blob/master/ironic_discoverd/client.py#L35 you can stack a patch on top of mine adding them16:57
dtantsurwdyt?16:57
rameshg87JoshNang, yeah if node is powered on when cleaning starts, it's much simpler16:58
rameshg87JoshNang, your idea will work straight away16:58
trowndtantsur: ya, I can do that16:58
rameshg87JoshNang, why don't we check through all interfaces if some clean task is inband16:58
rameshg87JoshNang, and if so boot the agent even before cleaning starts16:59
trowndtantsur: that being make a patch for the ipmi credential args16:59
*** a1exhughe5 has quit IRC16:59
JoshNangi think that's a good idea, but i'm going to go with the simpler "just power it on" for now, and loop back either at the end of the cycle/next cycle16:59
dtantsurtrown, ack cool17:00
rameshg87JoshNang, okay17:00
rameshg87JoshNang, and for zapping ?17:00
rameshg87JoshNang, because zapping is invoked from manageable state, right ?17:00
rameshg87JoshNang, same thing ? just power on the node ?17:00
JoshNangcorrect, the same applies.17:00
rameshg87JoshNang, okay makes sense for now17:01
rameshg87JoshNang, we can better this in the next attempt17:01
JoshNang++17:01
JoshNangand thanks for pointing that out. i definitely would have missed it. i'm so used to the agent always running17:01
dtantsursee you tomorrow folks17:01
rameshg87JoshNang, :)17:01
rameshg87dtantsur, good night17:01
dtantsurtrown, don't hesitate to make 157448 work while I'm out :) because now it does not17:02
dtantsurg'night!17:02
*** dtantsur is now known as dtantsur|afk17:02
trowndtantsur|afk: g'night17:02
rameshg87JoshNang, so things look much easy now17:03
*** andreykurilin_ has joined #openstack-ironic17:03
rameshg87JoshNang, so in do_node_clean()17:03
rameshg87JoshNang, change the state to CLEANING and power on the node17:03
rameshg87JoshNang, when agent starts heartbeating issue an rpc to start the cleaning again17:04
rameshg87JoshNang, this time it will find node is powered on and agent is heartbeating17:04
rameshg87JoshNang, and it will start with the clean steps17:04
rameshg87JoshNang, makes sense ?17:04
openstackgerritVladyslav Drok proposed openstack/ironic: Fix nits for supporting non-glance images  https://review.openstack.org/16073217:05
JoshNangrameshg87: correct. i'll have to add some thing to handle the DIB pxe disk17:05
JoshNang*pxe ramdisk17:05
rameshg87JoshNang, but we wouldn't support inband operations by pxe ramdisk, right ?17:05
JoshNangi'm going to look at erasing the disk via iscsi17:06
JoshNangand it would never heartbeat back..17:06
rameshg87JoshNang, okay17:07
rameshg87JoshNang, so i am ready to take up something if you want to start looking at something else17:07
JayFJoshNang: given iscsi is moving to the IPA ramdisk; should you even work on supporting cleaning in the bash ramdisk?17:08
JoshNangJayF: hmm that would be preferable17:08
rameshg87JayF, +1, we might soon deprecate pxe ramdisk in a release, right ?17:10
rameshg87i mean bash ramdisk17:10
JoshNangworks for me!17:11
*** alexpilotti has joined #openstack-ironic17:11
*** andreykurilin_ has quit IRC17:12
*** romcheg has quit IRC17:13
*** andreykurilin_ has joined #openstack-ironic17:13
*** russell_h has joined #openstack-ironic17:14
*** russell_h has quit IRC17:14
*** russell_h has joined #openstack-ironic17:14
*** jjohnson2 has quit IRC17:15
*** chlong has quit IRC17:17
rameshg87JoshNang, just let me know if you would like to offload any of ironic-zap related part to me :)17:17
JoshNangrameshg87: sure! let me see how far I get today (it's all I'm working on)17:17
rameshg87JoshNang, my spec depends on ironic inband zapping, i would be more than happy to help17:17
rameshg87JoshNang, great..thanks17:18
*** Nisha_away has joined #openstack-ironic17:18
rameshg87Nisha, you around ?17:19
*** Nisha has quit IRC17:19
rameshg87vdrok, https://review.openstack.org/#/c/160732/4/doc/source/deploy/install-guide.rst17:21
rameshg87vdrok, doesn't it assume that we use single conductor for standalone setup ?17:21
*** Nisha has joined #openstack-ironic17:22
*** Nisha_away has quit IRC17:23
vdrokrameshg87, I haven't tested it, but I think it should work with multiple conductors17:23
*** ChuckC has joined #openstack-ironic17:23
rameshg87vdrok, if there are multiple conductors, each node may be deployed in any of the conductor17:24
rameshg87vdrok, so the tftp_server entry of dhcp option is not predictable and needs to be changed dynamically17:24
rameshg87vdrok, right ?17:24
vdrokrameshg87, hm, yeah it seems so17:25
*** rameshg87_ has joined #openstack-ironic17:27
*** hj-hp has quit IRC17:29
*** rameshg87 has quit IRC17:29
*** hj-hp has joined #openstack-ironic17:30
*** Nisha_away has joined #openstack-ironic17:30
*** Nisha has quit IRC17:32
*** vdrok is now known as vdrok_afk17:33
*** rameshg87_ is now known as rameshg8717:34
rameshg87vdrok_afk, okay17:34
vdrok_afkrameshg87, so you think it should be mentioned there?17:34
*** Nisha_away has quit IRC17:34
rameshg87vdrok_afk, yeah may be a note if you feel it's valid :)17:34
*** Nisha_away has joined #openstack-ironic17:35
rameshg87vdrok_afk, beceause i haven't tried standalone + multiple conductors without neutron17:35
*** anderbubble_ has joined #openstack-ironic17:36
vdrok_afkvdrok_afk, yeah, me too, but it seems that youre correct, I always miss something :(17:36
vdrok_afkoops, rameshg87 ^17:36
*** anderbubble has quit IRC17:37
*** anderbubble_ is now known as anderbubble17:37
rameshg87vdrok_afk, :)17:37
*** kkoski1 has quit IRC17:42
vdrok_afkrameshg87, although I think it will work with multiple conductors if there are no conductors that enable same driver17:43
rameshg87vdrok_afk, yeah in that case it might17:44
rameshg87vdrok_afk, but then if 2 conductors don't run same driver - purpose of multiple conductor environment is defeated :)17:44
rameshg87vdrok_afk, because nodes can't be taken over by another conductor17:44
vdrok_afkrameshg87, yup, but load can be reduced?17:45
rameshg87vdrok_afk, yeah that's correct17:46
*** romcheg has joined #openstack-ironic17:46
openstackgerritVladyslav Drok proposed openstack/ironic: Fix nits for supporting non-glance images  https://review.openstack.org/16073217:52
*** romcheg1 has joined #openstack-ironic17:52
*** romcheg has quit IRC17:52
vdrok_afkrameshg87, as for your comment about manager.py here https://review.openstack.org/#/c/151951/ - invalid parameter value will be thrown on driver.deploy.validate step17:55
vdrok_afkrameshg87, and will be converted to InstanceDeployFailure17:56
rameshg87vdrok_afk, that assumes that deploy driver does call is_glance_image17:56
rameshg87vdrok_afk, but what if it doesn't ?17:56
*** spandhe has joined #openstack-ironic17:56
rameshg87vdrok_afk, can we assume that ? :)17:57
vdrok_afkrameshg87, all the current drivers do, but i see, will fix it also, thanks17:57
rameshg87vdrok_afk, idk, may be better get other's thoughts as well17:57
* rameshg87 goes to sleep17:59
rameshg87vdrok_afk, i will check it tomorrow, just let me know whatever you decide ..18:00
*** jlvillal_sc has joined #openstack-ironic18:00
rameshg87good night ironic18:00
*** rameshg87 has quit IRC18:00
*** hj-hp has quit IRC18:01
NobodyCamnight rameshg8718:01
*** jlvillal_sc is now known as jlvillal_pdx18:03
*** jlvillal_pdx is now known as jlvillal_trainin18:04
*** Marga_ has joined #openstack-ironic18:07
*** Marga_ has quit IRC18:07
*** Marga_ has joined #openstack-ironic18:08
*** harlowja_away is now known as harlowja_18:12
* jlvillal_trainin prepares for two days of training on OpenStack....18:13
NobodyCamjlvillal_trainin: cool18:13
NobodyCamand you have many nicks now18:13
jlvillal_traininNobodyCam: I hope so.  it is done by Mirantis.  I can use the training!18:13
NobodyCam:)18:13
jlvillal_traininNobodyCam: Yeah, I need to setup an IRC bouncer one of these days...18:14
NobodyCam:)18:14
jlvillal_traininI heard jroll uses one.  I wonder which one.18:14
devanandajlvillal_trainin: irssi + google notifier + screen18:14
devanandais what I use18:14
NobodyCamscreen + cloud instance for me18:15
jlvillal_trainindevananda: Thanks.  I will look into it.18:15
jlvillal_traininNobodyCam: Thanks.18:15
jrolljlvillal_trainin: I use znc. also tmux + weechat18:15
jlvillal_traininjroll: I'm already a tmux fan :)  I've been using Chatzilla for years.  But when Firefox crashes so does Chatzilla :(18:16
*** alexpilotti_ has joined #openstack-ironic18:16
*** alexpilotti has quit IRC18:16
*** alexpilotti_ is now known as alexpilotti18:16
*** MattMan has quit IRC18:17
*** hj-hp has joined #openstack-ironic18:18
jrolljlvillal_trainin: ya, I'm a huge fan of weechat18:18
jlvillal_traininjroll: Thanks!18:19
jroll:)18:19
*** andreykurilin_ has quit IRC18:22
*** andreykurilin_ has joined #openstack-ironic18:23
*** achanda has joined #openstack-ironic18:23
openstackgerritChris Krelle proposed openstack/ironic: Check temp dir is writable  https://review.openstack.org/16038318:23
*** athomas has quit IRC18:26
*** hj-hp has quit IRC18:41
*** ijw has joined #openstack-ironic18:44
openstackgerritJosh Gachnang proposed openstack/ironic: Fix nits in cleaning  https://review.openstack.org/16059918:48
*** ijw has quit IRC18:48
*** Nisha_away has quit IRC18:49
adam_gis the removal of 'rootfstype=ramfs' @ https://review.openstack.org/#/c/155728/16/ironic/drivers/modules/pxe_config.template required to boot the agent ramdisk on a machine with sufficient memory?18:54
NobodyCamadam_g: I've seen that in a patch18:54
adam_git was removed from our default params @ 15572818:55
adam_gnoticed i cant boot my existing ramdisk anymore without re-adding it or bumping ram18:55
*** achanda has quit IRC18:57
jrolladam_g: I think lucas put it in dsg where needed18:57
jrollor something18:57
*** achanda has joined #openstack-ironic18:57
adam_gyeah, the VM memory  got bumped back up to 1024 for one job18:58
adam_gbut the job where it uses the default (512MB) is failing18:58
adam_gi just dont know if removal of that parameter is required to use the IPA ramdisk, or if we can leave it for both18:58
jrollI think it was iirc18:58
jrollwhich job uses the default?18:59
adam_gthe parallel job, which im going to soon propose we drop... but more concerning is that the devstack defaults no longer work18:59
adam_gill wait for lucas to get back and see what he thinks19:00
*** lazy_prince has quit IRC19:00
jrolladam_g: yeah, he's back tomorrow I think19:01
*** gridinv has joined #openstack-ironic19:06
NobodyCambrb19:08
*** andreykurilin_ has quit IRC19:08
*** kkoski has joined #openstack-ironic19:12
*** hj-hp has joined #openstack-ironic19:14
*** hj-hp has quit IRC19:27
*** killer_prince has joined #openstack-ironic19:35
*** killer_prince is now known as lazy_prince19:35
*** lsmola has quit IRC19:36
*** dtantsur|afk has quit IRC19:36
*** ijw has joined #openstack-ironic19:38
*** dtantsur has joined #openstack-ironic19:41
*** ijw has quit IRC19:42
NobodyCambrb again19:43
*** ijw has joined #openstack-ironic19:45
*** lsmola has joined #openstack-ironic19:49
*** ijw has quit IRC19:49
*** romcheg1 has quit IRC19:51
*** Marga_ has quit IRC19:54
*** Marga_ has joined #openstack-ironic19:54
* NobodyCam is back20:03
*** ChuckC has quit IRC20:05
*** anderbubble has quit IRC20:10
NobodyCamlintan: are you by chance around?20:11
*** Marga_ has quit IRC20:15
*** Marga_ has joined #openstack-ironic20:16
*** erwan_taf has joined #openstack-ironic20:19
*** jlvillal_trainin has quit IRC20:24
*** jlvillal_pdx has joined #openstack-ironic20:29
*** achanda has quit IRC20:38
*** mrda-away is now known as mrda20:44
mrdaMorning Ironic20:44
NobodyCammorning mrda20:44
mrdahey NobodyCam20:44
* NobodyCam 's house has sprung a leak. and it needs to be fixed. bbiab20:45
*** ijw has joined #openstack-ironic20:46
*** achanda has joined #openstack-ironic20:46
rloomorning mrda20:49
*** foexle has quit IRC20:50
*** ijw has quit IRC20:51
openstackgerritJosh Gachnang proposed openstack/ironic-python-agent: Fix incorrect IPA log message  https://review.openstack.org/16097720:55
JoshNangJayF: ^20:55
*** ijw has joined #openstack-ironic20:58
trowndo new features for the client library require specs?20:59
trownI was thinking of adding a plugin for the openstackclient to python-ironicclient21:00
trownlike: https://github.com/stackforge/python-congressclient/tree/master/congressclient/osc21:00
jrollnot usually21:00
jrollthat seems fine to me, to not have a spec21:01
trownsweet21:01
jrollmorning mrda :)21:03
mrdahey jroll21:05
NobodyCamwow gate really slow today :-p21:06
*** gridinv has quit IRC21:07
*** gridinv has joined #openstack-ironic21:08
mrda:(21:12
mrdaHow many days until release? :)21:12
NobodyCam:-p21:12
*** wshao has joined #openstack-ironic21:25
*** ChuckC has joined #openstack-ironic21:26
*** wshao has quit IRC21:28
JayFIf I could get reviews on this simple change, I'd really appreciate it -> https://review.openstack.org/#/c/159986/21:37
JoshNangJayF: sorry, thought I had already reviewed that :/21:39
JayFit's alright21:39
*** ndipanov has quit IRC21:39
JayFI have been highly lax on upstream reviews recently, I deserve to wait21:39
*** wshao has joined #openstack-ironic21:42
*** EmilienM has quit IRC21:44
*** EmilienM has joined #openstack-ironic21:44
*** dprince has quit IRC21:49
NobodyCamlol nice 3 and a half hours to hit a gate failure... happy happy joy joy21:50
jrollJayF: +a21:50
*** mtanino has quit IRC21:53
*** jgrimm is now known as zz_jgrimm21:57
NobodyCamjust looking at 145690, has anyone had to use --nic <net-id> when nova booting before?21:58
*** wshao has quit IRC21:58
*** pelix has quit IRC21:58
*** mtanino has joined #openstack-ironic21:59
*** achanda has quit IRC22:01
*** andreykurilin_ has joined #openstack-ironic22:03
*** zz_jgrimm is now known as jgrimm22:03
*** achanda has joined #openstack-ironic22:07
NobodyCamrloo: got a second for a quick question on a review? 15910022:10
rlooNobodyCam: in a meeting but shoot22:11
NobodyCami may have just answered my own question. but it was that I had a fear that the node_iter would affect a take over22:12
rlooNobodyCam: still have the fear?22:13
*** devlaps has joined #openstack-ironic22:13
*** devlaps has quit IRC22:13
NobodyCamless so now.. but still looking22:13
NobodyCamin to it22:13
openstackgerritJosh Gachnang proposed openstack/ironic-python-agent: Add dispatch to all managers  https://review.openstack.org/16100122:14
mrdarloo: I agree with your comment about a spec being worthwhile for specifying microversion behaviour (ref 155624)22:17
rloomrda: at the end of the day, we need to document whatever is decided. if folks are fine not having a spec to help with deciding, that is fine since it is so late in the game. just want to make sure we all understand/agree/whatever.22:18
mrdarloo: I'm concerned about 6 months time when we've all forgotten what we agreed on :)  I think some documentation in this space is not a bad thought.22:19
rloomrda: if that is wrt the python-ironicclient change, even nova's spec didn't help me understand how the client would be changed.22:19
rloomrda: it is on my list todo, if no one else wants to document it ;)22:19
mrdarloo: Happy to assist / co-auth, or even just give it a thorough review22:21
rloomrda: i'd be extremely happy if you auth-d it yourself ;)22:21
mrdalol22:21
rloomrda: but if you don't want to, thx for the assist :-)22:21
mrdarloo: let's see if anything appears while you're sleeping overnight22:22
mrdarloo: so you think a cut-down version of this - https://github.com/openstack/nova-specs/blob/master/specs/kilo/approved/api-microversions.rst - is what is needed?  Making sure we specify server/client behaviour?22:25
*** wshao has joined #openstack-ironic22:25
rloomrda: I've seen two docs, that spec and the developer doc. sec.22:25
rloomrda: docs.openstack.org/developer/nova/devref/api_microversions.html -- once we have things in place...22:26
mrdaand there was also this: https://etherpad.openstack.org/p/kilo-nova-microversions22:27
rloomrda: the ethernet pad, I didn't know about. thx I think ;)22:28
mrdaI know the lead developer of the nova work - he's in the same city as me - so I'll catch up with him and discuss too22:29
jroll21:58:16        NobodyCam | just looking at 145690, has anyone had to use --nic <net-id> when nova booting before?22:31
jroll^ booting with admin in devsatck will do this22:31
lifelessjroll: if you are adin you can see all networks, so you'll get an error about nova not being able to guess otherwise22:31
jrolllifeless: right22:31
openstackgerritMerged openstack/ironic-python-agent: Enable setting standalone mode via APARAMS  https://review.openstack.org/15998622:32
*** anderbubble has joined #openstack-ironic22:32
mrdarloo: Ok, I'll write something up today22:33
*** wshao has quit IRC22:34
*** Marga_ has quit IRC22:35
devanandaso on the client change, i dont think the nova spec had much on it either?22:35
rloodevananda: yes, that's my understanding too. at least, i looked and I didn't see much there.22:36
devanandaafter chatting with a couple folks and thinking on the change naohirot proposed, I'm pretty strongly of hte opinion that22:38
devanandathe client should, by default, specify EXACTLY the latest version it supports22:38
mrdadevananda: I think so22:39
*** kkoski has quit IRC22:39
devanandamy comment a week or so ago that we need to have "latest" support in the server is a convenient work around thta Nova defined. it helps developers, but I think it will hurt users if that's what the client passes in its request by default22:39
devanandai didn't realize it at the time, though22:39
mrdaIf we went down the whole semver thing for versioning, then we could handle this sort of mismatch better22:40
mrdai.e. we would talk about incompatible changes22:41
*** kkoski has joined #openstack-ironic22:41
*** kkoski has quit IRC22:41
mrdabut the way things are, I think we need to have the client's maximum version being the ceiling, and the default, unless otherwise specified22:41
*** kkoski has joined #openstack-ironic22:42
devanandamrda: i dont see how semver would change that22:42
*** anderbubble has quit IRC22:44
lifelessagreed, 'latest' is for devs, not users22:44
mrdaWell, right now, we just increment 1.X.  We probably won't ever go 2.X.22:44
devanandalifeless: thus it is not a good client default22:45
devanandamrda: 2.x means we change the URI to /v2/22:45
mrdaCorrect.  What's the trigger for that?  A backwards incompatible change?22:45
devanandacorrect22:45
mrdaSo if we removed, say, uuid as a (primary) field and indexed nodes on something else, then we would make that kind of change?22:46
rlooi think the client's default version (if the user doesn't specify) should be the same as the API default. Which is the minimum version. why do you think the client should default to the max version supported?22:46
devanandamrda: an older client must continue to be able to talk to the server, within the same API major version, if the server supports that major version22:46
mrda(not that we ever would so that in particular :)22:46
lifelessoperationally doing a major API bump is super hard - see nova V3 right?22:46
devanandarloo: if the client supports newer functionality (eg, logical names) and so does the server, then-and-only-then it should be exposed, by default, to users22:47
mrdarloo: Because that would be the latest version, with the latest functionality, which is what everyone would want unless otherwise specified22:47
mrdalifeless: Agreed.  I don't think we'll ever do it (happy to be proved wrong)22:47
rloomrda, devananda: but given your logic, then the API request should default to the same max version too?22:47
devanandarloo: if the client defaults to passing the minimum version (1.1) then users will either: never see newer features, or: be required to specify exactly what version they want, which is bonkers. users should never have to know that22:47
devanandarloo: no. server API should default requests to min version, because we need t osupport older clients that did not pass any version22:48
mrdarloo: I think it should default to the latest version that both the client and server supports22:48
rloodevananda: so if a user uses the API directly...?22:48
devanandarloo: if they use curl, they can pass what ever header they want22:48
devanandarloo: if they write another client, ditto -- it's on them22:48
rloodevananda: I guess I don't see how users are different if they use the API vs the client.22:48
devanandarloo: they're not22:48
rloodevananda: if the user uses the client, they can pass whatever version they want22:48
mrdadevananda: agreed.  And if they don't specify anuything, they get 1.1 (aka Juno)22:49
*** mjturek1 has quit IRC22:49
devanandarloo: sure. they CAN. but we should not REQUIRE the user to know what precise version to send22:49
rloodevananda: but we REQUIRE the user to do that if they use the API.22:49
devanandathe client actually supports some version greater than 1.1. it should request the server to provide that API22:49
devanandano more and no less22:49
rloodevananda: what am I missing?22:49
devanandarloo: no we dont22:49
devanandarloo: a client MAY specify a version header. in the absence of one, the server provides the minimum version supported22:50
rloodevananda: if the API request doesn't include the version header, they get the minimum. so the version needs to be specified.22:50
mrdarloo: they can specify 'latest' if they are using the REST API via curl, and hence not need to know the specific version22:50
devanandarloo: a user MAY override their client library's default, but in the absence of that override, the client library SHOULD inform the server of its greatest-supported version22:50
*** openstackgerrit has quit IRC22:51
*** anderbubble has joined #openstack-ironic22:52
*** openstackgerrit has joined #openstack-ironic22:52
rloodevananda: can't focus on this and the meeting i'm in. there is something I don't grok about the diff between a client (that issues an API request for the user) vs a user that issues an API request directly.22:52
devanandarloo: yea, i think it's in our terminology. I'm using "client (library)" to refer to python-ironicclient22:52
devanandarloo: and whether or not python-ironicclient should have a default, and what that default should be22:53
*** andreykurilin_ has quit IRC22:55
mrdaSo it looks like it might be useful to write this up.  I'll put something together today.22:55
devanandamrda: ++ thanks much!22:55
devanandaalso this will be broadly useful as other projects start to implement it22:56
mrdanp22:56
devanandai was thinking of doing a blog post on it, too22:56
mrdacool22:56
devanandabut hten, i'm thinking of that a lot ... and not finding time ...22:56
*** ijw has quit IRC22:57
*** ijw has joined #openstack-ironic23:00
* mrda wanders off to another meeting23:00
*** ijw_ has joined #openstack-ironic23:01
*** ijw has quit IRC23:05
*** spandhe has quit IRC23:05
rloomeeting over, gotta go. will read mrda's write up. thx mrda!23:06
NobodyCamhave a good night rloo23:07
*** absubram has quit IRC23:08
NobodyCamdevananda: do we need this bug taged to k3? https://bugs.launchpad.net/ironic/+bug/141793923:16
openstackLaunchpad bug 1417939 in Ironic "Switch to parallel periodic tasks once they're supported" [High,Triaged]23:16
jrollNobodyCam: depends on oslo23:17
NobodyCamI don't have good feeling that spec will land... ICBW23:18
devanandaspec?23:18
NobodyCamthat called out on the bug23:18
devanandathe spec landed and was implemented in ironic23:18
NobodyCamnot in oslo23:18
devanandaoh23:18
NobodyCamthats why I asked about the bug targeted at k323:19
devanandadhellmann: any sense on https://review.openstack.org/#/c/134303/ -- spec in oslo, which we're depending on landing at some point23:19
*** alexpilotti has quit IRC23:19
devanandadhellmann: i believe we've landed a work-around in ironic for the lack of support for this in oslo, but it would be great to have an end in sight, even if thta's not kilo-323:20
*** spandhe has joined #openstack-ironic23:24
*** jlvillal_ has joined #openstack-ironic23:30
*** kkoski has quit IRC23:30
*** chlong has joined #openstack-ironic23:31
*** anderbubble has quit IRC23:31
devanandawhy do we have any RPC methods that are not asynchronous???23:38
NobodyCamrloo: when your back I believe the -2 can be removed from: https://review.openstack.org/14880423:42
devanandaI'm looking at you, set-boot-device23:46
*** achanda has quit IRC23:49
*** jgrimm is now known as zz_jgrimm23:50
rlooNobodyCam: wrt 148804. Do we have a driver that does inspection?23:52
devanandaalso, wy does that return 204 ?23:53
devanandahuh23:53
devanandawell, that's awkwar23:53
devanandaawkward23:53
*** jlvillal_ has quit IRC23:54
NobodyCamrloo: I was looking at https://review.openstack.org/#/q/topic:bp/ironic-node-properties-discovery,n,z23:54
rlooNobodyCam: I'll remove the -2 cuz I can't think now. I think that might need to be combined with the microversioning, client support of min/max versions, but not sure.23:55
NobodyCamrloo: please only remove if your comfortable doing so23:56
rlooNobodyCam: I removed it, but can always put it back later unless it gets merged ;)23:56
NobodyCam:)23:56
*** achanda has joined #openstack-ironic23:56
NobodyCamdevananda: whats returning 204?23:57
rlooNobodyCam: gotta go out and shovel snow now, most likely won't be back til tomorrow. ciao.23:57
*** rloo is now known as rloo_afk23:57
NobodyCamhave a good night rloo_afk :)23:57
*** jlvillal_ has joined #openstack-ironic23:57
*** jlvillal_ has quit IRC23:57
*** jlvillal_ has joined #openstack-ironic23:58
*** jlvillal_ has quit IRC23:58
devanandaNobodyCam: set-node-boot-device23:58
devanandait's synchronous call to the BMC23:58
devanandathe API returns status code 204 if the BMC completedthe request23:59
devanandawe should NEVER have the APi blocking on a BMC call. EVAR23:59
* devananda grumps23:59

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