Skip to content

Merge pull request #84 from JankariTech/individual-it-patch-1 #98

Merge pull request #84 from JankariTech/individual-it-patch-1

Merge pull request #84 from JankariTech/individual-it-patch-1 #98

Workflow file for this run

name: lint-and-tests
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
- main
pull_request:
workflow_call:
env:
OCIS_URL: https://localhost:9200
jobs:
lint-and-tests:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: pnpm-install
uses: pnpm/action-setup@v4
with:
run_install: |
- args: [--frozen-lockfile, --strict-peer-dependencies]
- name: lint
run: pnpm lint
- name: build
run: pnpm build
- name: upload-dist
uses: actions/upload-artifact@v4
if: github.event_name == 'release'
with:
name: dist
path: dist/
retention-days: 1
- name: unit-test
run: pnpm test:unit --coverage
- name: ocis-server
run: |
docker run --rm -d \
-p 9200:9200 \
-e OCIS_URL=$OCIS_URL \
-e OCIS_INSECURE=true \
-e OCIS_LOG_LEVEL=error \
-e IDM_ADMIN_PASSWORD=admin \
-e PROXY_ENABLE_BASIC_AUTH=true \
-e PROXY_CSP_CONFIG_FILE_LOCATION=/etc/ocis/csp.yml \
-e WEB_ASSET_APPS_PATH=/web/apps \
-v ${{ github.workspace }}/dev/config/csp.yml:/etc/ocis/csp.yml:ro \
-v ${{ github.workspace }}/dist:/web/apps:ro \
--entrypoint sh \
owncloud/ocis-rolling:latest \
-c 'ocis init || true && ocis server'
- name: host-ip
id: host_ip
run: echo "host_ip=$(hostname -I | cut -d' ' -f1)" >> "$GITHUB_OUTPUT"
- name: wait-services
run: |
docker run --rm \
--add-host dockerhost:${{ steps.host_ip.outputs.host_ip }} \
owncloudci/wait-for \
-it dockerhost:9200 -t 300
- name: install-chromium
run: npx playwright install chromium
- name: e2e
run: pnpm test:e2e tests/e2e/features/**/*.feature
env:
HEADLESS: true