[chores] Updated import/export logic #1330
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: OpenWISP Monitoring CI Build | |
on: | |
push: | |
branches: | |
- master | |
- dev | |
pull_request: | |
branches: | |
- master | |
- dev | |
jobs: | |
build: | |
name: Python==${{ matrix.python-version }} | ${{ matrix.django-version }} | |
runs-on: ubuntu-20.04 | |
services: | |
redis: | |
image: redis | |
ports: | |
- 6379:6379 | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: | |
- "3.8" | |
- "3.9" | |
- "3.10" | |
django-version: | |
- django~=3.2.0 | |
- django~=4.1.0 | |
- django~=4.2.0 | |
steps: | |
- name: Install system packages | |
run: | | |
sudo apt update && | |
sudo apt -qq install \ | |
sqlite3 \ | |
fping \ | |
gdal-bin \ | |
libproj-dev \ | |
libgeos-dev \ | |
libspatialite-dev \ | |
spatialite-bin \ | |
libsqlite3-mod-spatialite | |
- uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install python system packages | |
run: | | |
pip install -U pip wheel setuptools | |
- name: Install npm dependencies | |
run: sudo npm install -g install jshint stylelint | |
- name: Start InfluxDB container | |
run: docker-compose up -d influxdb | |
- name: Install test dependencies | |
run: | | |
pip install -r requirements-test.txt | |
- name: Install openwisp-monitoring | |
run: | | |
pip install -U -I -e . | |
pip uninstall -y django | |
pip install ${{ matrix.django-version }} | |
- name: QA checks | |
run: | | |
./run-qa-checks | |
- name: Tests | |
run: | | |
SAMPLE_APP=1 coverage run --source=openwisp_monitoring runtests.py | |
coverage run -a --source=openwisp_monitoring runtests.py | |
TIMESERIES_UDP=1 coverage run -a --source=openwisp_monitoring runtests.py | |
- name: Upload Coverage | |
uses: coverallsapp/github-action@v2 | |
with: | |
parallel: true | |
flag-name: python-${{ matrix.python-version }}-${{ matrix.django-version }} | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
deploy: | |
name: Deploy Docker Image | |
runs-on: ubuntu-20.04 | |
needs: | |
- build | |
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }} | |
steps: | |
- uses: actions/checkout@master | |
- name: Push to Docker | |
run: | | |
echo "${{ secrets.DOCKER_TOKEN }}" | docker login --username ${{ secrets.DOCKER_USERNAME }} --password-stdin | |
docker build . -t openwisp/openwisp-monitoring:develop | |
docker push openwisp/openwisp-monitoring:develop | |
coveralls: | |
needs: build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Coveralls Finished | |
uses: coverallsapp/github-action@v2 | |
with: | |
parallel-finished: true |