Jump to content

Idea: enabling payments in a CI/CD pipeline


Recommended Posts


"Can we enable payments, and more specifically XRP, in our CI/CD pipelines?" I've been playing with this idea the past week if it would be possible to contribute to the open source community during development lifecycles.

With Node.js and in particular the packages structure, a lot of dependencies are added between lots of packages. Whether this is a good thing or not is another discussion :) Some of these projects are also looking for funding. When you've used npm you've probably seen the npm fund command.

Now, what if we could automate this and distribute XRP to opting-in projects whenever we have a succesful release, or even build?

I've created an example of the idea here, that leverages travis to do the build and donate a payment to the xrp-payment-cli package: https://github.com/bnuyts/xrp-payment-cli-example

You can check the log output of the builds and see that XRP is being transacted at the end: https://travis-ci.com/github/bnuyts/xrp-payment-cli-example/jobs/467430753#L211

What happens is the following:

  1. build is triggered via an event on github to travis
  2. travis runs npm install
  3. xrp-payment-cli is defined as dev dependency and is installed in node_modules
  4. the travis configuration file contains the following to trigger the donation functionality of xrp-payment-cli
      - xrp-payment-cli donate --sender ${SENDER} --secret ${SECRET} --amount ${AMOUNT}
  5. when the build is succesful, XRP is sent to the addresses defined in package.json files of node_modules. E.g. the package.json of xrp-payment-cl

Below an abstract illustration of the concept:



I've probably missed some things, like what happens when lots of payments are submitted at the same time, will it increase the fee by a lot? Is bulk submitting possible?

Anyhow, I think that with the speed of XRP and the usage of drops, almost anyone willing is capable of contributing something to the OSS projects they love, in small bits, but regularly.

Feedback is welcome!

Edited by bnuyts
Link to comment
Share on other sites

I like the idea. It's actually Coil for Open-Source Developers.

I guess this could also be well integrated in Maven Central or other Public Repositories.

Link to comment
Share on other sites

9 hours ago, Karl said:

I like the idea. It's actually Coil for Open-Source Developers.

I guess this could also be well integrated in Maven Central or other Public Repositories.

Indeed, other dependency management tools could also implement this!

I've also opened a discussion on the npm's cli tooling discussion board to see how they feel about the idea. https://github.com/npm/feedback/discussions/134

Link to comment
Share on other sites

I really like that idea! Some time ago I tried to motivate coil team to support a usecase, where we could implement coil in any software. But I could not convince them I think.

In my opinion there are some interesting advantages in such an approach:
a) As you already exound it's a way to support other (free) projects
b) It enableds a further distribution of XRP
c) It could improve one of XRP ecosystem's most disadvatages: lack of independent developers. While BTC, ETH and others have PoW to enable companies and developers to generate regular earnings, theres no such a thing in XRP ecosystem. The possibility of earning money will attract a lot of developers.
d) It would enable a complete new and easy way how one (a customer) could pay for software.

Unfortunately I haven't discovered a solution for that until now, which is easy enought to get implemented.
As a developer I would love to provide software (also in non crypto related projects), which include "pay-per-use" system. For b) and c) Ripple as a big XRP holder is maybe also interessted in such possibilities. I think it worth to think more about such a payment solution.

Edited by Jerrybo
spelling, d)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.