Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build out passive compiler service using npm hooks #24

Open
8 tasks
rwaldron opened this issue Jun 2, 2016 · 10 comments
Open
8 tasks

Build out passive compiler service using npm hooks #24

rwaldron opened this issue Jun 2, 2016 · 10 comments

Comments

@rwaldron
Copy link
Contributor

rwaldron commented Jun 2, 2016

http://blog.npmjs.org/post/145260155635/introducing-hooks-get-notifications-of-npm

Here's what needs to be created:

  • a "t2-compiler" npm user
  • register hooks on behalf of "t2-compiler" with wombat
    • must watch existing packages for compiled modules.
  • a server that handles incoming HTTP POST requests
    • parse payload
    • determine required action (needs compilation? is blacklisted? etc)
    • do cross compilation
    • store compilation result assets on packages host
@soldair
Copy link

soldair commented Jun 2, 2016

@rwaldron @reconbot do you have a link to the proof of concept work on the changes feed?

@bmeck
Copy link

bmeck commented Jun 2, 2016

do we have a list of cross compilation targets?

  • arch
  • libc impl
  • kernel

I have an ancient build server that should be workable

@bmeck
Copy link

bmeck commented Jun 2, 2016

would probably need to figure out $$ if this is more than minor amounts of modules

@reconbot
Copy link
Member

reconbot commented Jun 2, 2016

We have hosting and storage available.

On Thu, Jun 2, 2016, 9:53 AM Bradley Meck notifications@github.com wrote:

would probably need to figure out $$ if this is more than minor amounts of
modules


You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
#24 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AABlbvysAzeltPIaBQ5IhSs_VzLa4sgBks5qHuBRgaJpZM4IskEO
.

@soldair
Copy link

soldair commented Jun 2, 2016

if we want to use hooks instead of the changes feed i kind of see the user story like this...
user 🌵 depends or authors compiled package 📦 they want it to be available to tessel 💻

🌵 creates a webhook with wombat hook add 📦 https:// 💻 /build-webhook not-very-secret

on change 💻 gets the 📦 events. if its a new publish or has never been seen we compile all of the versions otherwise just the new version.

💰

@bmeck
Copy link

bmeck commented Jun 2, 2016

@soldair maybe I don't know enough about hooks, but can they compile onto existing/about_to_publish versions?

@soldair
Copy link

soldair commented Jun 2, 2016

nothing that cool yet. tessel has a build server i think and will host the binaries on s3. when folks push their code to the tessel, tessel will send the compiled versions to the device

@soldair
Copy link

soldair commented Jun 2, 2016

this pattern might be good for xcompiling more kinds of native modules though @bmeck. its more of an opt in rather than compile everything. im not sure whats better.

@bmeck
Copy link

bmeck commented Jun 2, 2016

@soldair taking that convo offline, little out of scope here

@reconbot
Copy link
Member

reconbot commented Jun 2, 2016

The changefeed still works well for our purposes

On Thu, Jun 2, 2016, 10:10 AM Ryan Day notifications@github.com wrote:

this pattern might be good for xcompiling more kinds of native modules
though @bmeck https://github.com/bmeck. its more of an opt in rather
than compile everything. im not sure whats better.


You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
#24 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AABlbhj7gVjAUa766OjVwYfLUa9gSVjOks5qHuP8gaJpZM4IskEO
.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants