Min RK
654e6c8ede
fix legacy docker
...
appendix was just skipped
2017-09-07 14:22:15 +02:00
Min RK
dd82e688e7
make jupyterhub a build arg
...
and verify that it's installed in tests
2017-09-07 14:22:15 +02:00
Min RK
05b8d662ea
typo: --print-dockerfile ended up falling under --debug
2017-09-07 14:21:11 +02:00
Min RK
b20ee4adb9
don't install requirements.txt if environment.yml is present
...
The most likely cause of both being present is equivalent dependencies for two use cases,
not a single multi-stage conda environment.
If deps should be installed in conda with pip, they will be in `environment.yml` under `pip`.
2017-09-07 13:21:23 +02:00
Yuvi Panda
8db1d43210
Merge pull request #68 from yuvipanda/print-dockerfile
...
Add --debug & --no-build options
2017-09-06 12:43:42 -07:00
yuvipanda
d116c30498
Output Dockerfile contents if set to --debug
...
The Dockerfile we generate won't really work at all outside
of repo2docker. This makes it very clear that these are purely
for debugging purposes.
2017-08-27 11:04:01 -04:00
yuvipanda
3b226d183b
Add --print-dockerfile & --no-build options
2017-08-27 10:51:01 -04:00
yuvipanda
d6a4cc241e
Add npm to base image
...
Too many things require npm to build now
2017-08-01 23:18:15 -07:00
yuvipanda
cd7c151959
Filter all of src too when adding to tar
...
This also seems to be required to more consistently use the
Docker build cache.
2017-07-30 11:20:38 -07:00
yuvipanda
4d4c1fb606
Allow specifying requirements.txt with environment.yml
...
They both get installed.
2017-07-30 05:15:07 -07:00
yuvipanda
c6a79f1c10
Don't add packages list if there are no packages
2017-07-30 05:12:35 -07:00
yuvipanda
fe6975dda6
Make sure that build_script_files don't bust cache
...
This slowed down everything!
2017-07-30 05:12:27 -07:00
yuvipanda
2e9954a6c6
Add back --no-clean support
...
And remove some traitlets we are no longer using
2017-07-30 03:44:21 -07:00
yuvipanda
09476d8efa
Fix tarfile mode parameter that doesn't work in 3.4
2017-07-30 02:21:45 -07:00
yuvipanda
3266c2bdc8
Silence massive unreadable error messages when fetching base images
2017-07-29 23:33:43 -07:00
yuvipanda
7cf8ac18a7
Fix legacy dockerfile buildpack and add tests
2017-07-29 23:33:43 -07:00
yuvipanda
208d097468
Fix dockerfile builds and add tests for them
2017-07-29 22:51:46 -07:00
yuvipanda
8edc1ce0e0
Actually tell docker to bind ports
2017-07-29 20:14:36 -07:00
yuvipanda
25a57feaf7
Switch to buildpack-deps as base image
...
We were just slowly recreating this anyway
2017-07-29 18:51:36 -07:00
yuvipanda
e72d963b57
Fix conda builder + add tests
2017-07-29 18:19:55 -07:00
yuvipanda
fcb318c5e8
Refresh container state before trying to kill it
...
Stops racy tests where sometimes the container is already
dead before we try to kill it
2017-07-29 17:36:07 -07:00
yuvipanda
b187df0637
Mark py3 venv as default buildpack
2017-07-29 17:17:18 -07:00
yuvipanda
ad43fa3aab
Pass exit code of container back
2017-07-29 14:31:23 -07:00
yuvipanda
65c89e1f61
Properly support local directories
...
We don't need git!
2017-07-29 14:17:32 -07:00
yuvipanda
64bf17513f
Switch to using argparse for commandline parsing
...
Is cleaner and less hacky than using Traitlets. We still
use traitlets for configuration, and accept a config file
for configuring detectors and what not.
Also implements allowing arbitrary commands from the commandline,
so we can do things like build and test a container!
2017-07-28 23:46:04 -07:00
yuvipanda
c1816a82d4
Add support for arbitrary postBuild scripts
...
Fixes #31
2017-07-28 20:40:02 -07:00
yuvipanda
5225cfc1d4
Cleanup default logging for interactive use
2017-07-28 20:06:54 -07:00
yuvipanda
73284edae7
Don't install GA!
...
At best, this will be for binder only, and we should figure out
other ways of turning this one on.
2017-07-28 20:02:55 -07:00
yuvipanda
4226d01368
Try to make Dockerfiles ordering more deterministic
2017-07-28 20:02:46 -07:00
yuvipanda
b4215161fb
Break properly when no builders are found
2017-07-28 19:35:17 -07:00
yuvipanda
43a5848a3c
Move a set of packages to 'base'
...
This is inevitable - so let's just steal from a popular
docker image made for this purpose
2017-07-28 19:35:17 -07:00
yuvipanda
72466e17e8
Pre-compile Julia libraries when possible
2017-07-28 19:35:17 -07:00
yuvipanda
4af4eb471f
Stop building once you've built one image!
2017-07-28 19:35:17 -07:00
yuvipanda
523b30cf7b
Make the repo2docker app work with new buildpacks
2017-07-28 19:35:17 -07:00
yuvipanda
37b60a04f8
Fix legacy dockerfile buildpack to work properly
2017-07-28 19:35:17 -07:00
yuvipanda
d77bcb4ecd
Fix python2.7 buildpack to work properly
2017-07-28 19:35:17 -07:00
yuvipanda
a8ac7f26ff
Commit Julia's s2i assemble files!
...
They were accidentally ignored by the .gitignore!
2017-07-01 01:11:52 -07:00
yuvipanda
7146ae3c52
Bump julia builder version to match new 0.6 Julia
2017-06-30 23:37:34 -07:00
Min RK
7ef39b9be6
tweak how the python2 kerenl is installed
...
install in its own prefix as well
2017-06-29 10:37:10 -07:00
yuvipanda
6a4aa2f3aa
Add support for Julia buildpack
...
- Looks for REQUIRE file in a repo, assumes is Julia
- Version pinned to v0.5.2 now - in the future, pick one
based on presence of Julia spec in REQUIRE
Fixes #23
2017-06-14 23:58:31 -07:00
yuvipanda
f35cf58459
s2i/venv: Add python3.6 builder support
...
Not the default, since many projects don't have 3.6 wheels yet or
at all.
2017-06-03 17:47:54 -07:00
yuvipanda
742533e956
Bump version of image for default builder
2017-06-01 12:30:10 -07:00
yuvipanda
e973230685
Add jupyterlab by default to the conda builder
2017-06-01 12:29:52 -07:00
yuvipanda
df934df0b4
s2i/venv: Add enough packages to build non-wheel matplotlib
...
Eventually we should probably switch to a 2 stage build, but until
then this is good enough
2017-06-01 12:01:51 -07:00
yuvipanda
51c5f72b45
Remove docker-pull hack
...
No longer check if image exists by doing a docker-pull -
binderhub will no longer start a build if it knows that
the image already exists
2017-05-30 22:43:33 -07:00
yuvipanda
acb0d86027
Add a default build pack
...
Gives you a blank python3 environment
2017-05-30 13:58:19 -07:00
yuvipanda
f07c86f05e
Use never versions of s2i builder images in detectors
2017-05-28 23:26:27 -07:00
yuvipanda
a10c126506
Don't print appendix on each run for legacy dockerfile
2017-05-28 19:25:56 -07:00
Min RK
82ccb38e3a
move dockerfile appendix into LegacyBinderDockerBuildPack.dockerfile_appendix
...
and make it overrideable
2017-05-25 15:37:33 -07:00
Min RK
766eee29e6
add legacy binder dockerfile buildpack
...
- stages files, which previous binder did automatically and repo2docker does not
- installs required versions of ipykernel, jupyterhub, notebook
- registers kernelspecs explicitly
- launches notebook server with python3 env
- removes nb_conda_kernels, which was causing trouble
- sets JUPYTER_PATH so kernelspecs and extensions that were being installed into the python 2 env will still be picked up
2017-05-25 15:15:37 -07:00
Min RK
db66f1dc06
only log build output if capture=true
...
use stdout.write otherwise
2017-05-25 15:10:08 -07:00
Min RK
feaf46e5fc
respect docker env in docker buildpack
2017-05-25 15:09:30 -07:00
Min RK
e7674ce96c
bump version to 0.2.0
2017-05-24 17:17:57 -07:00
Min RK
e7f0ab645e
comment about output capturing
2017-05-24 16:42:25 -07:00
Min RK
698f9e1196
flush lines with carriage returns
...
for terminal progress bars
2017-05-24 16:33:35 -07:00
Min RK
f3505db967
only capture logs when doing json logging
...
and don’t do json logging by default
log messages include newlines, carriage returns so that they can be handled correctly in terminal frontends
2017-05-24 14:11:37 -07:00
Min RK
3ca1c47eda
Merge pull request #10 from jupyter/port-forward
...
Use same port in host and docker container
2017-05-24 12:25:15 -07:00
Yuvi Panda
11eb57cbb1
Merge pull request #12 from minrk/bundle-s2i
...
bundle s2i in wheels
2017-05-24 12:07:56 -07:00
Min RK
560b3ed563
append bundled s2i instead of prepend
...
so it’s lower priority than whatever is already on PATH
2017-05-24 11:47:20 -07:00
Min RK
c158daab9d
use bundled s2i by adding package to PATH
2017-05-24 09:49:23 -07:00
yuvipanda
cb11332c6f
Use same port in host and docker container
...
Makes it work on Linux and the default OS X install I think
2017-05-23 18:09:02 -07:00
yuvipanda
c7dae78a51
Move image existence check to a separate repo
2017-05-23 17:56:03 -07:00
Yuvi Panda
d3c099e8a2
Merge pull request #7 from minrk/s2i-build_image
...
further simplify s2i buildpacks
2017-05-23 12:46:47 -07:00
Min RK
7924113649
support repo as positional arg
...
and flesh out some Application basics: version, name, docstring
2017-05-23 12:29:27 -07:00
Min RK
1d74762c31
further simplify s2i buildpacks
...
setting build_image is enough, without overriding .build()
2017-05-23 12:09:48 -07:00
yuvipanda
b9efde90e9
Print out the host port number in a log message
...
Eventually, we should actually be passing the port number
inside the docker container, after verifying that it is available
on the host. We can deal with races by doing the same thing that
ipython notebook does.
2017-05-22 23:57:40 -07:00
yuvipanda
a0f539faaf
Don't use host network for running containers
...
- Doesn't really work on OS X. BOO!
2017-05-22 23:33:23 -07:00
yuvipanda
9adb8aa947
Use host networking when running
...
Since we only expect this to be happening on users computers
when they are running this to test, host networking solves a
bunch of surprises around access to ports, as well as figuring
out which port the notebook should be listening on (since it
can just rely on the logic inside the notebook)
Dangerous when run on a cloud environment!
2017-05-22 23:02:18 -07:00
yuvipanda
9fca3bf480
Kill the container when our program exits
2017-05-22 23:00:37 -07:00
yuvipanda
6505ddc564
Allow running just-built container
...
- make push optional
2017-05-22 22:55:17 -07:00
yuvipanda
ae124ec2f7
Make push optional and default to False
...
Let's optimize the defaults for good commandline usage rather
than for binderhub usage
2017-05-22 22:17:02 -07:00
yuvipanda
542c7a9a1c
Set default repo source to full path of current dir
...
Rather than just '.'
2017-05-22 22:16:46 -07:00
yuvipanda
657db33017
Set a default image name if none is provided
...
It's kind of shitty but better than just erroring.
2017-05-22 22:16:30 -07:00
yuvipanda
a7d85c48fc
Fix __main__ entrypoint to actually work
2017-05-22 21:30:28 -07:00
yuvipanda
e3224392e0
Add a __main__ and an entrypoint
2017-05-22 20:39:12 -07:00
yuvipanda
13226e1f27
Rename source_url and source_ref to repo and ref
...
Makes more sense, and also now consistent with the repository
name
2017-05-22 20:32:13 -07:00
yuvipanda
310bc0fbfe
Add a little more bit of documentation
2017-05-22 20:28:28 -07:00
yuvipanda
e2991f614a
Specify the type of buildpack list elements
2017-05-22 20:26:47 -07:00
yuvipanda
25c203c356
Minor variable name cleanup
2017-05-22 20:26:27 -07:00
yuvipanda
adbe908355
Rename alias for output image
...
Makes more sense
2017-05-22 20:13:20 -07:00
yuvipanda
46b08a21dd
Add more docs
2017-05-22 20:10:59 -07:00
yuvipanda
93972e9b58
Rename builder to repo2docker
...
Package name is jupyter-repo2docker
2017-05-22 16:22:36 -07:00