[WIP] 433 anonymously uploaded files should appear in trash of folder creator #109
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: | |
pull_request: | |
branches: [main] | |
paths: | |
- "tdrive/backend/node/**" | |
- "tdrive/frontend/**" | |
- "tdrive/connectors/onlyoffice-connector/**" | |
- "tdrive/backend/utils/ldap-sync/**" | |
- "tdrive/backend/utils/nextcloud-migration/**" | |
jobs: | |
setup: | |
name: Setup jobs | |
runs-on: ubuntu-latest | |
outputs: | |
changes: ${{ steps.filter.outputs.changes }} | |
steps: | |
- uses: dorny/paths-filter@v3 | |
id: filter | |
with: | |
filters: | | |
backend: | |
- "tdrive/backend/node/**" | |
frontend: | |
- "tdrive/frontend/**" | |
onlyoffice-connector: | |
- "tdrive/connectors/onlyoffice-connector/**" | |
ldap-sync: | |
- "tdrive/backend/utils/ldap-sync/**" | |
nextcloud-migration: | |
- "tdrive/backend/utils/nextcloud-migration/**" | |
lint-backend: | |
runs-on: ubuntu-latest | |
if: contains(needs.setup.outputs.changes, 'backend') | |
needs: | |
- setup | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Prettier code style check | |
run: | | |
cd tdrive | |
docker-compose -f docker-compose.tests.yml run -e NODE_OPTIONS=--unhandled-rejections=warn node npm run lint:prettier | |
- name: Lint | |
run: | | |
cd tdrive | |
docker-compose -f docker-compose.tests.yml run -e NODE_OPTIONS=--unhandled-rejections=warn node npm run lint | |
test-backend: | |
runs-on: ubuntu-latest | |
if: contains(needs.setup.outputs.changes, 'backend') | |
needs: | |
- setup | |
continue-on-error: true | |
steps: | |
- uses: actions/checkout@v4 | |
- name: e2e-cassandra-test | |
run: | | |
cd tdrive | |
docker-compose -f docker-compose.tests.yml up -d scylladb elasticsearch rabbitmq | |
sleep 60 | |
docker-compose -f docker-compose.tests.yml run -e NODE_OPTIONS=--unhandled-rejections=warn -e SEARCH_DRIVER=elasticsearch -e DB_DRIVER=cassandra node npm run test:all | |
- name: e2e-mongo-s3-test | |
run: | | |
cd tdrive | |
docker-compose -f docker-compose.tests.yml run --rm -e NODE_OPTIONS=--unhandled-rejections=warn -e SEARCH_DRIVER=mongodb -e DB_DRIVER=mongodb -e PUBSUB_TYPE=local node npm run test:all | |
docker-compose -f docker-compose.tests.yml down | |
- name: coverage | |
uses: adRise/jest-cov-reporter@e13d7638888cad7788298f4022b203b31a10c7c8 | |
with: | |
branch-coverage-report-path: ./tdrive/coverage/coverage-summary.json | |
base-coverage-report-path: ./tdrive/coverage/coverage-summary.json | |
delta: 0.3 | |
fullCoverageDiff: true | |
build-frontend: | |
runs-on: ubuntu-latest | |
if: contains(needs.setup.outputs.changes, 'frontend') | |
needs: | |
- setup | |
env: | |
FRONTEND_ENV: ${{ secrets.FRONTEND_ENV }} | |
strategy: | |
matrix: | |
node-version: [16.x] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- run: cd tdrive/frontend/ && yarn install | |
- run: cp tdrive/frontend/src/app/environment/environment.ts.dist tdrive/frontend/src/app/environment/environment.ts | |
- if: ${{ env.FRONTEND_ENV }} | |
run: echo ${{ secrets.FRONTEND_ENV }} > tdrive/frontend/src/app/environment/environment.ts | |
- run: cd tdrive/frontend/ && yarn test | |
- run: cd tdrive/frontend/ && yarn build | |
- name: Upload frontend build artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: frontend-build | |
path: tdrive/frontend/build/ | |
build-onlyoffice-connector: | |
runs-on: ubuntu-latest | |
if: contains(needs.setup.outputs.changes, 'onlyoffice-connector') | |
needs: | |
- setup | |
strategy: | |
matrix: | |
node-version: [16.x] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Install dependencies and build | |
run: | | |
cd tdrive/connectors/onlyoffice-connector | |
npm i | |
npm run build --if-present | |
npm run lint | |
build-ldap-sync: | |
runs-on: ubuntu-20.04 | |
if: contains(needs.setup.outputs.changes, 'ldap-sync') | |
needs: | |
- setup | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build ldap sync | |
run: cd tdrive/backend/utils/ldap-sync && npm i && npm run build | |
build-nextcloud-migration: | |
runs-on: ubuntu-20.04 | |
if: contains(needs.setup.outputs.changes, 'nextcloud-migration') | |
needs: | |
- setup | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build Nextcloud migration | |
run: cd tdrive/backend/utils/nextcloud-migration && npm i && npm run build |