[TASK] Add MariaDB test #36
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Docker Compose Test | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- "*" | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to Docker Hub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and test services | |
run: | | |
docker-compose -f docker-compose.yml up --build -d | |
- name: Test Xdebug | |
run: | | |
sleep 10 # Wait for the containers to fully initialize | |
XDEBUG_OUTPUT=$(curl -s http://localhost/index.php) | |
if [[ ! "$XDEBUG_OUTPUT" =~ "Xdebug" ]]; then | |
echo "Xdebug test failed. Not found in phpinfo() output." | |
exit 1 | |
else | |
echo "Xdebug test successful." | |
fi | |
- name: Test Redis | |
run: | | |
sleep 5 # Wait for Redis to fully initialize | |
REDIS_TEST=$(docker-compose exec -T redis redis-cli ping) | |
if [[ "$REDIS_TEST" != "PONG" ]]; then | |
echo "Redis test failed. No PONG response." | |
exit 1 | |
else | |
echo "Redis test successful." | |
fi | |
- name: Test MariaDB | |
run: | | |
sleep 10 # Wait for MariaDB to fully initialize | |
MARIADB_TEST=$(docker-compose exec -T mariadb mariadb -u${MARIADB_USER} -p${MARIADB_PASSWORD} -e "SHOW DATABASES LIKE '${MARIADB_DATABASE}';") | |
if [[ "$MARIADB_TEST" != *"${MARIADB_DATABASE}"* ]]; then | |
echo "MariaDB test failed. Database not found." | |
exit 1 | |
else | |
echo "MariaDB test successful." | |
fi | |
- name: Cleanup | |
run: | | |
docker-compose -f docker-compose.yml down |