Post Deploy Configuration
Apiqcloud can perform post deployment application configuration via rake. This is usually needed to finalize configuration of complex applications, to run additional applications or specific steps for application configuration like db:migrate.
To do this we've introduced a new file called rake_deploy. It is located in the application root and contains a list of the commands that have to be passed to rake. Each command has to be located in a separate line. Commands are executed successively.
Apiqcloud executes commands from rake_deploy with each restart of the apache/nginx service and deletes them right after successful execution. As a result, if you need to bypass different commands to rake on each deploy you need to create a rake_deploy file each time and put the correct commands there.
Apiqcloud puts the output of each rake_deploy into a corresponding log file which is available via "Logs" view in the Apiqcloud Dashboard.
Syntaxis of rake_deploy file:
$COMMAND_NAME_1$COMMAND_NAME_2
...
$COMMAND_NAME_N
And Apiqcloud will execute the following scripts:
rake $COMMAND_NAME_1rake $COMMAND_NAME_2
...
rake $COMMAND_NAME_N
In case of Redmine rake_deploy looks like the following:
generate_secret_tokendb:migrate
redmine:load_default_data
Note: To freeze gems you need to add this command to rake_deploy: gems:unpack