Skip to content

Run workflow on multiple OSs #141

Run workflow on multiple OSs

Run workflow on multiple OSs #141

name: Docker Compose CI
on: # yamllint disable-line rule:truthy
pull_request:
branches:
- main
jobs:
# yaml-lint:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4
# - name: Install 'yamllint'
# run: sudo apt-get install -y yamllint
# - name: Lint YAML files
# run: yamllint -c .github/yamllint_config.yaml .
# json-lint:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4
# - name: Install 'jsonlint' and 'git'
# run: sudo apt install python3-demjson git
# - name: Lint JSON files
# run: >-
# git ls-files -z '*.json' | xargs -0r jsonlint -s --allow=non-portable
# shell-lint:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4
# - name: Install 'shellcheck' and 'git'
# run: sudo apt install shellcheck git
# - name: Lint shell files ([ba]sh scripts)
# run: >-
# git ls-files -z '*.sh' '*.bash' '*.ksh' '*.bashrc' '*.bash_profile'
# '*.bash_login' '*.bash_logout' | xargs -0r shellcheck
# javascript-lint:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4
# - name: Use Node.js v20
# uses: actions/setup-node@v4
# with:
# node-version: v20
# - name: install eslint and default rules
# run: npm install eslint @eslint/js --save-dev
# - name: Lint javascript files
# run: npx eslint --config .github/eslint.config.mjs
test:
runs-on: macos-latest
# needs:
# - yaml-lint
# - json-lint
# - shell-lint
# - javascript-lint
# strategy:
# matrix:
# OS: [ubuntu-latest, windows-latest, macos-latest]
# BE_VERSION: [v3, v4]
steps:
- name: Setup docker (missing on MacOS)
if: runner.os == 'macos'
run: |
brew install docker docker-compose
mkdir -p ~/.docker
echo '{"cliPluginsExtraDirs": ["/opt/homebrew/lib/docker/cli-plugins"]}' > ~/.docker/config.json
cat ~/.docker/config.json
docker compose up --wait --wait-timeout 300
# - uses: actions/checkout@v4
# - name: Test docker-compose.yaml
# shell: bash
# run: |-
# docker compose version
# export BE_VERSION=${{ matrix.BE_VERSION }}
# docker compose up --wait --wait-timeout 300