)]}'
{"pkg/bootstrap/cloudinit/cloud-init.go":[{"author":{"_account_id":7769,"name":"Pentheus","display_name":"Alan Meadows","email":"alan.meadows@gmail.com","username":"alanmeadows"},"change_message_id":"88db68f2912dbcba681bd2278b6b26bf60a01141","unresolved":false,"context_lines":[{"line_number":15,"context_line":")"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"// ErrKubadmConfigNotFound error if entity was not found"},{"line_number":18,"context_line":"var ErrKubadmConfigNotFound \u003d errors.New(\"KubadmConfig for ephemeral K8s node not found\")"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"// ErrCastFailure error shich reports casting failure"},{"line_number":21,"context_line":"var ErrCastFailure \u003d errors.New(\"Failed to cast\")"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_1a68a21f","line":18,"updated":"2019-10-02 16:15:36.000000000","message":"Suggest each pkg start getting an errors.go so we can ensure every package has strongly typed errors but this is a good start and can make that a subsequent ps.","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"6587ebc999abd8b26e765958bba4032a33b997b3","unresolved":false,"context_lines":[{"line_number":15,"context_line":")"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"// ErrKubadmConfigNotFound error if entity was not found"},{"line_number":18,"context_line":"var ErrKubadmConfigNotFound \u003d errors.New(\"KubadmConfig for ephemeral K8s node not found\")"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"// ErrCastFailure error shich reports casting failure"},{"line_number":21,"context_line":"var ErrCastFailure \u003d errors.New(\"Failed to cast\")"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_d8e6f616","line":18,"in_reply_to":"3fa7e38b_1a68a21f","updated":"2019-10-11 11:50:35.000000000","message":"Done","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7769,"name":"Pentheus","display_name":"Alan Meadows","email":"alan.meadows@gmail.com","username":"alanmeadows"},"change_message_id":"88db68f2912dbcba681bd2278b6b26bf60a01141","unresolved":false,"context_lines":[{"line_number":28,"context_line":"var ErrBadAnnotation \u003d errors.New(\"Wrong annotation format use \u0027key\u003dvalue\u0027\")"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"// filterStruct filtering object"},{"line_number":31,"context_line":"type filterStruct struct {"},{"line_number":32,"context_line":"\t// group API Group (e.g. bootstrap.cluster.x-k8s.io)"},{"line_number":33,"context_line":"\tgroup string"},{"line_number":34,"context_line":"\t// version API Version (e.g. v1alpha2)"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_ba74eeff","line":31,"updated":"2019-10-02 16:15:36.000000000","message":"This is likely the purview of the document pkg?  GetByGvk accepts a string for Group, Version, and Kind, but can easily accept a filter struct similar to Kustomizes gvk.Gvk.","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"6587ebc999abd8b26e765958bba4032a33b997b3","unresolved":false,"context_lines":[{"line_number":28,"context_line":"var ErrBadAnnotation \u003d errors.New(\"Wrong annotation format use \u0027key\u003dvalue\u0027\")"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"// filterStruct filtering object"},{"line_number":31,"context_line":"type filterStruct struct {"},{"line_number":32,"context_line":"\t// group API Group (e.g. bootstrap.cluster.x-k8s.io)"},{"line_number":33,"context_line":"\tgroup string"},{"line_number":34,"context_line":"\t// version API Version (e.g. v1alpha2)"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_98ecfef4","line":31,"in_reply_to":"3fa7e38b_ba74eeff","updated":"2019-10-11 11:50:35.000000000","message":"Done","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7769,"name":"Pentheus","display_name":"Alan Meadows","email":"alan.meadows@gmail.com","username":"alanmeadows"},"change_message_id":"88db68f2912dbcba681bd2278b6b26bf60a01141","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"// getFilSchemaAndGVs utility function for filter schema based on filtering"},{"line_number":41,"context_line":"// structure"},{"line_number":42,"context_line":"func getFilterSchemaAndGVs(filters []filterStruct) (*runtime.Scheme, []schema.GroupVersion) {"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"\t// Create shcema object"},{"line_number":45,"context_line":"\tfilterSchema :\u003d runtime.NewScheme()"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_bd613e14","line":42,"updated":"2019-10-02 16:15:36.000000000","message":"Again, seems to be the purview of a document pkg.","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"6587ebc999abd8b26e765958bba4032a33b997b3","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"// getFilSchemaAndGVs utility function for filter schema based on filtering"},{"line_number":41,"context_line":"// structure"},{"line_number":42,"context_line":"func getFilterSchemaAndGVs(filters []filterStruct) (*runtime.Scheme, []schema.GroupVersion) {"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"\t// Create shcema object"},{"line_number":45,"context_line":"\tfilterSchema :\u003d runtime.NewScheme()"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_b8e9bae3","line":42,"in_reply_to":"3fa7e38b_bd613e14","updated":"2019-10-11 11:50:35.000000000","message":"Done","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7769,"name":"Pentheus","display_name":"Alan Meadows","email":"alan.meadows@gmail.com","username":"alanmeadows"},"change_message_id":"88db68f2912dbcba681bd2278b6b26bf60a01141","unresolved":false,"context_lines":[{"line_number":70,"context_line":"// filterByGVK utility function which decodes raw K8s object into"},{"line_number":71,"context_line":"// K8s resource (or resources) specified in schema. Function returns nil"},{"line_number":72,"context_line":"// for raw object that can not be decoded or its Kind not found in schema"},{"line_number":73,"context_line":"func filterByGVK("},{"line_number":74,"context_line":"\trawObj runtime.RawExtension,"},{"line_number":75,"context_line":"\tfilterSchema *runtime.Scheme,"},{"line_number":76,"context_line":"\tdecodingVersions ...schema.GroupVersion,"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_7d6bc6f0","line":73,"updated":"2019-10-02 16:15:36.000000000","message":"Same as above.","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"6587ebc999abd8b26e765958bba4032a33b997b3","unresolved":false,"context_lines":[{"line_number":70,"context_line":"// filterByGVK utility function which decodes raw K8s object into"},{"line_number":71,"context_line":"// K8s resource (or resources) specified in schema. Function returns nil"},{"line_number":72,"context_line":"// for raw object that can not be decoded or its Kind not found in schema"},{"line_number":73,"context_line":"func filterByGVK("},{"line_number":74,"context_line":"\trawObj runtime.RawExtension,"},{"line_number":75,"context_line":"\tfilterSchema *runtime.Scheme,"},{"line_number":76,"context_line":"\tdecodingVersions ...schema.GroupVersion,"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_58bc46db","line":73,"in_reply_to":"3fa7e38b_7d6bc6f0","updated":"2019-10-11 11:50:35.000000000","message":"Done","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7769,"name":"Pentheus","display_name":"Alan Meadows","email":"alan.meadows@gmail.com","username":"alanmeadows"},"change_message_id":"88db68f2912dbcba681bd2278b6b26bf60a01141","unresolved":false,"context_lines":[{"line_number":127,"context_line":"\t\t}"},{"line_number":128,"context_line":"\t}"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"\treturn nil, ErrKubadmConfigNotFound"},{"line_number":131,"context_line":"}"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"// hasAnnotation helper function to compare annotations"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_e0506d0d","line":130,"updated":"2019-10-02 16:15:36.000000000","message":"If we\u0027ve arrived at the end, how does this imply a ErrKubeadmConfigNotFound?","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"6587ebc999abd8b26e765958bba4032a33b997b3","unresolved":false,"context_lines":[{"line_number":127,"context_line":"\t\t}"},{"line_number":128,"context_line":"\t}"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"\treturn nil, ErrKubadmConfigNotFound"},{"line_number":131,"context_line":"}"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"// hasAnnotation helper function to compare annotations"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_18b24e07","line":130,"in_reply_to":"3fa7e38b_e0506d0d","updated":"2019-10-11 11:50:35.000000000","message":"Reworked errors.ErrDocNotFound is returned","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7769,"name":"Pentheus","display_name":"Alan Meadows","email":"alan.meadows@gmail.com","username":"alanmeadows"},"change_message_id":"88db68f2912dbcba681bd2278b6b26bf60a01141","unresolved":false,"context_lines":[{"line_number":131,"context_line":"}"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"// hasAnnotation helper function to compare annotations"},{"line_number":134,"context_line":"func hasAnnotation(annMap map[string]string, key string, val string) bool {"},{"line_number":135,"context_line":"\tannVal, ok :\u003d annMap[key]"},{"line_number":136,"context_line":"\treturn ok \u0026\u0026 (val \u003d\u003d annVal)"},{"line_number":137,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_603c7dbf","line":134,"updated":"2019-10-02 16:15:36.000000000","message":"again, think we could avoid most of this if using a centralized docs pkg.","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"6587ebc999abd8b26e765958bba4032a33b997b3","unresolved":false,"context_lines":[{"line_number":131,"context_line":"}"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"// hasAnnotation helper function to compare annotations"},{"line_number":134,"context_line":"func hasAnnotation(annMap map[string]string, key string, val string) bool {"},{"line_number":135,"context_line":"\tannVal, ok :\u003d annMap[key]"},{"line_number":136,"context_line":"\treturn ok \u0026\u0026 (val \u003d\u003d annVal)"},{"line_number":137,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":16,"id":"3fa7e38b_38b70af8","line":134,"in_reply_to":"3fa7e38b_603c7dbf","updated":"2019-10-11 11:50:35.000000000","message":"Done","commit_id":"c5b781b50b08b460432ecd4d91a7b88e95d78730"},{"author":{"_account_id":28869,"name":"Ian Howell","email":"ian.howell0@gmail.com","username":"ian"},"change_message_id":"e28332c67686bc84b27396c8c95be68366b18aae","unresolved":false,"context_lines":[{"line_number":8,"context_line":")"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"const ("},{"line_number":11,"context_line":"\tEPHEMERAL_CONF_KIND \u003d \"Secret\""},{"line_number":12,"context_line":")"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"func getDataEnc(cfg document.Document, key string) ([]byte, error) {"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_d5023f3e","line":11,"range":{"start_line":11,"start_character":1,"end_line":11,"end_character":20},"updated":"2019-10-29 15:34:06.000000000","message":"Should be MixedCase","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[{"line_number":8,"context_line":")"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"const ("},{"line_number":11,"context_line":"\tEPHEMERAL_CONF_KIND \u003d \"Secret\""},{"line_number":12,"context_line":")"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"func getDataEnc(cfg document.Document, key string) ([]byte, error) {"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_6a36fa04","line":11,"range":{"start_line":11,"start_character":1,"end_line":11,"end_character":20},"in_reply_to":"3fa7e38b_d5023f3e","updated":"2019-10-30 13:22:35.000000000","message":"Done","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":8749,"name":"Evgeniy L","email":"eli@mirantis.com","username":"evgeniyl"},"change_message_id":"1e9f473cd5d36b95b4455081874277ef93388a08","unresolved":false,"context_lines":[{"line_number":11,"context_line":"\t// fully available for Metal3. In other words:"},{"line_number":12,"context_line":"\t// - Sectet for v1alpha1"},{"line_number":13,"context_line":"\t// - KubeAdmConfig for v1alpha2"},{"line_number":14,"context_line":"\tConstEphemeralConfKind \u003d \"Secret\""},{"line_number":15,"context_line":")"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"func getDataEnc(cfg document.Document, key string) ([]byte, error) {"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_427afe87","line":14,"range":{"start_line":14,"start_character":1,"end_line":14,"end_character":6},"updated":"2019-10-30 18:43:53.000000000","message":"This prefix seems to be redundant, compiler already ensures that it stays constant.","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"4976f2c818acbce9682f04f9a8804f44a1548a57","unresolved":false,"context_lines":[{"line_number":11,"context_line":"\t// fully available for Metal3. In other words:"},{"line_number":12,"context_line":"\t// - Sectet for v1alpha1"},{"line_number":13,"context_line":"\t// - KubeAdmConfig for v1alpha2"},{"line_number":14,"context_line":"\tConstEphemeralConfKind \u003d \"Secret\""},{"line_number":15,"context_line":")"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"func getDataEnc(cfg document.Document, key string) ([]byte, error) {"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_1914744c","line":14,"range":{"start_line":14,"start_character":1,"end_line":14,"end_character":6},"in_reply_to":"3fa7e38b_427afe87","updated":"2019-10-31 11:03:48.000000000","message":"Done","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":8749,"name":"Evgeniy L","email":"eli@mirantis.com","username":"evgeniyl"},"change_message_id":"1e9f473cd5d36b95b4455081874277ef93388a08","unresolved":false,"context_lines":[{"line_number":14,"context_line":"\tConstEphemeralConfKind \u003d \"Secret\""},{"line_number":15,"context_line":")"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"func getDataEnc(cfg document.Document, key string) ([]byte, error) {"},{"line_number":18,"context_line":"\tdata, err :\u003d cfg.GetStringMap(\"data\")"},{"line_number":19,"context_line":"\tif err !\u003d nil {"},{"line_number":20,"context_line":"\t\treturn nil, ErrDataNotSupplied{}"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_429f5eb3","line":17,"range":{"start_line":17,"start_character":5,"end_line":17,"end_character":15},"updated":"2019-10-30 18:43:53.000000000","message":"decodeData","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"4976f2c818acbce9682f04f9a8804f44a1548a57","unresolved":false,"context_lines":[{"line_number":14,"context_line":"\tConstEphemeralConfKind \u003d \"Secret\""},{"line_number":15,"context_line":")"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"func getDataEnc(cfg document.Document, key string) ([]byte, error) {"},{"line_number":18,"context_line":"\tdata, err :\u003d cfg.GetStringMap(\"data\")"},{"line_number":19,"context_line":"\tif err !\u003d nil {"},{"line_number":20,"context_line":"\t\treturn nil, ErrDataNotSupplied{}"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_b90e8038","line":17,"range":{"start_line":17,"start_character":5,"end_line":17,"end_character":15},"in_reply_to":"3fa7e38b_429f5eb3","updated":"2019-10-31 11:03:48.000000000","message":"Done","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":8749,"name":"Evgeniy L","email":"eli@mirantis.com","username":"evgeniyl"},"change_message_id":"1e9f473cd5d36b95b4455081874277ef93388a08","unresolved":false,"context_lines":[{"line_number":20,"context_line":"\t\treturn nil, ErrDataNotSupplied{}"},{"line_number":21,"context_line":"\t}"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"\tresStr, ok :\u003d data[key]"},{"line_number":24,"context_line":"\tif !ok {"},{"line_number":25,"context_line":"\t\treturn nil, ErrDataNotSupplied{}"},{"line_number":26,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_229ca2be","line":23,"range":{"start_line":23,"start_character":4,"end_line":23,"end_character":7},"updated":"2019-10-30 18:43:53.000000000","message":"Same here, this can be omitted.","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"4976f2c818acbce9682f04f9a8804f44a1548a57","unresolved":false,"context_lines":[{"line_number":20,"context_line":"\t\treturn nil, ErrDataNotSupplied{}"},{"line_number":21,"context_line":"\t}"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"\tresStr, ok :\u003d data[key]"},{"line_number":24,"context_line":"\tif !ok {"},{"line_number":25,"context_line":"\t\treturn nil, ErrDataNotSupplied{}"},{"line_number":26,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_d909fc30","line":23,"range":{"start_line":23,"start_character":4,"end_line":23,"end_character":7},"in_reply_to":"3fa7e38b_229ca2be","updated":"2019-10-31 11:03:48.000000000","message":"Done","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":8749,"name":"Evgeniy L","email":"eli@mirantis.com","username":"evgeniyl"},"change_message_id":"1e9f473cd5d36b95b4455081874277ef93388a08","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"\tresStr, ok :\u003d data[key]"},{"line_number":24,"context_line":"\tif !ok {"},{"line_number":25,"context_line":"\t\treturn nil, ErrDataNotSupplied{}"},{"line_number":26,"context_line":"\t}"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"\treturn b64.StdEncoding.DecodeString(resStr)"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_8289d66f","line":25,"range":{"start_line":25,"start_character":14,"end_line":25,"end_character":34},"updated":"2019-10-30 18:43:53.000000000","message":"Provide debugging info on what key it failed to retrieve.","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"4976f2c818acbce9682f04f9a8804f44a1548a57","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"\tresStr, ok :\u003d data[key]"},{"line_number":24,"context_line":"\tif !ok {"},{"line_number":25,"context_line":"\t\treturn nil, ErrDataNotSupplied{}"},{"line_number":26,"context_line":"\t}"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"\treturn b64.StdEncoding.DecodeString(resStr)"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_79048818","line":25,"range":{"start_line":25,"start_character":14,"end_line":25,"end_character":34},"in_reply_to":"3fa7e38b_8289d66f","updated":"2019-10-31 11:03:48.000000000","message":"Done. Error now reports document name and key","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":8749,"name":"Evgeniy L","email":"eli@mirantis.com","username":"evgeniyl"},"change_message_id":"1e9f473cd5d36b95b4455081874277ef93388a08","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"// GetCloudData reads YAML document input and generates cloud-init data for"},{"line_number":46,"context_line":"// node (i.e. Cluster API Machine) with bootstrap annotation."},{"line_number":47,"context_line":"//func GetCloudData(docBundle document.Bundle, bsAnnotation string) ([]byte, []byte, error) {"},{"line_number":48,"context_line":"func GetCloudData(docBundle document.Bundle, bsAnnotation string) ([]byte, []byte, error) {"},{"line_number":49,"context_line":"\tvar userData []byte"},{"line_number":50,"context_line":"\tvar netConf []byte"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_e21e8a5d","line":47,"range":{"start_line":47,"start_character":0,"end_line":47,"end_character":93},"updated":"2019-10-30 18:43:53.000000000","message":"Is it needed?","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"4976f2c818acbce9682f04f9a8804f44a1548a57","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"// GetCloudData reads YAML document input and generates cloud-init data for"},{"line_number":46,"context_line":"// node (i.e. Cluster API Machine) with bootstrap annotation."},{"line_number":47,"context_line":"//func GetCloudData(docBundle document.Bundle, bsAnnotation string) ([]byte, []byte, error) {"},{"line_number":48,"context_line":"func GetCloudData(docBundle document.Bundle, bsAnnotation string) ([]byte, []byte, error) {"},{"line_number":49,"context_line":"\tvar userData []byte"},{"line_number":50,"context_line":"\tvar netConf []byte"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_99ff0401","line":47,"range":{"start_line":47,"start_character":0,"end_line":47,"end_character":93},"in_reply_to":"3fa7e38b_e21e8a5d","updated":"2019-10-31 11:03:48.000000000","message":"Done","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":8749,"name":"Evgeniy L","email":"eli@mirantis.com","username":"evgeniyl"},"change_message_id":"1e9f473cd5d36b95b4455081874277ef93388a08","unresolved":false,"context_lines":[{"line_number":60,"context_line":"\t\t}"},{"line_number":61,"context_line":"\t}"},{"line_number":62,"context_line":"\tif ephemeralCfg \u003d\u003d nil {"},{"line_number":63,"context_line":"\t\treturn nil, nil, document.ErrDocNotFound{}"},{"line_number":64,"context_line":"\t}"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"\tnetConf, err \u003d getDataFromSecret(ephemeralCfg, \"netconfig\")"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_a29892bf","line":63,"range":{"start_line":63,"start_character":19,"end_line":63,"end_character":44},"updated":"2019-10-30 18:43:53.000000000","message":"It would be useful to let the caller know what specific Kind it could not find.","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"4976f2c818acbce9682f04f9a8804f44a1548a57","unresolved":false,"context_lines":[{"line_number":60,"context_line":"\t\t}"},{"line_number":61,"context_line":"\t}"},{"line_number":62,"context_line":"\tif ephemeralCfg \u003d\u003d nil {"},{"line_number":63,"context_line":"\t\treturn nil, nil, document.ErrDocNotFound{}"},{"line_number":64,"context_line":"\t}"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"\tnetConf, err \u003d getDataFromSecret(ephemeralCfg, \"netconfig\")"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_3c291e89","line":63,"range":{"start_line":63,"start_character":19,"end_line":63,"end_character":44},"in_reply_to":"3fa7e38b_a29892bf","updated":"2019-10-31 11:03:48.000000000","message":"Done","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"}],"pkg/bootstrap/cloudinit/cloud-init_test.go":[{"author":{"_account_id":28869,"name":"Ian Howell","email":"ian.howell0@gmail.com","username":"ian"},"change_message_id":"e28332c67686bc84b27396c8c95be68366b18aae","unresolved":false,"context_lines":[{"line_number":11,"context_line":"\t\"opendev.org/airship/airshipctl/testutil\""},{"line_number":12,"context_line":")"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"func accertByteSlices(act, exp []byte, t *testing.T) {"},{"line_number":15,"context_line":"\terrS :\u003d fmt.Sprintf(\"Call GetCloudData should have returned %s, got %s\", exp, act)"},{"line_number":16,"context_line":"\tassert.Equal(t, act, exp, errS)"},{"line_number":17,"context_line":"}"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"func TestGetCloudData(t *testing.T) {"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_b5a30343","line":17,"range":{"start_line":14,"start_character":0,"end_line":17,"end_character":1},"updated":"2019-10-29 15:34:06.000000000","message":"Similar to my comments in 675851, I don\u0027t think this function nor the message is necessary","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[{"line_number":11,"context_line":"\t\"opendev.org/airship/airshipctl/testutil\""},{"line_number":12,"context_line":")"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"func accertByteSlices(act, exp []byte, t *testing.T) {"},{"line_number":15,"context_line":"\terrS :\u003d fmt.Sprintf(\"Call GetCloudData should have returned %s, got %s\", exp, act)"},{"line_number":16,"context_line":"\tassert.Equal(t, act, exp, errS)"},{"line_number":17,"context_line":"}"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"func TestGetCloudData(t *testing.T) {"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_8a3b36e8","line":17,"range":{"start_line":14,"start_character":0,"end_line":17,"end_character":1},"in_reply_to":"3fa7e38b_b5a30343","updated":"2019-10-30 13:22:35.000000000","message":"Done","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":28869,"name":"Ian Howell","email":"ian.howell0@gmail.com","username":"ian"},"change_message_id":"e28332c67686bc84b27396c8c95be68366b18aae","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"\tfSys :\u003d testutil.SetupTestFs(t, \"testdata\")"},{"line_number":22,"context_line":"\tbundle, err :\u003d document.NewBundle(fSys, \"/\", \"/\")"},{"line_number":23,"context_line":"\tif err !\u003d nil {"},{"line_number":24,"context_line":"\t\tt.Fatalf(\"Building Bundle Failed: %v\", err)"},{"line_number":25,"context_line":"\t}"},{"line_number":26,"context_line":"\ttests :\u003d []struct {"},{"line_number":27,"context_line":"\t\tann              string"},{"line_number":28,"context_line":"\t\texpectedUserData []byte"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_f572dbe2","line":25,"range":{"start_line":23,"start_character":0,"end_line":25,"end_character":2},"updated":"2019-10-29 15:34:06.000000000","message":"use `require.NoError` or similar","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"\tfSys :\u003d testutil.SetupTestFs(t, \"testdata\")"},{"line_number":22,"context_line":"\tbundle, err :\u003d document.NewBundle(fSys, \"/\", \"/\")"},{"line_number":23,"context_line":"\tif err !\u003d nil {"},{"line_number":24,"context_line":"\t\tt.Fatalf(\"Building Bundle Failed: %v\", err)"},{"line_number":25,"context_line":"\t}"},{"line_number":26,"context_line":"\ttests :\u003d []struct {"},{"line_number":27,"context_line":"\t\tann              string"},{"line_number":28,"context_line":"\t\texpectedUserData []byte"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_2a2482c5","line":25,"range":{"start_line":23,"start_character":0,"end_line":25,"end_character":2},"in_reply_to":"3fa7e38b_f572dbe2","updated":"2019-10-30 13:22:35.000000000","message":"Done","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":28869,"name":"Ian Howell","email":"ian.howell0@gmail.com","username":"ian"},"change_message_id":"e28332c67686bc84b27396c8c95be68366b18aae","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"\t\taccertByteSlices(actualUserData, tt.expectedUserData, t)"},{"line_number":62,"context_line":"\t\taccertByteSlices(actualNetData, tt.expectedNetData, t)"},{"line_number":63,"context_line":"\t\terrS :\u003d fmt.Sprintf("},{"line_number":64,"context_line":"\t\t\t\"Call GetCloudData should have returned %s, got %s\","},{"line_number":65,"context_line":"\t\t\ttt.expectedErr,"},{"line_number":66,"context_line":"\t\t\tactualErr,"},{"line_number":67,"context_line":"\t\t)"},{"line_number":68,"context_line":"\t\tassert.Equal(t, actualErr, tt.expectedErr, errS)"},{"line_number":69,"context_line":"\t}"},{"line_number":70,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_356dd302","line":67,"range":{"start_line":63,"start_character":0,"end_line":67,"end_character":3},"updated":"2019-10-29 15:34:06.000000000","message":"Message is redundant","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"\t\taccertByteSlices(actualUserData, tt.expectedUserData, t)"},{"line_number":62,"context_line":"\t\taccertByteSlices(actualNetData, tt.expectedNetData, t)"},{"line_number":63,"context_line":"\t\terrS :\u003d fmt.Sprintf("},{"line_number":64,"context_line":"\t\t\t\"Call GetCloudData should have returned %s, got %s\","},{"line_number":65,"context_line":"\t\t\ttt.expectedErr,"},{"line_number":66,"context_line":"\t\t\tactualErr,"},{"line_number":67,"context_line":"\t\t)"},{"line_number":68,"context_line":"\t\tassert.Equal(t, actualErr, tt.expectedErr, errS)"},{"line_number":69,"context_line":"\t}"},{"line_number":70,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_0515f73c","line":67,"range":{"start_line":63,"start_character":0,"end_line":67,"end_character":3},"in_reply_to":"3fa7e38b_356dd302","updated":"2019-10-30 13:22:35.000000000","message":"Done","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"}],"pkg/bootstrap/isogen/command.go":[{"author":{"_account_id":7769,"name":"Pentheus","display_name":"Alan Meadows","email":"alan.meadows@gmail.com","username":"alanmeadows"},"change_message_id":"f6b6f15551b648d3664a4931717c67fc42f977ba","unresolved":false,"context_lines":[{"line_number":38,"context_line":"\t\treturn err"},{"line_number":39,"context_line":"\t}"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"\tdocBundle, err :\u003d document.NewBundle(fs.MakeRealFS(), args[0], \"\")"},{"line_number":42,"context_line":"\tif err !\u003d nil {"},{"line_number":43,"context_line":"\t\treturn err"},{"line_number":44,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":30,"id":"3fa7e38b_3443e36e","line":41,"updated":"2019-11-13 17:05:13.000000000","message":"There will likely be a convenience function within `document` that will help you do this with the target bundle that was pulled, err if not yet pulled, and so on.  Might want a TODO here noting that.","commit_id":"6b82a529fcb7fa0eeee377bdc3bd281d57acb074"}],"pkg/bootstrap/isogen/command_test.go":[{"author":{"_account_id":28869,"name":"Ian Howell","email":"ian.howell0@gmail.com","username":"ian"},"change_message_id":"e28332c67686bc84b27396c8c95be68366b18aae","unresolved":false,"context_lines":[{"line_number":44,"context_line":"func TestBootstrapIso(t *testing.T) {"},{"line_number":45,"context_line":"\tfSys :\u003d testutil.SetupTestFs(t, \"testdata\")"},{"line_number":46,"context_line":"\tbundle, err :\u003d document.NewBundle(fSys, \"/\", \"/\")"},{"line_number":47,"context_line":"\tif err !\u003d nil {"},{"line_number":48,"context_line":"\t\tt.Fatalf(\"Building Bundle Failed: %v\", err)"},{"line_number":49,"context_line":"\t}"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"\tvolBind :\u003d \"/tmp:/dst\""},{"line_number":52,"context_line":"\ttestErr :\u003d fmt.Errorf(\"TestErr\")"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_582766b7","line":49,"range":{"start_line":47,"start_character":0,"end_line":49,"end_character":2},"updated":"2019-10-29 15:34:06.000000000","message":"require.NoError","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[{"line_number":44,"context_line":"func TestBootstrapIso(t *testing.T) {"},{"line_number":45,"context_line":"\tfSys :\u003d testutil.SetupTestFs(t, \"testdata\")"},{"line_number":46,"context_line":"\tbundle, err :\u003d document.NewBundle(fSys, \"/\", \"/\")"},{"line_number":47,"context_line":"\tif err !\u003d nil {"},{"line_number":48,"context_line":"\t\tt.Fatalf(\"Building Bundle Failed: %v\", err)"},{"line_number":49,"context_line":"\t}"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"\tvolBind :\u003d \"/tmp:/dst\""},{"line_number":52,"context_line":"\ttestErr :\u003d fmt.Errorf(\"TestErr\")"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_aa195288","line":49,"range":{"start_line":47,"start_character":0,"end_line":49,"end_character":2},"in_reply_to":"3fa7e38b_582766b7","updated":"2019-10-30 13:22:35.000000000","message":"Done","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":28869,"name":"Ian Howell","email":"ian.howell0@gmail.com","username":"ian"},"change_message_id":"e28332c67686bc84b27396c8c95be68366b18aae","unresolved":false,"context_lines":[{"line_number":174,"context_line":""},{"line_number":175,"context_line":"\tfor _, tt :\u003d range tests {"},{"line_number":176,"context_line":"\t\tactualErr :\u003d verifyInputs(tt.cfg, tt.args, bytes.NewBufferString(\"\"))"},{"line_number":177,"context_line":"\t\terrS :\u003d fmt.Sprintf(\"verifyInputs should have return error %s, got %s\", tt.expectedErr, actualErr)"},{"line_number":178,"context_line":"\t\tassert.Equal(t, actualErr, tt.expectedErr, errS)"},{"line_number":179,"context_line":"\t}"},{"line_number":180,"context_line":""}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_3822aaa4","line":177,"range":{"start_line":177,"start_character":0,"end_line":177,"end_character":100},"updated":"2019-10-29 15:34:06.000000000","message":"redundant","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[{"line_number":174,"context_line":""},{"line_number":175,"context_line":"\tfor _, tt :\u003d range tests {"},{"line_number":176,"context_line":"\t\tactualErr :\u003d verifyInputs(tt.cfg, tt.args, bytes.NewBufferString(\"\"))"},{"line_number":177,"context_line":"\t\terrS :\u003d fmt.Sprintf(\"verifyInputs should have return error %s, got %s\", tt.expectedErr, actualErr)"},{"line_number":178,"context_line":"\t\tassert.Equal(t, actualErr, tt.expectedErr, errS)"},{"line_number":179,"context_line":"\t}"},{"line_number":180,"context_line":""}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_a52743b6","line":177,"range":{"start_line":177,"start_character":0,"end_line":177,"end_character":100},"in_reply_to":"3fa7e38b_3822aaa4","updated":"2019-10-30 13:22:35.000000000","message":"Done","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"}],"pkg/bootstrap/isogen/config.go":[{"author":{"_account_id":21991,"name":"Kostyantyn Kalynovskyi","email":"kkalinovskiy@gmail.com","username":"kkalynovskyi"},"change_message_id":"9c254d1620231bfadc7bc1376bca303d37dcd342","unresolved":false,"context_lines":[{"line_number":23,"context_line":"\tflags.StringVarP(\u0026i.IsogenConfigFile, \"config\", \"c\", \"\", \"Configuration file path for ISO builder container.\")"},{"line_number":24,"context_line":"\tflags.StringVarP("},{"line_number":25,"context_line":"\t\t\u0026i.Annotation, \"annotation\", \"a\","},{"line_number":26,"context_line":"\t\t\"airshipit.org/clustertype\u003dephemeral\", \"Configuration file path for ISO builder container.\")"},{"line_number":27,"context_line":"}"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"// Config isogen configuration"}],"source_content_type":"text/x-go","patch_set":13,"id":"3fa7e38b_13391a40","line":26,"updated":"2019-09-20 19:00:04.000000000","message":"as a suggestion, it maybe more logical not to use as wide flag as `annotation`. I think it would be better to have simply clustertype flag, that would be equal to ephemeral and target, and those stored as constants?","commit_id":"0b4755e522f750b7507f4057d83d46ea23ff9632"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"c4e64b2ef1c253c137fc3be2221e2a3445dcabd9","unresolved":false,"context_lines":[{"line_number":23,"context_line":"\tflags.StringVarP(\u0026i.IsogenConfigFile, \"config\", \"c\", \"\", \"Configuration file path for ISO builder container.\")"},{"line_number":24,"context_line":"\tflags.StringVarP("},{"line_number":25,"context_line":"\t\t\u0026i.Annotation, \"annotation\", \"a\","},{"line_number":26,"context_line":"\t\t\"airshipit.org/clustertype\u003dephemeral\", \"Configuration file path for ISO builder container.\")"},{"line_number":27,"context_line":"}"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"// Config isogen configuration"}],"source_content_type":"text/x-go","patch_set":13,"id":"3fa7e38b_739391a4","line":26,"in_reply_to":"3fa7e38b_13391a40","updated":"2019-09-23 18:18:20.000000000","message":"Done","commit_id":"0b4755e522f750b7507f4057d83d46ea23ff9632"},{"author":{"_account_id":28869,"name":"Ian Howell","email":"ian.howell0@gmail.com","username":"ian"},"change_message_id":"e28332c67686bc84b27396c8c95be68366b18aae","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"const ("},{"line_number":12,"context_line":"\t// TODO this should be part of a airshipctl config"},{"line_number":13,"context_line":"\tANNOTATION_EPHEMERAL \u003d \"airshipit.org/clustertype\u003dephemeral\""},{"line_number":14,"context_line":")"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"// Settings settings for isogen command"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_d83a76cb","line":13,"range":{"start_line":13,"start_character":1,"end_line":13,"end_character":21},"updated":"2019-10-29 15:34:06.000000000","message":"MixedCase","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"const ("},{"line_number":12,"context_line":"\t// TODO this should be part of a airshipctl config"},{"line_number":13,"context_line":"\tANNOTATION_EPHEMERAL \u003d \"airshipit.org/clustertype\u003dephemeral\""},{"line_number":14,"context_line":")"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"// Settings settings for isogen command"}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_ca1e0e6f","line":13,"range":{"start_line":13,"start_character":1,"end_line":13,"end_character":21},"in_reply_to":"3fa7e38b_d83a76cb","updated":"2019-10-30 13:22:35.000000000","message":"Done","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":8749,"name":"Evgeniy L","email":"eli@mirantis.com","username":"evgeniyl"},"change_message_id":"1e9f473cd5d36b95b4455081874277ef93388a08","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"const ("},{"line_number":12,"context_line":"\t// TODO this should be part of a airshipctl config"},{"line_number":13,"context_line":"\tConstEphemeralAnnotation \u003d \"airshipit.org/clustertype\u003dephemeral\""},{"line_number":14,"context_line":")"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"// Settings settings for isogen command"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_c2f4aed1","line":13,"range":{"start_line":13,"start_character":1,"end_line":13,"end_character":6},"updated":"2019-10-30 18:43:53.000000000","message":"Same here, this prefix can be removed. It also can be renamed into something like \"EphemeralClusterAnnotation\".","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"4976f2c818acbce9682f04f9a8804f44a1548a57","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"const ("},{"line_number":12,"context_line":"\t// TODO this should be part of a airshipctl config"},{"line_number":13,"context_line":"\tConstEphemeralAnnotation \u003d \"airshipit.org/clustertype\u003dephemeral\""},{"line_number":14,"context_line":")"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"// Settings settings for isogen command"}],"source_content_type":"text/x-go","patch_set":23,"id":"3fa7e38b_1c578203","line":13,"range":{"start_line":13,"start_character":1,"end_line":13,"end_character":6},"in_reply_to":"3fa7e38b_c2f4aed1","updated":"2019-10-31 11:03:48.000000000","message":"Done","commit_id":"5a62c77056a6edd4403fba5b14dc781f040282ed"}],"pkg/errors/common.go":[{"author":{"_account_id":7769,"name":"Pentheus","display_name":"Alan Meadows","email":"alan.meadows@gmail.com","username":"alanmeadows"},"change_message_id":"f6b6f15551b648d3664a4931717c67fc42f977ba","unresolved":false,"context_lines":[{"line_number":13,"context_line":"}"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"func (e ErrWrongConfig) Error() string {"},{"line_number":16,"context_line":"\treturn \"Error. Wrong configuration\""},{"line_number":17,"context_line":"}"}],"source_content_type":"text/x-go","patch_set":30,"id":"3fa7e38b_944df772","line":16,"updated":"2019-11-13 17:05:13.000000000","message":"This could be a little more descriptive? As an end user, I wouldn\u0027t know what to do.","commit_id":"6b82a529fcb7fa0eeee377bdc3bd281d57acb074"}],"pkg/errors/container.go":[{"author":{"_account_id":28869,"name":"Ian Howell","email":"ian.howell0@gmail.com","username":"ian"},"change_message_id":"e28332c67686bc84b27396c8c95be68366b18aae","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"3fa7e38b_985e3e11","updated":"2019-10-29 15:34:06.000000000","message":"I guess this file ins\u0027t needed anymore? Looks like this is covered in 675851","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"3fa7e38b_6a0fda38","in_reply_to":"3fa7e38b_985e3e11","updated":"2019-10-30 13:22:35.000000000","message":"Not really. ErrDataNotSupplied is raised if there is no cloud init data in secret. I\u0027ve created errors.go for this error. And also create document.ErrDocNotFound inside of the document package","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"}],"pkg/errors/document.go":[{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"d93223961df6b49ebb37397625ca4a8597b79339","unresolved":false,"context_lines":[{"line_number":1,"context_line":"package errors"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"import ("},{"line_number":4,"context_line":"\t\"errors\""}],"source_content_type":"text/x-go","patch_set":22,"id":"3fa7e38b_8509e72b","line":1,"updated":"2019-10-30 13:22:35.000000000","message":"moved to documet/errors.go","commit_id":"4d2ef47e1ea5201a6d242fab8f9cf05e7b264811"}],"pkg/util/writefiles.go":[{"author":{"_account_id":21991,"name":"Kostyantyn Kalynovskyi","email":"kkalinovskiy@gmail.com","username":"kkalynovskyi"},"change_message_id":"9c254d1620231bfadc7bc1376bca303d37dcd342","unresolved":false,"context_lines":[{"line_number":7,"context_line":"// WriteFiles write multiple files described in a map"},{"line_number":8,"context_line":"func WriteFiles(fls map[string][]byte) error {"},{"line_number":9,"context_line":"\tfor fileName, data :\u003d range fls {"},{"line_number":10,"context_line":"\t\tif err :\u003d ioutil.WriteFile(fileName, data, 0644); err !\u003d nil {"},{"line_number":11,"context_line":"\t\t\treturn err"},{"line_number":12,"context_line":"\t\t}"},{"line_number":13,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":13,"id":"3fa7e38b_0f8494b0","line":10,"range":{"start_line":10,"start_character":45,"end_line":10,"end_character":49},"updated":"2019-09-20 19:00:04.000000000","message":"should the documents be readable only by the single user, that runs the command?","commit_id":"0b4755e522f750b7507f4057d83d46ea23ff9632"},{"author":{"_account_id":7185,"name":"Dmitry Ukov","email":"dukov@mirantis.com","username":"dukov"},"change_message_id":"c4e64b2ef1c253c137fc3be2221e2a3445dcabd9","unresolved":false,"context_lines":[{"line_number":7,"context_line":"// WriteFiles write multiple files described in a map"},{"line_number":8,"context_line":"func WriteFiles(fls map[string][]byte) error {"},{"line_number":9,"context_line":"\tfor fileName, data :\u003d range fls {"},{"line_number":10,"context_line":"\t\tif err :\u003d ioutil.WriteFile(fileName, data, 0644); err !\u003d nil {"},{"line_number":11,"context_line":"\t\t\treturn err"},{"line_number":12,"context_line":"\t\t}"},{"line_number":13,"context_line":"\t}"}],"source_content_type":"text/x-go","patch_set":13,"id":"3fa7e38b_f3ec612a","line":10,"range":{"start_line":10,"start_character":45,"end_line":10,"end_character":49},"in_reply_to":"3fa7e38b_0f8494b0","updated":"2019-09-23 18:18:20.000000000","message":"Done","commit_id":"0b4755e522f750b7507f4057d83d46ea23ff9632"}]}
