Skip to content

close

close #2248

Workflow file for this run

name: Cypress E2E tests
on:
pull_request:
branches:
- master
jobs:
cypress-run:
runs-on: ubuntu-latest
steps:
- name: Enable docker.host.internal for Ubuntu
run: |
pwd && sudo bash -c 'echo "172.17.0.1 host.docker.internal" >> /etc/hosts'
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
cache: 'yarn'
- name: Clone Stack
run: |
git clone https://github.com/stakwork/sphinx-stack.git stack
- name: Give Permissions to Sphinx Nav Fiber
run: chmod 777 -R relay
- name: Give Permissions to Stack
working-directory: ./stack
run: |
chmod 777 ./bitcoind;
chmod 777 -R ./relay;
chmod 777 -R ./lnd;
chmod 777 -R ./proxy;
chmod 777 -R ./cln;
- name: Download file
run: |
curl -LO https://machinelearningneo4jbackup.s3.amazonaws.com/_data.zip
- name: Unzip file
run: unzip _data.zip -d data
- name: Rename folder
run: cd data && mv _data data && cd data && ls
- name: Copy Neo4J Data to stack
run: cp -r ./data ./stack/neo4j
- name: Check for NODES
uses: nick-fields/retry@v3
with:
timeout_minutes: 10
max_attempts: 3
command: |
export TWITTER_BEARER="Bearer ${{ secrets.TWITTER_BEARER }}"
echo $TWITTER_BEARER
STAKWORK_TOKEN=daaa3a0894f0658d99781471dfccd3e1 TWITTER_BEARER=$TWITTER_BEARER GITACTION_ENV=gitactionenv docker compose -f ./stack/alts/navfiber.yml --project-directory ./stack up -d;
sleep 240;
docker ps
docker logs meme.sphinx
docker logs dave.sphinx
docker wait stack_relaysetup_1
cat stack/relay/NODES.json;
- name: Copy Node.json
uses: canastro/copy-file-action@master
with:
source: 'stack/relay/NODES.json'
target: 'relay/nodes.json'
- name: Install
run: yarn --immutable
- name: Cypress run
# Uses the official Cypress GitHub action https://github.com/cypress-io/github-action
uses: cypress-io/github-action@v6
with:
install-command: yarn --immutable
browser: chrome
headless: true
start: yarn run start-e2e
wait-on: 'http://localhost:3000' # Waits for above
wait-on-timeout: 120 # Waits for 2 minutes
# Records to Cypress Dashboard
record: true
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# created by the GH Action automatically
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Component tests
run: yarn run cy-comp
continue-on-error: false
- name: Upload Cypress logs
if: failure()
uses: actions/upload-artifact@v4
with:
name: cypress-logs
path: cypress/videos
- name: Check the coverage value
run: yarn test-coverage
- name: Stop Stack
working-directory: ./stack
run: docker compose down