)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"adb8a05bb0c6b07be7822dcdb0c57039df207c89","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add an m3 host generator function"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This PS has a function which constructs a collection of Metal3 BareMetalHost"},{"line_number":10,"context_line":"resources, along with associate configuration Secrets."},{"line_number":11,"context_line":"It solves for a couple of things:"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"1. pulling the nitty gritty details for generating BMH into one reusable place,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":18,"id":"bf51134e_48c1ab80","line":10,"range":{"start_line":10,"start_character":22,"end_line":10,"end_character":31},"updated":"2020-07-01 22:21:01.000000000","message":"nit: associated?","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"26398cf3eda0ee2f216263e3704118c8922d7cd6","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Add an m3 host generator function"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This PS has a function which constructs a collection of Metal3 BareMetalHost"},{"line_number":10,"context_line":"resources, along with associate configuration Secrets."},{"line_number":11,"context_line":"It solves for a couple of things:"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"1. pulling the nitty gritty details for generating BMH into one reusable place,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":18,"id":"bf51134e_155fb8e5","line":10,"range":{"start_line":10,"start_character":22,"end_line":10,"end_character":31},"in_reply_to":"bf51134e_48c1ab80","updated":"2020-07-02 20:04:42.000000000","message":"Yep :)","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"}],"manifests/function/hostgenerator-m3/README.md":[{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"adb8a05bb0c6b07be7822dcdb0c57039df207c89","unresolved":false,"context_lines":[{"line_number":18,"context_line":"* Supply a `common-networking-catalogue`, which outlines things that are"},{"line_number":19,"context_line":"  typically common across hosts in a site, such as networking interfaces,"},{"line_number":20,"context_line":"  DNS servers, and other networking info."},{"line_number":21,"context_line":"  Example: `manifests/type/gating/shared/catalogues/common-networking.yaml`"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* Supply a `host-catalogue`, which contains host-specific data, such as"},{"line_number":24,"context_line":"  IP addresses and BMC information."}],"source_content_type":"text/x-gfm","patch_set":18,"id":"bf51134e_08a973de","line":21,"range":{"start_line":21,"start_character":12,"end_line":21,"end_character":40},"updated":"2020-07-01 22:21:01.000000000","message":"Is there a specific reason to put this site-level common networking catalogue under the \u0027type\u0027 dir? Why not under site/test-site/shared?\nI guess I\u0027m asking for the exact difference between a site and a type, are they overlapping or disjoint?","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"26398cf3eda0ee2f216263e3704118c8922d7cd6","unresolved":false,"context_lines":[{"line_number":18,"context_line":"* Supply a `common-networking-catalogue`, which outlines things that are"},{"line_number":19,"context_line":"  typically common across hosts in a site, such as networking interfaces,"},{"line_number":20,"context_line":"  DNS servers, and other networking info."},{"line_number":21,"context_line":"  Example: `manifests/type/gating/shared/catalogues/common-networking.yaml`"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* Supply a `host-catalogue`, which contains host-specific data, such as"},{"line_number":24,"context_line":"  IP addresses and BMC information."}],"source_content_type":"text/x-gfm","patch_set":18,"id":"bf51134e_5521309f","line":21,"range":{"start_line":21,"start_character":12,"end_line":21,"end_character":40},"in_reply_to":"bf51134e_08a973de","updated":"2020-07-02 20:04:42.000000000","message":"Sites are like instantiations of a type -- there are two pieces to splitting them up like this is to cut down on different sites that are essentially the same, aside from things like IP addresses.  Cuts down on duplication across site definitions.\n\nFrom a kustomize perspective, sites would be pulling the type-level catalogues in (along with other k8s widgets).","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"b4e9568e1125c3a513ff608447cfa31f2268f12b","unresolved":false,"context_lines":[{"line_number":18,"context_line":"* Supply a `common-networking-catalogue`, which outlines things that are"},{"line_number":19,"context_line":"  typically common across hosts in a site, such as networking interfaces,"},{"line_number":20,"context_line":"  DNS servers, and other networking info."},{"line_number":21,"context_line":"  Example: `manifests/type/gating/shared/catalogues/common-networking.yaml`"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* Supply a `host-catalogue`, which contains host-specific data, such as"},{"line_number":24,"context_line":"  IP addresses and BMC information."}],"source_content_type":"text/x-gfm","patch_set":18,"id":"bf51134e_8079c830","line":21,"range":{"start_line":21,"start_character":12,"end_line":21,"end_character":40},"in_reply_to":"bf51134e_5521309f","updated":"2020-07-02 21:57:06.000000000","message":"Ah! I see, that makes it totally clear.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"adb8a05bb0c6b07be7822dcdb0c57039df207c89","unresolved":false,"context_lines":[{"line_number":27,"context_line":"* Supply a `host-generation-catalogue` for each `phase` that needs to"},{"line_number":28,"context_line":"  deploy one or more BMHs.  This catalogue simply lists the specific"},{"line_number":29,"context_line":"  hosts that should be deployed during that phase."},{"line_number":30,"context_line":"  Example: `manifests/site/test-site/ephemeral/hostgenerator/host-generation.yaml`"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"* If any per-host changes need to be made, they can be layered on top as"},{"line_number":33,"context_line":"  site- or phase-specific Kustomize patches against the generated"}],"source_content_type":"text/x-gfm","patch_set":18,"id":"bf51134e_48936ba4","line":30,"range":{"start_line":30,"start_character":46,"end_line":30,"end_character":81},"updated":"2020-07-01 22:21:01.000000000","message":"There\u0027s an \"/ephemeral/boostrap/hostgenerator/host-generation.yaml\" and \"/ephermeral/controlplane/hostgenerator/host-generation.yaml\". Maybe this reference needs to be fixed? Like, do we mean both of these catalogues, or any one?\nI think we mean more like an \"/ephemeral/*/hostgenerator/host-generation.yaml\"","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"26398cf3eda0ee2f216263e3704118c8922d7cd6","unresolved":false,"context_lines":[{"line_number":27,"context_line":"* Supply a `host-generation-catalogue` for each `phase` that needs to"},{"line_number":28,"context_line":"  deploy one or more BMHs.  This catalogue simply lists the specific"},{"line_number":29,"context_line":"  hosts that should be deployed during that phase."},{"line_number":30,"context_line":"  Example: `manifests/site/test-site/ephemeral/hostgenerator/host-generation.yaml`"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"* If any per-host changes need to be made, they can be layered on top as"},{"line_number":33,"context_line":"  site- or phase-specific Kustomize patches against the generated"}],"source_content_type":"text/x-gfm","patch_set":18,"id":"bf51134e_355bdc2e","line":30,"range":{"start_line":30,"start_character":46,"end_line":30,"end_character":81},"in_reply_to":"bf51134e_48936ba4","updated":"2020-07-02 20:04:42.000000000","message":"Whoops, you\u0027re right -- either one of them will serve as an example, but apparently I hedged my bets by picking neither of them; will fix.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"adb8a05bb0c6b07be7822dcdb0c57039df207c89","unresolved":false,"context_lines":[{"line_number":29,"context_line":"  hosts that should be deployed during that phase."},{"line_number":30,"context_line":"  Example: `manifests/site/test-site/ephemeral/hostgenerator/host-generation.yaml`"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"* If any per-host changes need to be made, they can be layered on top as"},{"line_number":33,"context_line":"  site- or phase-specific Kustomize patches against the generated"},{"line_number":34,"context_line":"  documents.  E.g, if one host has a different network interface name,"},{"line_number":35,"context_line":"  or if different details need to be used during ISO bootstrapping"},{"line_number":36,"context_line":"  and normal deployment."},{"line_number":37,"context_line":"  Example: `manifests/site/test-site/ephemeral/bootstrap/baremetalhost.yaml`"}],"source_content_type":"text/x-gfm","patch_set":18,"id":"bf51134e_08d05350","line":34,"range":{"start_line":32,"start_character":43,"end_line":34,"end_character":12},"updated":"2020-07-01 22:21:01.000000000","message":"So, a full update cycle would look like\n1- Update this YAML file with the desired changes you need to layer.\n2- Kubectl apply this\n3- Let the controller reconcile and update the resource\n\nI feel like I\u0027m missing something here","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"26398cf3eda0ee2f216263e3704118c8922d7cd6","unresolved":false,"context_lines":[{"line_number":29,"context_line":"  hosts that should be deployed during that phase."},{"line_number":30,"context_line":"  Example: `manifests/site/test-site/ephemeral/hostgenerator/host-generation.yaml`"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"* If any per-host changes need to be made, they can be layered on top as"},{"line_number":33,"context_line":"  site- or phase-specific Kustomize patches against the generated"},{"line_number":34,"context_line":"  documents.  E.g, if one host has a different network interface name,"},{"line_number":35,"context_line":"  or if different details need to be used during ISO bootstrapping"},{"line_number":36,"context_line":"  and normal deployment."},{"line_number":37,"context_line":"  Example: `manifests/site/test-site/ephemeral/bootstrap/baremetalhost.yaml`"}],"source_content_type":"text/x-gfm","patch_set":18,"id":"bf51134e_35747c99","line":34,"range":{"start_line":32,"start_character":43,"end_line":34,"end_character":12},"in_reply_to":"bf51134e_08d05350","updated":"2020-07-02 20:04:42.000000000","message":"By \"layered\", I mean \"kustomized\".  Since the site will be pulling in things via kustomize from the \"parent\" type anyway, kustomize gives the hook to make changes to those documents.\n\nTo be clear, this isn\u0027t saying \"deploy vanilla documents then update them\", it\u0027s more like \"generate vanilla documents via the kustomize plugin and then kustomize them at site level prior to deployment\".","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"b4e9568e1125c3a513ff608447cfa31f2268f12b","unresolved":false,"context_lines":[{"line_number":29,"context_line":"  hosts that should be deployed during that phase."},{"line_number":30,"context_line":"  Example: `manifests/site/test-site/ephemeral/hostgenerator/host-generation.yaml`"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"* If any per-host changes need to be made, they can be layered on top as"},{"line_number":33,"context_line":"  site- or phase-specific Kustomize patches against the generated"},{"line_number":34,"context_line":"  documents.  E.g, if one host has a different network interface name,"},{"line_number":35,"context_line":"  or if different details need to be used during ISO bootstrapping"},{"line_number":36,"context_line":"  and normal deployment."},{"line_number":37,"context_line":"  Example: `manifests/site/test-site/ephemeral/bootstrap/baremetalhost.yaml`"}],"source_content_type":"text/x-gfm","patch_set":18,"id":"bf51134e_0093f850","line":34,"range":{"start_line":32,"start_character":43,"end_line":34,"end_character":12},"in_reply_to":"bf51134e_35747c99","updated":"2020-07-02 21:57:06.000000000","message":"\"prior to deployment\", that\u0027s what I was missing. Got it.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"}],"manifests/site/test-site/ephemeral/bootstrap/baremetalhost.yaml":[{"author":{"_account_id":30847,"name":"Nikolay Fedorov","email":"nfedorov@mirantis.com","username":"nfedorov"},"change_message_id":"fceda754503bc114bc6de356965dd07b8b8ea35e","unresolved":false,"context_lines":[{"line_number":10,"context_line":"spec:"},{"line_number":11,"context_line":"  online: true"},{"line_number":12,"context_line":"  bmc:"},{"line_number":13,"context_line":"    address: redfish+https://localhost:8443/redfish/v1/Systems/air-ephemeral"},{"line_number":14,"context_line":"status:"},{"line_number":15,"context_line":"  provisioning:"},{"line_number":16,"context_line":"# we need this status to make sure, that the host is not going to be"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_9c558953","line":13,"range":{"start_line":13,"start_character":13,"end_line":13,"end_character":76},"updated":"2020-07-07 08:09:36.000000000","message":"It related to bare metal as MAC addresses\nWe should place them together in host.yaml.","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":30847,"name":"Nikolay Fedorov","email":"nfedorov@mirantis.com","username":"nfedorov"},"change_message_id":"d59b63b49a6a4400b9907a2330bd7dab9ad0d8bf","unresolved":false,"context_lines":[{"line_number":10,"context_line":"spec:"},{"line_number":11,"context_line":"  online: true"},{"line_number":12,"context_line":"  bmc:"},{"line_number":13,"context_line":"    address: redfish+https://localhost:8443/redfish/v1/Systems/air-ephemeral"},{"line_number":14,"context_line":"status:"},{"line_number":15,"context_line":"  provisioning:"},{"line_number":16,"context_line":"# we need this status to make sure, that the host is not going to be"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_3cb272e7","line":13,"range":{"start_line":13,"start_character":13,"end_line":13,"end_character":76},"in_reply_to":"bf51134e_16095094","updated":"2020-07-07 17:17:46.000000000","message":"We have BMC (real baremetal) properties:\n1. MAC\u0027s\n2. Boot MAC\n2. URL\n3. Credentionals\n\nHow can it depend on а phase?\n\nBMH ( BMC and some properties kind of labels, credentialsName: external_provisioned )\n\nI think, this properties depend upon the phase.","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"4073593cd20e8397be97ef289f119a65eaf2d1a6","unresolved":false,"context_lines":[{"line_number":10,"context_line":"spec:"},{"line_number":11,"context_line":"  online: true"},{"line_number":12,"context_line":"  bmc:"},{"line_number":13,"context_line":"    address: redfish+https://localhost:8443/redfish/v1/Systems/air-ephemeral"},{"line_number":14,"context_line":"status:"},{"line_number":15,"context_line":"  provisioning:"},{"line_number":16,"context_line":"# we need this status to make sure, that the host is not going to be"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_affa9b3f","line":13,"range":{"start_line":13,"start_character":13,"end_line":13,"end_character":76},"in_reply_to":"bf51134e_2fce9a59","updated":"2020-07-09 18:22:56.000000000","message":"Just to be clear, I didn\u0027t come up with that - it\u0027s the existing value form the base revision :)  the goal of this PS was to take the existing airshipctl test-site BMH definitions and recreate them via the host generator.  If we\u0027re making things too complex by having multiples, then it\u0027s a win that the generator can carry the (unneeded) burden.","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"1a6afc4489fc7e211919e05fd1c57d0a2532fa4b","unresolved":false,"context_lines":[{"line_number":10,"context_line":"spec:"},{"line_number":11,"context_line":"  online: true"},{"line_number":12,"context_line":"  bmc:"},{"line_number":13,"context_line":"    address: redfish+https://localhost:8443/redfish/v1/Systems/air-ephemeral"},{"line_number":14,"context_line":"status:"},{"line_number":15,"context_line":"  provisioning:"},{"line_number":16,"context_line":"# we need this status to make sure, that the host is not going to be"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_2fce9a59","line":13,"range":{"start_line":13,"start_character":13,"end_line":13,"end_character":76},"in_reply_to":"bf51134e_3cb272e7","updated":"2020-07-09 02:43:18.000000000","message":"One thing that comes to mind is, since many BMCs out there, can support multiple OOB protocols, for instance an iDRAC card can support IPMI, Redfish and WSMAN (iDRAC), there is a possibility, for whatever reason, to have different BMC addresses in different phases of deployment, for whatever reason. \nI\u0027m not sure on the use case/scenario though, but just think it\u0027s possible this way, which  makes the issue that Matt is trying to solve as an edge case, rather than a typical use case.","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"10b27d7694c13ef375b6cda2def96c9f0357ad0b","unresolved":false,"context_lines":[{"line_number":10,"context_line":"spec:"},{"line_number":11,"context_line":"  online: true"},{"line_number":12,"context_line":"  bmc:"},{"line_number":13,"context_line":"    address: redfish+https://localhost:8443/redfish/v1/Systems/air-ephemeral"},{"line_number":14,"context_line":"status:"},{"line_number":15,"context_line":"  provisioning:"},{"line_number":16,"context_line":"# we need this status to make sure, that the host is not going to be"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_16095094","line":13,"range":{"start_line":13,"start_character":13,"end_line":13,"end_character":76},"in_reply_to":"bf51134e_9c558953","updated":"2020-07-07 13:47:13.000000000","message":"The issue here being solved for here is that for a single host (node02), two different BMC addresses were being used in different phases.  I.e. there was a \"normal\" one defined in hosts.yaml, and then this ephemeral one which is was different.\n\nWe should probably refactor and/or document this setup as follow-on work; I wanted to change the BMH content as little as possible as part of this PS (it\u0027s big enough already).","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"ec08ea15e3dc3347058ba966aa0033cf64be0b58","unresolved":false,"context_lines":[{"line_number":10,"context_line":"spec:"},{"line_number":11,"context_line":"  online: true"},{"line_number":12,"context_line":"  bmc:"},{"line_number":13,"context_line":"    address: redfish+https://localhost:8443/redfish/v1/Systems/air-ephemeral"},{"line_number":14,"context_line":"status:"},{"line_number":15,"context_line":"  provisioning:"},{"line_number":16,"context_line":"# we need this status to make sure, that the host is not going to be"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_6196d740","line":13,"range":{"start_line":13,"start_character":13,"end_line":13,"end_character":76},"in_reply_to":"bf51134e_affa9b3f","updated":"2020-07-09 18:51:19.000000000","message":"Oh, I wasn\u0027t aware of that. Well, in that case, yes, it really is an added bonus if we can handle such complications. Probably worth mentioning somewhere that this approach has the ability to circumvent such issues, would be helpful for others in the future. I\u0027ll say README is the place to go?","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"}],"manifests/site/test-site/shared/catalogues/hosts.yaml":[{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"adb8a05bb0c6b07be7822dcdb0c57039df207c89","unresolved":false,"context_lines":[{"line_number":5,"context_line":"metadata:"},{"line_number":6,"context_line":"  name: host-catalogue"},{"line_number":7,"context_line":"hosts:"},{"line_number":8,"context_line":"  m3:"},{"line_number":9,"context_line":"    node01:"},{"line_number":10,"context_line":"      macAddress: 52:54:00:b6:ed:31"},{"line_number":11,"context_line":"      bmcAddress: redfish+http://10.23.25.1:8000/redfish/v1/Systems/air-target-1"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"bf51134e_c8793b94","line":8,"range":{"start_line":8,"start_character":2,"end_line":8,"end_character":4},"updated":"2020-07-01 22:21:01.000000000","message":"I\u0027m guessing this is to support multiple host providers? with M3 referring to the host being provided by CAPM3?","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"b4e9568e1125c3a513ff608447cfa31f2268f12b","unresolved":false,"context_lines":[{"line_number":5,"context_line":"metadata:"},{"line_number":6,"context_line":"  name: host-catalogue"},{"line_number":7,"context_line":"hosts:"},{"line_number":8,"context_line":"  m3:"},{"line_number":9,"context_line":"    node01:"},{"line_number":10,"context_line":"      macAddress: 52:54:00:b6:ed:31"},{"line_number":11,"context_line":"      bmcAddress: redfish+http://10.23.25.1:8000/redfish/v1/Systems/air-target-1"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"bf51134e_c0a8e078","line":8,"range":{"start_line":8,"start_character":2,"end_line":8,"end_character":4},"in_reply_to":"bf51134e_159a18c4","updated":"2020-07-02 21:57:06.000000000","message":"Makes sense, since various providers might have their own way (parameter set) of defining their \u0027host\u0027, so labeling like this would be helpful. I think it\u0027s good.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"26398cf3eda0ee2f216263e3704118c8922d7cd6","unresolved":false,"context_lines":[{"line_number":5,"context_line":"metadata:"},{"line_number":6,"context_line":"  name: host-catalogue"},{"line_number":7,"context_line":"hosts:"},{"line_number":8,"context_line":"  m3:"},{"line_number":9,"context_line":"    node01:"},{"line_number":10,"context_line":"      macAddress: 52:54:00:b6:ed:31"},{"line_number":11,"context_line":"      bmcAddress: redfish+http://10.23.25.1:8000/redfish/v1/Systems/air-target-1"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"bf51134e_159a18c4","line":8,"range":{"start_line":8,"start_character":2,"end_line":8,"end_character":4},"in_reply_to":"bf51134e_c8793b94","updated":"2020-07-02 20:04:42.000000000","message":"Yep, that was the idea, to leave room for that.  Not sure if it\u0027s really all that valuable or not.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"adb8a05bb0c6b07be7822dcdb0c57039df207c89","unresolved":false,"context_lines":[{"line_number":7,"context_line":"hosts:"},{"line_number":8,"context_line":"  m3:"},{"line_number":9,"context_line":"    node01:"},{"line_number":10,"context_line":"      macAddress: 52:54:00:b6:ed:31"},{"line_number":11,"context_line":"      bmcAddress: redfish+http://10.23.25.1:8000/redfish/v1/Systems/air-target-1"},{"line_number":12,"context_line":"      bmcUsername: root"},{"line_number":13,"context_line":"      bmcPassword: r00tme"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"bf51134e_286f17c6","line":10,"range":{"start_line":10,"start_character":6,"end_line":10,"end_character":16},"updated":"2020-07-01 22:21:01.000000000","message":"Is this the MAC address for the boot interface? or the iDRAC interface?","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"26398cf3eda0ee2f216263e3704118c8922d7cd6","unresolved":false,"context_lines":[{"line_number":7,"context_line":"hosts:"},{"line_number":8,"context_line":"  m3:"},{"line_number":9,"context_line":"    node01:"},{"line_number":10,"context_line":"      macAddress: 52:54:00:b6:ed:31"},{"line_number":11,"context_line":"      bmcAddress: redfish+http://10.23.25.1:8000/redfish/v1/Systems/air-target-1"},{"line_number":12,"context_line":"      bmcUsername: root"},{"line_number":13,"context_line":"      bmcPassword: r00tme"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"bf51134e_3582bc50","line":10,"range":{"start_line":10,"start_character":6,"end_line":10,"end_character":16},"in_reply_to":"bf51134e_286f17c6","updated":"2020-07-02 20:04:42.000000000","message":"It\u0027s for the PXE interface, see the (duplicate) definition below.  I\u0027ll say \"I\u0027m just the middleman\" for this one -- the BMH/networking that this PS is replacing was already set up that way; there may be a cleaner way to represent that, I\u0027m not sure.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"b4e9568e1125c3a513ff608447cfa31f2268f12b","unresolved":false,"context_lines":[{"line_number":7,"context_line":"hosts:"},{"line_number":8,"context_line":"  m3:"},{"line_number":9,"context_line":"    node01:"},{"line_number":10,"context_line":"      macAddress: 52:54:00:b6:ed:31"},{"line_number":11,"context_line":"      bmcAddress: redfish+http://10.23.25.1:8000/redfish/v1/Systems/air-target-1"},{"line_number":12,"context_line":"      bmcUsername: root"},{"line_number":13,"context_line":"      bmcPassword: r00tme"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"bf51134e_e0d9a422","line":10,"range":{"start_line":10,"start_character":6,"end_line":10,"end_character":16},"in_reply_to":"bf51134e_3582bc50","updated":"2020-07-02 21:57:06.000000000","message":"I guess then this bring up the question of why are we doing this duplication? Is there value in having a \u0027readily available\u0027 node01.macAddress field for some reason?\nAssuming there is, might be better to rename this to \u0027bootMACAddress\u0027 or something similar, just for some clarity, to facilitate its usage.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":30847,"name":"Nikolay Fedorov","email":"nfedorov@mirantis.com","username":"nfedorov"},"change_message_id":"fceda754503bc114bc6de356965dd07b8b8ea35e","unresolved":false,"context_lines":[{"line_number":19,"context_line":"        pxe: 52:54:00:b6:ed:31"},{"line_number":20,"context_line":"    node02:"},{"line_number":21,"context_line":"      macAddress: 00:3b:8b:0c:ec:8b"},{"line_number":22,"context_line":"      bmcAddress: redfish+http://10.23.25.2:8000/redfish/v1/Systems/air-target-1"},{"line_number":23,"context_line":"      bmcUsername: username"},{"line_number":24,"context_line":"      bmcPassword: password"},{"line_number":25,"context_line":"      ipAddresses:"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_dc76e106","line":22,"range":{"start_line":22,"start_character":18,"end_line":22,"end_character":80},"updated":"2020-07-07 08:09:36.000000000","message":"It is unclear why here was used \"air-target-1\" name similar to node01.\nAnd different IPs.","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"ec08ea15e3dc3347058ba966aa0033cf64be0b58","unresolved":false,"context_lines":[{"line_number":19,"context_line":"        pxe: 52:54:00:b6:ed:31"},{"line_number":20,"context_line":"    node02:"},{"line_number":21,"context_line":"      macAddress: 00:3b:8b:0c:ec:8b"},{"line_number":22,"context_line":"      bmcAddress: redfish+http://10.23.25.2:8000/redfish/v1/Systems/air-target-1"},{"line_number":23,"context_line":"      bmcUsername: username"},{"line_number":24,"context_line":"      bmcPassword: password"},{"line_number":25,"context_line":"      ipAddresses:"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_61aff77c","line":22,"range":{"start_line":22,"start_character":18,"end_line":22,"end_character":80},"in_reply_to":"bf51134e_4f749fcf","updated":"2020-07-09 18:51:19.000000000","message":"Sounds good. Should be able to resolve confusions first. What patch overrides this? Can you point me to it? I\u0027d like to study that.","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"4073593cd20e8397be97ef289f119a65eaf2d1a6","unresolved":false,"context_lines":[{"line_number":19,"context_line":"        pxe: 52:54:00:b6:ed:31"},{"line_number":20,"context_line":"    node02:"},{"line_number":21,"context_line":"      macAddress: 00:3b:8b:0c:ec:8b"},{"line_number":22,"context_line":"      bmcAddress: redfish+http://10.23.25.2:8000/redfish/v1/Systems/air-target-1"},{"line_number":23,"context_line":"      bmcUsername: username"},{"line_number":24,"context_line":"      bmcPassword: password"},{"line_number":25,"context_line":"      ipAddresses:"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_4f749fcf","line":22,"range":{"start_line":22,"start_character":18,"end_line":22,"end_character":80},"in_reply_to":"bf51134e_8ffa4640","updated":"2020-07-09 18:22:56.000000000","message":"I could have sworn I got that from pre-existing work (and just moved it around), but can\u0027t find that now.  I\u0027ll change this to \"air-target-2\" since that\u0027s a more sane/consistent value -- even though it gets overridden by a patch (which is valuable to demonstrate).","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"1a6afc4489fc7e211919e05fd1c57d0a2532fa4b","unresolved":false,"context_lines":[{"line_number":19,"context_line":"        pxe: 52:54:00:b6:ed:31"},{"line_number":20,"context_line":"    node02:"},{"line_number":21,"context_line":"      macAddress: 00:3b:8b:0c:ec:8b"},{"line_number":22,"context_line":"      bmcAddress: redfish+http://10.23.25.2:8000/redfish/v1/Systems/air-target-1"},{"line_number":23,"context_line":"      bmcUsername: username"},{"line_number":24,"context_line":"      bmcPassword: password"},{"line_number":25,"context_line":"      ipAddresses:"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_8ffa4640","line":22,"range":{"start_line":22,"start_character":18,"end_line":22,"end_character":80},"in_reply_to":"bf51134e_96f44089","updated":"2020-07-09 02:43:18.000000000","message":"The Redfish specification does require the resource to be unique within an implementation, so technically it will be valid to have \"air-target-1\" in both instances of redfish in both nodes.\nHowever, I do agree that although legal, this can be confusing, and we need to either clarify the purpose of it, or rename it to maybe, \u0027air-target-2\u0027 here.","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"10b27d7694c13ef375b6cda2def96c9f0357ad0b","unresolved":false,"context_lines":[{"line_number":19,"context_line":"        pxe: 52:54:00:b6:ed:31"},{"line_number":20,"context_line":"    node02:"},{"line_number":21,"context_line":"      macAddress: 00:3b:8b:0c:ec:8b"},{"line_number":22,"context_line":"      bmcAddress: redfish+http://10.23.25.2:8000/redfish/v1/Systems/air-target-1"},{"line_number":23,"context_line":"      bmcUsername: username"},{"line_number":24,"context_line":"      bmcPassword: password"},{"line_number":25,"context_line":"      ipAddresses:"}],"source_content_type":"text/x-yaml","patch_set":19,"id":"bf51134e_96f44089","line":22,"range":{"start_line":22,"start_character":18,"end_line":22,"end_character":80},"in_reply_to":"bf51134e_dc76e106","updated":"2020-07-07 13:47:13.000000000","message":"Agree, it\u0027s not clear to me either.","commit_id":"63d9caffbc77609a57d8e159109609618f588a6d"}],"manifests/type/gating/shared/catalogues/common-networking.yaml":[{"author":{"_account_id":30847,"name":"Nikolay Fedorov","email":"nfedorov@mirantis.com","username":"nfedorov"},"change_message_id":"c74a57671b0892ceda78c971e74bda979df6bec1","unresolved":false,"context_lines":[{"line_number":7,"context_line":"commonNetworking:"},{"line_number":8,"context_line":"  links:"},{"line_number":9,"context_line":"    - id: oam"},{"line_number":10,"context_line":"      name: enp0s3"},{"line_number":11,"context_line":"      type: phy"},{"line_number":12,"context_line":"      mtu: \"1500\""},{"line_number":13,"context_line":"      # ethernet_mac_address: \u003cfrom host-catalogue\u003e (optional)"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"bf51134e_4cee23ed","line":10,"range":{"start_line":10,"start_character":6,"end_line":10,"end_character":18},"updated":"2020-07-15 12:15:08.000000000","message":"Please, look at https://review.opendev.org/#/c/739132/","commit_id":"ed5a1a35155faa54fdac68391cfb41ca71e415d8"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"94db13f59b06d5b79088cd3ed4660c66bc17229d","unresolved":false,"context_lines":[{"line_number":7,"context_line":"commonNetworking:"},{"line_number":8,"context_line":"  links:"},{"line_number":9,"context_line":"    - id: oam"},{"line_number":10,"context_line":"      name: enp0s3"},{"line_number":11,"context_line":"      type: phy"},{"line_number":12,"context_line":"      mtu: \"1500\""},{"line_number":13,"context_line":"      # ethernet_mac_address: \u003cfrom host-catalogue\u003e (optional)"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"bf51134e_db38eaef","line":10,"range":{"start_line":10,"start_character":6,"end_line":10,"end_character":18},"in_reply_to":"bf51134e_4cee23ed","updated":"2020-07-20 08:44:19.000000000","message":"I think you mean the OS-independent MAC-based naming convention that\u0027s described here\nhttps://review.opendev.org/#/c/739132/7/manifests/site/test-site/shared/baremetalhost/node02/networkData","commit_id":"ed5a1a35155faa54fdac68391cfb41ca71e415d8"}],"pkg/document/plugin/templater/v1alpha1/templater.go":[{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"adb8a05bb0c6b07be7822dcdb0c57039df207c89","unresolved":false,"context_lines":[{"line_number":61,"context_line":"func toYaml(v interface{}) string {"},{"line_number":62,"context_line":"\tdata, err :\u003d yaml.Marshal(v)"},{"line_number":63,"context_line":"\tif err !\u003d nil {"},{"line_number":64,"context_line":"\t\t// Swallow errors inside of a template."},{"line_number":65,"context_line":"\t\treturn \"\""},{"line_number":66,"context_line":"\t}"},{"line_number":67,"context_line":"\treturn string(data)"}],"source_content_type":"text/x-go","patch_set":18,"id":"bf51134e_a86cc79c","line":64,"range":{"start_line":64,"start_character":2,"end_line":64,"end_character":40},"updated":"2020-07-01 22:21:01.000000000","message":"Any specific reasons we\u0027re swallowing errors here?","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"26398cf3eda0ee2f216263e3704118c8922d7cd6","unresolved":false,"context_lines":[{"line_number":61,"context_line":"func toYaml(v interface{}) string {"},{"line_number":62,"context_line":"\tdata, err :\u003d yaml.Marshal(v)"},{"line_number":63,"context_line":"\tif err !\u003d nil {"},{"line_number":64,"context_line":"\t\t// Swallow errors inside of a template."},{"line_number":65,"context_line":"\t\treturn \"\""},{"line_number":66,"context_line":"\t}"},{"line_number":67,"context_line":"\treturn string(data)"}],"source_content_type":"text/x-go","patch_set":18,"id":"bf51134e_b5e24c2e","line":64,"range":{"start_line":64,"start_character":2,"end_line":64,"end_character":40},"in_reply_to":"bf51134e_a86cc79c","updated":"2020-07-02 20:04:42.000000000","message":"Excellent reviewing, ty - this one is because all I wanted to do was replicate the toYaml function from Helm, which is where this snippet came from. Helm has the error handling like so, and I just assumed they had some good reason for it.    I\u0027d certainly be open to doing something smarter if it\u0027s appropriate.\n\nI\u0027ll add a note here saying from whence this function came.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":31643,"name":"Noor Muhammad Malik","email":"noormuhammadmalik95@gmail.com","username":"noor_muhammad_dell"},"change_message_id":"b4e9568e1125c3a513ff608447cfa31f2268f12b","unresolved":false,"context_lines":[{"line_number":61,"context_line":"func toYaml(v interface{}) string {"},{"line_number":62,"context_line":"\tdata, err :\u003d yaml.Marshal(v)"},{"line_number":63,"context_line":"\tif err !\u003d nil {"},{"line_number":64,"context_line":"\t\t// Swallow errors inside of a template."},{"line_number":65,"context_line":"\t\treturn \"\""},{"line_number":66,"context_line":"\t}"},{"line_number":67,"context_line":"\treturn string(data)"}],"source_content_type":"text/x-go","patch_set":18,"id":"bf51134e_e0fc0440","line":64,"range":{"start_line":64,"start_character":2,"end_line":64,"end_character":40},"in_reply_to":"bf51134e_b5e24c2e","updated":"2020-07-02 21:57:06.000000000","message":"Ah, I see. So, I believe the function you\u0027re talking about is this one https://github.com/helm/helm/blob/bb47286f09331271e88e6047c51fd6e0ea936506/pkg/engine/funcs.go#L83\nReading the comment above the function definition says \"this function is to be called from a template\". Which I guess clarifies this. \n\nSince the function will always be called from a template, for it to silently swallow errors might be desirable, to ensure stability of template definitions. Last thing you want is somebody writing templates and having to face an error code that might be too complicated for them to digest.\n\nA way to document this fact somewhere saying \"hey, if the toYAML silently fails and doesn\u0027t perform substitution as expected, this could be the reason\" might be helpful for people crafting templates for their environments. A note or something in the documentation. It\u0027s good that you added the comment in the code, for anybody wishing to understand it that way.","commit_id":"2e41f45e48d6d5560712dae4cec665ff1301cc66"},{"author":{"_account_id":28618,"name":"Drew Walters","email":"drewwalters@microsoft.com","username":"drewwalters96"},"change_message_id":"ee42ff321f2619dc4e0f5a1ff4298db8201c7794","unresolved":false,"context_lines":[{"line_number":57,"context_line":"\treturn tmpl.Execute(out, t.Values)"},{"line_number":58,"context_line":"}"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"// Render input yaml as output yaml"},{"line_number":61,"context_line":"// This function is from the Helm project:"},{"line_number":62,"context_line":"// https://github.com/helm/helm"},{"line_number":63,"context_line":"// Copyright The Helm Authors"},{"line_number":64,"context_line":"func toYaml(v interface{}) string {"},{"line_number":65,"context_line":"\tdata, err :\u003d yaml.Marshal(v)"},{"line_number":66,"context_line":"\tif err !\u003d nil {"}],"source_content_type":"text/x-go","patch_set":25,"id":"bf51134e_78b9af77","line":63,"range":{"start_line":60,"start_character":0,"end_line":63,"end_character":29},"updated":"2020-07-22 15:16:57.000000000","message":"This is a good way to attribute this function.","commit_id":"0324993d609712e84e64be914b84f2c7cd277764"}],"playbooks/airship-airshipctl-build-gate.yaml":[{"author":{"_account_id":30847,"name":"Nikolay Fedorov","email":"nfedorov@mirantis.com","username":"nfedorov"},"change_message_id":"871da680c0b6177aa8df8e686462dc154a8398bf","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    - name: install airshipctl"},{"line_number":40,"context_line":"      include_role:"},{"line_number":41,"context_line":"        name: airshipctl-systemwide-executable"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    - name: make sure serve directory exists"},{"line_number":44,"context_line":"      file:"}],"source_content_type":"text/x-yaml","patch_set":21,"id":"bf51134e_f800cd04","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":46},"updated":"2020-07-10 13:32:05.000000000","message":"Where is this role now?","commit_id":"0e15bd1c76d0ca2b924ec0881c5bcac4c8a10e9f"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"eb1717b8598485a516b445e9b5d27b7b6cde28bf","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    - name: install airshipctl"},{"line_number":40,"context_line":"      include_role:"},{"line_number":41,"context_line":"        name: airshipctl-systemwide-executable"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    - name: make sure serve directory exists"},{"line_number":44,"context_line":"      file:"}],"source_content_type":"text/x-yaml","patch_set":21,"id":"bf51134e_13d762f0","line":41,"range":{"start_line":41,"start_character":8,"end_line":41,"end_character":46},"in_reply_to":"bf51134e_f800cd04","updated":"2020-07-10 13:54:00.000000000","message":"It was removed as part of this: https://review.opendev.org/#/c/739979/\nIt\u0027s functionality is replaced with this script:\n./tools/deployment/21_systemwide_executable.sh\n\nI forgot to remove this bit when I rebased, and the gates were failing because the role no longer exists.","commit_id":"0e15bd1c76d0ca2b924ec0881c5bcac4c8a10e9f"}]}
