)]}'
{"neutron/templates/bin/_health-probe.py.tpl":[{"author":{"_account_id":18256,"name":"Hemachandra Reddy","email":"hemachandra.reddy@att.com","username":"hr858f"},"change_message_id":"99b06059f92e6ba5dea1888b4d23b70ae9682826","unresolved":false,"context_lines":[{"line_number":307,"context_line":"    if (os.path.isfile(pidfile) and check_pid_running(open(pidfile,\u0027r\u0027).readlines()[0])):"},{"line_number":308,"context_line":"        sys.exit(0)  # probe is already running, return success"},{"line_number":309,"context_line":"    else:"},{"line_number":310,"context_line":"        file \u003d open(pidfile, \u0027w\u0027)"},{"line_number":311,"context_line":"        file.write(str(os.getpid()))"},{"line_number":312,"context_line":"        file.close()"},{"line_number":313,"context_line":""}],"source_content_type":"text/x-smarty","patch_set":1,"id":"3fa7e38b_8e8fff74","line":310,"range":{"start_line":310,"start_character":8,"end_line":310,"end_character":33},"updated":"2020-02-07 17:56:06.000000000","message":"I\u0027d use \u0027with\u0027 to open file.","commit_id":"6ed682720429da16ec93f7e1a001930d2509ba09"},{"author":{"_account_id":28025,"name":"Randeep Jalli","email":"rj2083@att.com","username":"randeep.jalli"},"change_message_id":"89bfbd25ef618961f869efb65919af19ea84fe38","unresolved":false,"context_lines":[{"line_number":309,"context_line":"    else:"},{"line_number":310,"context_line":"        with open(pidfile, \u0027w\u0027) as f:"},{"line_number":311,"context_line":"            f.write(str(os.getpid()))"},{"line_number":312,"context_line":""},{"line_number":313,"context_line":"    if \"sriov_agent.ini\" in \u0027,\u0027.join(sys.argv):"},{"line_number":314,"context_line":"        sriov_readiness_check()"},{"line_number":315,"context_line":"    elif \"metadata_agent.ini\" not in \u0027,\u0027.join(sys.argv):"}],"source_content_type":"text/x-smarty","patch_set":5,"id":"3fa7e38b_290ea9d7","line":312,"updated":"2020-02-13 20:54:01.000000000","message":"maybe also release the PID in the case of sys.exit(1)","commit_id":"7b2eb830d04b9a078583b17f0992c3b5728e3ff4"},{"author":{"_account_id":28025,"name":"Randeep Jalli","email":"rj2083@att.com","username":"randeep.jalli"},"change_message_id":"06328822000ace9019e55fc4d7a7bae1cb98716e","unresolved":false,"context_lines":[{"line_number":309,"context_line":"    else:"},{"line_number":310,"context_line":"        with open(pidfile, \u0027w\u0027) as f:"},{"line_number":311,"context_line":"            f.write(str(os.getpid()))"},{"line_number":312,"context_line":""},{"line_number":313,"context_line":"    if \"sriov_agent.ini\" in \u0027,\u0027.join(sys.argv):"},{"line_number":314,"context_line":"        sriov_readiness_check()"},{"line_number":315,"context_line":"    elif \"metadata_agent.ini\" not in \u0027,\u0027.join(sys.argv):"}],"source_content_type":"text/x-smarty","patch_set":5,"id":"3fa7e38b_369ef954","line":312,"in_reply_to":"3fa7e38b_290ea9d7","updated":"2020-02-14 13:17:11.000000000","message":"Nvm, not an issue as the tmp directory is recreated when the new pod is rescheduled.","commit_id":"7b2eb830d04b9a078583b17f0992c3b5728e3ff4"},{"author":{"_account_id":18256,"name":"Hemachandra Reddy","email":"hemachandra.reddy@att.com","username":"hr858f"},"change_message_id":"227061eaeeec15fcb66bad37085fff3aa62ad604","unresolved":false,"context_lines":[{"line_number":308,"context_line":"        pidfile \u003d \"/tmp/readiness.pid\""},{"line_number":309,"context_line":"    #nosec"},{"line_number":310,"context_line":"    if (os.path.isfile(pidfile) and check_pid_running(open(pidfile,\u0027r\u0027).readlines()[0])):"},{"line_number":311,"context_line":"        sys.exit(1)  # probe is already running, process has taken too long, return failure"},{"line_number":312,"context_line":"    else:"},{"line_number":313,"context_line":"        with open(pidfile, \u0027w\u0027) as f:"},{"line_number":314,"context_line":"        #nosec"}],"source_content_type":"text/x-smarty","patch_set":6,"id":"3fa7e38b_32bcc205","line":311,"range":{"start_line":311,"start_character":8,"end_line":311,"end_character":20},"updated":"2020-02-14 16:10:05.000000000","message":"In addition to it, can we kill the probe that is running despite the timeout?","commit_id":"22efd58abe2959561c634d62e799e627765832a0"},{"author":{"_account_id":30777,"name":"Steven Fitzpatrick","email":"steven@fitzpatrick.wtf","username":"sf280x"},"change_message_id":"9933625b8bac025f7ac83f79263fb70c86b26f92","unresolved":false,"context_lines":[{"line_number":312,"context_line":"            data \u003d json.load(f)"},{"line_number":313,"context_line":"        if check_pid_running(data[\u0027pid\u0027]):"},{"line_number":314,"context_line":"            if data[\u0027exit_count\u0027] \u003e 1:"},{"line_number":315,"context_line":"                # Third time in, kill the previous process"},{"line_number":316,"context_line":"                os.kill(int(data[\u0027pid\u0027]), signal.SIGTERM)"},{"line_number":317,"context_line":"            else:"},{"line_number":318,"context_line":"                data[\u0027exit_count\u0027] \u003d data[\u0027exit_count\u0027] + 1"}],"source_content_type":"text/x-smarty","patch_set":14,"id":"3fa7e38b_5c6281a9","line":315,"range":{"start_line":315,"start_character":16,"end_line":315,"end_character":58},"updated":"2020-02-18 22:27:27.000000000","message":"Since the liveness probe has periodSeconds:600, does that mean we are allowing a probe to stall for ~30 minutes?","commit_id":"414b10fab073ba3a8a800b1635a5f812ed81d110"},{"author":{"_account_id":24780,"name":"Sangeet Gupta","email":"sg774j@att.com","username":"sgupta"},"change_message_id":"3060a59fd04499706531a7bc2f92b6ca8cd91fa8","unresolved":false,"context_lines":[{"line_number":312,"context_line":"            data \u003d json.load(f)"},{"line_number":313,"context_line":"        if check_pid_running(data[\u0027pid\u0027]):"},{"line_number":314,"context_line":"            if data[\u0027exit_count\u0027] \u003e 1:"},{"line_number":315,"context_line":"                # Third time in, kill the previous process"},{"line_number":316,"context_line":"                os.kill(int(data[\u0027pid\u0027]), signal.SIGTERM)"},{"line_number":317,"context_line":"            else:"},{"line_number":318,"context_line":"                data[\u0027exit_count\u0027] \u003d data[\u0027exit_count\u0027] + 1"}],"source_content_type":"text/x-smarty","patch_set":14,"id":"3fa7e38b_e2c866a8","line":315,"range":{"start_line":315,"start_character":16,"end_line":315,"end_character":58},"in_reply_to":"3fa7e38b_5c6281a9","updated":"2020-02-19 01:12:48.000000000","message":"It means new probe will start in 600 seconds ~ 10 minutes","commit_id":"414b10fab073ba3a8a800b1635a5f812ed81d110"},{"author":{"_account_id":18256,"name":"Hemachandra Reddy","email":"hemachandra.reddy@att.com","username":"hr858f"},"change_message_id":"8340e611341bfa133d2ceeccfee0b255d52185c5","unresolved":false,"context_lines":[{"line_number":316,"context_line":"                os.kill(int(data[\u0027pid\u0027]), signal.SIGTERM)"},{"line_number":317,"context_line":"            else:"},{"line_number":318,"context_line":"                data[\u0027exit_count\u0027] \u003d data[\u0027exit_count\u0027] + 1"},{"line_number":319,"context_line":"                with open(pidfile, \u0027w\u0027) as f:"},{"line_number":320,"context_line":"                    json.dump(data, f)"},{"line_number":321,"context_line":"                sys.exit(0)"},{"line_number":322,"context_line":"    data[\u0027pid\u0027] \u003d os.getpid()"}],"source_content_type":"text/x-smarty","patch_set":14,"id":"3fa7e38b_a222750d","line":319,"range":{"start_line":319,"start_character":16,"end_line":319,"end_character":45},"updated":"2020-02-18 17:47:17.000000000","message":"Is it required? The file is already open in L311 and is not closed yet.","commit_id":"414b10fab073ba3a8a800b1635a5f812ed81d110"},{"author":{"_account_id":24780,"name":"Sangeet Gupta","email":"sg774j@att.com","username":"sgupta"},"change_message_id":"0c067bb560d58f715c59408140116e78ef83bfca","unresolved":false,"context_lines":[{"line_number":316,"context_line":"                os.kill(int(data[\u0027pid\u0027]), signal.SIGTERM)"},{"line_number":317,"context_line":"            else:"},{"line_number":318,"context_line":"                data[\u0027exit_count\u0027] \u003d data[\u0027exit_count\u0027] + 1"},{"line_number":319,"context_line":"                with open(pidfile, \u0027w\u0027) as f:"},{"line_number":320,"context_line":"                    json.dump(data, f)"},{"line_number":321,"context_line":"                sys.exit(0)"},{"line_number":322,"context_line":"    data[\u0027pid\u0027] \u003d os.getpid()"}],"source_content_type":"text/x-smarty","patch_set":14,"id":"3fa7e38b_024ee98f","line":319,"range":{"start_line":319,"start_character":16,"end_line":319,"end_character":45},"in_reply_to":"3fa7e38b_a222750d","updated":"2020-02-18 19:06:09.000000000","message":"Yes. File at L311 is closed at L313.","commit_id":"414b10fab073ba3a8a800b1635a5f812ed81d110"},{"author":{"_account_id":30777,"name":"Steven Fitzpatrick","email":"steven@fitzpatrick.wtf","username":"sf280x"},"change_message_id":"9933625b8bac025f7ac83f79263fb70c86b26f92","unresolved":false,"context_lines":[{"line_number":318,"context_line":"                data[\u0027exit_count\u0027] \u003d data[\u0027exit_count\u0027] + 1"},{"line_number":319,"context_line":"                with open(pidfile, \u0027w\u0027) as f:"},{"line_number":320,"context_line":"                    json.dump(data, f)"},{"line_number":321,"context_line":"                sys.exit(0)"},{"line_number":322,"context_line":"    data[\u0027pid\u0027] \u003d os.getpid()"},{"line_number":323,"context_line":"    data[\u0027exit_count\u0027] \u003d 0"},{"line_number":324,"context_line":"    with open(pidfile, \u0027w\u0027) as f:"}],"source_content_type":"text/x-smarty","patch_set":14,"id":"3fa7e38b_1cd0892a","line":321,"range":{"start_line":321,"start_character":16,"end_line":321,"end_character":27},"updated":"2020-02-18 22:27:27.000000000","message":"When this occurs k8s will interpret the liveness probe as successful even though a previous probe is stalling in the background. I\u0027m not sure - could there be negative side effects if this happens?","commit_id":"414b10fab073ba3a8a800b1635a5f812ed81d110"},{"author":{"_account_id":24780,"name":"Sangeet Gupta","email":"sg774j@att.com","username":"sgupta"},"change_message_id":"3060a59fd04499706531a7bc2f92b6ca8cd91fa8","unresolved":false,"context_lines":[{"line_number":318,"context_line":"                data[\u0027exit_count\u0027] \u003d data[\u0027exit_count\u0027] + 1"},{"line_number":319,"context_line":"                with open(pidfile, \u0027w\u0027) as f:"},{"line_number":320,"context_line":"                    json.dump(data, f)"},{"line_number":321,"context_line":"                sys.exit(0)"},{"line_number":322,"context_line":"    data[\u0027pid\u0027] \u003d os.getpid()"},{"line_number":323,"context_line":"    data[\u0027exit_count\u0027] \u003d 0"},{"line_number":324,"context_line":"    with open(pidfile, \u0027w\u0027) as f:"}],"source_content_type":"text/x-smarty","patch_set":14,"id":"3fa7e38b_a2682e89","line":321,"range":{"start_line":321,"start_character":16,"end_line":321,"end_character":27},"in_reply_to":"3fa7e38b_1cd0892a","updated":"2020-02-19 01:12:48.000000000","message":"The idea is to wait for the previous probe to finish or k8s timesout to happen. We do not want multiple probes pending. Also, if we return 1, k8s will mark it as failed probe which is false failure and will counts towards failureThreshold. Which we do not want.","commit_id":"414b10fab073ba3a8a800b1635a5f812ed81d110"}],"neutron/templates/daemonset-l2gw-agent.yaml":[{"author":{"_account_id":18256,"name":"Hemachandra Reddy","email":"hemachandra.reddy@att.com","username":"hr858f"},"change_message_id":"99b06059f92e6ba5dea1888b4d23b70ae9682826","unresolved":false,"context_lines":[{"line_number":81,"context_line":"                - --use-fqdn"},{"line_number":82,"context_line":"{{- end }}"},{"line_number":83,"context_line":"            initialDelaySeconds: 30"},{"line_number":84,"context_line":"            periodSeconds: 180"},{"line_number":85,"context_line":"            timeoutSeconds: 120"},{"line_number":86,"context_line":"          livenessProbe:"},{"line_number":87,"context_line":"            exec:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"3fa7e38b_2eddab6d","line":84,"range":{"start_line":84,"start_character":12,"end_line":84,"end_character":30},"updated":"2020-02-07 17:56:06.000000000","message":"Since the probe takes 180 seconds (60 seconds per try to RabbitMQ with two retries), I\u0027d increase it to 190 to be safe. The probe also does the other things along with talking to RabbitMQ.\n\nThis needs to be done everywhere.","commit_id":"6ed682720429da16ec93f7e1a001930d2509ba09"},{"author":{"_account_id":30746,"name":"Travis Neely","email":"travis.neely@att.com","username":"travis.neely@att.com"},"change_message_id":"dd5fd59be224d3ffd6d931203446373bf6928ee4","unresolved":false,"context_lines":[{"line_number":81,"context_line":"                - --use-fqdn"},{"line_number":82,"context_line":"{{- end }}"},{"line_number":83,"context_line":"            initialDelaySeconds: 30"},{"line_number":84,"context_line":"            periodSeconds: 180"},{"line_number":85,"context_line":"            timeoutSeconds: 120"},{"line_number":86,"context_line":"          livenessProbe:"},{"line_number":87,"context_line":"            exec:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"3fa7e38b_ce3c1793","line":84,"range":{"start_line":84,"start_character":12,"end_line":84,"end_character":30},"in_reply_to":"3fa7e38b_2eddab6d","updated":"2020-02-07 17:58:06.000000000","message":"I agree with Reddy, the extra 10 seconds give it a bit extra window in the worst case scenario.","commit_id":"6ed682720429da16ec93f7e1a001930d2509ba09"},{"author":{"_account_id":18256,"name":"Hemachandra Reddy","email":"hemachandra.reddy@att.com","username":"hr858f"},"change_message_id":"227061eaeeec15fcb66bad37085fff3aa62ad604","unresolved":false,"context_lines":[{"line_number":100,"context_line":"{{- end }}"},{"line_number":101,"context_line":"            initialDelaySeconds: 120"},{"line_number":102,"context_line":"            periodSeconds: 190"},{"line_number":103,"context_line":"            timeoutSeconds: 120"},{"line_number":104,"context_line":"          command:"},{"line_number":105,"context_line":"            - /tmp/neutron-l2gw-agent.sh"},{"line_number":106,"context_line":"          volumeMounts:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3fa7e38b_fb5af0f2","line":103,"range":{"start_line":103,"start_character":28,"end_line":103,"end_character":31},"updated":"2020-02-14 16:10:05.000000000","message":"185","commit_id":"73947515fcd2189c0100818eb5ac2bf5cc90eec2"},{"author":{"_account_id":18256,"name":"Hemachandra Reddy","email":"hemachandra.reddy@att.com","username":"hr858f"},"change_message_id":"227061eaeeec15fcb66bad37085fff3aa62ad604","unresolved":false,"context_lines":[{"line_number":81,"context_line":"                - --use-fqdn"},{"line_number":82,"context_line":"{{- end }}"},{"line_number":83,"context_line":"            initialDelaySeconds: 30"},{"line_number":84,"context_line":"            periodSeconds: 190"},{"line_number":85,"context_line":"            timeoutSeconds: 185"},{"line_number":86,"context_line":"          livenessProbe:"},{"line_number":87,"context_line":"            exec:"},{"line_number":88,"context_line":"              command:"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3fa7e38b_f2bb8ada","line":85,"range":{"start_line":84,"start_character":0,"end_line":85,"end_character":31},"updated":"2020-02-14 16:10:05.000000000","message":"These values (both readiness and liveness) needs to be tuned for other Neutron agents as well. They are defined in values.yaml","commit_id":"22efd58abe2959561c634d62e799e627765832a0"}],"nova/templates/bin/_health-probe.py.tpl":[{"author":{"_account_id":30746,"name":"Travis Neely","email":"travis.neely@att.com","username":"travis.neely@att.com"},"change_message_id":"dd5fd59be224d3ffd6d931203446373bf6928ee4","unresolved":false,"context_lines":[{"line_number":232,"context_line":"    else:"},{"line_number":233,"context_line":"        pidfile \u003d \"/run/readiness.pid\""},{"line_number":234,"context_line":"    if (os.path.isfile(pidfile) and check_pid_running(open(pidfile,\u0027r\u0027).readlines()[0])):"},{"line_number":235,"context_line":"        sys.exit(0)  # probe is already running, return success "},{"line_number":236,"context_line":"    else:"},{"line_number":237,"context_line":"        file \u003d open(pidfile, \u0027w\u0027)"},{"line_number":238,"context_line":"        file.write(str(os.getpid()))"}],"source_content_type":"text/x-smarty","patch_set":1,"id":"3fa7e38b_0ed22f5c","line":235,"range":{"start_line":235,"start_character":63,"end_line":235,"end_character":64},"updated":"2020-02-07 17:58:06.000000000","message":"Nitpick: Extra whitespace","commit_id":"6ed682720429da16ec93f7e1a001930d2509ba09"},{"author":{"_account_id":18256,"name":"Hemachandra Reddy","email":"hemachandra.reddy@att.com","username":"hr858f"},"change_message_id":"99b06059f92e6ba5dea1888b4d23b70ae9682826","unresolved":false,"context_lines":[{"line_number":232,"context_line":"    else:"},{"line_number":233,"context_line":"        pidfile \u003d \"/run/readiness.pid\""},{"line_number":234,"context_line":"    if (os.path.isfile(pidfile) and check_pid_running(open(pidfile,\u0027r\u0027).readlines()[0])):"},{"line_number":235,"context_line":"        sys.exit(0)  # probe is already running, return success "},{"line_number":236,"context_line":"    else:"},{"line_number":237,"context_line":"        file \u003d open(pidfile, \u0027w\u0027)"},{"line_number":238,"context_line":"        file.write(str(os.getpid()))"}],"source_content_type":"text/x-smarty","patch_set":1,"id":"3fa7e38b_eecc73bf","line":235,"range":{"start_line":235,"start_character":62,"end_line":235,"end_character":64},"updated":"2020-02-07 17:56:06.000000000","message":"nit: space","commit_id":"6ed682720429da16ec93f7e1a001930d2509ba09"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"bcc92e1f4bc8dfbf1f36f69b496ac0f152e3107d","unresolved":false,"context_lines":[{"line_number":227,"context_line":""},{"line_number":228,"context_line":"if __name__ \u003d\u003d \"__main__\":"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"    if \"liveness-probe\" in \u0027,\u0027.join(sys.argv):"},{"line_number":231,"context_line":"        pidfile \u003d \"/run/liveness.pid\""},{"line_number":232,"context_line":"    else:"},{"line_number":233,"context_line":"        pidfile \u003d \"/run/readiness.pid\""},{"line_number":234,"context_line":"    if (os.path.isfile(pidfile) and check_pid_running(open(pidfile,\u0027r\u0027).readlines()[0])):"},{"line_number":235,"context_line":"        sys.exit(0)  # probe is already running, return success"},{"line_number":236,"context_line":"    else:"},{"line_number":237,"context_line":"        with open(pidfile, \u0027w\u0027) as f:"},{"line_number":238,"context_line":"            f.write(str(os.getpid()))"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"    test_rpc_liveness()"},{"line_number":241,"context_line":""}],"source_content_type":"text/x-smarty","patch_set":3,"id":"3fa7e38b_1a481b60","line":238,"range":{"start_line":230,"start_character":0,"end_line":238,"end_character":37},"updated":"2020-02-10 06:02:43.000000000","message":"this will likely cause a permission error.","commit_id":"0999a18195d9f53e92b7923808a9155e20d38c04"},{"author":{"_account_id":24780,"name":"Sangeet Gupta","email":"sg774j@att.com","username":"sgupta"},"change_message_id":"7d6d62f5ac8a9e90337956ff56a678eb88570142","unresolved":false,"context_lines":[{"line_number":227,"context_line":""},{"line_number":228,"context_line":"if __name__ \u003d\u003d \"__main__\":"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"    if \"liveness-probe\" in \u0027,\u0027.join(sys.argv):"},{"line_number":231,"context_line":"        pidfile \u003d \"/run/liveness.pid\""},{"line_number":232,"context_line":"    else:"},{"line_number":233,"context_line":"        pidfile \u003d \"/run/readiness.pid\""},{"line_number":234,"context_line":"    if (os.path.isfile(pidfile) and check_pid_running(open(pidfile,\u0027r\u0027).readlines()[0])):"},{"line_number":235,"context_line":"        sys.exit(0)  # probe is already running, return success"},{"line_number":236,"context_line":"    else:"},{"line_number":237,"context_line":"        with open(pidfile, \u0027w\u0027) as f:"},{"line_number":238,"context_line":"            f.write(str(os.getpid()))"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"    test_rpc_liveness()"},{"line_number":241,"context_line":""}],"source_content_type":"text/x-smarty","patch_set":3,"id":"3fa7e38b_928627b7","line":238,"range":{"start_line":230,"start_character":0,"end_line":238,"end_character":37},"in_reply_to":"3fa7e38b_1a481b60","updated":"2020-02-10 16:50:47.000000000","message":"yes .. that is correct since it is readonly file system. May have to use rootwrap.","commit_id":"0999a18195d9f53e92b7923808a9155e20d38c04"},{"author":{"_account_id":28025,"name":"Randeep Jalli","email":"rj2083@att.com","username":"randeep.jalli"},"change_message_id":"68d0096a265c57d2b8a4f35ae7c74a7191a047f4","unresolved":false,"context_lines":[{"line_number":227,"context_line":""},{"line_number":228,"context_line":"if __name__ \u003d\u003d \"__main__\":"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"    if \"liveness-probe\" in \u0027,\u0027.join(sys.argv):"},{"line_number":231,"context_line":"        pidfile \u003d \"/run/liveness.pid\""},{"line_number":232,"context_line":"    else:"},{"line_number":233,"context_line":"        pidfile \u003d \"/run/readiness.pid\""},{"line_number":234,"context_line":"    if (os.path.isfile(pidfile) and check_pid_running(open(pidfile,\u0027r\u0027).readlines()[0])):"},{"line_number":235,"context_line":"        sys.exit(0)  # probe is already running, return success"},{"line_number":236,"context_line":"    else:"},{"line_number":237,"context_line":"        with open(pidfile, \u0027w\u0027) as f:"},{"line_number":238,"context_line":"            f.write(str(os.getpid()))"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"    test_rpc_liveness()"},{"line_number":241,"context_line":""}],"source_content_type":"text/x-smarty","patch_set":3,"id":"3fa7e38b_e32990f0","line":238,"range":{"start_line":230,"start_character":0,"end_line":238,"end_character":37},"in_reply_to":"3fa7e38b_928627b7","updated":"2020-02-13 19:29:55.000000000","message":"there\u0027s a /tmp/pod-shared directory that\u0027s an empty dir, maybe you wanna put it there, when readonly rootfs is applied, no matter what user you run as, I believe because the volume is mounted as ReadOnly,  you won\u0027t be able to write.","commit_id":"0999a18195d9f53e92b7923808a9155e20d38c04"},{"author":{"_account_id":18256,"name":"Hemachandra Reddy","email":"hemachandra.reddy@att.com","username":"hr858f"},"change_message_id":"8340e611341bfa133d2ceeccfee0b255d52185c5","unresolved":false,"context_lines":[{"line_number":243,"context_line":"                os.kill(int(data[\u0027pid\u0027]), signal.SIGTERM)"},{"line_number":244,"context_line":"            else:"},{"line_number":245,"context_line":"                data[\u0027exit_count\u0027] \u003d data[\u0027exit_count\u0027] + 1"},{"line_number":246,"context_line":"                with open(pidfile, \u0027w\u0027) as f:"},{"line_number":247,"context_line":"                    json.dump(data, f)"},{"line_number":248,"context_line":"                sys.exit(0)"},{"line_number":249,"context_line":"    data[\u0027pid\u0027] \u003d os.getpid()"}],"source_content_type":"text/x-smarty","patch_set":14,"id":"3fa7e38b_22368552","line":246,"range":{"start_line":246,"start_character":16,"end_line":246,"end_character":45},"updated":"2020-02-18 17:47:17.000000000","message":"Is it required? The file is already open in L238 and is not closed yet.","commit_id":"414b10fab073ba3a8a800b1635a5f812ed81d110"},{"author":{"_account_id":21420,"name":"Gage Hugo","email":"gagehugo@gmail.com","username":"ghugo"},"change_message_id":"bf6679ea6812685e6c5163d43f7d8c36248f151e","unresolved":false,"context_lines":[{"line_number":243,"context_line":"                os.kill(int(data[\u0027pid\u0027]), signal.SIGTERM)"},{"line_number":244,"context_line":"            else:"},{"line_number":245,"context_line":"                data[\u0027exit_count\u0027] \u003d data[\u0027exit_count\u0027] + 1"},{"line_number":246,"context_line":"                with open(pidfile, \u0027w\u0027) as f:"},{"line_number":247,"context_line":"                    json.dump(data, f)"},{"line_number":248,"context_line":"                sys.exit(0)"},{"line_number":249,"context_line":"    data[\u0027pid\u0027] \u003d os.getpid()"}],"source_content_type":"text/x-smarty","patch_set":14,"id":"3fa7e38b_3c89c56f","line":246,"range":{"start_line":246,"start_character":16,"end_line":246,"end_character":45},"in_reply_to":"3fa7e38b_22368552","updated":"2020-02-18 22:11:56.000000000","message":"When you open using the \"with\" statement, it automatically calls close when you exit the statement.","commit_id":"414b10fab073ba3a8a800b1635a5f812ed81d110"}]}
