Skip to content
Permalink
Browse files

Rename Crawlmanager -> Browsertrix (#13)

* rename crawlmanager -> browsertrix

* fix typo and format in browsertrix_cli
  • Loading branch information...
ikreymer committed Apr 19, 2019
1 parent 3edf22e commit db0367e4091076abb00502944564bb6f87d50e67
@@ -8,6 +8,6 @@ RUN pip install --no-cache-dir -r requirements.txt

COPY . ./

CMD uvicorn --reload --host 0.0.0.0 --port 8000 crawlmanager.api:app
CMD uvicorn --reload --host 0.0.0.0 --port 8000 browsertrix.api:app


@@ -1,19 +1,22 @@
crawlmanager
Browsertrix
=============================
[![Code Style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)

[![Build Status](https://travis-ci.org/webrecorder/browsertrix.svg?branch=master)](https://travis-ci.org/webrecorder/browsertrix)


## Getting Started

## Running

crawlmanager is designed to run with Docker and Docker Compose.
browsertrix is designed to run with Docker and Docker Compose.
To run, launch:

```bash
docker-compose build; docker-compuse up -d
```

To access the crawlmanager frontend, load `http://localhost:8000/`
To access the browsertrix frontend, load `http://localhost:8000/`

## Testing

File renamed without changes.
File renamed without changes.
@@ -13,7 +13,7 @@

import logging

logger = logging.getLogger('crawlmanager')
logger = logging.getLogger('browsertrix')

import time

File renamed without changes.
File renamed without changes.
@@ -276,7 +276,7 @@ def create_crawl(crawl_spec_file, start, browser, headless, behavior_time, watch
print("Can't watch, crawl is running in headless mode")

else:
open_browsers(res['browsers'], [], res['id'], headless)
open_browsers(res['browsers'], [], res['id'])


# ============================================================================
@@ -341,10 +341,7 @@ def get_info(crawl_id, urls):


# ============================================================================
@cli.command(
name='watch',
help='Watch crawling browsers in local browser',
)
@cli.command(name='watch', help='Watch crawling browsers in local browser')
@click.argument('crawl_id', nargs=-1)
def watch_crawl(crawl_id):
""" Watch crawling browsers in local browser
@@ -1,8 +1,8 @@
version: '3.5'

services:
crawlman:
image: webrecorder/crawlman
browsertrix:
image: webrecorder/browsertrix
build:
context: .
environment:
@@ -44,8 +44,8 @@ services:
image: oldwebtoday/shepherd:1.1.0-dev

environment:
- BROWSER_NET=crawlmanager_browsers
- MAIN_NET=crawlmanager_default
- BROWSER_NET=browsertrix_browsers
- MAIN_NET=browsertrix_default

- PROXY_HOST=pywb
- PROXY_PORT=8080
@@ -1,3 +1,3 @@
#!/usr/bin/env bash

black -S -v crawlmanager crawlmanager_cli
black -S -v browsertrix browsertrix_cli
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

dirs="crawlmanager/ crawlmanager_cli/"
dirs="browsertrix/ browsertrix_cli/"

case "$1" in
"types"*)
@@ -14,24 +14,24 @@ def load_requirements(filename):


setup(
name='crawlmanager-cli',
name='browsertrix-cli',
version=__version__,
author='John Berlin, Ilya Kreymer',
author_email='john.berlin@rhizome.org, ikreymer@gmail.com',
license='Apache 2.0',
#packages=find_packages(exclude=['test']),
packages=['crawlmanager_cli'],
url='https://github.com/webrecorder/crawlmanager',
packages=['browsertrix_cli'],
url='https://github.com/webrecorder/browsertrix',
description='Browsertrix CLI: Commandline interface for Webrecorder crawling system',
long_description=open('README.md').read(),
provides=[
'crawlmanager_cli',
'browsertrix_cli',
],
install_requires=load_requirements('cli-requirements.txt'),
zip_safe=True,
entry_points="""
[console_scripts]
browsertrix=crawlmanager_cli.main:cli
browsertrix=browsertrix_cli.main:cli
""",
test_suite='',
tests_require=load_requirements('test-local-requirements.txt'),
@@ -62,14 +62,14 @@ def init_crawl_data(filename, run_only):

@pytest.fixture(scope="class")
def api_test_client(request):
from crawlmanager.api import app
from browsertrix.api import app

with TestClient(app) as tc:
request.cls.client = tc
yield


@pytest.fixture(scope="class")
def crawlmanager_use_fake_redis(request):
with mock_patch("crawlmanager.utils.init_redis", init_fake_redis):
def browsertrix_use_fake_redis(request):
with mock_patch("browsertrix.utils.init_redis", init_fake_redis):
yield
@@ -7,7 +7,7 @@ services:
context: ../

# add debug logging
command: uvicorn --reload --host 0.0.0.0 --port 8000 crawlmanager.api:app --log-level debug
command: uvicorn --reload --host 0.0.0.0 --port 8000 browsertrix.api:app --log-level debug

environment:
- REDIS_URL=redis://redis/0
@@ -41,7 +41,7 @@


# ============================================================================
@pytest.mark.usefixtures('crawlmanager_use_fake_redis', 'api_test_client')
@pytest.mark.usefixtures('browsertrix_use_fake_redis', 'api_test_client')
class TestCrawlAPI:
crawl_id = None
crawl_id_2 = None
@@ -159,7 +159,7 @@ def test_invalid_crawl_2(self):

assert res.json() == {'detail': 'not found'}

@patch('crawlmanager.crawl.CrawlManager.do_request', mock_shepherd_api)
@patch('browsertrix.crawl.CrawlManager.do_request', mock_shepherd_api)
def test_start_crawl(self):

global shepherd_api_urls
@@ -233,7 +233,7 @@ def test_get_crawl_start_running(self):

assert len(json) == 17

@patch('crawlmanager.crawl.CrawlManager.do_request', mock_shepherd_api)
@patch('browsertrix.crawl.CrawlManager.do_request', mock_shepherd_api)
def test_stop_crawl(self):
res = self.client.post(f'/crawl/{self.crawl_id}/stop')
json = res.json()
@@ -255,7 +255,7 @@ def test_stop_crawl(self):

assert json['status'] == 'stopped'

@patch('crawlmanager.crawl.CrawlManager.do_request', mock_shepherd_api)
@patch('browsertrix.crawl.CrawlManager.do_request', mock_shepherd_api)
def test_delete_crawl(self):
res = self.client.delete(f'/crawl/{self.crawl_id}')

@@ -271,7 +271,7 @@ def test_delete_crawl(self):

assert res.json()['detail'] == 'not found'

@patch('crawlmanager.crawl.CrawlManager.do_request', mock_shepherd_api)
@patch('browsertrix.crawl.CrawlManager.do_request', mock_shepherd_api)
def test_create_and_start(self):
res = self.client.post(
'/crawls', json={'num_tabs': 2,
@@ -318,7 +318,7 @@ def test_second_crawl_info(self):
data = shepherd_api_post_datas['request'][-1]
assert data['deferred'] == {'autobrowser': False, 'xserver': True}

@patch('crawlmanager.crawl.CrawlManager.do_request', mock_shepherd_api)
@patch('browsertrix.crawl.CrawlManager.do_request', mock_shepherd_api)
def test_stop_and_delete_second_crawl(self):
res = self.client.post(f'/crawl/{self.crawl_id}/stop')
json = res.json()

0 comments on commit db0367e

Please sign in to comment.
You can’t perform that action at this time.