|
21 | 21 | image: redis |
22 | 22 | ports: |
23 | 23 | - 6379:6379 |
| 24 | + influxdb1: |
| 25 | + image: influxdb:1.8-alpine |
| 26 | + ports: |
| 27 | + - 8086:8086 |
| 28 | + influxdb2: |
| 29 | + image: influxdb:2.0-alpine |
| 30 | + volumes: |
| 31 | + - influxdb2-data:/var/lib/influxdb2 |
| 32 | + ports: |
| 33 | + - 8087:8086 |
| 34 | + options: >- |
| 35 | + --env DOCKER_INFLUXDB_INIT_MODE=setup |
| 36 | + --env DOCKER_INFLUXDB_INIT_USERNAME=openwisp |
| 37 | + --env DOCKER_INFLUXDB_INIT_PASSWORD=openwisp |
| 38 | + --env DOCKER_INFLUXDB_INIT_ORG=openwisp |
| 39 | + --env DOCKER_INFLUXDB_INIT_BUCKET=openwisp2 |
| 40 | + --env DOCKER_INFLUXDB_INIT_RETENTION=1w |
24 | 41 |
|
25 | 42 | strategy: |
26 | 43 | fail-fast: false |
|
33 | 50 | - django~=3.2.0 |
34 | 51 | - django~=4.1.0 |
35 | 52 | - django~=4.2.0 |
| 53 | + influxdb-version: |
| 54 | + - influxdb1 |
| 55 | + - influxdb2 |
36 | 56 |
|
37 | 57 | steps: |
38 | 58 | - name: Install system packages |
@@ -62,10 +82,10 @@ jobs: |
62 | 82 | pip install -U pip wheel setuptools |
63 | 83 |
|
64 | 84 | - name: Install npm dependencies |
65 | | - run: sudo npm install -g install jshint stylelint |
| 85 | + run: sudo npm install -g jshint stylelint |
66 | 86 |
|
67 | | - - name: Start InfluxDB container |
68 | | - run: docker-compose up -d influxdb |
| 87 | + - name: Start InfluxDB ${{ matrix.influxdb-version }} container |
| 88 | + run: docker-compose up -d ${{ matrix.influxdb-version }} |
69 | 89 |
|
70 | 90 | - name: Install test dependencies |
71 | 91 | run: | |
|
77 | 97 | pip uninstall -y django |
78 | 98 | pip install ${{ matrix.django-version }} |
79 | 99 |
|
| 100 | + - name: Set InfluxDB environment variables for InfluxDB 2.x |
| 101 | + if: matrix.influxdb-version == 'influxdb2' |
| 102 | + run: | |
| 103 | + export INFLUXDB_HOST=localhost |
| 104 | + export INFLUXDB_PORT=8087 |
| 105 | + export USE_INFLUXDB2=True |
| 106 | +
|
80 | 107 | - name: QA checks |
81 | 108 | run: | |
82 | 109 | ./run-qa-checks |
|
0 commit comments