1+ # This tests all JobFunnel Scrapes
2+
3+ name : JobFunnel CI
4+
5+ on :
6+ push :
7+ branches : [ master ]
8+ pull_request :
9+ branches : [ master ]
10+
11+ jobs :
12+ build :
13+
14+ runs-on : ubuntu-16.04
15+
16+ steps :
17+ - uses : actions/checkout@v2
18+ - name : Set up Python 3.8
19+ uses : actions/setup-python@v2
20+ with :
21+ python-version : 3.8
22+ - name : Install dependencies
23+ run : |
24+ python -m pip install --upgrade pip
25+ - name : Install JobFunnel
26+ run : |
27+ pip install -e .
28+ python -m nltk.downloader stopwords
29+ - name : Lint with flake8
30+ run : |
31+ # stop the build if there are Python syntax errors or undefined names
32+ flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
33+ - name : Test with pytest
34+ run : |
35+ pytest
36+ - name : Run CANADA_ENGLISH demo by settings YAML
37+ run : |
38+ funnel load -s demo/settings.yaml -log-level DEBUG
39+ - name : Run an american search by CLI
40+ run : |
41+ funnel inline -kw Python Data Scientist PHD AI -ps WA -c Seattle -l USA_ENGLISH -log-level DEBUG -csv demo_job_search_results/demo_search.csv -cache demo_job_search_results/cache2 -blf demo_job_search_results/demo_block_list.json -dl demo_job_search_results/demo_duplicates_list.json -log-file demo_job_search_results/log.log -max-listing-days 1
42+ - name : Run a FRANCE_FRENCH demo by settings YAML
43+ run : |
44+ funnel load -s demo/settings_FR.yaml -log-level DEBUG
45+ - name : Obtain coverage
46+ run : |
47+ pytest --cov=jobfunnel --cov-report=xml
48+ - name : After Success
49+ run : |
50+ bash <(curl -s https://codecov.io/bash)
51+ - name : Run a Remote jobs only scrape
52+ run : |
53+ funnel inline -kw Python -ps ON -c Toronto -l CANADA_ENGLISH -remoteness FULLY_REMOTE -p INDEED -log-level DEBUG -csv demo_job_search_results/demo_remote_search.csv -cache demo_job_search_results/cache3 -blf demo_job_search_results/demo_block_list.json -dl demo_job_search_results/demo_duplicates_list.json -log-file demo_job_search_results/log.log -max-listing-days 3
54+ # TODO: modify some job statuses and run with --no-scrape...
55+ # - './tests/verify_time.sh' TODO: some way of verifying execution time
56+ # - './demo/gen_call_graphs.sh' TODO: some way of showing .dot on GitHub?
0 commit comments