v/.github/workflows/periodic.yml

73 lines
2.1 KiB
YAML

name: Periodic
on:
schedule:
- cron: '31 1,12 * * *'
jobs:
network-tests-ubuntu-tcc:
runs-on: ubuntu-latest
env:
VFLAGS: -cc tcc
steps:
- uses: actions/checkout@v1
- name: Install dependencies
run: |
sudo rm -f /etc/apt/sources.list.d/dotnetdev.list /etc/apt/sources.list.d/microsoft-prod.list
sudo apt-get update
sudo apt-get install --quiet -y libglfw3 libglfw3-dev libfreetype6-dev libssl-dev
sudo apt-get install --quiet -y sqlite3 libsqlite3-dev
sudo apt-get install --quiet -y libsdl2-dev libsdl2-ttf-dev libsdl2-mixer-dev libsdl2-image-dev
- name: Build v
run: echo $VFLAGS && make -j4 && ./v -cg -o v v.v
- name: Test v->c
run: |
sudo ln -s /var/tmp/tcc/bin/tcc /usr/local/bin/tcc
tcc -version
./v -o v2 v.v # Make sure vtcc can build itself
- name: Run network tests
run: ./v -d network test vlib/
network-tests-macos:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macOS-latest]
steps:
- uses: actions/checkout@v1
- name: Install dependencies
run: |
brew install freetype glfw openssl postgres sdl2 sdl2_ttf sdl2_mixer sdl2_image
export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/opt/openssl/lib/"
- name: Build V
run: make -j4 && ./v -cg -o v v.v
- name: Build V using V
run: ./v -o v2 v.v && ./v2 -o v3 v.v
- name: Test symlink
run: sudo ./v symlink
- name: Set up pg database
run: |
brew services start postgresql
sleep 3
psql -d postgres -c 'select rolname from pg_roles'
psql -d postgres -c 'create database customerdb;'
psql -d customerdb -f examples/database/pg/mydb.sql
- name: Run network tests
run: ./v -d network test vlib/
network-windows-msvc:
runs-on: windows-2019
env:
VFLAGS: -cc msvc
steps:
- uses: actions/checkout@v1
- name: Build
run: |
echo %VFLAGS%
echo $VFLAGS
.\make.bat -msvc
- name: Run network tests
run: ./v -d network test vlib/