devilbox/.github/workflows/ci-smoke-versions.yml

257 lines
6.8 KiB
YAML
Raw Normal View History

---
# -------------------------------------------------------------------------------------------------
# Job Name
# -------------------------------------------------------------------------------------------------
2019-11-21 14:20:35 +00:00
name: Versions
# -------------------------------------------------------------------------------------------------
# When to run
# -------------------------------------------------------------------------------------------------
on:
# Runs on Pull Requests
pull_request:
# Runs on master Branch and Tags
push:
branches:
- master
tags:
- '[0-9]+.[0-9]+*'
# -------------------------------------------------------------------------------------------------
# What to run
# -------------------------------------------------------------------------------------------------
jobs:
2019-11-21 14:20:35 +00:00
smoke_version:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
2019-11-21 14:20:35 +00:00
version:
- "MYSQL_SERVER=mysql-5.5"
- "MYSQL_SERVER=mysql-5.6"
- "MYSQL_SERVER=mysql-5.7"
- "MYSQL_SERVER=mysql-8.0"
- "MYSQL_SERVER=mariadb-5.5"
- "MYSQL_SERVER=mariadb-10.0"
- "MYSQL_SERVER=mariadb-10.1"
- "MYSQL_SERVER=mariadb-10.2"
- "MYSQL_SERVER=mariadb-10.3"
- "MYSQL_SERVER=mariadb-10.4"
- "MYSQL_SERVER=percona-5.5"
- "MYSQL_SERVER=percona-5.6"
- "MYSQL_SERVER=percona-5.7"
- "MYSQL_SERVER=percona-8.0"
- "PGSQL_SERVER=9.0"
- "PGSQL_SERVER=9.1"
- "PGSQL_SERVER=9.2"
- "PGSQL_SERVER=9.2-alpine"
- "PGSQL_SERVER=9.3"
- "PGSQL_SERVER=9.3-alpine"
- "PGSQL_SERVER=9.4"
- "PGSQL_SERVER=9.4-alpine"
- "PGSQL_SERVER=9.5"
- "PGSQL_SERVER=9.5-alpine"
- "PGSQL_SERVER=9.6"
- "PGSQL_SERVER=9.6-alpine"
- "PGSQL_SERVER=10.0"
- "PGSQL_SERVER=10.0-alpine"
- "PGSQL_SERVER=10.1"
- "PGSQL_SERVER=10.1-alpine"
- "PGSQL_SERVER=10.2"
- "PGSQL_SERVER=10.2-alpine"
- "PGSQL_SERVER=10.3"
- "PGSQL_SERVER=10.3-alpine"
- "PGSQL_SERVER=10.4"
- "PGSQL_SERVER=10.4-alpine"
- "PGSQL_SERVER=10.5"
- "PGSQL_SERVER=10.5-alpine"
- "PGSQL_SERVER=10.6"
- "PGSQL_SERVER=10.6-alpine"
- "PGSQL_SERVER=11.0"
- "PGSQL_SERVER=11.0-alpine"
- "PGSQL_SERVER=11.1"
- "PGSQL_SERVER=11.1-alpine"
- "PGSQL_SERVER=latest"
- "PGSQL_SERVER=alpine"
- "REDIS_SERVER=2.8"
- "REDIS_SERVER=3.0"
- "REDIS_SERVER=3.0-alpine"
- "REDIS_SERVER=3.2"
- "REDIS_SERVER=3.2-alpine"
- "REDIS_SERVER=4.0"
- "REDIS_SERVER=4.0-alpine"
- "REDIS_SERVER=5.0"
- "REDIS_SERVER=5.0-alpine"
- "REDIS_SERVER=latest"
- "REDIS_SERVER=alpine"
- "MEMCD_SERVER=1.4"
- "MEMCD_SERVER=1.4-alpine"
- "MEMCD_SERVER=1.5"
- "MEMCD_SERVER=1.5-alpine"
- "MEMCD_SERVER=latest"
- "MEMCD_SERVER=alpine"
- "MONGO_SERVER=2.8"
- "MONGO_SERVER=3.0"
- "MONGO_SERVER=3.2"
- "MONGO_SERVER=3.4"
- "MONGO_SERVER=3.6"
- "MONGO_SERVER=4.0"
- "MONGO_SERVER=latest"
name: "[${{ matrix.version }}]"
steps:
# ------------------------------------------------------------
# Checkout repository
# ------------------------------------------------------------
- name: Checkout repository
uses: actions/checkout@v1
- name: Show environment
shell: bash
run: |
env
- name: Show network
shell: bash
run: |
netstat -an || true
ss -tlun || true
- name: Show Docker version
shell: bash
run: |
docker version
# ------------------------------------------------------------
# Setup
# ------------------------------------------------------------
- name: Configure
shell: bash
run: |
cd .tests/
2019-11-21 14:20:35 +00:00
# Set the matrix version
make configure KEY="${VERSION//=*/}" VAL="${VERSION//*=}"
# 3306 is taken, so chose another one
make configure KEY=HOST_PORT_MYSQL VAL=3307
env:
2019-11-21 14:20:35 +00:00
VERSION: ${{ matrix.version }}
- name: Pull images
shell: bash
run: |
cd .tests/
make pull
- name: Startup
shell: bash
run: |
cd .tests/
make start
- name: Docker logs
shell: bash
run: |
cd .tests/
make logs
# ------------------------------------------------------------
# Run tests
# ------------------------------------------------------------
- name: Test Modules
shell: bash
run: |
cd .tests/
make test-smoke-modules
if: success() || failure()
- name: Test Config
shell: bash
run: |
cd .tests/
make test-smoke-config
if: success() || failure()
- name: Test Intranet
shell: bash
run: |
cd .tests/
make test-smoke-intranet
if: success() || failure()
- name: Test Vendors
shell: bash
run: |
cd .tests/
make test-smoke-vendors
if: success() || failure()
- name: Test Vhosts
shell: bash
run: |
cd .tests/
make test-smoke-vhosts
if: success() || failure()
- name: Test Reverse Proxy
shell: bash
run: |
cd .tests/
make test-smoke-rproxies
if: success() || failure()
- name: Test SSL
shell: bash
run: |
cd .tests/
make test-smoke-ssl
if: success() || failure()
- name: Test Bind
shell: bash
run: |
cd .tests/
make test-smoke-bind
if: success() || failure()
- name: Test Autostart
shell: bash
run: |
cd .tests/
make test-smoke-autostart
if: success() || failure()
- name: "Test Framework: CakePHP"
shell: bash
run: |
cd .tests/
make test-smoke-framework-cakephp
if: success() || failure()
- name: "Test Framework: Drupal"
shell: bash
run: |
cd .tests/
make test-smoke-framework-drupal
if: success() || failure()
# ------------------------------------------------------------
# Finish
# ------------------------------------------------------------
- name: "Finish: Docker logs"
shell: bash
run: |
cd .tests/
make logs
if: success() || failure()