kopia lustrzana https://github.com/jupyterhub/repo2docker
46 wiersze
1.5 KiB
Python
46 wiersze
1.5 KiB
Python
"""Generates Dockerfiles from the legacy Binder Dockerfiles
|
|
based on `andrewosh/binder-base`.
|
|
|
|
The Dockerfile is amended to add the contents of the repository
|
|
to the image and install a supported version of the notebook
|
|
and IPython kernel.
|
|
|
|
Note: This buildpack has been deprecated.
|
|
"""
|
|
|
|
import logging
|
|
|
|
|
|
class LegacyBinderDockerBuildPack:
|
|
"""Legacy build pack for compatibility to first version of Binder.
|
|
|
|
This buildpack has been deprecated.
|
|
"""
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
pass
|
|
|
|
def detect(self):
|
|
"""Check if current repo should be built with the Legacy BuildPack."""
|
|
log = logging.getLogger("repo2docker")
|
|
try:
|
|
with open("Dockerfile") as f:
|
|
for line in f:
|
|
if line.startswith("FROM"):
|
|
if "andrewosh/binder-base" in line.split("#")[0].lower():
|
|
log.error(
|
|
"The legacy buildpack was removed in January 2020."
|
|
)
|
|
log.error(
|
|
"Please see https://repo2docker.readthedocs.io/en/"
|
|
"latest/configuration/index.html for alternative ways "
|
|
"of configuring your repository."
|
|
)
|
|
raise RuntimeError("The legacy buildpack has been removed.")
|
|
else:
|
|
return False
|
|
except FileNotFoundError:
|
|
pass
|
|
|
|
return False
|