kopia lustrzana https://github.com/jupyterhub/repo2docker
Add a command for generating dataverse data file
rodzic
8edafd0d07
commit
063fd4dd9a
32
setup.py
32
setup.py
|
@ -1,3 +1,4 @@
|
||||||
|
from distutils.cmd import Command
|
||||||
from setuptools import setup, find_packages
|
from setuptools import setup, find_packages
|
||||||
import sys
|
import sys
|
||||||
import versioneer
|
import versioneer
|
||||||
|
@ -8,6 +9,35 @@ else:
|
||||||
with open("README.md", encoding="utf8") as f:
|
with open("README.md", encoding="utf8") as f:
|
||||||
readme = f.read()
|
readme = f.read()
|
||||||
|
|
||||||
|
|
||||||
|
class GenerateDataverseInstallationsFileCommand(Command):
|
||||||
|
description = "Generate Dataverse installations data map"
|
||||||
|
user_options = []
|
||||||
|
|
||||||
|
def initialize_options(self):
|
||||||
|
self.url = (
|
||||||
|
"https://services.dataverse.harvard.edu/miniverse/map/installations-json"
|
||||||
|
)
|
||||||
|
|
||||||
|
def finalize_options(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
from urllib.request import urlopen
|
||||||
|
import json
|
||||||
|
|
||||||
|
resp = urlopen(self.url, timeout=5)
|
||||||
|
resp_body = resp.read()
|
||||||
|
data = json.loads(resp_body.decode("utf-8"))
|
||||||
|
if "installations" not in data:
|
||||||
|
raise ValueError("Malformed installation map.")
|
||||||
|
with open("repo2docker/contentproviders/dataverse.json", "wb") as fp:
|
||||||
|
fp.write(resp_body)
|
||||||
|
|
||||||
|
|
||||||
|
__cmdclass = versioneer.get_cmdclass()
|
||||||
|
__cmdclass["generate_dataverse_file"] = GenerateDataverseInstallationsFileCommand
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
name="jupyter-repo2docker",
|
name="jupyter-repo2docker",
|
||||||
version=versioneer.get_version(),
|
version=versioneer.get_version(),
|
||||||
|
@ -48,7 +78,7 @@ setup(
|
||||||
],
|
],
|
||||||
packages=find_packages(),
|
packages=find_packages(),
|
||||||
include_package_data=True,
|
include_package_data=True,
|
||||||
cmdclass=versioneer.get_cmdclass(),
|
cmdclass=__cmdclass,
|
||||||
entry_points={
|
entry_points={
|
||||||
"console_scripts": [
|
"console_scripts": [
|
||||||
"jupyter-repo2docker = repo2docker.__main__:main",
|
"jupyter-repo2docker = repo2docker.__main__:main",
|
||||||
|
|
Ładowanie…
Reference in New Issue