Développement connecteur Github


#1

Hello !

J’ai commencé un connecteur pour récupérer les factures Github (compte personnel ou organisation).

C’est ici : https://github.com/sebprunier/cozy-konnector-github

Vos avis/remarques sont les bienvenus !

Sébastien


#2

Bonjour @sebprunier

Bienvenue à bord et merci pour ce nouveau connecteur :smile:

Voilà un connecteur qui va nous être utile. Je demande à l’équipe technique de l’ajouter à sa liste de connecteurs à relire.

Une fois que nous aurons relu le code, pour pouvoir l’ajouter au Cozy Store, nous vous demanderons de le transférer dans l’organisation https://github.com/konnectors/ Nous pourrons ensuite le publier et le rendre disponible à toute notre communauté.


#3

Bonjour @sebprunier, merci pour cette contribution très propre.

Voilà mes remarques :

  • Pour le nom des fichiers de facture, nous préférons ne mettre que la date. Le template montre un exemple d’utilisation de notre fonction de formatage de date (https://github.com/konnectors/cozy-konnector-template/blob/95e5ff9541c3d46f7f5efa6ede34bcbf0a4be461/src/index.js#L113)
  • le record de la facture sauvée en base de données contient l’attribut moment, il serait préférable de l’enlever mais rien de bloquant
  • Pour les comptes en double authentification, on reçoit un code LOGIN_FAILED, ce qui est bien, il sera intéressant de les gérer aussi. On devrait pouvoir bientôt proposer de l’outillage pour permettre aux connecteurs de gérer ce cas proprement.

Est-ce que je peux créer une copie de ton repository sur l’organisation https://github.com/konnectors/ (ce qui facilitera grandement le déploiement et la maintenance de ce connecteur) ? Tu en resteras bien sûr administrateur.


#4

Bonjour @doubleface, merci pour tes retours !

J’ai corrigé les deux premiers points concernant les dates.

Concernant le 2 factor auth, en effet ce n’est pas géré. On pourra ouvrir une issue histoire d’y penser !

Pour mettre le dépôt sur l’orga ‘konnectors’, je peux le transférer le ownership à l’orga directement si ça te va.


#5

Dans ce cas c’est parti, https://help.github.com/en/articles/transferring-a-repository#transferring-a-repository-owned-by-your-personal-account , tu peux transférer à l’orga https://github.com/konnectors/ et je m’occupe du reste!


#6

C’est étrange le transfert ne fonctionne pas :frowning:

Peut-être un truc à activer de votre côté ?


#7

Désolé, c’est une erreur de ma part. Est-ce que tu peux transférer ce repository sur compte https://github.com/doubleface ? . Et j’aurais les droits pour le transférer aussitôt sur l’organisation konnectors.


#8

C’est bon je viens de faire la demande de transfert !


#9

Et le repo est maintenant sur konnectors. Et je viens de t’envoyer une invitation comme administrateur sur le repo. Il ne me reste plus qu’à packager tout ça. Merci :slight_smile:


#10

J’ai reçu une invitation pour ce repo : https://github.com/konnectors/github
Mais ça ne semble pas être le bon code dedans :slight_smile:


#11

Grosse fatigue, je touche à trop de repos github en même temps. Merci d’avoir vérifier je corrige ça tout de suite


#12

Pas de soucis :wink:


#13

Et voilà, maintenant ça a l’air bon


#14

Nickel parfait ! Merci


#15

Et voilà le packaging prêt : https://github.com/konnectors/github/pull/1

Une fois cette branche mergée, ce sera travis qui s’occupera de déployer toute nouvelle version de ce connecteur.

Pour sortir une nouvelle version 1.1.0 par exemple, il suffit de mettre 1.1.0 en version dans package.json et manifest.konnector et de tagger cette version à 1.1.0

Attention, toute nouvelle version est soumise à validation de cozy (pour faire de la review et éviter les problèmes de sécurité). Donc, si tu as besoin de review n’hésite pas à nous le demander ici.


#16

La version 1.0.0 du connecteur est désormais disponible sur le Cozy Store. Félicitations @sebprunier :clap: !


#17

Petit détail, le matching avec les opérations bancaire ne va pas fonctionner pour le moment à cause des factures en dollars.


#18

Ok, je m’en doutais.
Petite question à ce sujet d’ailleurs : comment ça fonctionne exactement le matching dans CozyBanks ? Ca utilise les identifiants renseignés j’imagine, et également la date et le montant ? (et du coup si on a deux factures le même jour du même montant il se passe quoi ?)


#19

Je viens de corriger un bug : https://github.com/konnectors/github/pull/6

Comment ça se passe pour qu’une nouvelle version soit déployée ?


#20

Par défaut, ce sont effectivement la date et le montant ainsi que le le champs “identifiers” passé à saveBills qui sont utilisés. Et donc, si on a deux factures avec le même montant et le même jour, on est coincés et ce sera la première facture trouvée qui va gagner. Mais c’est en fait un cas très rare.