name: joystream-cli
on: [pull_request, push]

jobs:
  cli_build_ubuntu:
    name: Ubuntu Checks
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node-version: [14.x]
    steps:
      - uses: actions/checkout@v1
      - name: Use Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v1
        with:
          node-version: ${{ matrix.node-version }}
      - name: checks
        run: |
          yarn install --frozen-lockfile
          yarn workspace @joystream/types build
          yarn workspace @joystream/metadata-protobuf build
          yarn workspace @joystream/cli checks --quiet
      - name: yarn pack test
        run: |
          yarn workspace @joystream/cli pack --filename cli-pack-test.tgz
          tar zxvf ./cli/cli-pack-test.tgz -C cli
          cd ./cli/package && yarn link

  cli_build_osx:
    name: MacOS Checks
    runs-on: macos-latest
    strategy:
      matrix:
        node-version: [14.x]
    steps:
      - uses: actions/checkout@v1
      - name: Use Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v1
        with:
          node-version: ${{ matrix.node-version }}
      - name: checks
        run: |
          yarn install --frozen-lockfile --network-timeout 120000
          yarn workspace @joystream/types build
          yarn workspace @joystream/metadata-protobuf build
          yarn workspace @joystream/cli checks --quiet
      - name: yarn pack test
        run: |
          yarn workspace @joystream/cli pack --filename cli-pack-test.tgz
          tar zxvf ./cli/cli-pack-test.tgz -C cli
          cd ./cli/package && yarn link
