name: Test Login and Pull
on:
  push:
  pull_request_target:
  workflow_dispatch:
  schedule:
    - cron: '0 0 * * *'  # every day at midnight

env:
  IMAGE_PATH: quay.io/redhat-github-actions/petclinic-private:latest
  REGISTRY_USER: redhat-github-actions+redhat_actions_ci_puller
  IMAGE_REGISTRY: quay.io
  REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }}

jobs:
  podman-pull:
    name: Log in and pull image with Podman
    runs-on: ubuntu-20.04
    strategy:
      fail-fast: false
      matrix:
        install_latest: [ true, false ]

    steps:

      - uses: actions/checkout@v2

      - name: Install latest podman
        if: matrix.install_latest
        run: |
          bash .github/install_latest_podman.sh

      - name: Log in to quay.io
        uses: ./
        with:
          username: ${{ env.REGISTRY_USER }}
          password: ${{ env.REGISTRY_PASSWORD }}
          registry: ${{ env.IMAGE_REGISTRY }}
          auth_file_path: ./auth/auth.json

      - name: Pull image with Podman
        run: podman pull ${{ env.IMAGE_PATH }}

  buildah-pull:
    name: Log in and pull image with Buildah
    runs-on: ubuntu-20.04
    strategy:
      fail-fast: false
      matrix:
        install_latest: [ true, false ]
    steps:

      - uses: actions/checkout@v2

      - name: Install latest podman
        if: matrix.install_latest
        run: |
          bash .github/install_latest_podman.sh

      - name: Log in to quay.io
        uses: ./
        with:
          username: ${{ env.REGISTRY_USER }}
          password: ${{ env.REGISTRY_PASSWORD }}
          registry: ${{ env.IMAGE_REGISTRY }}

      - name: Pull image with Buildah
        run: buildah pull ${{ env.IMAGE_PATH }}

  docker-pull:
    name: Log in and pull image with Docker
    runs-on: ubuntu-20.04
    strategy:
      fail-fast: false
      matrix:
        install_latest: [ true, false ]
    steps:

      - uses: actions/checkout@v2

      - name: Install latest podman
        if: matrix.install_latest
        run: |
          bash .github/install_latest_podman.sh

      - name: Log in to quay.io
        uses: ./
        with:
          username: ${{ env.REGISTRY_USER }}
          password: ${{ env.REGISTRY_PASSWORD }}
          registry: ${{ env.IMAGE_REGISTRY }}

      - name: Pull image with Docker
        run: docker pull ${{ env.IMAGE_PATH }}