tilgovi: hey there -- it's a build pipeline service
I'm just experimenting atm
tilgovi
cool
I was wondering if it replaced travis
nickstenn
but it looks very nice indeed
yes, it would
it's essentially just a web service and an open-source "agent" that you run on your build servers
(so we'd need to run our own build server or servers)
but it has some nice properties:
- built in support for running build steps in docker containers
- build artifacts (we can build prod extensions)
- manual release steps
so I'm thinking we could automate the deployment to the chrome store
so that deploying to production is a one-click operation, and everyone can see both the dokku log and the deployment to the chrome store
tilgovi
nice
eventually FF, too
nickstenn
yes, of course
tilgovi
btw, I'd love your thoughts on how we solve the current blocker for FF
the static assets issue
nickstenn
issue?
tilgovi
actually, this is easy. It just hit me.
I was assuming that since we can't bundle the iframe source that we would be loading it from the server and then getting server-side assets for the iframe
that mixes poorly with the injected assets, which are bundled
but maybe we could have the server generate an app.html for the FF extension that has resource:// urls
<shrug>
issue for another time
i'm working on fun things today
nickstenn
good :)
oh this is going to be so sweet if it works out
tilgovi
cool
i'm working on es-http-parser
my joyent/http-parser -> emscripten -> js
nickstenn
an http parser for node?
tilgovi
the http parser from node compiled so it can run in the browser
node core takes joyent/http-parser and makes bindings for it from v8/c++ land exported into the runtime
nickstenn
do i... do i want to know why you want an http parser in the browser? :p
tilgovi
I'm just creating a similar binding using emscripten
So we can run server software as browser extensions ;)
nickstenn runs for the hills
nickstenn
sounds fun :)
tilgovi
Because the limit of decentralization is running our own stuff locally and I want that to be as easy as installing an app.
so I almost have express running inside a chrome extension
nickstenn
that's impressive
can you get access to a network socket, though?
tilgovi
yep
nickstenn
how would that work?
tilgovi
chrome packaged apps have a sockets API
nickstenn
oh my, you can!?
holy shit I did not know that
tilgovi
so I use browserify and hack the module resolution
make the builtin process object in the environment have a bindings function that returns my chrome.* API bindings in place of the node core v8 bindings to things
require('http') and you get the actual iojs/node http module code, but it's running against bindings that are JS on top of chrome.* rather than C++ on top of POSIX
process.binding('tcp_wrap') gives you back a simple wrapper around chrome's sockets API
process.binding('http_parser') gives you back the emscripten wrapper around the http praser
and net.js and http.js from the node source just work
it's pretty silly
bengo joined the channel
nickstenn
tilgovi: sorry -- got distracted by dinner
it does indeed sound very silly
tilgovi
no worries
I'm just ramblin
bengo joined the channel
GitHub181 joined the channel
NOTICE: [h] nickstenning pushed 3 new commits to buildkite-pipeline: https://github.com/hypothesis/h/compare/c118cb98d122...aab5d6eebeb3
NOTICE: h/buildkite-pipeline a3c682c Nick Stenning: Add buildkite automation scripts to Dockerfile...
NOTICE: h/buildkite-pipeline 21a331f Nick Stenning: Remove Dockerfile ENTRYPOINT...
NOTICE: h/buildkite-pipeline aab5d6e Nick Stenning: Install a system PhantomJS when running tests
GitHub181 has left the channel
nickstenn
tilgovi: well holy shit
tilgovi
?
nickstenn
tests run on buildkite in 2m
:)
tilgovi
ugh that's so much faster than travis
nickstenn
(because the docker image is already built)
tilgovi
oh, huh
they build and preserve the image between runs?
nickstenn
it's up to you
tilgovi
interesting
nickstenn
but the image is on your build server
tilgovi
ah, right
nickstenn
so yes, it's possible to preserve the image between runs