也许是一个奇怪的问题,但对你们更多人有用。 如何在Jenkinsfile中注入PostgreSQL数据库。
我目前遇到的问题是无法在管道中安装PostgreSQL,这很高兴。可以通过什么方式解决这个问题?
我试图在我的Jenkinsfile中“ apt-get install”不起作用。我出于以下目的需要测试数据库:我的数据库中有预定义的内容,用于在rake asset:precompile命令中生成资产。对于构建过程中的这一步,我确实需要一个数据库。在Jenkins中可以通过哪种方式使用数据库?我已经尝试过SQLite,它不接受数据库脚本中包含的JSON文件。
上面的代码都打包了一个dockerfile,正如您在下面的我的Jenkinsfile中看到的那样。
pipeline {
agent {
dockerfile true
}
stages {
stage('Initialize database'){
steps {
sh 'apt-get install -y postgresql-9.1'
}
}
stage('Setup database') {
steps {
sh 'DOMAIN=dummy \
RAILS_ENV=production \
SECRET_KEY_BASE=dummy \
ENCRYPTION_KEY=' ' ' ' \
MAIL_DELIVERY_METHOD=smtp \
bundle exec rake db:create db:test:prepare'
}
}
stage('Get assets') {
steps {
sh 'DOMAIN=dummy \
RAILS_ENV=production \
SECRET_KEY_BASE=dummy \
ENCRYPTION_KEY=' ' ' ' \
MAIL_DELIVERY_METHOD=smtp \
bundle exec rake assets:precompile'
}
}
stage('Exec cucumber') {
steps {
sh 'test exec cucumber'
}
}
}
如果有人能给我一个有关詹金斯内部数据库用法的示例,那将是很好的事情。