Tijdens het ontwikkelen van tests voor mijn app wilde ik een integratie met Laravel Forge in deze volgorde:
- Pushen naar Github na commit
- Tests uitgevoerd door Travis CI
- Roep de deployment trigger url van Laravel Forge / Envoyer aan als de test succesvol is uitgevoerd. Deze URL ziet er als volgt uit: https://forge.laravel.com/servers/111111/sites/2222222/deploy/http?token=TOKEN
Om dit te doen, maakt u een travis.yml-bestand zoals:
taal: php php: - 7.1 before_script: - cp .env.travis .env - mysql -e 'create database db_testing'; - composer self-update - composer install --no-interaction - php artisan migrate script: - vendor/bin/phpunit after_success: - chmod +x ./tests.sh; ./tests.sh
Vergeet niet de omgeving in phpunit.xml aan te passen, bijvoorbeeld om over te schakelen naar een aangepaste database:
Het after_success-script
Maak een bestand tests.sh en voeg het volgende toe:
#!/bin/bash # Trigger implementatie # Vervang de onderstaande url met uw Forge/Laravel-url curl -s 'https://forge.laravel.com/servers/111111/sites/2222222/deploy/http?token=TOKEN'; echo 'Deployment triggered!'
Andere services dan Travis gebruiken of een aangepaste testservice maken
https://driesvints.com/blog/continuous-delivery-with-forge-and-envoyer/
Ook dank aan: