Skip to content

Merge pull request #258 from techeer-sv/BE/#257 #472

Merge pull request #258 from techeer-sv/BE/#257

Merge pull request #258 from techeer-sv/BE/#257 #472

Workflow file for this run

name: CI
on:
push:
branches: ["feature"]
pull_request:
branches: ["feature"]
jobs:
backend-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: 11
distribution: "temurin"
- name: Cache Gradle packages
uses: actions/cache@v3
with:
path: backend/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('backend/**/*') }}
restore-keys: ${{ runner.os }}-gradle-
- name: Grant Execute Permission For Gradlew
run: chmod +x backend/gradlew
- name: Make properties
run: |
cd backend/src/main/resources
touch ./application-local.yml
touch ./application-docker.yml
echo "${{ secrets.TEST_PROPERTIES }}" > ./application-local.yml
echo "${{ secrets.DOCKER_TEST_PROPERTIES }}" > ./application-docker.yml
cd ../../test/resources
touch ./application-test.yml
echo "${{ secrets.INTEGRATION_TEST_PROPERTIES }}" > ./application-test.yml
shell: bash
- name: Test with Gradle
run: |
cd backend
./gradlew build --info
env:
JWT_SECRET: ${{ secrets.JWT_SECRET }}
GPT_TOKEN: ${{ secrets.GPT_TOKEN }}
JOB_KEY: ${{ secrets.JOB_KEY }}
- name: Backend Test Results
uses: EnricoMi/publish-unit-test-result-action@v1
if: ${{ always() }}
with:
files: backend/build/test-results/**/*.xml
frontend-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Cache frontend packages
uses: actions/cache@v3
with:
path: frontend/node_modules
key: ${{ runner.os }}-frontend-${{ hashFiles('frontend/package-lock.json') }}
restore-keys: ${{ runner.os }}-frontend-
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: 16
- name: Install packages
working-directory: frontend
run: npm ci
- name: Prettier
working-directory: frontend
run: npm run format
- name: ESLint
working-directory: frontend
run: npm run lint
- name: Frontend Test
working-directory: frontend
run: npm test
- name: Frontend Test Results
uses: EnricoMi/publish-unit-test-result-action@v1
if: ${{ always() }}
with:
files: frontend/test-results.xml