debugFiles.tsx 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. export enum DebugFileType {
  2. EXE = 'exe',
  3. DBG = 'dbg',
  4. LIB = 'lib',
  5. }
  6. export enum DebugFileFeature {
  7. SYMTAB = 'symtab',
  8. DEBUG = 'debug',
  9. UNWIND = 'unwind',
  10. SOURCES = 'sources',
  11. }
  12. type Secret = {'hidden-secret': boolean};
  13. export type BuiltinSymbolSource = {
  14. hidden: boolean;
  15. id: string;
  16. name: string;
  17. sentry_key: string;
  18. };
  19. export type DebugFile = {
  20. codeId: string;
  21. cpuName: string;
  22. dateCreated: string;
  23. debugId: string;
  24. headers: Record<string, string>;
  25. id: string;
  26. objectName: string;
  27. sha1: string;
  28. size: number;
  29. symbolType: string;
  30. uuid: string;
  31. data?: {features: DebugFileFeature[]; type: DebugFileType};
  32. };
  33. // Custom Repository
  34. export enum CustomRepoType {
  35. HTTP = 'http',
  36. S3 = 's3',
  37. GCS = 'gcs',
  38. APP_STORE_CONNECT = 'appStoreConnect',
  39. }
  40. export type AppStoreConnectValidationError = {
  41. code:
  42. | 'app-connect-authentication-error'
  43. | 'app-connect-forbidden-error'
  44. | 'app-connect-multiple-sources-error';
  45. };
  46. interface ValidAppStoreConnectCredentialsStatus {
  47. status: 'valid';
  48. }
  49. interface InvalidAppStoreConnectCredentialsStatus extends AppStoreConnectValidationError {
  50. status: 'invalid';
  51. }
  52. export type AppStoreConnectCredentialsStatus =
  53. | ValidAppStoreConnectCredentialsStatus
  54. | InvalidAppStoreConnectCredentialsStatus;
  55. export type AppStoreConnectStatusData = {
  56. credentials: AppStoreConnectCredentialsStatus;
  57. lastCheckedBuilds: string | null;
  58. /**
  59. * The build number of the latest build recognized by sentry. This does not
  60. * imply the dSYMs for this build have been fetched. The contents of this
  61. * string is just a number. This will be null if no builds can be found.
  62. */
  63. latestBuildNumber: string | null;
  64. /**
  65. * A human-readable string representing the latest build recognized by
  66. * sentry. i.e. 3.4.0. This does not imply the dSYMs for this build have been
  67. * fetched. This will be null if no builds can be found.
  68. */
  69. latestBuildVersion: string | null;
  70. /**
  71. * Indicates the number of downloads waiting to be processed and completed,
  72. * or the number of downloads waiting for valid credentials to be completed if applicable.
  73. */
  74. pendingDownloads: number;
  75. updateAlertMessage?: string;
  76. };
  77. export type CustomRepoAppStoreConnect = {
  78. appId: string;
  79. appName: string;
  80. appconnectIssuer: string;
  81. appconnectKey: string;
  82. appconnectPrivateKey: Secret;
  83. bundleId: string;
  84. id: string;
  85. name: string;
  86. type: CustomRepoType.APP_STORE_CONNECT;
  87. details?: AppStoreConnectStatusData;
  88. };
  89. export type CustomRepoHttp = {
  90. id: string;
  91. layout: {casing: string; type: string};
  92. name: string;
  93. password: Secret;
  94. type: CustomRepoType.HTTP;
  95. url: string;
  96. username: string;
  97. };
  98. type CustomRepoS3 = {
  99. access_key: string;
  100. bucket: string;
  101. id: string;
  102. layout: {casing: string; type: string};
  103. name: string;
  104. region: string;
  105. secret_key: Secret;
  106. type: CustomRepoType.S3;
  107. };
  108. type CustomRepoGCS = {
  109. bucket: string;
  110. client_email: string;
  111. id: string;
  112. layout: {casing: string; type: string};
  113. name: string;
  114. prefix: string;
  115. private_key: Secret;
  116. type: CustomRepoType.GCS;
  117. };
  118. export type CustomRepo =
  119. | CustomRepoAppStoreConnect
  120. | CustomRepoHttp
  121. | CustomRepoS3
  122. | CustomRepoGCS;