我正在尝试使用capifony部署symfony2项目。
我得到以下错误:
--> Updating code base with rsync_with_remote_cache strategy
--> Creating cache directory................................✔
--> Creating symlinks for shared directories................✔
--> Creating symlinks for shared files......................✔
--> Normalizing asset timestamps............................✔
--> Downloading Composer....................................✔
--> Updating Composer dependencies..........................✔
--> Building bootstrap file.................................✔
--> Updating Composer.......................................✔
--> Dumping an optimized autoloader.........................✔
--> Installing bundle's assets..............................✘
*** [err :: server.de]
*** [err :: server.de]
*** [err :: server.de]
*** [err :: server.de] [SymfonyComponentDependencyInjectionExceptionParameterNotFoundException]
*** [err :: server.de] You have requested a non-existent parameter "secret".
*** [err :: server.de]
*** [err :: server.de]
*** [err :: server.de]
*** [deploy:update_code] rolling back
failed: "sh -c 'sh -c '\''cd /var/www/server.de/releases/20130111092102 && php app/console assets:install web --env=prod'\'''" on server.de
我deploy.rbset :application, "Testproject"
set :domain, "server.de"
set :deploy_to, "/var/www/server.de/"
set :app_path, "app"
set :user, "username"
ssh_options[:forward_agent] = true
set :repository, "file:///home/kai/webprojects/testproject/.git"
set :scm, :git
set :deploy_via, :rsync_with_remote_cache
# Or: `accurev`, `bzr`, `cvs`, `darcs`, `subversion`, `mercurial`, `perforce`, or `none`
set :model_manager, "doctrine"
# Or: `propel`
role :web, domain # Your HTTP server, Apache/etc
role :app, domain # This may be the same as your `Web` server
role :db, domain, :primary => true # This is where Symfony2 migrations will run
set :use_sudo, false
set :keep_releases, 3
set :update_vendors, true
set :shared_files, ["app/config/parameters.yml"]
set :shared_children, [app_path + "/logs", web_path + "/uploads", "vendor"]
set :use_composer, true
手动运行:PHP app/console资产:安装web——env=prod
编辑: 由于p
parameters:
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: ~
database_name: dbName
database_user: dbName
database_password: secretPassword
mailer_transport: smtp
mailer_host: localhost
mailer_user: ~
mailer_password: ~
locale: de
secret: SomeSecret4465466
beryllium_cache.client.servers: { "localhost": 11211 }
Thanks for your Ideas
我找到了答案。在capifony文档中清楚地写着:
最后一步是配置app/config/parameters。yml文件。最好的方法是在服务器的共享文件夹中手动创建该文件:
ssh your_deploy_server
mkdir -p /var/www/my-app.com/shared/app/config
vim /var/www/my-app.com/shared/app/config/parameters.yml
一旦你的参数。Yml文件配置正确后,您应该能够测试已部署的应用程序。在随后的每次部署中,同样的应用/配置/参数。Yml文件将被符号链接到您的应用程序中,这意味着您只需要在初始部署后进行配置。
就是:)