GitHub actions (#7035)
* Trying to setup GitHub Actions * Try to fix the workflow steps * Fix NODE_VERSION * Fix services * Fix services 2 * Fix redis service, remove docker service * Missing npm install * Fix Use Node.js step name * Remove greenkeeper * I believe we do not need this command * Try to include postgres * Fix postgres script * Remove before install script * Fix postgres before script * Try to fix connection to postgres * Fix postgress port * Postgres host * Still trying to connect on postgres * Still trying to connect on postgres - localhost * Split postgres in a separate job * Add postgres healthcheck * Set postgres just like github example * Fix postgres scripts with new credentials * Still trying to fix postgres connection * Now it looks only the username is wrong * Passing postgres password in the right way * try to install postgis * New attempt to install postgis * Fix postgis image name * Try to output tests * We need to start mongo * Increase tests timeout * Fix flaky test * Add GitHub Actions badge * Badge as html * Fix badge link * Remove Travis * try to fix coverage * Fix flaky test * Improve ci workflow * Change the mongo default test version * Fix the job name in the if clause * Ubuntu18.0.4 * Downgrade to 4.0.21 * Fix cache keys: * Trying with mongo 4.0.4 * Rever os and mongo versions * remove latest node
This commit is contained in:
committed by
GitHub
parent
da905a357d
commit
54a61b7694
110
.github/workflows/ci.yml
vendored
Normal file
110
.github/workflows/ci.yml
vendored
Normal file
@@ -0,0 +1,110 @@
|
||||
name: ci
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
env:
|
||||
COVERAGE_OPTION: ./node_modules/.bin/nyc
|
||||
NODE_VERSION: 10
|
||||
PARSE_SERVER_TEST_TIMEOUT: 20000
|
||||
jobs:
|
||||
check-mongo:
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- name: Mongo 4.0.4, ReplicaSet, WiredTiger
|
||||
MONGODB_VERSION: 4.0.4
|
||||
MONGODB_TOPOLOGY: replicaset
|
||||
MONGODB_STORAGE_ENGINE: wiredTiger
|
||||
NODE_VERSION: 10
|
||||
- name: Mongo 3.6.21
|
||||
MONGODB_VERSION: 3.6.21
|
||||
NODE_VERSION: 10
|
||||
- name: Redis Cache
|
||||
PARSE_SERVER_TEST_CACHE: redis
|
||||
NODE_VERSION: 10
|
||||
- name: Node 12.12.0
|
||||
NODE_VERSION: 12.12.0
|
||||
name: ${{ matrix.name }}
|
||||
timeout-minutes: 30
|
||||
runs-on: ubuntu-18.04
|
||||
services:
|
||||
redis:
|
||||
image: redis
|
||||
ports:
|
||||
- 6379:6379
|
||||
env:
|
||||
MONGODB_VERSION: ${{ matrix.MONGODB_VERSION }}
|
||||
MONGODB_TOPOLOGY: ${{ matrix.MONGODB_TOPOLOGY }}
|
||||
MONGODB_STORAGE_ENGINE: ${{ matrix.MONGODB_STORAGE_ENGINE }}
|
||||
PARSE_SERVER_TEST_CACHE: ${{ matrix.PARSE_SERVER_TEST_CACHE }}
|
||||
NODE_VERSION: ${{ matrix.NODE_VERSION }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Use Node.js ${{ matrix.NODE_VERSION }}
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: ${{ matrix.NODE_VERSION }}
|
||||
- name: Cache Node.js modules
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.npm
|
||||
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- if: ${{ matrix.name == 'Mongo 3.6.21' }}
|
||||
run: npm run lint
|
||||
- run: npm run pretest
|
||||
- run: npm run coverage
|
||||
env:
|
||||
CI: true
|
||||
- run: bash <(curl -s https://codecov.io/bash)
|
||||
check-postgres:
|
||||
name: Postgresql
|
||||
timeout-minutes: 30
|
||||
runs-on: ubuntu-18.04
|
||||
services:
|
||||
redis:
|
||||
image: redis
|
||||
ports:
|
||||
- 6379:6379
|
||||
postgres:
|
||||
image: postgis/postgis:11-3.0
|
||||
env:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
ports:
|
||||
- 5432:5432
|
||||
options: >-
|
||||
--health-cmd pg_isready
|
||||
--health-interval 10s
|
||||
--health-timeout 5s
|
||||
--health-retries 5
|
||||
env:
|
||||
PARSE_SERVER_TEST_DB: postgres
|
||||
POSTGRES_MAJOR_VERSION: 11
|
||||
PARSE_SERVER_TEST_DATABASE_URI: postgres://postgres:postgres@localhost:5432/parse_server_postgres_adapter_test_database
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Use Node.js 10
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: 10
|
||||
- name: Cache Node.js modules
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.npm
|
||||
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
- run: bash scripts/before_script_postgres.sh
|
||||
- run: npm run coverage
|
||||
env:
|
||||
CI: true
|
||||
- run: bash <(curl -s https://codecov.io/bash)
|
||||
Reference in New Issue
Block a user