name: E2E
on: push

env:
  GOPATH: /home/runner/go
  ECANNAPATH: src/github.com/ecannacoins
  ACTIONS_RUNTIME_URL: 
  ACTIONS_RUNTIME_TOKEN: 
  ACTIONS_CACHE_URL: 

jobs:
  e2e:
    runs-on: ubuntu-18.04
    steps:
      - name: Checkout EcannaJS
        uses: actions/checkout@v2
        with: 
          repository: 'ecannacoins/ecannajs'
      - name: Install dependencies
        run: sudo apt update && sudo apt install zstd git build-essential nodejs -y
      - name: Install NodeJS dependencies
        run: yarn install --frozen-lockfile
      - name: Setup GoLang Version
        uses: actions/setup-go@v1
        with:
          go-version: 1.19.x
      - name: Setup GOPATH and ECANNAPATH
        run : |
          mkdir -p $GOPATH/$ECANNAPATH
      - name: Install autoremove
        run: sudo apt-get autoremove -y
      - name: Clone and Build EcannaGo
        run : |
          cd $GOPATH/$ECANNAPATH
          git clone https://github.com/ecannacoins/ecannago
          cd ecannago
          ./scripts/build.sh
      - name: Checkout ANR
        run : |
          cd $GOPATH/$ECANNAPATH
          git clone https://github.com/ecannacoins/ecanna-network-runner
      - name: Starting ANR
        run: |
          cd $GOPATH/$ECANNAPATH
          cd ecanna-network-runner
          git checkout v1.0.12
          go run ./examples/local/fivenodenetwork/main.go &
      - name: EcannaJS E2E Test
        env: 
          EcannaGO_IP: localhost
          EcannaGO_PORT: 9650
        run: sleep 60 && yarn test -i --roots e2e_tests