# Copyright (c) The OpenTofu Authors
# SPDX-License-Identifier: MPL-2.0
# Copyright (c) 2023 HashiCorp, Inc.
# SPDX-License-Identifier: MPL-2.0

# This docker-compose file tests the installation instructions with all operating systems. See #
# test-install-instructions.sh for details.
version: '3.2'
services:
  alpine-convenience:
    image: alpine
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/alpine.sh --convenience
    working_dir: /data
  alpine-manual:
    image: alpine
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/alpine.sh
    working_dir: /data
  debian-convenience:
    image: debian:stable
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/deb.sh --convenience
    working_dir: /data
  debian-manual:
    image: debian:stable
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/deb.sh
    working_dir: /data
  ubuntu-convenience:
    image: ubuntu:latest
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/deb.sh --convenience
    working_dir: /data
  ubuntu-manual:
    image: ubuntu:latest
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/deb.sh
    working_dir: /data
  fedora-convenience:
    image: fedora:latest
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/rpm.sh --convenience
    working_dir: /data
  fedora-manual:
    image: fedora:latest
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/rpm.sh
    working_dir: /data
  opensuse-convenience:
    image: opensuse/leap:latest
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/rpm.sh --convenience
    working_dir: /data
  opensuse-manual:
    image: opensuse/leap:latest
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/rpm.sh
    working_dir: /data
  rockylinux-convenience:
    image: rockylinux:9
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/rpm.sh --convenience
    working_dir: /data
  rockylinux-manual:
    image: rockylinux:9
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/rpm.sh
    working_dir: /data
  brew:
    image: ubuntu
    volumes:
      - source: ./
        target: /data
        type: bind
    command: /data/brew.sh
    working_dir: /data
