loopbackio / loopbackio/loopback-next
Migrate connector repos into monorepo
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- TypeScript
- Estrellas
- 5.1k
- Forks
- 1.1k
- Merge medio
- 2 d 21 h
- PR fusionados (30 d)
- 27
Descripción
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
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza revisando los repositorios de conectores enumerados y sus workflows de CI existentes; después, evalúa las cuestiones de migración descritas en el issue, incluido el historial de commits y los entornos de prueba. Se considera terminado cuando se haya producido una decisión de viabilidad y un plan de migración que aborden la lista de conectores, la integración de CI y los riesgos indicados.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- github-actions, typescript
- Área
- build-system, devops
- Tipo de issue
- Refactorización
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100