loopbackio / loopbackio/loopback-next
Migrate connector repos into monorepo
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 5.1k
- Forks
- 1.1k
- Ø Merge
- 2 T. 21 Std.
- Gemergte PRs (30 T.)
- 27
Beschreibung
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
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der Überprüfung der aufgeführten Connector-Repositories und ihrer bestehenden CI-Workflows. Bewerte anschließend die in diesem Issue beschriebenen Migrationsfragen, einschließlich der Commit-Historie und der Testumgebungen. Als abgeschlossen gilt die Erstellung einer Machbarkeitsentscheidung und eines Migrationsplans, die die Connector-Liste, die CI-Integration und die genannten Risiken berücksichtigen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- github-actions, typescript
- Bereich
- build-system, devops
- Issue-Typ
- Refactoring
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100