(core) add CI github action for grist-core

Summary:
Activate CI for grist-core using github actions.  Can be improved
with caching but starting simple.

Test Plan: tested in a fork of grist-core

Reviewers: dsagal

Reviewed By: dsagal

Differential Revision: https://phab.getgrist.com/D2771
This commit is contained in:
Paul Fitzpatrick 2021-04-12 15:25:34 -04:00
parent 9f234b758d
commit 45141ed438
3 changed files with 70 additions and 0 deletions

22
.github/workflows/docker.yml vendored Normal file
View File

@ -0,0 +1,22 @@
name: Push Docker image
on:
release:
types: [published]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v2
- name: Push to Docker Hub
uses: docker/build-push-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
repository: gristlabs/grist
tag_with_ref: true

45
.github/workflows/main.yml vendored Normal file
View File

@ -0,0 +1,45 @@
name: CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
# Allows running this workflow manually from the Actions tab
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [2.7]
node-version: [10.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install Python packages
run: |
pip install virtualenv
yarn run install:python
- name: Install Node.js packages
run: yarn install
- name: Build Node.js code
run: yarn run build:prod
- name: Run tests
run: VERBOSE=1 DEBUG=1 MOCHA_WEBDRIVER_HEADLESS=1 yarn run test

View File

@ -1,8 +1,11 @@
#!/bin/bash
set -e
if [ ! -e venv ]; then
virtualenv -ppython2.7 venv
fi
. venv/bin/activate
pip install --no-deps -r sandbox/requirements.txt