diff venv/lib/python2.7/site-packages/planemo/github_util.py @ 0:d67268158946 draft

planemo upload commit a3f181f5f126803c654b3a66dd4e83a48f7e203b
author bcclaywell
date Mon, 12 Oct 2015 17:43:33 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/venv/lib/python2.7/site-packages/planemo/github_util.py	Mon Oct 12 17:43:33 2015 -0400
@@ -0,0 +1,36 @@
+"""
+"""
+
+try:
+    import github
+    has_github_lib = True
+except ImportError:
+    github = None
+    has_github_lib = False
+
+NO_GITHUB_DEP_ERROR = ("Cannot use github functionality - "
+                       "PyGithub library not available.")
+
+
+def get_github_config(ctx):
+    if "github" not in ctx.global_config:
+        return None
+    global_github_config = ctx.global_config["github"]
+    return GithubConfig(global_github_config)
+
+
+class GithubConfig(object):
+
+    def __init__(self, config):
+        if not has_github_lib:
+            raise Exception(NO_GITHUB_DEP_ERROR)
+        self._github = github.Github(config["username"], config["password"])
+
+
+def publish_as_gist_file(ctx, path, name="index"):
+    github_config = get_github_config(ctx)
+    user = github_config._github.get_user()
+    content = open(path, "r").read()
+    content_file = github.InputFileContent(content)
+    gist = user.create_gist(False, {name: content_file})
+    return gist.files[name].raw_url