Add images_hierarchy.py file

This commit is contained in:
Ayaz Salikhov
2021-03-22 13:31:56 +03:00
parent 0833514be2
commit 4d671d4895
2 changed files with 55 additions and 51 deletions

View File

@@ -3,63 +3,13 @@
# Distributed under the terms of the Modified BSD License.
import argparse
import logging
from dataclasses import dataclass, field
from typing import Optional, List
from taggers import TaggerInterface, \
SHATagger, \
PythonVersionTagger, \
JupyterNotebookVersionTagger, JupyterLabVersionTagger, JupyterHubVersionTagger, \
RVersionTagger, TensorflowVersionTagger, JuliaVersionTagger, \
SparkVersionTagger, HadoopVersionTagger, JavaVersionTagger
from plumbum.cmd import docker
from images_hierarchy import ALL_IMAGES
logger = logging.getLogger(__name__)
@dataclass
class ImageDescription:
parent_image: Optional[str]
taggers: List[TaggerInterface] = field(default_factory=list)
ALL_IMAGES = {
"base-notebook": ImageDescription(
parent_image=None,
taggers=[
SHATagger,
PythonVersionTagger, JupyterNotebookVersionTagger, JupyterLabVersionTagger, JupyterHubVersionTagger
]
),
"minimal-notebook": ImageDescription(
parent_image="base-notebook"
),
"scipy-notebook": ImageDescription(
parent_image="minimal-notebook"
),
"r-notebook": ImageDescription(
parent_image="minimal-notebook",
taggers=[RVersionTagger]
),
"tensorflow-notebook": ImageDescription(
parent_image="scipy-notebook",
taggers=[TensorflowVersionTagger]
),
"datascience-notebook": ImageDescription(
parent_image="scipy-notebook",
taggers=[JuliaVersionTagger]
),
"pyspark-notebook": ImageDescription(
parent_image="scipy-notebook",
taggers=[SparkVersionTagger, HadoopVersionTagger, JavaVersionTagger]
),
"allspark-notebook": ImageDescription(
parent_image="pyspark-notebook",
taggers=[RVersionTagger]
)
}
def get_all_taggers(short_image_name):
taggers = []
while short_image_name is not None:

View File

@@ -0,0 +1,54 @@
# Copyright (c) Jupyter Development Team.
# Distributed under the terms of the Modified BSD License.
from dataclasses import dataclass, field
from typing import Optional, List
from taggers import TaggerInterface, \
SHATagger, \
PythonVersionTagger, \
JupyterNotebookVersionTagger, JupyterLabVersionTagger, JupyterHubVersionTagger, \
RVersionTagger, TensorflowVersionTagger, JuliaVersionTagger, \
SparkVersionTagger, HadoopVersionTagger, JavaVersionTagger
@dataclass
class ImageDescription:
parent_image: Optional[str]
taggers: List[TaggerInterface] = field(default_factory=list)
ALL_IMAGES = {
"base-notebook": ImageDescription(
parent_image=None,
taggers=[
SHATagger,
PythonVersionTagger,
JupyterNotebookVersionTagger, JupyterLabVersionTagger, JupyterHubVersionTagger
]
),
"minimal-notebook": ImageDescription(
parent_image="base-notebook"
),
"scipy-notebook": ImageDescription(
parent_image="minimal-notebook"
),
"r-notebook": ImageDescription(
parent_image="minimal-notebook",
taggers=[RVersionTagger]
),
"tensorflow-notebook": ImageDescription(
parent_image="scipy-notebook",
taggers=[TensorflowVersionTagger]
),
"datascience-notebook": ImageDescription(
parent_image="scipy-notebook",
taggers=[JuliaVersionTagger]
),
"pyspark-notebook": ImageDescription(
parent_image="scipy-notebook",
taggers=[SparkVersionTagger, HadoopVersionTagger, JavaVersionTagger]
),
"allspark-notebook": ImageDescription(
parent_image="pyspark-notebook",
taggers=[RVersionTagger]
)
}