Include capistrano tasks that reload the services after deploying. (#12642)
After a successfull deploy, I need the services to switch over to use the new code. I need to restart the services. These capistrano tasks do that.
This commit is contained in:
		
							parent
							
								
									45202f79ef
								
							
						
					
					
						commit
						e09e225e5c
					
				@ -12,3 +12,21 @@ set :migration_role, :app
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
append :linked_files, '.env.production', 'public/robots.txt'
 | 
					append :linked_files, '.env.production', 'public/robots.txt'
 | 
				
			||||||
append :linked_dirs, 'vendor/bundle', 'node_modules', 'public/system'
 | 
					append :linked_dirs, 'vendor/bundle', 'node_modules', 'public/system'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace :systemd do
 | 
				
			||||||
 | 
					  %i[sidekiq streaming web].each do |service|
 | 
				
			||||||
 | 
					    %i[reload restart status].each do |action|
 | 
				
			||||||
 | 
					      desc "Perform a #{action} on #{service} service"
 | 
				
			||||||
 | 
					      task "#{service}:#{action}".to_sym do
 | 
				
			||||||
 | 
					        on roles(:app) do
 | 
				
			||||||
 | 
					          # runs e.g. "sudo restart mastodon-sidekiq.service"
 | 
				
			||||||
 | 
					          sudo :systemctl, action, "#{fetch(:application)}-#{service}.service"
 | 
				
			||||||
 | 
					        end
 | 
				
			||||||
 | 
					      end
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					after 'deploy:publishing', 'systemd:web:reload'
 | 
				
			||||||
 | 
					after 'deploy:publishing', 'systemd:sidekiq:restart'
 | 
				
			||||||
 | 
					after 'deploy:publishing', 'systemd:streaming:restart'
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user