)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"18d936ab6c2da562496ab65978809b8067fca016","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Feilong Wang \u003cflwang@catalyst.net.nz\u003e"},{"line_number":5,"context_line":"CommitDate: 2017-12-15 01:16:15 +1300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[WIP] Support anti-affinity policy for nodes"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Closes-Bug: #1727802"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df87a7cf_dff50985","line":7,"range":{"start_line":7,"start_character":14,"end_line":7,"end_character":27},"updated":"2017-12-14 12:58:58.000000000","message":"shouldn\u0027t this be `soft-anti-affinity`?","commit_id":"1e33b6d01b81e11190ed8ad9e8c13034d1d47abf"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"18d936ab6c2da562496ab65978809b8067fca016","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[WIP] Support anti-affinity policy for nodes"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Closes-Bug: #1727802"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Icc7a73ef55296a58bf00719ca4d1cdcc304fab86"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df87a7cf_7f207df8","line":9,"range":{"start_line":9,"start_character":13,"end_line":9,"end_character":20},"updated":"2017-12-14 12:58:58.000000000","message":"1737802","commit_id":"1e33b6d01b81e11190ed8ad9e8c13034d1d47abf"},{"author":{"_account_id":27060,"name":"Daniel Abad","email":"d.abad@cern.ch","username":"vabada"},"change_message_id":"e7e24b2d5ee1a772c443b2e25a4d6d46e3fe6c85","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Support soft-anti-affinity policy for nodes"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently, there is no guarantee to make sure all nodes of one clsuter are"},{"line_number":10,"context_line":"created on different compute hosts. So it would be nice if we can create"},{"line_number":11,"context_line":"a server group and set it with anti-affinity policy to get a better HA"},{"line_number":12,"context_line":"for cluster. This patch is proposing to create a server group for master"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"7f96bb07_da5ad14e","line":9,"range":{"start_line":9,"start_character":63,"end_line":9,"end_character":70},"updated":"2018-01-23 14:08:26.000000000","message":"typo","commit_id":"ff1adbeb67969b8550c43a9838955a6cc9c24f93"}],"magnum/conf/cluster.py":[{"author":{"_account_id":13861,"name":"yatin","email":"ykarel@redhat.com","username":"yatinkarel"},"change_message_id":"eaf7006a9d2f0d37c0ca24de52af222b8bb45804","unresolved":false,"context_lines":[{"line_number":34,"context_line":"                deprecated_group\u003d\u0027bay\u0027),"},{"line_number":35,"context_line":"    cfg.StrOpt(\u0027nodes_affinity_policy\u0027,"},{"line_number":36,"context_line":"               default\u003d\u0027soft-anti-affinity\u0027,"},{"line_number":37,"context_line":"               help\u003d_(\u0027Affinity policy for server group of cluster nodes.\u0027)"},{"line_number":38,"context_line":"               ),"},{"line_number":39,"context_line":"]"},{"line_number":40,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_de01ec6b","line":37,"updated":"2018-01-18 07:43:58.000000000","message":"Add possible values for this param in help.","commit_id":"cb6b591ae7dd4a41c36849c450a0d0339b539c0a"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"889db0fd464a41e2a7cfb1e6665b9bff5004e7c8","unresolved":false,"context_lines":[{"line_number":34,"context_line":"                deprecated_group\u003d\u0027bay\u0027),"},{"line_number":35,"context_line":"    cfg.StrOpt(\u0027nodes_affinity_policy\u0027,"},{"line_number":36,"context_line":"               default\u003d\u0027soft-anti-affinity\u0027,"},{"line_number":37,"context_line":"               help\u003d_(\u0027Affinity policy for server group of cluster nodes.\u0027)"},{"line_number":38,"context_line":"               ),"},{"line_number":39,"context_line":"]"},{"line_number":40,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_c084a1d5","line":37,"in_reply_to":"7f96bb07_de01ec6b","updated":"2018-01-18 10:26:43.000000000","message":"Yep, that\u0027s good to have.","commit_id":"cb6b591ae7dd4a41c36849c450a0d0339b539c0a"}],"magnum/drivers/heat/k8s_fedora_template_def.py":[{"author":{"_account_id":13861,"name":"yatin","email":"ykarel@redhat.com","username":"yatinkarel"},"change_message_id":"eaf7006a9d2f0d37c0ca24de52af222b8bb45804","unresolved":false,"context_lines":[{"line_number":88,"context_line":"            extra_params[\u0027container_infra_prefix\u0027] \u003d container_infra_prefix"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"        extra_params[\u0027nodes_affinity_policy\u0027] \u003d \\"},{"line_number":91,"context_line":"            CONF.cluster.nodes_affinity_policy"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        return super(K8sFedoraTemplateDefinition,"},{"line_number":94,"context_line":"                     self).get_params(context, cluster_template, cluster,"}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_1e1af4ca","line":91,"range":{"start_line":91,"start_character":12,"end_line":91,"end_character":46},"updated":"2018-01-18 07:43:58.000000000","message":"It would be better to add in the clustertemplate to make it more flexible for different clusters..\nAs a start for this feature it\u0027s ok to keep as a config parameter but eventually it would be good to have it in magnum data model(via labels or a new param).\n\nAlso, i think there should be two server group: one for master and other for workers but let takes other\u0027s input here.","commit_id":"cb6b591ae7dd4a41c36849c450a0d0339b539c0a"},{"author":{"_account_id":6484,"name":"Feilong Wang","email":"hustemb@gmail.com","username":"flwang"},"change_message_id":"889db0fd464a41e2a7cfb1e6665b9bff5004e7c8","unresolved":false,"context_lines":[{"line_number":88,"context_line":"            extra_params[\u0027container_infra_prefix\u0027] \u003d container_infra_prefix"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"        extra_params[\u0027nodes_affinity_policy\u0027] \u003d \\"},{"line_number":91,"context_line":"            CONF.cluster.nodes_affinity_policy"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        return super(K8sFedoraTemplateDefinition,"},{"line_number":94,"context_line":"                     self).get_params(context, cluster_template, cluster,"}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_60582d87","line":91,"range":{"start_line":91,"start_character":12,"end_line":91,"end_character":46},"in_reply_to":"7f96bb07_1e1af4ca","updated":"2018-01-18 10:26:43.000000000","message":"As you mentioned, for stage 1, current way should be OK. We can get some feedbacks later to decide if add a new attribute to data model.","commit_id":"cb6b591ae7dd4a41c36849c450a0d0339b539c0a"}],"magnum/drivers/heat/k8s_template_def.py":[{"author":{"_account_id":20498,"name":"Spyros Trigazis","email":"spyridon.trigazis@cern.ch","username":"strigazi"},"change_message_id":"a4b3a4fad7eded87076261486a4953b43c07ae77","unresolved":false,"context_lines":[{"line_number":88,"context_line":"                        cluster_attr\u003dNone)"},{"line_number":89,"context_line":"        self.add_output(\u0027kube_masters_private\u0027,"},{"line_number":90,"context_line":"                        cluster_attr\u003dNone)"},{"line_number":91,"context_line":"        self.add_parameter(\u0027affinity_policy\u0027,"},{"line_number":92,"context_line":"                           cluster_attr\u003d\u0027affinity_policy\u0027)"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"    def get_params(self, context, cluster_template, cluster, **kwargs):"},{"line_number":95,"context_line":"        extra_params \u003d kwargs.pop(\u0027extra_params\u0027, {})"}],"source_content_type":"text/x-python","patch_set":2,"id":"df87a7cf_edcb1950","line":92,"range":{"start_line":91,"start_character":0,"end_line":92,"end_character":58},"updated":"2017-12-19 09:48:30.000000000","message":"For kubernetes on fedora atomic, set affinity-policy here:\nhttps://github.com/openstack/magnum/blob/master/magnum/drivers/heat/k8s_fedora_template_def.py#L89","commit_id":"8d143aa2cddad7d1b45933a88b3917bfc4fe529e"}],"magnum/drivers/k8s_fedora_atomic_v1/templates/kubecluster.yaml":[{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"18d936ab6c2da562496ab65978809b8067fca016","unresolved":false,"context_lines":[{"line_number":471,"context_line":"  nodes_server_group:"},{"line_number":472,"context_line":"    type: OS::Nova::ServerGroup"},{"line_number":473,"context_line":"    properties:"},{"line_number":474,"context_line":"      name: nodes-server-group"},{"line_number":475,"context_line":"      policies: soft-anti-affinity"},{"line_number":476,"context_line":""},{"line_number":477,"context_line":"  ######################################################################"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"df87a7cf_3f05157b","line":474,"range":{"start_line":474,"start_character":12,"end_line":474,"end_character":30},"updated":"2017-12-14 12:58:58.000000000","message":"we should just ignore name here to make it generate a random name\nOtherwise, conflict error will happen if multiple coe created. Or will have multiple server group with same name if it\u0027s allowed by Nova","commit_id":"1e33b6d01b81e11190ed8ad9e8c13034d1d47abf"}],"magnum/drivers/k8s_fedora_atomic_v1/templates/kubemaster.yaml":[{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"18d936ab6c2da562496ab65978809b8067fca016","unresolved":false,"context_lines":[{"line_number":519,"context_line":"      user_data: {get_resource: kube_master_init}"},{"line_number":520,"context_line":"      networks:"},{"line_number":521,"context_line":"        - port: {get_resource: kube_master_eth0}"},{"line_number":522,"context_line":"      scheduler_hints: { group: { get_resource: nodes_server_group }}"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"  kube_master_eth0:"},{"line_number":525,"context_line":"    type: OS::Neutron::Port"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"df87a7cf_ffa9ed8f","line":522,"range":{"start_line":522,"start_character":34,"end_line":522,"end_character":46},"updated":"2017-12-14 12:58:58.000000000","message":"you can\u0027t use nodes_server_group (from parent stack) as a resource directly, needs to parse UUID as a parameter and use get_param here","commit_id":"1e33b6d01b81e11190ed8ad9e8c13034d1d47abf"}],"magnum/drivers/k8s_fedora_atomic_v1/templates/kubeminion.yaml":[{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"18d936ab6c2da562496ab65978809b8067fca016","unresolved":false,"context_lines":[{"line_number":411,"context_line":"      flavor: {get_param: minion_flavor}"},{"line_number":412,"context_line":"      key_name: {get_param: ssh_key_name}"},{"line_number":413,"context_line":"      user_data_format: RAW"},{"line_number":414,"context_line":"      scheduler_hints: { group: { get_resource: nodes_server_group }}"},{"line_number":415,"context_line":"      user_data: {get_resource: kube_minion_init}"},{"line_number":416,"context_line":"      networks:"},{"line_number":417,"context_line":"        - port: {get_resource: kube_minion_eth0}"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"df87a7cf_df90a951","line":414,"range":{"start_line":414,"start_character":34,"end_line":414,"end_character":46},"updated":"2017-12-14 12:58:58.000000000","message":"ditto","commit_id":"1e33b6d01b81e11190ed8ad9e8c13034d1d47abf"}],"magnum/drivers/k8s_fedora_ironic_v1/templates/kubecluster.yaml":[{"author":{"_account_id":27060,"name":"Daniel Abad","email":"d.abad@cern.ch","username":"vabada"},"change_message_id":"e7e24b2d5ee1a772c443b2e25a4d6d46e3fe6c85","unresolved":false,"context_lines":[{"line_number":527,"context_line":"          container_infra_prefix: {get_param: container_infra_prefix}"},{"line_number":528,"context_line":"          wc_curl_cli: {get_attr: [master_wait_handle, curl_cli]}"},{"line_number":529,"context_line":"          etcd_lb_vip: {get_attr: [etcd_lb, address]}"},{"line_number":530,"context_line":"\u003c\u003c\u003c\u003c\u003c\u003c\u003c 65dfb2009feb298d131a52e10c29c36c0eb668bd"},{"line_number":531,"context_line":"          openstack_ca: {get_param: openstack_ca}"},{"line_number":532,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":533,"context_line":"          nodes_server_group_id: {get_resource: nodes_server_group}"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"7f96bb07_9d99a37a","line":530,"updated":"2018-01-23 14:08:26.000000000","message":"Remove the conflict?","commit_id":"ff1adbeb67969b8550c43a9838955a6cc9c24f93"}]}
