name: e2e-kind
on: [push, pull_request]
jobs:

  build:
    name: Build and test
    runs-on: ubuntu-latest
    if: >
      (( github.event.pull_request.head.repo.owner.login != github.event.pull_request.base.repo.owner.login ) &&
        github.event_name == 'pull_request' ) || (github.event_name == 'push' && github.event.commits != '[]' )
    steps:
      - name: Check out code into the Go module directory
        uses: actions/checkout@v2

      - name: Setup registry
        run: docker run -d --restart=always -p "5000:5000" --name "kind-registry" registry:2
  
      - name: Build latest-amd64
        run: docker build -t localhost:5000/multus:e2e .
 
      - name: Push to local registry
        run: docker push localhost:5000/multus:e2e

      - name: Get kind/kubectl/koko
        working-directory: ./e2e
        run: ./get_tools.sh

      - name: Setup cluster
        working-directory: ./e2e
        run: ./setup_cluster.sh

      - name: Test macvlan1
        working-directory: ./e2e
        run: ./test-simple-macvlan1.sh

      - name: cleanup cluster and registry
        run: |
          kind delete cluster
          docker kill kind-registry
          docker rm kind-registry
