Files
action-server-install/.github/workflows/test.yml
Sebastian Krupinski 1f8c3b160c
Some checks failed
Test Action / Test nginx (pull_request) Failing after 7s
Test Action / Test Node (pull_request) Successful in 15s
Test Action / Test Without Dependencies (pull_request) Successful in 9s
Test Action / Test Custom Server Path (pull_request) Successful in 23s
Test Action / Test Build Command (pull_request) Successful in 20s
Test Action / Test All Components (pull_request) Failing after 1m0s
Test Action / Test PHP (pull_request) Failing after 1m5s
chore: update name
Signed-off-by: Sebastian Krupinski <krupinski01@gmail.com>
2026-02-14 16:44:19 -05:00

184 lines
5.0 KiB
YAML

name: Test Action
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
test-node:
name: Test Node
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Test action with Node.js (npm)
uses: ./
with:
install-node: 'true'
node-version: '24'
package-manager: 'npm'
server-path: './test-server'
- name: Verify installation
run: |
test -d ./test-server || exit 1
test -d ./test-server/node_modules || exit 1
chmod +x ./scripts/health-check.sh
./scripts/health-check.sh ./test-server true false false
echo "✓ Node.js (npm) installation successful"
- name: Run server tests
run: |
cd ./test-server
npm test
test-php:
name: Test PHP
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Test action with PHP
uses: ./
with:
install-php: 'true'
php-version: '8.5'
server-path: './test-server'
- name: Verify installation
run: |
test -d ./test-server || exit 1
php --version
composer --version
chmod +x ./scripts/health-check.sh
./scripts/health-check.sh ./test-server false true false
echo "✓ PHP installation successful"
- name: Run server tests
run: |
cd ./test-server
./vendor/bin/phpunit
test-nginx:
name: Test nginx
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Test action with nginx
uses: ./
with:
install-nginx: 'true'
server-path: './test-server'
- name: Verify installation
run: |
test -d ./test-server || exit 1
nginx -v
sudo systemctl status nginx --no-pager
chmod +x ./scripts/health-check.sh
./scripts/health-check.sh ./test-server false false true
echo "✓ nginx installation successful"
test-all-components:
name: Test All Components
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Test action with all components
uses: ./
with:
install-node: 'true'
install-php: 'true'
install-nginx: 'true'
node-version: '24'
php-version: '8.5'
package-manager: 'npm'
server-path: './test-server'
- name: Verify installation
run: |
test -d ./test-server || exit 1
test -d ./test-server/node_modules || exit 1
node --version
npm --version
php --version
composer --version
nginx -v
chmod +x ./scripts/health-check.sh
./scripts/health-check.sh ./test-server true true true
echo "✓ All components installation successful"
- name: Run integration tests
run: |
cd ./test-server
npm run test:integration
test-custom-paths:
name: Test Custom Server Path
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Test action with custom path
uses: ./
with:
install-node: 'true'
server-path: './my-custom-server'
- name: Verify installation
run: |
test -d ./my-custom-server || exit 1
test -d ./my-custom-server/node_modules || exit 1
echo "✓ Custom path installation successful"
- name: Run server tests
run: |
cd ./my-custom-server
npm test
test-without-dependencies:
name: Test Without Dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Test action without installing dependencies
uses: ./
with:
install-node: 'true'
install-dependencies: 'false'
server-path: './test-server'
- name: Verify installation
run: |
test -d ./test-server || exit 1
node --version
# node_modules should not exist since we skipped dependency installation
if [ -d ./test-server/node_modules ]; then
echo "✗ Dependencies were installed when they shouldn't have been"
exit 1
fi
echo "✓ Installation without dependencies successful"
test-build-command:
name: Test Build Command
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Test action with build command
uses: ./
with:
install-node: 'true'
server-path: './test-server'
build-command: 'echo "Build complete" > build.log'
- name: Verify build
run: |
test -f ./test-server/build.log || exit 1
grep -q "Build complete" ./test-server/build.log || exit 1
echo "✓ Build command executed successfully"