2022-07-13 21:55:30 +03:00
|
|
|
name: Django Tests
|
|
|
|
|
|
|
|
on:
|
2022-07-13 23:40:58 +03:00
|
|
|
workflow_dispatch:
|
2022-09-20 20:39:49 +03:00
|
|
|
workflow_call:
|
2022-07-13 21:55:30 +03:00
|
|
|
push:
|
|
|
|
branches: [ "main" ]
|
|
|
|
paths: ["api", "chat", "control", "robosats"]
|
|
|
|
pull_request:
|
|
|
|
branches: [ "main" ]
|
|
|
|
paths: ["api", "chat", "control", "robosats"]
|
|
|
|
|
2022-09-20 20:39:49 +03:00
|
|
|
# concurrency:
|
|
|
|
# group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
|
|
|
|
# cancel-in-progress: true
|
2022-07-13 21:55:30 +03:00
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
env:
|
|
|
|
DEVELOPMENT: 1
|
|
|
|
strategy:
|
|
|
|
max-parallel: 4
|
|
|
|
matrix:
|
|
|
|
python-version: ["3.10.2"]
|
|
|
|
|
|
|
|
steps:
|
2022-07-13 23:40:58 +03:00
|
|
|
- name: 'Checkout'
|
|
|
|
uses: actions/checkout@v3
|
2022-07-13 21:55:30 +03:00
|
|
|
- name: 'Set up Python ${{ matrix.python-version }}'
|
|
|
|
uses: actions/setup-python@v3
|
|
|
|
with:
|
|
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
- name: 'Install Python Dependencies'
|
|
|
|
run: |
|
|
|
|
python -m pip install --upgrade pip
|
|
|
|
pip install -r requirements.txt
|
|
|
|
- name: 'Install LND gRPC Dependencies'
|
|
|
|
run: |
|
|
|
|
cd api/lightning
|
|
|
|
git clone https://github.com/googleapis/googleapis.git
|
|
|
|
curl -o lightning.proto -s https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/lightning.proto
|
|
|
|
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. lightning.proto
|
|
|
|
curl -o invoices.proto -s https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/invoicesrpc/invoices.proto
|
|
|
|
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. invoices.proto
|
|
|
|
curl -o router.proto -s https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/routerrpc/router.proto
|
|
|
|
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. router.proto
|
|
|
|
sed -i 's/^import .*_pb2 as/from . \0/' router_pb2.py
|
|
|
|
sed -i 's/^import .*_pb2 as/from . \0/' invoices_pb2.py
|
|
|
|
sed -i 's/^import .*_pb2 as/from . \0/' router_pb2_grpc.py
|
|
|
|
sed -i 's/^import .*_pb2 as/from . \0/' lightning_pb2_grpc.py
|
|
|
|
sed -i 's/^import .*_pb2 as/from . \0/' invoices_pb2_grpc.py
|
|
|
|
|
|
|
|
- name: 'Create .env File'
|
|
|
|
run: |
|
|
|
|
mv .env-sample .env
|
|
|
|
- name: 'Tests'
|
|
|
|
run: |
|
2022-09-20 20:39:49 +03:00
|
|
|
python manage.py test
|