mirror of
https://github.com/TeamPiped/Piped-Backend.git
synced 2024-08-14 23:51:41 +00:00
actions: add action to test migrations
This commit is contained in:
parent
2864af856b
commit
5fb08f66c5
1 changed files with 82 additions and 0 deletions
82
.github/workflows/docker-migrations-build-test.yml
vendored
Normal file
82
.github/workflows/docker-migrations-build-test.yml
vendored
Normal file
|
@ -0,0 +1,82 @@
|
|||
name: Docker-Compose Build and Test Migration
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- "src/main/resources/changelog/**"
|
||||
- "src/main/java/me/kavin/piped/utils/obj/db/**"
|
||||
|
||||
jobs:
|
||||
build-new:
|
||||
uses: ./.github/workflows/fat-build.yml
|
||||
build-old:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: ${{ github.event.pull_request.base.sha }}
|
||||
- name: set up JDK 17
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: 17
|
||||
distribution: temurin
|
||||
cache: "gradle"
|
||||
- name: Run Build
|
||||
run: ./gradlew shadowJar
|
||||
- run: mv build/libs/piped-*-all.jar piped.jar
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: piped-old.jar
|
||||
path: piped.jar
|
||||
|
||||
docker-build-test:
|
||||
needs: [ build-new, build-old ]
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
docker-compose-file:
|
||||
- docker-compose.yml
|
||||
- testing/docker-compose.cockroachdb.yml
|
||||
- testing/docker-compose.yugabytedb.yml
|
||||
dockerfile:
|
||||
- Dockerfile.ci
|
||||
include:
|
||||
- sleep: 20
|
||||
- docker-compose-file: testing/docker-compose.cockroachdb.yml
|
||||
sleep: 30
|
||||
- docker-compose-file: testing/docker-compose.yugabytedb.yml
|
||||
sleep: 120
|
||||
fail-fast: false
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- run: echo "unknown" > VERSION
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: piped-old.jar
|
||||
- name: Build Old Image Locally
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
context: .
|
||||
load: true
|
||||
file: ${{ matrix.dockerfile }}
|
||||
tags: 1337kavin/piped:latest
|
||||
- name: Start Docker-Compose services
|
||||
run: docker-compose -f ${{ matrix.docker-compose-file }} up -d && sleep ${{ matrix.sleep }}
|
||||
- run: rm piped.jar
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: piped.jar
|
||||
- name: Build New Image Locally
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
context: .
|
||||
load: true
|
||||
file: ${{ matrix.dockerfile }}
|
||||
tags: 1337kavin/piped:latest
|
||||
- name: Start Docker-Compose services
|
||||
run: docker-compose -f ${{ matrix.docker-compose-file }} up -d && sleep ${{ matrix.sleep }}
|
||||
- name: Run tests
|
||||
run: ./testing/api-test.sh
|
||||
- name: Collect services logs
|
||||
if: failure()
|
||||
run: docker-compose -f ${{ matrix.docker-compose-file }} logs
|
Loading…
Reference in a new issue