Move api client code into their respective package

This separates API v1 and API v2 client code from each other into their
logical places. It kills the toplevel tastyapi package.
front-end-standardization
Gregor Müllegger 2015-07-20 17:38:00 +02:00
parent 91dd5d169c
commit 52ff9691a9
12 changed files with 33 additions and 25 deletions

View File

@ -15,10 +15,3 @@ if USER and PASS:
else:
log.warning("SLUMBER_USERNAME/PASSWORD settings are not set")
api = slumber.API(base_url='%s/api/v1/' % API_HOST)
if USER and PASS:
log.debug("Using slumber v2 with user %s, pointed at %s" % (USER, API_HOST))
apiv2 = slumber.API(base_url='%s/api/v2/' % API_HOST, auth=(USER, PASS))
else:
log.warning("SLUMBER_USERNAME/PASSWORD settings are not set")
apiv2 = slumber.API(base_url='%s/api/v2/' % API_HOST)

View File

@ -5,7 +5,6 @@ import json
from django.core.management.base import BaseCommand
from projects import tasks
from tastyapi import api
log = logging.getLogger(__name__)

View File

@ -3,7 +3,7 @@ from optparse import make_option
from django.core.management.base import BaseCommand
from projects import tasks
from tastyapi import api
from api.client import api
log = logging.getLogger(__name__)

View File

@ -3,7 +3,7 @@ from optparse import make_option
from django.core.management.base import BaseCommand
from projects import tasks
from tastyapi import api
from api.client import api
log = logging.getLogger(__name__)

View File

@ -14,7 +14,7 @@ from builds import utils as version_utils
from doc_builder.base import BaseBuilder, restoring_chdir
from projects.utils import run, safe_write
from projects.exceptions import ProjectImportError
from tastyapi import apiv2
from restapi.client import api
log = logging.getLogger(__name__)
@ -109,7 +109,7 @@ class BaseSphinx(BaseBuilder):
rtd_ctx['downloads'] = self.version.get_downloads(pretty=True)
else:
rtd_ctx['versions'] = project.api_versions()
rtd_ctx['downloads'] = (apiv2.version(self.version.pk)
rtd_ctx['downloads'] = (api.version(self.version.pk)
.get()['downloads'])
rtd_string = template_loader.get_template('doc_builder/conf.py.tmpl').render(rtd_ctx)

View File

@ -6,7 +6,7 @@ from django.conf import settings
from requests_oauthlib import OAuth1Session, OAuth2Session
from .models import GithubProject, GithubOrganization, BitbucketProject, BitbucketTeam
from tastyapi import apiv2
from restapi.client import api
log = logging.getLogger(__name__)
@ -82,7 +82,7 @@ def get_token_for_project(project, force_local=False):
token = None
try:
if getattr(settings, 'DONT_HIT_DB', True) and not force_local:
token = apiv2.project(project.pk).token().get()['token']
token = api.project(project.pk).token().get()['token']
else:
for user in project.users.all():
tokens = SocialToken.objects.filter(account__user__username=user.username, app__provider='github')

View File

@ -24,7 +24,7 @@ from projects.utils import make_api_version, symlink, update_static_metadata
from projects.version_handling import determine_stable_version
from projects.version_handling import version_windows
from taggit.managers import TaggableManager
from tastyapi.slum import api
from api.client import api
from vcs_support.base import VCSProject
from vcs_support.backends import backend_cls

View File

@ -6,7 +6,7 @@ import redis
from core.utils import run_on_app_servers
from projects.constants import LOG_TEMPLATE
from tastyapi import apiv2
from restapi.client import api
log = logging.getLogger(__name__)
@ -49,7 +49,7 @@ def symlink_subprojects(version):
"""
# Subprojects
if getattr(settings, 'DONT_HIT_DB', True):
subproject_slugs = [data['slug'] for data in apiv2.project(version.project.pk).subprojects.get()['subprojects']]
subproject_slugs = [data['slug'] for data in api.project(version.project.pk).subprojects.get()['subprojects']]
else:
rels = version.project.subprojects.all()
subproject_slugs = [rel.child.slug for rel in rels]
@ -77,7 +77,7 @@ def symlink_translations(version):
translations = {}
if getattr(settings, 'DONT_HIT_DB', True):
for trans in (apiv2
for trans in (api
.project(version.project.pk)
.translations.get()['translations']):
translations[trans['language']] = trans['slug']

View File

@ -29,12 +29,12 @@ from projects.constants import LOG_TEMPLATE
from builds.constants import STABLE
from projects import symlinks
from privacy.loader import Syncer
from tastyapi import api, apiv2
from search.parse_json import process_all_json_files
from search.utils import process_mkdocs_json
from restapi.utils import index_search_request
from vcs_support import utils as vcs_support_utils
import tastyapi
import api.client
import restapi.client
try:
from readthedocs.projects.signals import before_vcs, after_vcs, before_build, after_build
@ -69,8 +69,8 @@ def update_docs(pk, version_pk=None, build_pk=None, record=True, docker=False,
"""
# Dependency injection to allow for testing
if api is None:
api = tastyapi.api
apiv2 = tastyapi.apiv2
api = api.client.api
apiv2 = restapi.client.api
else:
apiv2 = api
@ -223,7 +223,7 @@ def update_imported_docs(version_pk, api=None):
Check out or update the given project's repository.
"""
if api is None:
api = tastyapi.api
api = api.client.api
version_data = api.version(version_pk).get()
version = make_api_version(version_data)

View File

@ -19,7 +19,7 @@ log = logging.getLogger(__name__)
def version_from_slug(slug, version):
from projects import tasks
from builds.models import Version
from tastyapi import apiv2 as api
from restapi.client import api
if getattr(settings, 'DONT_HIT_DB', True):
version_data = api.version().get(project=slug, slug=version)['results'][0]
v = tasks.make_api_version(version_data)

View File

@ -0,0 +1,17 @@
import slumber
import logging
from django.conf import settings
log = logging.getLogger(__name__)
USER = getattr(settings, 'SLUMBER_USERNAME', None)
PASS = getattr(settings, 'SLUMBER_PASSWORD', None)
API_HOST = getattr(settings, 'SLUMBER_API_HOST', 'https://readthedocs.org')
if USER and PASS:
log.debug("Using slumber v2 with user %s, pointed at %s" % (USER, API_HOST))
api = slumber.API(base_url='%s/api/v2/' % API_HOST, auth=(USER, PASS))
else:
log.warning("SLUMBER_USERNAME/PASSWORD settings are not set")
api = slumber.API(base_url='%s/api/v2/' % API_HOST)

View File

@ -1 +0,0 @@
from .slum import api, apiv2 # noqa