All Projects → nbulaj → capistrano-chewy

nbulaj / capistrano-chewy

Licence: MIT license
Chewy tasks and Elasticsearch indexes management with Capistrano

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to capistrano-chewy

Shipit
Universal automation and deployment tool ⛵️
Stars: ✭ 5,249 (+37392.86%)
Mutual labels:  deployment, capistrano
capistrano-docker-compose
Docker Compose specific tasks for Capistrano
Stars: ✭ 17 (+21.43%)
Mutual labels:  deployment, capistrano
capistrano-uberspace
Deploy your rails app on an uberspace with Capistrano 3
Stars: ✭ 14 (+0%)
Mutual labels:  deployment, capistrano
Cape
Dynamically generates Capistrano recipes for Rake tasks
Stars: ✭ 178 (+1171.43%)
Mutual labels:  deployment, capistrano
Capistrano
Remote multi-server automation tool
Stars: ✭ 12,035 (+85864.29%)
Mutual labels:  deployment, capistrano
Rails
Official Ruby on Rails specific tasks for Capistrano
Stars: ✭ 773 (+5421.43%)
Mutual labels:  deployment, capistrano
ansible-rails-deployment
deploy projects using ansible
Stars: ✭ 77 (+450%)
Mutual labels:  deployment, capistrano
Hapistrano
Deploy tool for Haskell applications, like Capistrano for Rails
Stars: ✭ 91 (+550%)
Mutual labels:  deployment, capistrano
Deploy
Ansible role to deploy scripting applications like PHP, Python, Ruby, etc. in a capistrano style
Stars: ✭ 2,141 (+15192.86%)
Mutual labels:  deployment, capistrano
Procsd
Manage your application processes in production hassle-free like Heroku CLI with Procfile and Systemd
Stars: ✭ 181 (+1192.86%)
Mutual labels:  deployment, capistrano
akk-stack
Containerized EverQuest Emulator Server Environment
Stars: ✭ 36 (+157.14%)
Mutual labels:  deployment
static-aws-deploy
A tool for deploying files to an AWS S3 bucket with configurable headers and invalidating AWS Cloudfront Objects.
Stars: ✭ 27 (+92.86%)
Mutual labels:  deployment
dkdeploy-typo3-cms
dkdeploy-typo3-cms provides functionality for fully automated deployments targeting TYPO3 CMS applications
Stars: ✭ 16 (+14.29%)
Mutual labels:  capistrano
github-action-wpe-site-deploy
A GitHub Action to deploy code directly to WP Engine.
Stars: ✭ 116 (+728.57%)
Mutual labels:  deployment
buffalo-azure
A gobuffalo plugin for working with Azure.
Stars: ✭ 29 (+107.14%)
Mutual labels:  deployment
rules gitops
This repository contains rules for continuous, GitOps driven Kubernetes deployments.
Stars: ✭ 112 (+700%)
Mutual labels:  deployment
Dynatrace-OneAgent-Ansible
This Ansible role installs Dynatrace OneAgent.
Stars: ✭ 34 (+142.86%)
Mutual labels:  deployment
dinobuildr
A macOS deployment utility developed by Mozilla IT
Stars: ✭ 26 (+85.71%)
Mutual labels:  deployment
deployment-controller
基于Fabric8模拟Kubernetes的Deployment实现一个Controller
Stars: ✭ 60 (+328.57%)
Mutual labels:  deployment
react-production-deployment
Deploy your React app to production on Netlify, Vercel and Heroku
Stars: ✭ 51 (+264.29%)
Mutual labels:  deployment

Capistrano::Chewy

Gem Version Build Status Dependency Status Code Climate

Manage and continuously rebuild your ElasticSearch indexes with Chewy and Capistrano v3.

Capistrano::Chewy gem adds automatic conditionally reset of only modified Chewy indexes and the removal of deleted index files to your deploy flow so you do not have to do it manually. Moreover, it adds the possibility of manual index management with the base Chewy tasks on the remote server.

DEPRECATED: use native Chewy rake tasks for the same purposes.

Requirements

  • Ruby >= 1.9.3
  • Capistrano >= 3.0
  • Chewy >= 0.4

Installation

Add this line to your application's Gemfile:

gem 'capistrano-chewy', require: false

or:

gem 'capistrano-chewy', require: false, group: :development

And then run bundler:

$ bundle

Or install it yourself as:

$ gem install capistrano-chewy

If you want to use the latest version from the master, then add the following line to your Gemfile:

gem 'capistrano-chewy', git: 'https://github.com/nbulaj/capistrano-chewy.git'

Usage

Require it in your Capfile:

# Capfile

...
require 'capistrano/chewy'
...

then you can use cap -T to list Capistrano::Chewy tasks:

cap chewy:rebuild            # Reset modified and delete removed Chewy indexes
cap chewy:reset              # Destroy, recreate and import data to all the indexes
cap chewy:reset[indexes]     # Destroy, recreate and import data to the specified indexes
cap chewy:update             # Updates data to all the indexes
cap chewy:update[indexes]    # Updates data to the specified indexes

By default Capistrano::Chewy adds deploy:chewy:rebuild task after deploy:updated and deploy:reverted. If you want to change it, then you need to disable default gem hooks by setting chewy_default_hooks to false in your deployment config and manually define the order of the tasks.

Configuration

You can setup the following options:

# deploy.rb
set :chewy_conditionally_reset, false    # Reset only modified Chewy indexes, true by default
set :chewy_path, 'app/my_indexes'        # Path to Chewy indexes, 'app/chewy' by default
set :chewy_env, :chewy_production        # Environment variable for Chewy, equal to RAILS_ENV by default
set :chewy_role, :web                    # Chewy role, :app by default  
set :chewy_default_hooks, false          # Add default gem hooks to project deploy flow, true by default
set :chewy_delete_removed_indexes, false # Delete indexes which files have been deleted, true by default

Contributing

You are very welcome to help improve Capistrano:Chewy if you have suggestions for features that other people can use or some code improvements.

To contribute:

  1. Fork the project( http://github.com/nbulaj/capistrano-chewy/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].