Я пытаюсь настроить контейнер внутри файла jenkins, чтобы мое приложение laravel работало внутри контейнера во время тестирования.
Это мой jenkinsFile
pipeline {
agent any
environment {
REDIS_HOST='localhost'
DB_CONNECTION='pgsql'
DB_HOST='localhost'
DB_PORT='5432'
DB_DATABASE='postgres'
DB_USERNAME='postgres'
DB_PASSWORD='secret'
}
stages {
stage('install php') {
agent {
docker { image 'ucreateit/php7.1:v0.1' }
}
steps {
sh 'php --version'
}
}
stage('install pg pdo') {
agent {
docker { image 'rhkl/php-fpm-alpine' }
}
steps {
echo 'success'
}
}
stage('install database') {
steps {
sh 'docker-compose -f docker-compose.yml up -d postgres-test'
}
}
stage('install composer') {
agent {
docker { image 'composer' }
}
steps {
sh "php -r \"copy('.env.example', '.env');\""
sh 'php --version'
sh 'composer --version'
sh 'composer install'
sh 'php artisan key:generate'
sh 'php artisan migrate'
sh './vendor/phpunit/phpunit/phpunit'
}
}
}
}
А это мой файл docker-compose.yml
version: '2'
services:
postgres-test:
image: postgres:10.3-alpine
environment:
POSTGRES_PASSWORD: postgres
POSTGRES_DB: test
ports:
- "5433:5432"
Я не могу перенести файл миграции.
В Connection.php строка 664 показывает:
не удалось найти драйвер (SQL: выберите * из файла information_schema.tables, где t
able_schema = public и table_name = migrations)
Как мне добавить расширение pdo_pgsql в файл jenkins?