Journal Pipedream : des workflows, des APIs et de la vitesse

Posté par  . Licence CC By‑SA.
-11
10
jan.
2023

Bonjour Nal,

Aujourd'hui, je veux vous faire part d'une de mes découvertes : Pipedream.
En deux mots :

Une plateforme de calcul sans serveur avec plus de 1000 intégrations d'applications open source. Pensez à AWS Lambda + Zapier, spécialement conçu (et gratuit) pour les développeurs.

Avec Pipedream, vous pouvez importer n'importe quel paquet dans une étape de code Python et créer des workflows sans serveur - pas besoin de mettre à jour un fichier requirements.txt ou de spécifier des paquets. C'est un moyen rapide d'exécuter du code Python déclenché par une requête HTTP, un timer ou un événement provenant d'un service cloud.

Comment je l'ai découvert

De la manière la plus improbable.
J'avais publié quelques jours plus tôt mon premier package sur Pypi, quand j'ai reçu un email.
Un mail de Tod Sacerdoti me proposant un compte pro gratuit sur Pipedream (dont il est le fondateur) en qualité de mainteneur de mon package.
Je vérifie qui il est, ce qu'il me propose. Tout semble net.
Je réponds donc en acceptant sa proposition.
Quelques jours plus tard, je reçois une réponse avec un code promo pour 6 mois Pro gratuit.
Je crée un compte, n'active pas tout de suite mon code, mais commence à explorer.

Les APIs

Comme annoncé, un nombre incroyable d'APIs sont disponibles, comme GitHub, Twitter, Discord, Slack, Télégramme, Google, DeepL, Airtable, Zoom, etc.

Ces APIs peuvent servir à différents moments du workflow, et la connexion à un compte est très simple.

Les Workflows

Un workflows "standard" est découpé en trois étapes :
1. Un élément déclenche l'activation du workflow. Ce peut être un simple Cron, un mail, une requête HTTP, un message sur Twitter, une pull request sur GitHub, votre streamer préféré qui commence un live sur Twitch, et tant d'autres choses.
1. Traitement des données : vous codez ce que vous voulez, dans le langage de votre choix, en prenant en compte des données de l'évènement déclencheur ou pas, en utilisant ou stockant des données dans une base de donnée (fournies avec le compte), en ajoutant des informations à un Google Sheet, etc.
1. La réponse : une éventuelle réponse que retourne le workflow, un code 200, envoyer un mail, ou un message sur Slack, ou autre chose.

Conclusion

Une plate-forme très puissante, riche en possibilités, en dont les limites sont très, très difficiles à atteindre, même avec un compte gratuit.

Je déplore simplement un léger manque de documentation pour débutant, mais c'est là quelque chose d'aisément contournable, puisqu'on peut copier d'autre workflows, et que le constructeur de workflows nous guide pas à pas avec des exemples et des suggestions.

Sans aucune connaissance particulière, j'ai pu mettre en œuvre un petit workflow qui compte le nombre de vues sur ma page de profil GitHub.

Mais les possibilités sont potentiellement infinies. Par exemple, publier automatiquement sur votre blog les annonces de release à partir des informations du dépôt git, ou vous envoyer une notification par mail chaque mois avec les statistiques de votre même site, et tant d'autres choses.

Pour plus d'information, visitez leur site ou envoyez un mail à Tod Sacerdoti à tod AT pipedream.com, il lit et répond à tous les mails. Vous pouvez également envoyer vos impressions à feedback AT pipedream.com

  • # C'est pas exactement libre :/

    Posté par  (site web personnel) . Évalué à 10.

    Mais du coup, c'est un service proprio en SaaS ?

    Ça fait quand même un peu pub, ce journal :/

    • [^] # Re: C'est pas exactement libre :/

      Posté par  (site web personnel) . Évalué à 6.

      C'était sous licence MIT mais ils ont changé pour une licence à eux il y a une semaine : https://pipedream.com/blog/introducing-the-pipedream-source-available-license/

      • [^] # Re: C'est pas exactement libre :/

        Posté par  . Évalué à 7.

        On dirait un changement demandé par un investisseur : il accepte de mettre des sous à condition de sécuriser son investissement.

      • [^] # Re: C'est pas exactement libre :/

        Posté par  . Évalué à 4.

        On dirait un changement demandé par un investisseur : il accepte de mettre des sous à condition de sécuriser son investissement.

        • [^] # Re: C'est pas exactement libre :/

          Posté par  . Évalué à 2. Dernière modification le 11 janvier 2023 à 11:28.

          Déjà-vu

          Edit. J'avais inséré un gif de circonstance mais ça marche pas je sais pas pourquoi.

          • [^] # Re: C'est pas exactement libre :/

            Posté par  (site web personnel) . Évalué à 10.

            Edit. J'avais inséré un gif de circonstance mais ça marche pas je sais pas pourquoi.

            ça arrive quand il y a des changements dans la matrice. Des fois, on voit des chats en double, et des fois, la mise à jour casse l'upload de gif.

    • [^] # Re: C'est pas exactement libre :/

      Posté par  (site web personnel) . Évalué à 4.

      De ce que je vois, il n’y pas encore la possibilité de faire de l’auto-hébergement (https://github.com/PipedreamHQ/pipedream/issues/954). Je n’ai pas creusé le code disponible, mais je pense que c’est juste le nécessaire pour construire les flots, pas les exécuter.

      • [^] # Re: C'est pas exactement libre :/

        Posté par  . Évalué à 6.

        Pas le temps de creuser, mais je ne comprends pas sous quelle licence le produit est disponible. Sur https://pipedream.com/blog/introducing-the-pipedream-source-available-license/, ils disent

        We remain committed to all components in our integration registry being source-available.
        Under the Pipedream Source Available License, you can access, modify, or redistribute the source code.

        Et dans la réponse à la demande d'autohébergement,

        The pipedream.com hosted service is primarily closed-source at the moment.

        Du coup, il doit y avoir plusieurs licences (?), et "all components in our integration registry" ne couvre pas la partie serveur (?). Ou alors c'est du bullshit et ils font tout ce qu'ils peuvent pour dire que c'est opensource sans que ça soit opensource.

        • [^] # Re: C'est pas exactement libre :/

          Posté par  (site web personnel) . Évalué à 5.

          Ou plus simplement, les gens pigent pas les licences. Je pense que je vais finir par faire une présentation sur le sujet, vu qu'on commence à accumuler quand même beaucoup d'exemple récent.

          Faut juste que je trouve un titre et que je fasse les slides et que ça tienne 50 minutes.

          • [^] # Re: C'est pas exactement libre :/

            Posté par  . Évalué à 4.

            Ou plus simplement, les gens pigent pas les licences.

            Bof, là on ne parle pas de détails de compréhension. Sur la page web de leur projet, ils disent qu'ils sont open source (même si pas libres), et ils disent texto qu'on peut reprendre et exécuter le code. Et sur Github, ils répondent qu'on ne peut as s'autohéberger parce que le code n'est pas public. C'est pas un débat de juriste sur un paragraphe de la GPL-v3…

            Mais bon, au final, leur licence "open source" n'est pas très claire, parce qu'ils interdisent les serveurs concurrents, et pas seulement les serveurs publics et/ou commerciaux. Il ne me semble pas clair du tout s'il est autorisé de fournir le service en interne dans une entreprise par exemple. Ceci étant dit, c'est bien là la limite de ce genre de clauses, ils n'ont en pratique aucun moyen de savoir ce que tu fais avec leur code, et c'est tant mieux.

            • [^] # Re: C'est pas exactement libre :/

              Posté par  (site web personnel) . Évalué à 6.

              C'est pas un débat de juriste sur un paragraphe de la GPL-v3…

              Mais justement, c'est que "logiciel libre / open source", ça représente quelque chose de positif, mais les gens ne se posent plus la question de ce que ça représente exactement (alors que bon, historiquement, ça a été clairement défini, avec des associations spécifiquement dédiés à régler la question, ce qui est quand même bien plus que la majorité des mouvements politiques ayant le même genre de souci).

              J'ai des tas d'exemple ou il y a du code sur github et ou quelqu'un s'est dit "c'est libre" (ou open source, j'utilise les 2 de façon interchangeable pour respecter l'histoire des 2 termes), et en vérité, ça n'est pas le cas.

              Donc soit des gens essayent de mentir à dessein (et il faut se demander "pourquoi"), soit il y a une incompréhension sur les bases (et même question, avec une réponse différente).

              Et je pense que c'est plus souvent le second que le premier, vu qu'on estime que le logiciel libre a "gagné" (quoi, je sais pas), et la croissance exponentielle depuis une dizaine d'année fait qu'on n'a pas pu "former" tout le monde sur ça.

              (et les pinaillages "open source vs libre" n'aide pas, mais bon, c'est toujours plus facile et rapide de se battre sur les mots que de faire des trucs plus impactants, c'est pour ça qu'on le fait tout le temps dans certains mouvements militants, ça permet l'inclusion à peu de frais sans faire changer grand chose d'un point de vue matériel)

  • # Pérénité

    Posté par  . Évalué à 10.

    Quelques jours plus tard, je reçois une réponse avec un code promo pour 6 mois Pro gratuit.

    Super. Du coup, si le service s'arrête (parce que c'est trop cher, parce que la boîte coule, parce qu'elle est rachetée par un Gafam, etc), bah tu perds tout.

    Du code ni portable ni réutilisable, c'est carrément impressionnant. Système à fuir absolument.

    • [^] # Re: Pérénité

      Posté par  (site web personnel) . Évalué à 4. Dernière modification le 10 janvier 2023 à 16:57.

      Ah si seulement tous les (futurs) clients de fournisseurs de services, logiciels, formats, etc, privateurs pouvaient raisonner ainsi à l'unisson¹… quelle économie incommensurable ce serait pour l'humanité.

      ¹ ou bien faudrait-il écrire « résonner ainsi à l'unisson » ?

      « IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace

      • [^] # Re: Pérénité

        Posté par  . Évalué à 8.

        Bah j'imagine que la nuance est trop technique pour la plupart des décideurs. Personnellement, j'utilise quelques plateformes commerciales sans me poser plus de questions que ça : github, overleaf, etc. Mais je sais que s'ils merdent (et que j'ai fait mes backups à temps, hum hum), je peux rapatrier mes projets et faire plus ou moins ce que je faisais avant sans leurs outils, en moins pratique peut-être.

        Si par contre le fournisseur de service propose ses propres outils, alors les services d'hébergement sont 100% liés au produit logiciel, c'est la certitude d'aller vers une situation merdique (la seule incertitude, c'est quand). En faisant ça, tu te mets volontairement dans une situation de dépendance totale; ils peuvent augmenter leurs tarifs de 300%, t'imposer des conditions insupportables, le coût de migration est énorme. Pourquoi certains ne comprennent pas ça me dépasse un peu, et la seule explication que je voie c'est qu'ils ne connaissent pas la technologie sous-jacence, et ne savent pas s'ils peuvent faire tourner la même en local ou non.

        • [^] # Re: Pérénité

          Posté par  (site web personnel) . Évalué à 3.

          Je suis globalement d’accord, je mettrais juste une petite nuance sur la fin: le coût de mise en place/gestion des outils équivalents peu être juste trop par rapport aux besoins, et dans ce cas c'est avec eux (et le risque), ou nada.

          Après c'est qu'une question de risque: il ne faut pas que l'activité même te soit indispensable, sinon en effet c'est game over à moyen terme. Si c'est qu'une activité annexe dont tu peux te passer, l'équation peux être tout de même bénéficiaire pour le temps que ça dure.

  • # Excuses

    Posté par  . Évalué à 10.

    Excusez-moi si mon journal fait un peu publicitaire, je n'en avais vraiment pas l'intention.
    Je reconnais que je n'avais pas vérifié la licence, ni si le code était réutilisable. J'aurais dû, mais le mal est fait.

    L'objectif de ce journal était vraiment de vous partager cette petite découverte, qui peut être utile dans de nombreux cas où on a la flemme de réinventer la roue. Je n'ai pas été payé et ne le serais jamais pour rédiger ce journal, ce n'est pas plus de la publicité que quand vous recommandez telle distribution Linux à quelqu'un.

    Je suis absolument désolé et contrit, et ferais attention à ne pas répéter ces erreurs.

    Il y a 10 sortes de gens dans le monde – ceux qui comprennent le ternaire, ceux qui ne le comprennent pas et ceux qui le confondent avec le binaire.

    • [^] # Re: Excuses

      Posté par  . Évalué à 10.

      Je suis absolument désolé et contrit, et ferais attention à ne pas répéter ces erreurs.

      Ne fait pas de l'auto flagellation pour qui peu. Les réactions peuvent paraître froides, mais faut pas se formaliser.

      https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

      • [^] # Re: Excuses

        Posté par  (site web personnel) . Évalué à 3.

        Non pas d'accord il faut une punition exemplaire

        au choix :
        Je propose que tu te découpes le petit doigt gauche et l'envoie à l'équipe de modération
        ou
        tu te fasse un tatouage du logo windows sur le front
        ou
        que tu apprennes par coeur les conditions d'utilisations de la base de données Oracle

        Sinon l'idée de produit est bonne, je n'ai pas regardé les tarifs mais cela peut être intéressant de l'étudier

        Merci pour la découverte

  • # Également reçu le mail en question

    Posté par  . Évalué à 9.

    Mon compteur à BS intégré s'est affolé "up to 11" comme on dit.

    Promptement ignoré ce "monsieur" (restons polis) que je trouve sacrement culotté.

    A noter qu'il est dit dans le mail: " I'd love to hear your thoughts and give you a free Pro account with higher limits if interested. If not, I understand and won't email again. […] p.s. You are not on any list and I won't email you again, but you can still click unsubscribe. "

    Le mail est bel et bien envoyé par un système de mailing list, il y a un lien pour le unsubscribe, mais on est dans aucune liste.

    Quel foutage de gueule…

    • [^] # Re: Également reçu le mail en question

      Posté par  . Évalué à 3.

      Et il ne donne pas un compte pro gratuit, il le prête pour 6 mois apparemment..
      marketing, marketing, ..

      « Tant qu'on parle de nous, même si c'est en mal, au moins on parle de nous » (un de mes anciens chefs de service très porté sur le marketing)

  • # alternatives

    Posté par  . Évalué à 5.

    on trouve des alternatives sur plusieurs sites dédiés à la classification des logiciels, dont les logiciels open-source. J'espère que j'ai bien classifié Pipedream sur Openhub.

    https://openhub.net/p/pipedream-workflow

  • # Ça me donne une idée pour un outil d'admin

    Posté par  . Évalué à 3.

    Pipedream, ça m'a tout de suite évoqué ce jeu vidéo des années 80 ou l'on devait emmancher des tuyaux de plomberie pour éviter l'inondation. (aussi existant sous le nom Pipemania).

    Et puis j'ai pensé à psdoom.

    L'idée : donner une visu marrante à base de plomberie, à un constructeur de ligne de commande, couplé à pv ?

    Je suis bien incapable de le faire, mais bon, "je pose ça là" ;).

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.