)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17896,"name":"Rick Bartra","email":"rickbartra@microsoft.com","username":"rb560u"},"change_message_id":"3f929f4070f267a3f319c91cd6071777e8e3e824","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patchset aims to add HA Clustering support for Postgres. HA Clustering"},{"line_number":10,"context_line":"provides automatic failover in the event of the database going down in addition"},{"line_number":11,"context_line":"to keeping replicas of the database for rebuilding in the even of a node"},{"line_number":12,"context_line":"going down. To achieve this clustering we use"},{"line_number":13,"context_line":"[Patroni](https://github.com/zalando/patroni) which offers HA clustering"},{"line_number":14,"context_line":"support for Postgres."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":72,"id":"ffb9cba7_39c96225","line":11,"range":{"start_line":11,"start_character":58,"end_line":11,"end_character":62},"updated":"2019-04-29 20:06:44.000000000","message":"nit: event","commit_id":"3bca9dc7422ea265091ecf6297aaeaa5004f9053"}],"patroni/Chart.yaml":[{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"ecbb536315207afe250f985a1f499a39f34a0f62","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2017 The Openstack-Helm Authors."},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\");"},{"line_number":4,"context_line":"# you may not use this file except in compliance with the License."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"5fc1f717_96c79265","line":1,"range":{"start_line":1,"start_character":12,"end_line":1,"end_character":16},"updated":"2019-03-19 04:47:37.000000000","message":"2019 - same goes to all other (c)","commit_id":"526d323bf765b32936e0cef23063b7e85179eb45"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"ecbb536315207afe250f985a1f499a39f34a0f62","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# limitations under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"apiVersion: v1"},{"line_number":16,"context_line":"description: OpenStack-Helm PostgreSQL"},{"line_number":17,"context_line":"name: patroni"},{"line_number":18,"context_line":"version: 0.1.0"},{"line_number":19,"context_line":"home: https://www.postgresql.org"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"5fc1f717_f6ca966c","line":16,"range":{"start_line":16,"start_character":13,"end_line":16,"end_character":38},"updated":"2019-03-19 04:47:37.000000000","message":"should this be about patroni and not PSQL?","commit_id":"526d323bf765b32936e0cef23063b7e85179eb45"}],"patroni/requirements.yaml":[{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"ecbb536315207afe250f985a1f499a39f34a0f62","unresolved":false,"context_lines":[{"line_number":1,"context_line":""},{"line_number":2,"context_line":"# Copyright 2017 The Openstack-Helm Authors."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\");"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"5fc1f717_569fea64","line":1,"updated":"2019-03-19 04:47:37.000000000","message":"blank line","commit_id":"526d323bf765b32936e0cef23063b7e85179eb45"}],"patroni/templates/configmap-bin.yaml":[{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"ecbb536315207afe250f985a1f499a39f34a0f62","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"{{- if .Values.manifests.configmap_bin }}"},{"line_number":18,"context_line":"{{- $envAll :\u003d . }}"},{"line_number":19,"context_line":"{{- $configMapBinName :\u003d printf \"%s-%s\" $envAll.Release.Name \"etcd-bin\"  }}"},{"line_number":20,"context_line":"---"},{"line_number":21,"context_line":"apiVersion: v1"},{"line_number":22,"context_line":"kind: ConfigMap"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"5fc1f717_56884a21","line":19,"range":{"start_line":19,"start_character":4,"end_line":19,"end_character":69},"updated":"2019-03-19 04:47:37.000000000","message":"is this unused?","commit_id":"526d323bf765b32936e0cef23063b7e85179eb45"}],"patroni/templates/service.yaml":[{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"ecbb536315207afe250f985a1f499a39f34a0f62","unresolved":false,"context_lines":[{"line_number":24,"context_line":"spec:"},{"line_number":25,"context_line":"  ports:"},{"line_number":26,"context_line":"    - name: postgresql"},{"line_number":27,"context_line":"      port: 5432"},{"line_number":28,"context_line":"      targetPort: 5432"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"  selector:"},{"line_number":31,"context_line":"{{ tuple $envAll \"postgresql\" \"server\" | include \"helm-toolkit.snippets.kubernetes_metadata_labels\" | indent 8 }}"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"5fc1f717_7692264e","line":28,"range":{"start_line":27,"start_character":0,"end_line":28,"end_character":22},"updated":"2019-03-19 04:47:37.000000000","message":"should be using endpoint_port_lookup instead of hardcoding these values here","commit_id":"526d323bf765b32936e0cef23063b7e85179eb45"}],"postgresql/templates/bin/_patroni_conversion.sh.tpl":[{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"f67d7e2a326e6d6b7a92e9cfa53d01820cc9d915","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"set -e"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"# TODO: remove"},{"line_number":15,"context_line":"set -x"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"PGDATABASE\u003d${PGDATABASE:-\u0027postgres\u0027}"},{"line_number":18,"context_line":"PGHOST\u003d${PGHOST:-\u0027127.0.0.1\u0027}"}],"source_content_type":"text/x-smarty","patch_set":114,"id":"dfbec78f_3bbf21b1","line":15,"range":{"start_line":14,"start_character":0,"end_line":15,"end_character":6},"updated":"2019-05-12 16:25:15.000000000","message":"should this be removed?","commit_id":"116a37752c77e1e235d1d5b8c6a0093744bf8421"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"32393f9d95a023927bc12c1cff3fb00a67ff4e63","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"set -e"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"# TODO: remove"},{"line_number":15,"context_line":"set -x"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"PGDATABASE\u003d${PGDATABASE:-\u0027postgres\u0027}"},{"line_number":18,"context_line":"PGHOST\u003d${PGHOST:-\u0027127.0.0.1\u0027}"}],"source_content_type":"text/x-smarty","patch_set":114,"id":"dfbec78f_5b4695c2","line":15,"range":{"start_line":14,"start_character":0,"end_line":15,"end_character":6},"in_reply_to":"dfbec78f_3bbf21b1","updated":"2019-05-12 16:53:47.000000000","message":"Before committing yes - I added it to try to debug an issue I didn\u0027t see locally.  I\u0027ll put WF-1 on this for now.","commit_id":"116a37752c77e1e235d1d5b8c6a0093744bf8421"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"b2e474a03ebba9c5667e07e36ab35ab68dbb06f7","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"set -e"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"# TODO: remove"},{"line_number":15,"context_line":"set -x"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"PGDATABASE\u003d${PGDATABASE:-\u0027postgres\u0027}"},{"line_number":18,"context_line":"PGHOST\u003d${PGHOST:-\u0027127.0.0.1\u0027}"}],"source_content_type":"text/x-smarty","patch_set":114,"id":"dfbec78f_4180e4c0","line":15,"range":{"start_line":14,"start_character":0,"end_line":15,"end_character":6},"in_reply_to":"dfbec78f_5b4695c2","updated":"2019-05-13 02:17:58.000000000","message":"Done","commit_id":"116a37752c77e1e235d1d5b8c6a0093744bf8421"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"d83cc8f0649ca428387ebfb7deef3a10a02d5ef1","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  echo \"We are upgrading to Patroni -- checking for replication user\""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"  # Fire up a temporary postgres"},{"line_number":53,"context_line":"  /docker-entrypoint.sh postgres \u0026"},{"line_number":54,"context_line":"  while ! $PSQL -c \"select 1;\"; do"},{"line_number":55,"context_line":"    sleep 1"},{"line_number":56,"context_line":"  done"}],"source_content_type":"text/x-smarty","patch_set":119,"id":"dfbec78f_d5a56848","line":53,"updated":"2019-05-13 15:12:19.000000000","message":"why not do this via --single, ala: https://github.com/openstack/openstack-helm-infra/blob/master/postgresql/templates/bin/_start.sh.tpl#L32-L34","commit_id":"031e3fe8bf5a4972e32a9c39195a7af616d6972d"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"e50bf0a74f4182c490c78512892f3c992fc86ee6","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  echo \"We are upgrading to Patroni -- checking for replication user\""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"  # Fire up a temporary postgres"},{"line_number":53,"context_line":"  /docker-entrypoint.sh postgres \u0026"},{"line_number":54,"context_line":"  while ! $PSQL -c \"select 1;\"; do"},{"line_number":55,"context_line":"    sleep 1"},{"line_number":56,"context_line":"  done"}],"source_content_type":"text/x-smarty","patch_set":119,"id":"dfbec78f_bb8ea376","line":53,"in_reply_to":"dfbec78f_1893355d","updated":"2019-05-13 17:19:52.000000000","message":"roger - in that case, we should update the while loops to have a timeout - so we dont risk being caught here forever.","commit_id":"031e3fe8bf5a4972e32a9c39195a7af616d6972d"},{"author":{"_account_id":28718,"name":"Doug Aaser","email":"douglas.aaser@att.com","username":"daaser"},"change_message_id":"0d0f5de722cf44b84aace1a723f8dc113c128371","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  echo \"We are upgrading to Patroni -- checking for replication user\""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"  # Fire up a temporary postgres"},{"line_number":53,"context_line":"  /docker-entrypoint.sh postgres \u0026"},{"line_number":54,"context_line":"  while ! $PSQL -c \"select 1;\"; do"},{"line_number":55,"context_line":"    sleep 1"},{"line_number":56,"context_line":"  done"}],"source_content_type":"text/x-smarty","patch_set":119,"id":"dfbec78f_fe8969c9","line":53,"in_reply_to":"dfbec78f_bb8ea376","updated":"2019-05-13 17:33:52.000000000","message":"I\u0027m going to go ahead and add a 2 min timeout. Should be more than long enough.","commit_id":"031e3fe8bf5a4972e32a9c39195a7af616d6972d"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"15b4f6ac27d85131e08f223c82cd803c4048eb8c","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  echo \"We are upgrading to Patroni -- checking for replication user\""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"  # Fire up a temporary postgres"},{"line_number":53,"context_line":"  /docker-entrypoint.sh postgres \u0026"},{"line_number":54,"context_line":"  while ! $PSQL -c \"select 1;\"; do"},{"line_number":55,"context_line":"    sleep 1"},{"line_number":56,"context_line":"  done"}],"source_content_type":"text/x-smarty","patch_set":119,"id":"dfbec78f_1893355d","line":53,"in_reply_to":"dfbec78f_d5a56848","updated":"2019-05-13 15:40:39.000000000","message":"If we just needed to check for/add the replication user, then I think single-user mode would be better.  However, the \"convert to patroni\" doc advises to start up a full postgres, so that patroni can take it over and configure it properly.","commit_id":"031e3fe8bf5a4972e32a9c39195a7af616d6972d"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"87c295563d5fad52e69e70be7c0596f369c233d7","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    if [[ $TIMEOUT -gt 120 ]]; then"},{"line_number":59,"context_line":"      exit 1"},{"line_number":60,"context_line":"    fi"},{"line_number":61,"context_line":"    ((TIMEOUT++))"},{"line_number":62,"context_line":"  done"},{"line_number":63,"context_line":"  TIMEOUT\u003d0"},{"line_number":64,"context_line":""}],"source_content_type":"text/x-smarty","patch_set":120,"id":"dfbec78f_12a6a054","line":61,"updated":"2019-05-14 15:10:05.000000000","message":"This returns 1 upon first increment, and exits the script","commit_id":"0a179724f38318946e65761e866a0dc0330c7a1a"}],"postgresql/templates/bin/_readiness.sh.tpl":[{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/usr/bin/env bash"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"{{/*"},{"line_number":4,"context_line":"Copyright 2019 The Openstack-Helm Authors."}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_442fbbf5","line":1,"updated":"2019-04-25 22:55:08.000000000","message":"i wonder if using a similar format to the one implemented for MariaDB (https://github.com/openstack/openstack-helm-infra/blob/master/mariadb/templates/bin/_readiness.sh.tpl)  may be more readable here - also not, in general, we want to suppress stdout in readiness checks as they create a large amount of noise in things like `kubectl describe`","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":42,"context_line":"  # Check to see if that Postgres instance is ready"},{"line_number":43,"context_line":"  leader_host\u003d`patronictl list | grep Leader | grep running | awk \u0027{ print $6 }\u0027`"},{"line_number":44,"context_line":"  pg_isready -h ${leader_host} -U ${PATRONI_SUPERUSER_USERNAME} -p ${postgres_port}"},{"line_number":45,"context_line":"  leader_ready\u003d$?"},{"line_number":46,"context_line":"else"},{"line_number":47,"context_line":"  leader_ready\u003d1"},{"line_number":48,"context_line":"fi"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_c4c72b45","line":45,"range":{"start_line":45,"start_character":2,"end_line":45,"end_character":17},"updated":"2019-04-25 22:55:08.000000000","message":"considering set -e above, how would we ever get here?","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":48,"context_line":"fi"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# Check to see if the Patroni REST API has a configuration for Postgres"},{"line_number":51,"context_line":"patroni_config_count\u003d`curl -s ${PATRONI_RESTAPI_LISTEN}/config | jq . | grep -c \u0027\"postgresql\": \u0027`"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"# Check to see if local Postgres instance is reade (regardles if it is the Leader)"},{"line_number":54,"context_line":"pg_isready -h ${local_host_name} -U ${PATRONI_SUPERUSER_USERNAME} -p ${postgres_port}"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_e4b26fe6","line":51,"updated":"2019-04-25 22:55:08.000000000","message":"is this line ever used?","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":17896,"name":"Rick Bartra","email":"rickbartra@microsoft.com","username":"rb560u"},"change_message_id":"3f929f4070f267a3f319c91cd6071777e8e3e824","unresolved":false,"context_lines":[{"line_number":48,"context_line":"#  leader_ready\u003d1"},{"line_number":49,"context_line":"#fi"},{"line_number":50,"context_line":"#"},{"line_number":51,"context_line":"## Check to see if local Postgres instance is reade (regardles if it is the Leader)"},{"line_number":52,"context_line":"#pg_isready -h ${local_host_name} -U ${PATRONI_SUPERUSER_USERNAME}"},{"line_number":53,"context_line":"#local_pg_ready\u003d$?"},{"line_number":54,"context_line":"#"}],"source_content_type":"text/x-smarty","patch_set":72,"id":"ffb9cba7_b9055248","line":51,"range":{"start_line":51,"start_character":46,"end_line":51,"end_character":51},"updated":"2019-04-29 20:06:44.000000000","message":"nit: ready","commit_id":"3bca9dc7422ea265091ecf6297aaeaa5004f9053"}],"postgresql/templates/bin/_set_password.sh.tpl":[{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"3bb78874f27098403d147077f59290fae1027e8c","unresolved":false,"context_lines":[{"line_number":20,"context_line":"PGHOST\u003d${PGHOST:-\u0027127.0.0.1\u0027}"},{"line_number":21,"context_line":"PGPORT\u003d${PGPORT:-\u00275432\u0027}"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"action\u003d\"$1\""},{"line_number":24,"context_line":"role\u003d\"$2\""},{"line_number":25,"context_line":"cluster\u003d\"$3\""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"if [[ ! -z \"$PATRONI_SUPERUSER_PASSWORD\" \u0026\u0026 ! -z \"$PATRONI_SUPERUSER_USERNAME\" ]]"},{"line_number":28,"context_line":"then"}],"source_content_type":"text/x-smarty","patch_set":93,"id":"dfbec78f_699e7855","line":25,"range":{"start_line":23,"start_character":0,"end_line":25,"end_character":12},"updated":"2019-05-08 01:50:29.000000000","message":"These don\u0027t appear to be used?","commit_id":"63ac81037641d8badc0caf3a0ecc56d4a8fc0502"},{"author":{"_account_id":17591,"name":"Steve Wilkerson","email":"wilkers.steve@gmail.com","username":"srwilkers"},"change_message_id":"6e34c0c4a6cd5a311986443e35e857ca393f982e","unresolved":false,"context_lines":[{"line_number":25,"context_line":"role\u003d\"$2\""},{"line_number":26,"context_line":"cluster\u003d\"$3\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"# Note: this script when rendered is stored in a secret and encrypted to disk."},{"line_number":29,"context_line":"PATRONI_SUPERUSER_USERNAME\u003d{{ .Values.endpoints.postgresql.auth.admin.username }}"},{"line_number":30,"context_line":"PATRONI_SUPERUSER_PASSWORD\u003d{{ .Values.endpoints.postgresql.auth.admin.password }}"},{"line_number":31,"context_line":"PATRONI_REPLICATION_USERNAME\u003d{{ .Values.endpoints.postgresql.auth.replica.username }}"},{"line_number":32,"context_line":"PATRONI_REPLICATION_PASSWORD\u003d{{ .Values.endpoints.postgresql.auth.replica.password }}"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"if [[ x${role} \u003d\u003d \"xmaster\" ]]; then"},{"line_number":35,"context_line":"  echo \"I have become the patroni master: updating superuser and replication passwords\""}],"source_content_type":"text/x-smarty","patch_set":137,"id":"bfb3d3c7_8fa26bfb","line":32,"range":{"start_line":28,"start_character":0,"end_line":32,"end_character":85},"updated":"2019-05-28 16:58:46.000000000","message":"Why not just add these values to a secret specific to user credentials and inject them as env variables in the pod that executes this script?  that\u0027s the pattern we\u0027ve laid out with other charts","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"},{"author":{"_account_id":28718,"name":"Doug Aaser","email":"douglas.aaser@att.com","username":"daaser"},"change_message_id":"ceaa3c8f2d24c99478a5ed395a2b6dec973d1c34","unresolved":false,"context_lines":[{"line_number":25,"context_line":"role\u003d\"$2\""},{"line_number":26,"context_line":"cluster\u003d\"$3\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"# Note: this script when rendered is stored in a secret and encrypted to disk."},{"line_number":29,"context_line":"PATRONI_SUPERUSER_USERNAME\u003d{{ .Values.endpoints.postgresql.auth.admin.username }}"},{"line_number":30,"context_line":"PATRONI_SUPERUSER_PASSWORD\u003d{{ .Values.endpoints.postgresql.auth.admin.password }}"},{"line_number":31,"context_line":"PATRONI_REPLICATION_USERNAME\u003d{{ .Values.endpoints.postgresql.auth.replica.username }}"},{"line_number":32,"context_line":"PATRONI_REPLICATION_PASSWORD\u003d{{ .Values.endpoints.postgresql.auth.replica.password }}"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"if [[ x${role} \u003d\u003d \"xmaster\" ]]; then"},{"line_number":35,"context_line":"  echo \"I have become the patroni master: updating superuser and replication passwords\""}],"source_content_type":"text/x-smarty","patch_set":137,"id":"bfb3d3c7_2f725f4a","line":32,"range":{"start_line":28,"start_character":0,"end_line":32,"end_character":85},"in_reply_to":"bfb3d3c7_8fa26bfb","updated":"2019-05-28 17:19:33.000000000","message":"This script is called via a Patroni callback. We found that there is no way to get access the injected env variables from a callback script so we had to do this.","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"}],"postgresql/templates/bin/_start.sh.tpl":[{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"set -ex"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"cat \u003e /home/postgres/patroni.yml \u003c\u003c__EOF__"},{"line_number":22,"context_line":"namespace: ${PATRONI_KUBERNETES_NAMESPACE}"},{"line_number":23,"context_line":"#scope: ${PATRONI_KUBERNETES_SCOPE_LABEL}"},{"line_number":24,"context_line":"name: ${PATRONI_NAME}"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_049d4358","line":21,"range":{"start_line":21,"start_character":0,"end_line":21,"end_character":42},"updated":"2019-04-25 22:55:08.000000000","message":"this entire file should be driven via https://github.com/openstack/openstack-helm-infra/blob/master/helm-toolkit/templates/snippets/_values_template_renderer.tpl, in particular, the example on line31 may be useful here.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    postgresql:"},{"line_number":38,"context_line":"      use_pg_rewind: true"},{"line_number":39,"context_line":"      parameters:"},{"line_number":40,"context_line":"        archive_mode: \u0027on\u0027"},{"line_number":41,"context_line":"        archive_timeout: 1800s"},{"line_number":42,"context_line":"        autovacuum_analyze_scale_factor: 0.02"},{"line_number":43,"context_line":"        autovacuum_max_workers: 5"},{"line_number":44,"context_line":"        autovacuum_vacuum_scale_factor: 0.05"},{"line_number":45,"context_line":"        checkpoint_completion_target: 0.9"},{"line_number":46,"context_line":"        datestyle: \u0027iso, mdy\u0027"},{"line_number":47,"context_line":"        default_text_search_config: \u0027pg_catalog.english\u0027"},{"line_number":48,"context_line":"        external_pid_file: \u0027/tmp/postgres.pid\u0027"},{"line_number":49,"context_line":"        hot_standby: \u0027on\u0027"},{"line_number":50,"context_line":"        lc_messages: \u0027en_US.utf8\u0027"},{"line_number":51,"context_line":"        lc_monetary: \u0027en_US.utf8\u0027"},{"line_number":52,"context_line":"        lc_numeric: \u0027en_US.utf8\u0027"},{"line_number":53,"context_line":"        lc_time: \u0027en_US.utf8\u0027"},{"line_number":54,"context_line":"        log_autovacuum_min_duration: 0"},{"line_number":55,"context_line":"        log_checkpoints: \u0027on\u0027"},{"line_number":56,"context_line":"        log_connections: \u0027on\u0027"},{"line_number":57,"context_line":"        log_disconnections: \u0027on\u0027"},{"line_number":58,"context_line":"        log_line_prefix: \u0027postgresql: %t [%p]: [%l-1] %c %x %d %u %a %h %m \u0027"},{"line_number":59,"context_line":"        log_lock_waits: \u0027on\u0027"},{"line_number":60,"context_line":"        log_min_duration_statement: 500"},{"line_number":61,"context_line":"        log_statement: ddl"},{"line_number":62,"context_line":"        log_temp_files: 0"},{"line_number":63,"context_line":"        log_timezone: \u0027UTC\u0027"},{"line_number":64,"context_line":"        max_connections: 1000"},{"line_number":65,"context_line":"        max_replication_slots: 10"},{"line_number":66,"context_line":"        max_wal_senders: 10"},{"line_number":67,"context_line":"        max_worker_processes: 10"},{"line_number":68,"context_line":"        tcp_keepalives_idle: 900"},{"line_number":69,"context_line":"        tcp_keepalives_interval: 100"},{"line_number":70,"context_line":"        timezone: \u0027UTC\u0027"},{"line_number":71,"context_line":"        track_commit_timestamp: \u0027on\u0027"},{"line_number":72,"context_line":"        track_functions: all"},{"line_number":73,"context_line":"        wal_keep_segments: 100"},{"line_number":74,"context_line":"        wal_level: \u0027logical\u0027"},{"line_number":75,"context_line":"        wal_log_hints: \u0027on\u0027"},{"line_number":76,"context_line":"  initdb:"},{"line_number":77,"context_line":"  - auth-host: md5"},{"line_number":78,"context_line":"  - auth-local: trust"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_ab720ae2","line":75,"range":{"start_line":40,"start_character":0,"end_line":75,"end_character":27},"updated":"2019-04-25 20:05:14.000000000","message":"Can these be moved to values.yaml and then serialized here as yaml? That allows for any of these to be changed as well as additional postgres tunables to be added.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":79,"context_line":"  - encoding: UTF8"},{"line_number":80,"context_line":"  - locale: en_US.UTF-8"},{"line_number":81,"context_line":"  - data-checksums"},{"line_number":82,"context_line":"  pg_hba:"},{"line_number":83,"context_line":"  - host all all 0.0.0.0/0 md5"},{"line_number":84,"context_line":"  - host replication ${PATRONI_REPLICATION_USERNAME} 127.0.0.1/32 md5  # Fixes issue with Postgres 9.5"},{"line_number":85,"context_line":"  - host replication ${PATRONI_REPLICATION_USERNAME} ${PATRONI_KUBERNETES_POD_IP}/0 md5"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_cb141e51","line":82,"updated":"2019-04-25 20:05:14.000000000","message":"I think we may need to end up allowing connections from localhost w/o password to support admin password rotation.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":82,"context_line":"  pg_hba:"},{"line_number":83,"context_line":"  - host all all 0.0.0.0/0 md5"},{"line_number":84,"context_line":"  - host replication ${PATRONI_REPLICATION_USERNAME} 127.0.0.1/32 md5  # Fixes issue with Postgres 9.5"},{"line_number":85,"context_line":"  - host replication ${PATRONI_REPLICATION_USERNAME} ${PATRONI_KUBERNETES_POD_IP}/0 md5"},{"line_number":86,"context_line":"  users:"},{"line_number":87,"context_line":"    admin:"},{"line_number":88,"context_line":"      options:"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_0b647621","line":85,"range":{"start_line":85,"start_character":53,"end_line":85,"end_character":83},"updated":"2019-04-25 20:05:14.000000000","message":"Can we change this to be driven by an override which we can make the Pod CIDR of the cluster?","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":93,"context_line":"  listen: \u0027${PATRONI_KUBERNETES_POD_IP}:8008\u0027"},{"line_number":94,"context_line":"  connect_address: \u0027${PATRONI_KUBERNETES_POD_IP}:8008\u0027"},{"line_number":95,"context_line":"postgresql:"},{"line_number":96,"context_line":"  listen: \u0027${PATRONI_KUBERNETES_POD_IP}:5432\u0027"},{"line_number":97,"context_line":"  connect_address: \u0027${PATRONI_KUBERNETES_POD_IP}:5432\u0027"},{"line_number":98,"context_line":"  data_dir: ${PATRONI_POSTGRESQL_DATA_DIR}"},{"line_number":99,"context_line":"  pgpass: ${PATRONI_POSTGRESQL_PGPASS}"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_8b606603","line":96,"range":{"start_line":96,"start_character":40,"end_line":96,"end_character":44},"updated":"2019-04-25 20:05:14.000000000","message":"Make this macro driven to guarantee consistency w/ the service port","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":94,"context_line":"  connect_address: \u0027${PATRONI_KUBERNETES_POD_IP}:8008\u0027"},{"line_number":95,"context_line":"postgresql:"},{"line_number":96,"context_line":"  listen: \u0027${PATRONI_KUBERNETES_POD_IP}:5432\u0027"},{"line_number":97,"context_line":"  connect_address: \u0027${PATRONI_KUBERNETES_POD_IP}:5432\u0027"},{"line_number":98,"context_line":"  data_dir: ${PATRONI_POSTGRESQL_DATA_DIR}"},{"line_number":99,"context_line":"  pgpass: ${PATRONI_POSTGRESQL_PGPASS}"},{"line_number":100,"context_line":"  authentication:"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_ab5bea51","line":97,"range":{"start_line":97,"start_character":49,"end_line":97,"end_character":53},"updated":"2019-04-25 20:05:14.000000000","message":"ditto","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":114,"context_line":"#    on_stop: /callback.py"},{"line_number":115,"context_line":"#    on_role_change: /callback.py"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"unset PATRONI_SUPERUSER_PASSWORD PATRONI_REPLICATION_PASSWORD"},{"line_number":118,"context_line":"export KUBERNETES_NAMESPACE\u003d$PATRONI_KUBERNETES_NAMESPACE"},{"line_number":119,"context_line":"export POD_NAME\u003d$PATRONI_NAME"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"env | grep PATRONI | sort"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"exec /usr/bin/python3 /usr/local/bin/patroni /home/postgres/patroni.yml"}],"source_content_type":"text/x-smarty","patch_set":59,"id":"ffb9cba7_04d543b9","line":121,"range":{"start_line":117,"start_character":0,"end_line":121,"end_character":25},"updated":"2019-04-25 22:55:08.000000000","message":"this seems very risky for little benefit","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":17896,"name":"Rick Bartra","email":"rickbartra@microsoft.com","username":"rb560u"},"change_message_id":"3f929f4070f267a3f319c91cd6071777e8e3e824","unresolved":false,"context_lines":[{"line_number":25,"context_line":"{{- end }}"},{"line_number":26,"context_line":"set -e"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"cat \u003e /home/postgres/patroni.yml \u003c\u003c__EOF__"},{"line_number":29,"context_line":"name: ${PATRONI_NAME}"},{"line_number":30,"context_line":"scope: {{ tuple \"postgresql\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":31,"context_line":"namespace: ${PATRONI_KUBERNETES_NAMESPACE}"}],"source_content_type":"text/x-smarty","patch_set":72,"id":"ffb9cba7_19a25e4c","line":28,"range":{"start_line":28,"start_character":29,"end_line":28,"end_character":32},"updated":"2019-04-29 20:06:44.000000000","message":"nit: seems like \"yaml\" is more commonly used so maybe use that instead.","commit_id":"3bca9dc7422ea265091ecf6297aaeaa5004f9053"},{"author":{"_account_id":17591,"name":"Steve Wilkerson","email":"wilkers.steve@gmail.com","username":"srwilkers"},"change_message_id":"e1a85b4fbdb7e770263aa9f77cd9069149a5557f","unresolved":false,"context_lines":[{"line_number":25,"context_line":"{{- end }}"},{"line_number":26,"context_line":"set -e"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"cat \u003e /home/postgres/patroni.yaml \u003c\u003c__EOF__"},{"line_number":29,"context_line":"name: ${PATRONI_NAME}"},{"line_number":30,"context_line":"scope: {{ tuple \"postgresql\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":31,"context_line":"namespace: ${PATRONI_KUBERNETES_NAMESPACE}"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"kubernetes:"},{"line_number":34,"context_line":"  labels:"},{"line_number":35,"context_line":"    application: {{ tuple \"postgresql\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":36,"context_line":"    component: server"},{"line_number":37,"context_line":"  use_endpoints: true"},{"line_number":38,"context_line":"  pod_ip: ${PATRONI_KUBERNETES_POD_IP}"},{"line_number":39,"context_line":"  ports:"},{"line_number":40,"context_line":"  - name: {{ tuple \"postgresql\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":41,"context_line":"    port: {{ tuple \"postgresql\" \"internal\" \"postgresql\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":42,"context_line":"bootstrap:  # The other values in the startup configuration should not be overridden"},{"line_number":43,"context_line":"{{ .Values.conf.bootstrap | toYaml | indent 2 }}"},{"line_number":44,"context_line":"  initdb:"},{"line_number":45,"context_line":"  - auth-host: md5"},{"line_number":46,"context_line":"  - auth-local: trust"},{"line_number":47,"context_line":"  - encoding: UTF8"},{"line_number":48,"context_line":"  - locale: en_US.UTF-8"},{"line_number":49,"context_line":"  - data-checksums"},{"line_number":50,"context_line":"  pg_hba:"},{"line_number":51,"context_line":"  - host all all 0.0.0.0/0 md5"},{"line_number":52,"context_line":"  - host all all 127.0.0.1/32 trust"},{"line_number":53,"context_line":"  - host replication ${PATRONI_REPLICATION_USERNAME} 127.0.0.1/32 md5  # Fixes issue with Postgres 9.5"},{"line_number":54,"context_line":"  - host replication ${PATRONI_REPLICATION_USERNAME} ${PATRONI_KUBERNETES_POD_IP}/0 md5"},{"line_number":55,"context_line":"  users:"},{"line_number":56,"context_line":"    admin:"},{"line_number":57,"context_line":"      options:"},{"line_number":58,"context_line":"      - createrole"},{"line_number":59,"context_line":"      - createdb"},{"line_number":60,"context_line":"      password: \u0027${PATRONI_SUPERUSER_PASSWORD}\u0027"},{"line_number":61,"context_line":"restapi:"},{"line_number":62,"context_line":"  listen: 0.0.0.0:{{ tuple \"postgresql\" \"internal\" \"restapi\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":63,"context_line":"  connect_address: ${PATRONI_KUBERNETES_POD_IP}:{{ tuple \"postgresql\" \"internal\" \"restapi\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":64,"context_line":"postgresql:"},{"line_number":65,"context_line":"  listen: 0.0.0.0:{{ tuple \"postgresql\" \"internal\" \"postgresql\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":66,"context_line":"  connect_address: ${PATRONI_KUBERNETES_POD_IP}:{{ tuple \"postgresql\" \"internal\" \"postgresql\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":67,"context_line":"  data_dir: {{ .Values.storage.mount.path }}/{{ .Values.storage.mount.subpath }}"},{"line_number":68,"context_line":"  pgpass: /tmp/pgpass"},{"line_number":69,"context_line":"  parameters:"},{"line_number":70,"context_line":"    shared_buffers: {{ .Values.conf.postgresql.shared_buffers }}"},{"line_number":71,"context_line":"    max_connections: {{ .Values.conf.bootstrap.dcs.postgresql.max_connections }}"},{"line_number":72,"context_line":"watchdog:"},{"line_number":73,"context_line":"  mode: off  # Allowed values: off, automatic, required"},{"line_number":74,"context_line":"__EOF__"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"exec /usr/bin/python3 /usr/local/bin/patroni /home/postgres/patroni.yaml"}],"source_content_type":"text/x-smarty","patch_set":76,"id":"dfbec78f_b9737d80","line":74,"range":{"start_line":28,"start_character":0,"end_line":74,"end_character":7},"updated":"2019-05-06 15:45:39.000000000","message":"If we\u0027re not going to use the helm-toolkit template renderer for this configuration file, it instead needs to be defined as a template that is then included in the secret in the same manner as the other charts with yaml configuration files.  This configuration file should not be handled in this manner as part of the entrypoint override.","commit_id":"5265ce5f5046ddcf83ee573261d8ec2ab494fdff"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"f67d7e2a326e6d6b7a92e9cfa53d01820cc9d915","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    /home/postgres/patroni.yaml \u003e \\"},{"line_number":32,"context_line":"    /home/postgres/patroni-templated.yaml"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"cat /home/postgres/patroni-templated.yaml"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"exec /usr/bin/python3 /usr/local/bin/patroni /home/postgres/patroni-templated.yaml"}],"source_content_type":"text/x-smarty","patch_set":114,"id":"dfbec78f_fbb429d3","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":41},"updated":"2019-05-12 16:25:15.000000000","message":"do we need to cat the file?","commit_id":"116a37752c77e1e235d1d5b8c6a0093744bf8421"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"b2e474a03ebba9c5667e07e36ab35ab68dbb06f7","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    /home/postgres/patroni.yaml \u003e \\"},{"line_number":32,"context_line":"    /home/postgres/patroni-templated.yaml"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"cat /home/postgres/patroni-templated.yaml"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"exec /usr/bin/python3 /usr/local/bin/patroni /home/postgres/patroni-templated.yaml"}],"source_content_type":"text/x-smarty","patch_set":114,"id":"dfbec78f_a16e802c","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":41},"in_reply_to":"dfbec78f_1b16dda9","updated":"2019-05-13 02:17:58.000000000","message":"Done","commit_id":"116a37752c77e1e235d1d5b8c6a0093744bf8421"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"32393f9d95a023927bc12c1cff3fb00a67ff4e63","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    /home/postgres/patroni.yaml \u003e \\"},{"line_number":32,"context_line":"    /home/postgres/patroni-templated.yaml"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"cat /home/postgres/patroni-templated.yaml"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"exec /usr/bin/python3 /usr/local/bin/patroni /home/postgres/patroni-templated.yaml"}],"source_content_type":"text/x-smarty","patch_set":114,"id":"dfbec78f_1b16dda9","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":41},"in_reply_to":"dfbec78f_fbb429d3","updated":"2019-05-12 16:53:47.000000000","message":"Good catch, another debugging artifact.  I\u0027ll do a cleanup round on this before taking WF-1 off.","commit_id":"116a37752c77e1e235d1d5b8c6a0093744bf8421"},{"author":{"_account_id":27772,"name":"Smruti Soumitra Khuntia","email":"soumitra.khuntia@att.com","username":"soumitra.khuntia"},"change_message_id":"aa4850b18f5cfe5a2091341ddae158d0ab4eab82","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/usr/bin/env bash"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"{{/*"},{"line_number":4,"context_line":"Copyright 2019 The Openstack-Helm Authors."},{"line_number":5,"context_line":""},{"line_number":6,"context_line":"Licensed under the Apache License, Version 2.0 (the \"License\");"},{"line_number":7,"context_line":"you may not use this file except in compliance with the License."}],"source_content_type":"text/x-smarty","patch_set":119,"id":"dfbec78f_b5bc7406","line":4,"range":{"start_line":4,"start_character":10,"end_line":4,"end_character":14},"updated":"2019-05-13 14:50:46.000000000","message":"This is not a new file. Should this be updated?","commit_id":"031e3fe8bf5a4972e32a9c39195a7af616d6972d"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"3ba8d8bd5f70c3d4ac3d41efa62fc1c8fb77175c","unresolved":false,"context_lines":[{"line_number":31,"context_line":"function check_postgres_node_ready () {"},{"line_number":32,"context_line":"  TARGET_POD\u003d$1"},{"line_number":33,"context_line":"  POD_NAME_PREFIX\u003d\"$(echo \"${PATRONI_NAME}\" | awk \u0027BEGIN{FS\u003dOFS\u003d\"-\"}{NF--; print}\u0027)\""},{"line_number":34,"context_line":"  CLUSTER_SEED_NAME\u003d\"$(echo \"${PATRONI_NODENAME}\" | awk -F \"${PATRONI_NAME}.\" \"{ print \\\"${POD_NAME_PREFIX}-${TARGET_POD}.\\\" \\$2 }\")\""},{"line_number":35,"context_line":"  patroni_started \"${CLUSTER_SEED_NAME}\" \"{{ tuple \"postgresql\" \"internal\" \"restapi\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}\""},{"line_number":36,"context_line":"}"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-smarty","patch_set":131,"id":"bfb3d3c7_a187cdd7","line":34,"updated":"2019-05-20 14:29:47.000000000","message":"This is resolving to e.g.:\npostgresql-0.postgresql.osh-infra.svc.cluster.local\nThis won\u0027t work for our current setup (failing in the gate) because statefulset pod dns resolution requires a headless service without a Cluster IP.  The postgresql service has a Cluster IP -- we could potentially change this or add an additional service, but I\u0027m not convinced we need to.  Unlike RabbitMQ, which has strict sequencing needs, my reading of the patroni docs is just that \"there needs to be a master up\", then you can start all the other replicas in parallel.  I\u0027ll test this some more to confirm.","commit_id":"4e830a79c03fe4deec422cb43f6cff3ff074ea1b"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"cf3e48f984f87506487600b2c9d9f4fb480cc3ab","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    /tmp/patroni.yaml"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"FILE_MADE_BY_PATRONI\u003d${PGDATA}/patroni.dynamic.json"},{"line_number":40,"context_line":"if [[ ! $POD_NAME -eq \"postgresql-0\" ]]; then"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"  echo \"I am not postgresql pod zero: disabling liveness probe temporarily\""},{"line_number":43,"context_line":"  # disable liveness probe as it may take some time for the pod to come online"}],"source_content_type":"text/x-smarty","patch_set":137,"id":"bfb3d3c7_66cf2456","line":40,"range":{"start_line":40,"start_character":23,"end_line":40,"end_character":35},"updated":"2019-05-28 15:14:32.000000000","message":"This should be made dynamic in a follow-on patchset.","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"}],"postgresql/templates/configmap-bin.yaml":[{"author":{"_account_id":17591,"name":"Steve Wilkerson","email":"wilkers.steve@gmail.com","username":"srwilkers"},"change_message_id":"6e34c0c4a6cd5a311986443e35e857ca393f982e","unresolved":false,"context_lines":[{"line_number":20,"context_line":"---"},{"line_number":21,"context_line":"apiVersion: v1"},{"line_number":22,"context_line":"{{/* Note: this is a secret because credentials must be rendered into the password script. */}}"},{"line_number":23,"context_line":"kind: Secret"},{"line_number":24,"context_line":"metadata:"},{"line_number":25,"context_line":"  name: postgresql-bin"},{"line_number":26,"context_line":"type: Opaque"}],"source_content_type":"text/x-yaml","patch_set":137,"id":"bfb3d3c7_cf7703a0","line":23,"range":{"start_line":23,"start_character":6,"end_line":23,"end_character":12},"updated":"2019-05-28 16:58:46.000000000","message":"Why?","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"},{"author":{"_account_id":28718,"name":"Doug Aaser","email":"douglas.aaser@att.com","username":"daaser"},"change_message_id":"ceaa3c8f2d24c99478a5ed395a2b6dec973d1c34","unresolved":false,"context_lines":[{"line_number":20,"context_line":"---"},{"line_number":21,"context_line":"apiVersion: v1"},{"line_number":22,"context_line":"{{/* Note: this is a secret because credentials must be rendered into the password script. */}}"},{"line_number":23,"context_line":"kind: Secret"},{"line_number":24,"context_line":"metadata:"},{"line_number":25,"context_line":"  name: postgresql-bin"},{"line_number":26,"context_line":"type: Opaque"}],"source_content_type":"text/x-yaml","patch_set":137,"id":"bfb3d3c7_af02cf6d","line":23,"range":{"start_line":23,"start_character":6,"end_line":23,"end_character":12},"in_reply_to":"bfb3d3c7_cf7703a0","updated":"2019-05-28 17:19:33.000000000","message":"We are using passwords in the set_password.sh script","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"}],"postgresql/templates/secret-replica.yaml":[{"author":{"_account_id":17896,"name":"Rick Bartra","email":"rickbartra@microsoft.com","username":"rb560u"},"change_message_id":"3f929f4070f267a3f319c91cd6071777e8e3e824","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{{/*"},{"line_number":2,"context_line":"Copyright 2017 The Openstack-Helm Authors."},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"Licensed under the Apache License, Version 2.0 (the \"License\");"},{"line_number":5,"context_line":"you may not use this file except in compliance with the License."}],"source_content_type":"text/x-yaml","patch_set":72,"id":"ffb9cba7_d975a6cc","line":2,"range":{"start_line":2,"start_character":10,"end_line":2,"end_character":14},"updated":"2019-04-29 20:06:44.000000000","message":"nit: 2019","commit_id":"3bca9dc7422ea265091ecf6297aaeaa5004f9053"}],"postgresql/templates/service.yaml":[{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":20,"context_line":"apiVersion: v1"},{"line_number":21,"context_line":"kind: Service"},{"line_number":22,"context_line":"metadata:"},{"line_number":23,"context_line":"  name: {{ tuple \"postgresql\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":24,"context_line":"spec:"},{"line_number":25,"context_line":"  ports:"},{"line_number":26,"context_line":"    - name: postgresql"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_ce098c2c","line":23,"updated":"2019-04-25 20:05:14.000000000","message":"this name should be the same as the value of \u0027cluster-name\u0027 in the StatefulSet labels. So use this same macro to generate those label values.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":17591,"name":"Steve Wilkerson","email":"wilkers.steve@gmail.com","username":"srwilkers"},"change_message_id":"6e34c0c4a6cd5a311986443e35e857ca393f982e","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    - name: postgresql"},{"line_number":27,"context_line":"      port: {{ tuple \"postgresql\" \"internal\" \"postgresql\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":28,"context_line":"---"},{"line_number":29,"context_line":"apiVersion: v1"},{"line_number":30,"context_line":"kind: Service"},{"line_number":31,"context_line":"metadata:"},{"line_number":32,"context_line":"  name: {{ tuple \"postgresql-restapi\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":33,"context_line":"spec:"},{"line_number":34,"context_line":"  ports:"},{"line_number":35,"context_line":"    - name: restapi"},{"line_number":36,"context_line":"      port: {{ tuple \"postgresql-restapi\" \"internal\" \"restapi\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":37,"context_line":"  selector:"},{"line_number":38,"context_line":"{{ tuple $envAll \"postgresql\" \"server\" | include \"helm-toolkit.snippets.kubernetes_metadata_labels\" | indent 8 }}"},{"line_number":39,"context_line":"{{- end }}"}],"source_content_type":"text/x-yaml","patch_set":137,"id":"bfb3d3c7_efef671b","line":39,"range":{"start_line":29,"start_character":0,"end_line":39,"end_character":10},"updated":"2019-05-28 16:58:46.000000000","message":"Any reason this cant be moved to a separate template?","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"},{"author":{"_account_id":28718,"name":"Doug Aaser","email":"douglas.aaser@att.com","username":"daaser"},"change_message_id":"f2b01cf8a90e09d8439e72a9f67f30e06a8a2877","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    - name: postgresql"},{"line_number":27,"context_line":"      port: {{ tuple \"postgresql\" \"internal\" \"postgresql\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":28,"context_line":"---"},{"line_number":29,"context_line":"apiVersion: v1"},{"line_number":30,"context_line":"kind: Service"},{"line_number":31,"context_line":"metadata:"},{"line_number":32,"context_line":"  name: {{ tuple \"postgresql-restapi\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":33,"context_line":"spec:"},{"line_number":34,"context_line":"  ports:"},{"line_number":35,"context_line":"    - name: restapi"},{"line_number":36,"context_line":"      port: {{ tuple \"postgresql-restapi\" \"internal\" \"restapi\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":37,"context_line":"  selector:"},{"line_number":38,"context_line":"{{ tuple $envAll \"postgresql\" \"server\" | include \"helm-toolkit.snippets.kubernetes_metadata_labels\" | indent 8 }}"},{"line_number":39,"context_line":"{{- end }}"}],"source_content_type":"text/x-yaml","patch_set":137,"id":"bfb3d3c7_ba4d2b9b","line":39,"range":{"start_line":29,"start_character":0,"end_line":39,"end_character":10},"in_reply_to":"bfb3d3c7_efef671b","updated":"2019-05-28 18:30:05.000000000","message":"We thought it made sense to have them side-by-side but there\u0027s no other reason.","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"}],"postgresql/templates/statefulset.yaml":[{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":102,"context_line":"    {{ tuple $envAll | include \"helm-toolkit.snippets.release_uuid\" }}"},{"line_number":103,"context_line":"  labels:"},{"line_number":104,"context_line":"{{ tuple $envAll \"postgresql\" \"server\" | include \"helm-toolkit.snippets.kubernetes_metadata_labels\" | indent 4 }}"},{"line_number":105,"context_line":"    cluster-name: postgresql"},{"line_number":106,"context_line":"spec:"},{"line_number":107,"context_line":"  serviceName: {{ tuple \"postgresql\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":108,"context_line":"  replicas: {{ .Values.pod.replicas.server }}"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_ab09aa31","line":105,"range":{"start_line":105,"start_character":18,"end_line":105,"end_character":28},"updated":"2019-04-25 20:05:14.000000000","message":"this will need to be driven by an HTK macro to guarantee consistency, but allow flexibility.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":109,"context_line":"  selector:"},{"line_number":110,"context_line":"    matchLabels:"},{"line_number":111,"context_line":"{{ tuple $envAll \"postgresql\" \"server\" | include \"helm-toolkit.snippets.kubernetes_metadata_labels\" | indent 6 }}"},{"line_number":112,"context_line":"      cluster-name: postgresql"},{"line_number":113,"context_line":"  template:"},{"line_number":114,"context_line":"    metadata:"},{"line_number":115,"context_line":"      labels:"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_4b082e2b","line":112,"range":{"start_line":112,"start_character":20,"end_line":112,"end_character":30},"updated":"2019-04-25 20:05:14.000000000","message":"Ditto","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":114,"context_line":"    metadata:"},{"line_number":115,"context_line":"      labels:"},{"line_number":116,"context_line":"{{ tuple $envAll \"postgresql\" \"server\" | include \"helm-toolkit.snippets.kubernetes_metadata_labels\" | indent 8 }}"},{"line_number":117,"context_line":"        cluster-name: postgresql"},{"line_number":118,"context_line":"      annotations:"},{"line_number":119,"context_line":"{{ tuple $envAll | include \"helm-toolkit.snippets.release_uuid\" | indent 8 }}"},{"line_number":120,"context_line":"        configmap-bin-hash: {{ tuple \"configmap-bin.yaml\" . | include \"helm-toolkit.utils.hash\" }}"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_0e000401","line":117,"range":{"start_line":117,"start_character":22,"end_line":117,"end_character":32},"updated":"2019-04-25 20:05:14.000000000","message":"Ditto","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":146,"context_line":"{{ tuple $envAll \"postgresql\" | include \"helm-toolkit.snippets.image\" | indent 10 }}"},{"line_number":147,"context_line":"{{ tuple $envAll $envAll.Values.pod.resources.server | include \"helm-toolkit.snippets.kubernetes_resources\" | indent 10 }}"},{"line_number":148,"context_line":"          ports:"},{"line_number":149,"context_line":"            - containerPort: 8008"},{"line_number":150,"context_line":"              protocol: TCP"},{"line_number":151,"context_line":"            - containerPort: {{ tuple \"postgresql\" \"internal\" \"postgresql\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":152,"context_line":"              protocol: TCP"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_c43acb32","line":149,"range":{"start_line":149,"start_character":29,"end_line":149,"end_character":33},"updated":"2019-04-25 22:55:08.000000000","message":"should be driven by endpoints stanza.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":151,"context_line":"            - containerPort: {{ tuple \"postgresql\" \"internal\" \"postgresql\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}"},{"line_number":152,"context_line":"              protocol: TCP"},{"line_number":153,"context_line":"          env:"},{"line_number":154,"context_line":"#            - name: HTTP_PROXY"},{"line_number":155,"context_line":"#            - name: HTTPS_PROXY"},{"line_number":156,"context_line":"#            - name: http_proxy"},{"line_number":157,"context_line":"#            - name: https_proxy"},{"line_number":158,"context_line":"            - name: PATRONI_KUBERNETES_POD_IP"},{"line_number":159,"context_line":"              valueFrom:"},{"line_number":160,"context_line":"                fieldRef:"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_0439c33f","line":157,"range":{"start_line":154,"start_character":0,"end_line":157,"end_character":32},"updated":"2019-04-25 22:55:08.000000000","message":"not required","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":179,"context_line":"              valueFrom:"},{"line_number":180,"context_line":"                fieldRef:"},{"line_number":181,"context_line":"                  fieldPath: metadata.name"},{"line_number":182,"context_line":"            - name: PATRONI_KUBERNETES_LABELS"},{"line_number":183,"context_line":"              value: \u0027{application: postgresql, component: server}\u0027"},{"line_number":184,"context_line":"            - name: PATRONI_KUBERNETES_POD_IP"},{"line_number":185,"context_line":"              valueFrom:"},{"line_number":186,"context_line":"                fieldRef:"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_2463a744","line":183,"range":{"start_line":182,"start_character":0,"end_line":183,"end_character":67},"updated":"2019-04-25 22:55:08.000000000","message":"should not be hardcoded, with the suggested changes to the configuration file, I suspect none of these environment variables will be required.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":185,"context_line":"              valueFrom:"},{"line_number":186,"context_line":"                fieldRef:"},{"line_number":187,"context_line":"                  fieldPath: status.podIP"},{"line_number":188,"context_line":"            - name: PATRONI_KUBERNETES_PORTS"},{"line_number":189,"context_line":"              value: \u0027[{\"name\": \"postgresql\", \"port\": 5432}]\u0027"},{"line_number":190,"context_line":"            - name: PATRONI_SUPERUSER_USERNAME"},{"line_number":191,"context_line":"              valueFrom:"},{"line_number":192,"context_line":"                secretKeyRef:"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_84729310","line":189,"range":{"start_line":188,"start_character":0,"end_line":189,"end_character":61},"updated":"2019-04-25 22:55:08.000000000","message":"should not be hardcoded, with the suggested changes to the configuration file, I suspect none of these environment variables will be required.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":197,"context_line":"                secretKeyRef:"},{"line_number":198,"context_line":"                  name: {{ .Values.secrets.postgresql.admin }}"},{"line_number":199,"context_line":"                  key: \u0027POSTGRES_PASSWORD\u0027"},{"line_number":200,"context_line":"            - name: PATRONI_REPLICATION_USERNAME"},{"line_number":201,"context_line":"              value: standby"},{"line_number":202,"context_line":"            - name: PATRONI_REPLICATION_PASSWORD"},{"line_number":203,"context_line":"              valueFrom:"},{"line_number":204,"context_line":"                secretKeyRef:"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_447d7be5","line":201,"range":{"start_line":200,"start_character":0,"end_line":201,"end_character":28},"updated":"2019-04-25 22:55:08.000000000","message":"should be sourced from the secret","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"aadd091e8afa8641a4657bc5505c0def1031ba36","unresolved":false,"context_lines":[{"line_number":192,"context_line":"                secretKeyRef:"},{"line_number":193,"context_line":"                  name: {{ .Values.secrets.postgresql.admin }}"},{"line_number":194,"context_line":"                  key: \u0027POSTGRES_USER\u0027"},{"line_number":195,"context_line":"            - name: PATRONI_SUPERUSER_PASSWORD"},{"line_number":196,"context_line":"              valueFrom:"},{"line_number":197,"context_line":"                secretKeyRef:"},{"line_number":198,"context_line":"                  name: {{ .Values.secrets.postgresql.admin }}"},{"line_number":199,"context_line":"                  key: \u0027POSTGRES_PASSWORD\u0027"},{"line_number":200,"context_line":"            - name: PATRONI_REPLICATION_USERNAME"},{"line_number":201,"context_line":"              value: standby"},{"line_number":202,"context_line":"            - name: PATRONI_REPLICATION_PASSWORD"},{"line_number":203,"context_line":"              valueFrom:"},{"line_number":204,"context_line":"                secretKeyRef:"},{"line_number":205,"context_line":"                  name: {{ .Values.secrets.postgresql.admin }}"},{"line_number":206,"context_line":"                  key: \u0027POSTGRES_PASSWORD\u0027"},{"line_number":207,"context_line":"            - name: PATRONI_POSTGRESQL_DATA_DIR"},{"line_number":208,"context_line":"              value: {{ .Values.storage.mount.path }}/{{ .Values.storage.mount.subpath }}"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_048783d9","line":205,"range":{"start_line":195,"start_character":0,"end_line":205,"end_character":61},"updated":"2019-04-25 22:55:08.000000000","message":"these should reference separate secrets, each with their own, independent set of credentials driven by the endpoints section of the values.yaml","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":212,"context_line":"              value: \u00270.0.0.0:{{ tuple \"postgresql\" \"internal\" \"postgresql\" . | include \"helm-toolkit.endpoints.endpoint_port_lookup\" }}\u0027"},{"line_number":213,"context_line":"            - name: PATRONI_RESTAPI_LISTEN"},{"line_number":214,"context_line":"              value: \u00270.0.0.0:8008\u0027"},{"line_number":215,"context_line":"            - name: PATRONI_LOGLEVEL"},{"line_number":216,"context_line":"              value: \u0027DEBUG\u0027"},{"line_number":217,"context_line":"            - name: PATRONI_REQUESTS_LOGLEVEL"},{"line_number":218,"context_line":"              value: \u0027DEBUG\u0027"},{"line_number":219,"context_line":"          command:"},{"line_number":220,"context_line":"            - /tmp/start.sh"},{"line_number":221,"context_line":"          livenessProbe:"}],"source_content_type":"text/x-yaml","patch_set":59,"id":"ffb9cba7_ee0c903c","line":218,"range":{"start_line":215,"start_character":0,"end_line":218,"end_character":28},"updated":"2019-04-25 20:05:14.000000000","message":"Make this override driven","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":17896,"name":"Rick Bartra","email":"rickbartra@microsoft.com","username":"rb560u"},"change_message_id":"3f929f4070f267a3f319c91cd6071777e8e3e824","unresolved":false,"context_lines":[{"line_number":66,"context_line":"  # The following privilege is only necessary for creation of headless service"},{"line_number":67,"context_line":"  # for patronidemo-config endpoint, in order to prevent cleaning it up by the"},{"line_number":68,"context_line":"  # k8s master. You can avoid giving this privilege by explicitly creating the"},{"line_number":69,"context_line":"  # service like it is done in this manifest (lines 2..10)"},{"line_number":70,"context_line":"  - apiGroups:"},{"line_number":71,"context_line":"      - \"\""},{"line_number":72,"context_line":"    resources:"}],"source_content_type":"text/x-yaml","patch_set":72,"id":"ffb9cba7_5938d6ed","line":69,"range":{"start_line":69,"start_character":31,"end_line":69,"end_character":58},"updated":"2019-04-29 20:06:44.000000000","message":"are these line numbers correct?","commit_id":"3bca9dc7422ea265091ecf6297aaeaa5004f9053"},{"author":{"_account_id":22477,"name":"Matt McEuen","email":"matt.mceuen@att.com","username":"mattmceuen"},"change_message_id":"d1796952f12d0fdc2e5075f68e61bab84ba82179","unresolved":false,"context_lines":[{"line_number":118,"context_line":"        cluster-name: {{ tuple \"postgresql\" \"internal\" . | include \"helm-toolkit.endpoints.hostname_short_endpoint_lookup\" }}"},{"line_number":119,"context_line":"      annotations:"},{"line_number":120,"context_line":"{{ tuple $envAll | include \"helm-toolkit.snippets.release_uuid\" | indent 8 }}"},{"line_number":121,"context_line":"        configmap-bin-hash: {{ tuple \"configmap-bin.yaml\" . | include \"helm-toolkit.utils.hash\" }}"},{"line_number":122,"context_line":"    spec:"},{"line_number":123,"context_line":"      serviceAccountName: {{ $serviceAccountName }}"},{"line_number":124,"context_line":"{{ dict \"envAll\" $envAll \"application\" \"server\" | include \"helm-toolkit.snippets.kubernetes_pod_security_context\" | indent 6 }}"}],"source_content_type":"text/x-yaml","patch_set":108,"id":"dfbec78f_25bf2562","line":121,"updated":"2019-05-09 18:33:31.000000000","message":"need an indentical line below this for s/bin/etc/ now that we\u0027ve added an etc configmap too","commit_id":"5d9b8022905c0bf943d8dc5a68bb2481e94b651f"}],"postgresql/values.yaml":[{"author":{"_account_id":24816,"name":"Anthony Bellino","email":"ab2434@att.com","username":"anthony.bellino"},"change_message_id":"e91bcdb181659f7694cbf5da69a5556d2a7b2661","unresolved":false,"context_lines":[{"line_number":101,"context_line":"          memory: \"1024Mi\""},{"line_number":102,"context_line":"          cpu: \"2000m\""},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"# using dockerhub postgresql: https://hub.docker.com/r/library/postgres/tags/"},{"line_number":105,"context_line":"images:"},{"line_number":106,"context_line":"  tags:"},{"line_number":107,"context_line":"    postgresql: \"docker.io/souradage/patroni:9.5\""}],"source_content_type":"text/x-yaml","patch_set":72,"id":"ffb9cba7_5921b6af","line":104,"range":{"start_line":104,"start_character":2,"end_line":104,"end_character":77},"updated":"2019-04-29 20:06:58.000000000","message":"I think you want this comment to reflect patroni...?","commit_id":"3bca9dc7422ea265091ecf6297aaeaa5004f9053"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"7ab6d6b22c3298a203f671113060741f6f807814","unresolved":false,"context_lines":[{"line_number":104,"context_line":"# using dockerhub patroni tag 9.5: https://hub.docker.com/r/souradage/patroni/tags/"},{"line_number":105,"context_line":"images:"},{"line_number":106,"context_line":"  tags:"},{"line_number":107,"context_line":"    postgresql: \"docker.io/souradage/patroni:9.5\""},{"line_number":108,"context_line":"    dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1"},{"line_number":109,"context_line":"    image_repo_sync: docker.io/docker:17.07.0"},{"line_number":110,"context_line":"    prometheus_postgresql_exporter: docker.io/wrouesnel/postgres_exporter:v0.4.6"}],"source_content_type":"text/x-yaml","patch_set":73,"id":"ffb9cba7_6472bc7d","line":107,"range":{"start_line":107,"start_character":17,"end_line":107,"end_character":48},"updated":"2019-04-30 21:38:30.000000000","message":"where is the dockerfile for this?","commit_id":"b96beeb3d8915e03cd7dd567869ccafbe64fe8c1"},{"author":{"_account_id":28718,"name":"Doug Aaser","email":"douglas.aaser@att.com","username":"daaser"},"change_message_id":"2d70761cc06e16655d7075363212694cd5f53520","unresolved":false,"context_lines":[{"line_number":104,"context_line":"# using dockerhub patroni tag 9.5: https://hub.docker.com/r/souradage/patroni/tags/"},{"line_number":105,"context_line":"images:"},{"line_number":106,"context_line":"  tags:"},{"line_number":107,"context_line":"    postgresql: \"docker.io/souradage/patroni:9.5\""},{"line_number":108,"context_line":"    dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1"},{"line_number":109,"context_line":"    image_repo_sync: docker.io/docker:17.07.0"},{"line_number":110,"context_line":"    prometheus_postgresql_exporter: docker.io/wrouesnel/postgres_exporter:v0.4.6"}],"source_content_type":"text/x-yaml","patch_set":73,"id":"ffb9cba7_93dff438","line":107,"range":{"start_line":107,"start_character":17,"end_line":107,"end_character":48},"in_reply_to":"ffb9cba7_6472bc7d","updated":"2019-05-01 11:43:49.000000000","message":"This docker file is built from the source code: https://github.com/zalando/patroni/blob/master/kubernetes/Dockerfile\nThe only difference between the image we\u0027re using and the image in the main repo is the version of postgres being used changed from v11 to v9.5","commit_id":"b96beeb3d8915e03cd7dd567869ccafbe64fe8c1"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"7ab6d6b22c3298a203f671113060741f6f807814","unresolved":false,"context_lines":[{"line_number":292,"context_line":"    port:"},{"line_number":293,"context_line":"      postgresql:"},{"line_number":294,"context_line":"        default: 5432"},{"line_number":295,"context_line":"  restapi:"},{"line_number":296,"context_line":"    port:"},{"line_number":297,"context_line":"      restapi:"},{"line_number":298,"context_line":"        default: 8008"},{"line_number":299,"context_line":"  prometheus_postgresql_exporter:"}],"source_content_type":"text/x-yaml","patch_set":73,"id":"ffb9cba7_44753863","line":296,"range":{"start_line":295,"start_character":0,"end_line":296,"end_character":9},"updated":"2019-04-30 21:38:30.000000000","message":"should be included in `postgresql` section above.","commit_id":"b96beeb3d8915e03cd7dd567869ccafbe64fe8c1"},{"author":{"_account_id":23928,"name":"Pete Birley","email":"petebirley@gmail.com","username":"portdirect"},"change_message_id":"65323f190739452c1dcfcf0d3d394975a5c2b54d","unresolved":false,"context_lines":[{"line_number":106,"context_line":"          memory: \"1024Mi\""},{"line_number":107,"context_line":"          cpu: \"2000m\""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"# using dockerhub patroni tag 9.5: https://hub.docker.com/r/souradage/patroni/tags/"},{"line_number":110,"context_line":"images:"},{"line_number":111,"context_line":"  tags:"},{"line_number":112,"context_line":"    postgresql: \"docker.io/souradage/patroni:9.5\""},{"line_number":113,"context_line":"    dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1"},{"line_number":114,"context_line":"    image_repo_sync: docker.io/docker:17.07.0"},{"line_number":115,"context_line":"    prometheus_postgresql_exporter: docker.io/wrouesnel/postgres_exporter:v0.4.6"}],"source_content_type":"text/x-yaml","patch_set":120,"id":"dfbec78f_8a634342","line":112,"range":{"start_line":109,"start_character":0,"end_line":112,"end_character":49},"updated":"2019-05-13 20:55:29.000000000","message":"once using the image from here: https://review.opendev.org/#/c/657418/ this lgtm.","commit_id":"0a179724f38318946e65761e866a0dc0330c7a1a"},{"author":{"_account_id":17591,"name":"Steve Wilkerson","email":"wilkers.steve@gmail.com","username":"srwilkers"},"change_message_id":"6e34c0c4a6cd5a311986443e35e857ca393f982e","unresolved":false,"context_lines":[{"line_number":116,"context_line":"# using dockerhub patroni tag 9.5: https://hub.docker.com/r/souradage/patroni/tags/"},{"line_number":117,"context_line":"images:"},{"line_number":118,"context_line":"  tags:"},{"line_number":119,"context_line":"    postgresql: \"docker.io/souradage/patroni:9.5\""},{"line_number":120,"context_line":"    dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1"},{"line_number":121,"context_line":"    image_repo_sync: docker.io/docker:17.07.0"},{"line_number":122,"context_line":"    prometheus_postgresql_exporter: docker.io/wrouesnel/postgres_exporter:v0.4.6"}],"source_content_type":"text/x-yaml","patch_set":137,"id":"bfb3d3c7_cf6143ab","line":119,"range":{"start_line":119,"start_character":16,"end_line":119,"end_character":49},"updated":"2019-05-28 16:58:46.000000000","message":"this needs to be a publicly available image.  Can we please move the dockerfile for this image to the openstack-helm-images repository?","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"},{"author":{"_account_id":28718,"name":"Doug Aaser","email":"douglas.aaser@att.com","username":"daaser"},"change_message_id":"ceaa3c8f2d24c99478a5ed395a2b6dec973d1c34","unresolved":false,"context_lines":[{"line_number":116,"context_line":"# using dockerhub patroni tag 9.5: https://hub.docker.com/r/souradage/patroni/tags/"},{"line_number":117,"context_line":"images:"},{"line_number":118,"context_line":"  tags:"},{"line_number":119,"context_line":"    postgresql: \"docker.io/souradage/patroni:9.5\""},{"line_number":120,"context_line":"    dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1"},{"line_number":121,"context_line":"    image_repo_sync: docker.io/docker:17.07.0"},{"line_number":122,"context_line":"    prometheus_postgresql_exporter: docker.io/wrouesnel/postgres_exporter:v0.4.6"}],"source_content_type":"text/x-yaml","patch_set":137,"id":"bfb3d3c7_6fa13794","line":119,"range":{"start_line":119,"start_character":16,"end_line":119,"end_character":49},"in_reply_to":"bfb3d3c7_cf6143ab","updated":"2019-05-28 17:19:33.000000000","message":"I\u0027ve had a PS out for that: https://review.opendev.org/#/c/657418/. If needed, I can update it at a later point, just depending on the order things get merged.","commit_id":"aa47fa1da849e591c7f05dba7cfd5a0f7d31d589"}],"tools/deployment/common/051-patroni.sh":[{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"ecbb536315207afe250f985a1f499a39f34a0f62","unresolved":false,"context_lines":[{"line_number":23,"context_line":": ${OSH_EXTRA_HELM_ARGS:\u003d\"\"}"},{"line_number":24,"context_line":"helm upgrade --install patroni ./patroni \\"},{"line_number":25,"context_line":"    --namespace\u003dopenstack \\"},{"line_number":26,"context_line":"    --set pod.replicas.server\u003d3"},{"line_number":27,"context_line":"    ${OSH_EXTRA_HELM_ARGS} "},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"#NOTE: Wait for deploy"}],"source_content_type":"text/x-sh","patch_set":1,"id":"5fc1f717_36b57ece","line":26,"range":{"start_line":26,"start_character":28,"end_line":26,"end_character":31},"updated":"2019-03-19 04:47:37.000000000","message":"missing the line break \\","commit_id":"526d323bf765b32936e0cef23063b7e85179eb45"},{"author":{"_account_id":20466,"name":"Tin Lam","email":"tin@lam.wtf","username":"tinlam"},"change_message_id":"ecbb536315207afe250f985a1f499a39f34a0f62","unresolved":false,"context_lines":[{"line_number":24,"context_line":"helm upgrade --install patroni ./patroni \\"},{"line_number":25,"context_line":"    --namespace\u003dopenstack \\"},{"line_number":26,"context_line":"    --set pod.replicas.server\u003d3"},{"line_number":27,"context_line":"    ${OSH_EXTRA_HELM_ARGS} "},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"#NOTE: Wait for deploy"},{"line_number":30,"context_line":"./tools/deployment/common/wait-for-pods.sh openstack"}],"source_content_type":"text/x-sh","patch_set":1,"id":"5fc1f717_b6a72ea8","line":27,"range":{"start_line":27,"start_character":26,"end_line":27,"end_character":27},"updated":"2019-03-19 04:47:37.000000000","message":"trailing space","commit_id":"526d323bf765b32936e0cef23063b7e85179eb45"}],"tools/deployment/osh-infra-monitoring/130-postgresql.sh":[{"author":{"_account_id":26449,"name":"Scott Hussey","email":"sthussey@att.com","username":"sh8121"},"change_message_id":"f29d02df47b2344409f2caed327d2dc44e20a878","unresolved":false,"context_lines":[{"line_number":27,"context_line":"helm upgrade --install postgresql ./postgresql \\"},{"line_number":28,"context_line":"    --namespace\u003dosh-infra \\"},{"line_number":29,"context_line":"    --set monitoring.prometheus.enabled\u003dtrue \\"},{"line_number":30,"context_line":"    --set storage.pvc.enabled\u003dfalse \\"},{"line_number":31,"context_line":"    --set pod.replicas.server\u003d3 \\"},{"line_number":32,"context_line":"    ${OSH_INFRA_EXTRA_HELM_ARGS} \\"},{"line_number":33,"context_line":"    ${OSH_INFRA_EXTRA_HELM_ARGS_MARIADB}"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-sh","patch_set":59,"id":"ffb9cba7_8e6ab4b0","line":31,"range":{"start_line":30,"start_character":0,"end_line":31,"end_character":32},"updated":"2019-04-25 20:05:14.000000000","message":"Due to the host mount fall back, I don\u0027t think 3 replicas on the same server w/o PVCs will work.","commit_id":"cdf905588f0a4f5c9b1a75e1f9da2384c90104d6"},{"author":{"_account_id":17591,"name":"Steve Wilkerson","email":"wilkers.steve@gmail.com","username":"srwilkers"},"change_message_id":"e1a85b4fbdb7e770263aa9f77cd9069149a5557f","unresolved":false,"context_lines":[{"line_number":19,"context_line":"#NOTE: Lint and package chart"},{"line_number":20,"context_line":"make postgresql"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"sudo mkdir -p /data/openstack-helm/postgresql"},{"line_number":23,"context_line":"sudo chmod -R 777 /data/openstack-helm/postgresql"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"#NOTE: Deploy command"},{"line_number":26,"context_line":": ${OSH_INFRA_EXTRA_HELM_ARGS:\u003d\"\"}"}],"source_content_type":"text/x-sh","patch_set":76,"id":"dfbec78f_b9f85dc4","line":23,"range":{"start_line":22,"start_character":0,"end_line":23,"end_character":49},"updated":"2019-05-06 15:45:39.000000000","message":"This is not required since you\u0027re enabling persistent storage in the chart overrides via set","commit_id":"5265ce5f5046ddcf83ee573261d8ec2ab494fdff"}]}
