PageRenderTime 26ms CodeModel.GetById 24ms RepoModel.GetById 0ms app.codeStats 0ms

/source/handbook/support/channels/index.html.md

https://gitlab.com/nick.volynkin/www-gitlab-com
Markdown | 139 lines | 102 code | 37 blank | 0 comment | 0 complexity | 6044c225bba134376dbb967181e91af2 MD5 | raw file
  1. ---
  2. layout: markdown_page
  3. title: Support Channels
  4. ---
  5. ## On this page
  6. {:.no_toc}
  7. - TOC
  8. {:toc}
  9. ----
  10. Our [support engineers](/jobs/support-engineer) handle the channels listed below.
  11. They are sorted in order of priority (strictest SLA at top), and as a result, it is possible that channels that appear lower
  12. in this list experience longer delays in receiving responses. We are actively [hiring](/jobs/)
  13. more Support Engineers to strengthen the team and provide support to the community.
  14. ## Emergency Tickets
  15. When an emergency ticket comes in, it triggers a [PagerDuty](https://gitlab.pagerduty.com) incident. All
  16. Support Engineers must have the PagerDuty application installed on their phones once they are added to
  17. the on-call rotation schedule.
  18. When a PD incident is triggered, the alarm will go off for the person on call. You should acknowledge the
  19. incident within 5 minutes, or the person on second level support will be alerted. The PD incident will
  20. have the link to the corresponding Zendesk issue from where you will continue the conversation with the customer.
  21. Once acknowledged, you need to login to [Zendesk](https://gitlab.Zendesk.com), go to the corresponding ticket
  22. and let the customer know that you will handle their case. On this response you should ask for the best way
  23. to contact them. Usual channels are Phone, Skype, [WebEx](/handbook/support/onboarding/#webex) or Hangouts. It is also a good idea to send them a meeting link where you are waiting, requesting that they join and to let you know if they will not be able to join.
  24. Once the emergency has been resolved, return to the ticket in [Zendesk](https://gitlab.Zendesk.com) and document any steps taken to resolve the issue.
  25. ### Crisis Situations
  26. If you are unable to help the customer and their instance is in a critical state (unavailable, uncertainty of
  27. data loss, etc.), you should **escalate** the PD incident to second level support, and work through the issue
  28. together. It may also be necessary to ask for assitance from a developer in the appropriate slack channel. While you are waiting for help to join the call, focus on getting their server to a usable state.
  29. If an emergency takes longer than an hour to resolve,
  30. and/or multiple people are or need to be involved, **start a google doc** that is open to the customer and the wider team at GitLab, and keep track of the
  31. issues and ideas there. Zendesk's 'linear' display of communication with a customer is not as effective in crisis situations, and the
  32. majority of developers do not have access to Zendesk in the first place. Announce the google doc in the appropriate
  33. slack channel (#infrastructure, #development, #general) so that individuals can contribute solutions and ideas. When the crisis
  34. has been resolved, be sure to transfer pertinent know-how from the google doc to relevant documentation, handbooks, and/or
  35. issue trackers, so that the google doc can be deprecated a.s.a.p. In addition, Support Engineers and Developers involved
  36. in the crisis should make time to have a hangout for hand-off to make sure that everyone has the chance to recover and stay
  37. clear-headed.
  38. ## Security disclosures
  39. We have a [Responsible Disclosure Policy](https://about.gitlab.com/disclosure/).
  40. Emails sent to security@gitlab.com go into Zendesk and receive an autoresponder that
  41. says: "Thank you for your responsible disclosure of a potential GitLab vulnerability.
  42. We'll follow up with you within one business day." We also accept reports via [HackerOne](https://hackerone.com/gitlab), see [more information](/handbook/support/channels#hackerone) on this channel.
  43. Please be very patient with these reports. Do not say 'there is no problem', you
  44. might be misunderstanding something that can lead to a 0 day disclosure.
  45. Give examples and keep asking questions until you understand the problem or until
  46. the researcher concludes there is no problem.
  47. If someone invested time to help us, offer to mention them on our [Security Researcher Acknowledgments page](/vulnerability-acknowledgements/)
  48. even if there was no actual vulnerability.
  49. If you say that we'll get back to them **always** mention that they can email us at any time for an update.
  50. This is really important to prevent a 0 day disclosure resulting from us forgetting to respond.
  51. If you need help from developers to diagnose the issue please open a confidential issue so we can work in private. Only if the security report is _about_ confidential issues, then use dev.gitlab.org instead.
  52. If someone opens a public issue please leave a message:
  53. "Thank you for helping to
  54. make GitLab more secure! We removed the contents of your vulnerability disclosure
  55. to keep it private. We opened an internal issue to look at your disclosure. Can
  56. you please use our [Responsible Disclosure Policy](/disclosure/)
  57. to send us an email that references this url so we can communicate in private?"
  58. ### PGP Process
  59. The key used to encode/decode PGP messages is stored in our Support Vault on 1Password.
  60. We only provide our public PGP key upon request because it makes collaborating much
  61. harder and only a small percentage of all disclosures are serious enough to require that overhead.
  62. See [PGP Process](/handbook/support/pgp_process) for
  63. information about using the security PGP key pair and decrypting messages.
  64. ### HackerOne
  65. We also use [HackerOne](https://hackerone.com/gitlab) to manage security reports.
  66. The HackerOne dashboard lists all reports for which you need to respond within one business day. These
  67. reports are also piped into ZenDesk, but they need to be responded to from the HackerOne dashboard and closed manually in ZenDesk
  68. upon completion of the initial response. Remember that all researchers should receive feedback as with regular support tickets,
  69. and you should not hesitate to triage or escalate the report.
  70. The complete workflow for handling HackerOne reports can be found on the [Security Team page](https://about.gitlab.com/handbook/engineering/security/#hackerone-reports).
  71. If you need to grant HackerOne permissions to a new GitLab user, have an admin send
  72. an invitation from HackerOne and add you to the Internal group. You can find out who
  73. the admins are by asking on the #support channel.
  74. ## Regular Zendesk tickets
  75. You should always answer the tickets in a [FIFO](https://en.wikipedia.org/wiki/FIFO_(computing_and_electronics))
  76. manner. Make sure that you answer the tickets that are assigned to you first and then move on to new tickets
  77. that have come in and are unassigned, again using FIFO. When you need others to help please create an issue on
  78. the relevant GitLab issue tracker.
  79. ## Follow up on issues posted on GitLab issue tracker
  80. For ZenDesk issues you will have created issues on the relevant issue tracker.
  81. Please refer to the priority as listed under [GitLab Workflow in the handbook](/handbook/communication/#gitlab-workflow).
  82. ## GitLab.com Support Tracker
  83. For issues specific to GitLab.com that have nothing to do with availability we have the
  84. [Support Tracker](https://gitlab.com/gitlab-com/support-forum/issues). This forum must also be checked periodically
  85. for new issues and to report back if an issue has been solved. Ensure that you assign the issue to yourself to enable you to keep track of the issue and also to enable other support engineers to easily pick on unassigned tasks at a glance. Some people use this forum to report issues they
  86. are having with their on-premises installation. In that case, you should refer them to the
  87. [CE issue tracker](https://gitlab.com/gitlab-org/gitlab-ce/issues) or to our
  88. [Getting Help](/getting-help/) page, depending on the issue they are having.
  89. ## GitLab CE/EE/Omnibus issue trackers
  90. It is always encouraged to take a look at all our issue trackers and respond to bug reports or feature
  91. requests:
  92. - [GitLab EE](https://gitlab.com/gitlab-org/gitlab-ee/issues) some customers create issues here instead of
  93. emailing us. When a new issue is created here, a ticket is created in ZenDesk, so we always know when this is
  94. the case.
  95. - [GitLab CE](https://gitlab.com/gitlab-org/gitlab-ce/issues)
  96. - [Omnibus](https://gitlab.com/gitlab-org/omnibus-gitlab/issues)
  97. See [the issue triage policies](/handbook/engineering/issues/issue-triage-policies) for the above trackers for more information on how issues should be handled.
  98. ## TODO Docker
  99. TODO Questions from Docker's [GitLab CE](https://hub.docker.com/r/gitlab/gitlab-ce/) page flow into ZenDesk.
  100. ## Non channel work
  101. If you have time for it please improve GitLab: fix bugs, add features, and polish the website.
  102. You can also consider hanging out on IRC to answer questions and help people (#gitlab on freenode.net).