loopbackio / loopbackio/loopback-next
Migrate connector repos into monorepo
オープン
まだ誰も着手していません。
Internal Tooling
- 主要言語
- TypeScript
- スター
- 5.1k
- フォーク
- 1.1k
- 平均マージ
- 2日 21時間
- マージ済み PR(30日)
- 27
説明
This issue is to track the feasibility of migration the connector repos into this monorepo.
Problem statement
The connectors are in separate repos, which results in...
- Inconsistent automated maintenance and CI workflows (i.e. dependency/vuln. management, code/commit linting, CLA/DCO)
- Disparate issue trackers (harder to keep track of connector-specific issues)
- Non-integrated CI testing (i.e. integration tests are not executed on changes within the connector repo)
Potential concerns
- Slower CI build times - This concern was raised when this repo was utilising Travis CI, which had slow a VM spin-up duration, and rather limited co-current actions. With GitHub Actions, this concern is potentially mitigated.
- Maxing out CI minutes - This was an issue with Travis CI where there was a quota on build times. This is not an issue with GitHub Actions which has unlimited minutes for public repos.
- Loss of commit history -
lerna import --preserve-commitwill preserve the relative commit history, and retain the original commit authors and committers. - Linux-only testing - GitHub Actions only supports containers/services with
ubuntu-*images. Currently, the CI pipeline for most connectors are hosted undercis-jenkins.swg-devops.com, which isn't currently publicly-accessible AFAIK.
Connectors
These are the connectors that are officially maintained:
- loopback-connector-mysql
- loopback-connector-postgresql
- loopback-connector-mongodb
- loopback-connector-rest
- loopback-connector-mssql
- loopback-connector-soap
- loopback-connector-oracle
- loopback-connector-cloudant
- loopback-connector-cassandra
- loopback-connector-couchdb2
- loopback-connector-db2
- loopback-ibmdb
- loopback-connector-dashdb
- loopback-connector-grpc
- loopback-connector-kv-redis
- loopback-connector-openapi
- loopback-connector-sqlite3
- loopback-connector-elastic-search
- loopback-connector-redis
- loopback-connector-kv-extreme-scal
- strong-soap
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず、一覧に記載された connector リポジトリと既存の CI ワークフローを確認し、その後、issue に記載された移行上の懸念事項を、commit 履歴とテスト環境を含めて評価します。完了条件は、connector の一覧、CI 統合、および記載されたリスクに対応する実現可能性の判断と移行計画を作成することです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- github-actions, typescript
- 領域
- build-system, devops
- issue の種類
- リファクタリング
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100