blob: 93bf1f024a7ccc411ff174caa05e14fc1091478e [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# This action run e2e test for pull requests
name: test-e2e
on:
push:
branches: [main]
pull_request:
branches: [main]
paths:
- "**.go"
- '**.py'
- '**.toml'
- '**.sh'
- "Makefile"
- "go.mod"
- "go.sum"
- ".github/workflows/*.yml"
- "test/**"
- "e2e/**"
- "devops/**"
jobs:
e2e-mysql:
runs-on: ubuntu-latest
services:
db:
image: mysql:8
env:
MYSQL_DATABASE: lake
MYSQL_USER: merico
MYSQL_PASSWORD: merico
MYSQL_ROOT_PASSWORD: root
container: mericodev/lake-builder:latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- run: git config --global --add safe.directory $(pwd)
- name: Build Python
run: |
cd backend
echo "Building Python"
make build-python
- name: Cache test-e2e
id: cache-test-e2e
uses: actions/cache@v3
with:
path: |
~/.cache/go-build
${{ env.GOPATH }}/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Test-mysql
env:
DB_URL: mysql://root:root@db:3306/lake?charset=utf8mb4&parseTime=True
E2E_DB_URL: mysql://root:root@db:3306/lake?charset=utf8mb4&parseTime=True
run: |
cp env.example .env
cd backend
make e2e-plugins-test
make e2e-test
e2e-postgres:
runs-on: ubuntu-latest
services:
db:
image: postgres:14.2
env:
POSTGRES_DB: lake
POSTGRES_USER: merico
POSTGRES_PASSWORD: merico
container: mericodev/lake-builder:latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- run: git config --global --add safe.directory $(pwd)
- name: Build Python
run: |
cd backend
echo "Building Python"
make build-python
- name: Cache test-e2e-pg
id: cache-test-e2e-pg
uses: actions/cache@v3
with:
path: |
~/.cache/go-build
${{ env.GOPATH }}/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Test-pg
env:
DB_URL: postgres://merico:merico@db:5432/lake
E2E_DB_URL: postgres://merico:merico@db:5432/lake
run: |
cp env.example .env
cd backend
make e2e-plugins-test
make e2e-test