name: Periodic

on:
  schedule:
    - cron:  '31 1,12 * * *'

jobs:
  network-tests-ubuntu:
    runs-on: ubuntu-latest
    timeout-minutes: 30
    env:
        V_CI_PERIODIC: 1
    steps:
    - uses: actions/checkout@v2
    - name: Install dependencies
      run: sudo apt-get install --quiet -y libssl-dev sqlite3 libsqlite3-dev valgrind
    - name: Build v
      run: make -j4
    - name: Symlink V
      run:  sudo ./v symlink
    - name: Run network tests
      run: ./v -d network -silent test-fixed


  network-tests-macos:
    runs-on: macOS-latest
    timeout-minutes: 30
    env:
        V_CI_PERIODIC: 1
    steps:
    - uses: actions/checkout@v2
    - name: Setup openssl library path
      run: export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/opt/openssl/lib/"
    - name: Build V
      run:  make -j4
    - name: Symlink V
      run:  sudo ./v symlink
    - name: Ensure thirdparty/cJSON/cJSON.o is compiled, before running tests.
      run:  ./v examples/json.v
    - name: Run network tests
      run: ./v -d network -silent test-fixed


  network-windows-msvc:
    runs-on: windows-2019
    timeout-minutes: 30
    env:
        V_CI_PERIODIC: 1
        VFLAGS: -cc msvc
    steps:
    - uses: actions/checkout@v2
    - name: Build
      run: |
        echo %VFLAGS%
        echo $VFLAGS
        .\make.bat -msvc
    - name: Run network tests
      run: .\v.exe -d network -silent test-fixed