name: E2E on: [push, pull_request] jobs: Cypress: runs-on: ubuntu-18.04 strategy: fail-fast: true matrix: browser: ['chrome'] env: FLASK_ENV: development ENABLE_REACT_CRUD_VIEWS: true SUPERSET_CONFIG: tests.superset_test_config SUPERSET__SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://superset:superset@127.0.0.1:15432/superset PYTHONPATH: ${{ github.workspace }} REDIS_PORT: 16379 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} services: postgres: image: postgres:10-alpine env: POSTGRES_USER: superset POSTGRES_PASSWORD: superset ports: - 15432:5432 redis: image: redis:5-alpine ports: - 16379:6379 steps: - name: Checkout code uses: actions/checkout@v2 - name: Setup Python uses: actions/setup-python@v2 with: python-version: '3.7' - name: OS dependencies uses: apache-superset/cached-dependencies@b90713b with: run: | apt-get-install - name: Install python dependencies uses: apache-superset/cached-dependencies@b90713b with: run: | pip-upgrade pip install -r requirements/testing.txt - name: Setup postgres uses: apache-superset/cached-dependencies@b90713b with: run: | setup-postgres - name: Import test data uses: apache-superset/cached-dependencies@b90713b with: run: | testdata - name: Install npm dependencies uses: apache-superset/cached-dependencies@b90713b with: run: | npm-install - name: Build javascript packages uses: apache-superset/cached-dependencies@b90713b with: run: | build-instrumented-assets - name: Install cypress uses: apache-superset/cached-dependencies@b90713b with: run: | cypress-install - name: Run Cypress uses: apache-superset/cached-dependencies@b90713b env: CYPRESS_BROWSER: ${{ matrix.browser }} CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }} with: run: cypress-run-all - name: Upload Artifacts uses: actions/upload-artifact@v2 if: failure() with: name: screenshots path: ${{ github.workspace }}/superset-frontend/cypress-base/cypress/screenshots