name: build_jupyter

on:
  workflow_dispatch:
  push:
    branches: [ master ]
    paths:
      - 'jupyter_nb/Dockerfile*'

jobs:
  docker:
    runs-on: ubuntu-latest
    steps:
      - name: Get current date
        id: date
        run: echo "current_date=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
      -
        name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v2
      - name: Free Disk Space (Ubuntu)
        uses: jlumbroso/free-disk-space@main
        with:
          # this might remove tools that are actually needed,
          # if set to "true" but frees about 6 GB
          tool-cache: false
          # all of these default to true, but feel free to set to
          # "false" if necessary for your workflow
          android: true
          dotnet: true
          haskell: true
          large-packages: true
          swap-storage: true
      -
        name: Login to Docker Hub
        uses: docker/login-action@v2
        with:
          username: ${{ secrets.DOCKERHUB_USERNAME }}
          password: ${{ secrets.DOCKERHUB_TOKEN }}
      -
        name: Build and push icetray ML pynb 
        uses: docker/build-push-action@v3
        with:
          push: true
          no-cache: true
          file: Dockerfile_jupyter
          context: "{{defaultContext}}:jupyter_nb"
          build-args: |
            BASE_CONT=icecube/icetray-ml:icetray-ml-base-current-ubuntu20.04
          tags: >
            icecube/icetray-nb:icetray-ml-base-current-ubuntu20.04,
            icecube/icetray-nb:icetray-ml-base-current-ubuntu20.04-${{ env.current_date }}
      -
        name: Build and push icetray nu src pynb
        uses: docker/build-push-action@v3
        with:
          push: true
          no-cache: true
          file: Dockerfile_jupyter
          context: "{{defaultContext}}:jupyter_nb"
          build-args: |
            BASE_CONT=icecube/nu-sources:base-current-ubuntu22.04
          tags: >
            icecube/icetray-nb:nu-sources-nb-current-ubuntu22.04,
            icecube/icetray-nb:nu-sources-nb-current-ubuntu22.04-${{ env.current_date }}