Add release for suspected commits#200
Conversation
| /** | ||
| * Git commit data needed to create a release | ||
| */ | ||
| export interface CommitData { |
There was a problem hiding this comment.
не надо это в hawk.types вынести?
| ## Parsing scheme | ||
|
|
||
| 1. User wants to deploy project | ||
| 2. REWRITE THIS DOC PLEASE |
| }, { | ||
| $set: { | ||
| catcherType: payload.catcherType, | ||
| commits: commits, |
There was a problem hiding this comment.
коммиты будут сохраняться строкой?
There was a problem hiding this comment.
там JSON.parse сверху, это массив
| const parsedCommits: CommitData[] = JSON.parse(commits); | ||
|
|
||
| await this.db.getConnection() | ||
| .collection(this.dbCollectionName) |
There was a problem hiding this comment.
чтобы TS знал что храниться в коллекции надо указать collection<Type>(name)
тогда не будет ошибок из-за отсутствия типизации
There was a problem hiding this comment.
у тебя везде без этого толком типизация не работает
There was a problem hiding this comment.
this.db.getConnection()
.collection(this.dbCollectionName)
вынести это в отдельное св-во, раз ты часто к этому обращаешься
Some types have been ported to the hawk.types
|
This pull request introduces 2 alerts when merging 05ed16b into aaba31a - view on LGTM.com new alerts:
|
| @@ -0,0 +1,188 @@ | |||
| /* tslint:disable:no-string-literal */ | |||
| const map = await mockBundle.getSourceMap(); | ||
| const workerInstance = new ReleaseWorker(); | ||
|
|
||
| const extendedInfo: SourceMapDataExtended[] = workerInstance['extendReleaseInfo']([ { |
There was a problem hiding this comment.
лучше проверять всё на публичных методах. И проверять работу внутренних компонентах по итоговому результату. В данном случае, лучше закинуть файл с нужным названием, вызвать handle и посмотреть, успешно ли он его обработал
| const parsedCommits: CommitData[] = JSON.parse(commits); | ||
|
|
||
| await this.db.getConnection() | ||
| .collection(this.dbCollectionName) |
There was a problem hiding this comment.
у тебя везде без этого толком типизация не работает
| const parsedCommits: CommitData[] = JSON.parse(commits); | ||
|
|
||
| await this.db.getConnection() | ||
| .collection(this.dbCollectionName) |
There was a problem hiding this comment.
this.db.getConnection()
.collection(this.dbCollectionName)
вынести это в отдельное св-во, раз ты часто к этому обращаешься
| * @param releaseData - info with source map | ||
| */ | ||
| private async save(releaseData: SourceMapsRecord): Promise<ObjectId | null> { | ||
| private async saveSourceMapJS(releaseData: SourceMapsRecord): Promise<ObjectId | null> { |
There was a problem hiding this comment.
- логика кажется слишком замудрёной. Приходится достаточно много времени тратить на то, чтобы во всём разобраться (я так этого и не сделал). Этот код требует рефакторинга. Может можно как-то оптимизировать логику, разнести на более понятные методы или типо того?
- Смущает нейминг saveSourceMap и saveSourceMapJS нейминг похожий, но ф-ии разные.
|
This pull request introduces 2 alerts when merging 8f1e559 into aaba31a - view on LGTM.com new alerts:
|
| ## Parsing scheme | ||
|
|
||
| 1. User wants to deploy project | ||
| 2. REWRITE THIS DOC PLEASE |
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
| import { SourceMapDataExtended, SourceMapFileChunk, CommitData, SourcemapCollectedData, ReleaseDBScheme } from 'hawk.types'; | ||
| /** | ||
| * Java Script source maps worker | ||
| * Java Script releases worker |
There was a problem hiding this comment.
только JS? он не абстрактный?
|
|
||
| 1. User wants to deploy project | ||
| 2. He runs deploy script on the server and it runs static builder, for example Webpack. | ||
| 3. After Webpack finished his job, our **Webpack Plugin** gets a source maps for new bundles and sends them to us. |
There was a problem hiding this comment.
ссылку лучше вставить, мне кажется
Co-authored-by: Nikita Melnikov <nikmel2803@gmail.com>

Handle the add-release task and save the release to the database