All Projects → express42 → Strano

express42 / Strano

Licence: mit
Strano is a web UI to run any tasks (but mostly Capistrano) from any of your git repo.

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Strano

Goploy
Deploy, CI/CD, Xterm, APP monitor, Crontab Manager.
Stars: ✭ 147 (+308.33%)
Mutual labels:  deploy, cd
devops-guidebook
📚 DevOps 知识图谱 关于Linux、服务器、数据库、部署等相关体系
Stars: ✭ 25 (-30.56%)
Mutual labels:  cd, deploy
Rocket
Automated software delivery as fast and easy as possible 🚀
Stars: ✭ 217 (+502.78%)
Mutual labels:  deploy, cd
aliyun-oss-deploy
🙈 一个 nodejs 命令行工具,用于部署静态资源到 aliyun oss,支持代码方式和 CLI 方式!
Stars: ✭ 31 (-13.89%)
Mutual labels:  cd, deploy
dropship
Super simple deployment tool
Stars: ✭ 62 (+72.22%)
Mutual labels:  cd, deploy
Pipe
Continuous Delivery for Declarative Kubernetes, Serverless and Infrastructure Applications
Stars: ✭ 341 (+847.22%)
Mutual labels:  deploy, cd
Deobfuscator
[Not work] Deobfuscate obfuscated binaries!
Stars: ✭ 11 (-69.44%)
Mutual labels:  deprecated
Goat
POSIX-compliant shell movement boosting hack for real ninjas (aka `cd x` and `cd ...`)
Stars: ✭ 27 (-25%)
Mutual labels:  cd
Deployer
Deployer is a free and open source deployment tool.
Stars: ✭ 854 (+2272.22%)
Mutual labels:  deploy
Madalynnplumbundle
The deploy bundle using Plum for Symfony2
Stars: ✭ 26 (-27.78%)
Mutual labels:  deprecated
Cimonitor
Displays CI statuses on a dashboard and triggers fun modules representing the status!
Stars: ✭ 34 (-5.56%)
Mutual labels:  cd
Ng2 Typeahead
Autocomplete component for Angular 2
Stars: ✭ 33 (-8.33%)
Mutual labels:  deprecated
Pm2
Node.js Production Process Manager with a built-in Load Balancer.
Stars: ✭ 36,126 (+100250%)
Mutual labels:  deploy
Grunt Csswring
DEPRECATED. Minify CSS files using PostCSS-based CSSWring
Stars: ✭ 12 (-66.67%)
Mutual labels:  deprecated
Os Tmpdir
[DEPRECATED] Node.js os.tmpdir() ponyfill
Stars: ✭ 31 (-13.89%)
Mutual labels:  deprecated
Sqlite Provider
SQLite3 provider for Vapor
Stars: ✭ 11 (-69.44%)
Mutual labels:  deprecated
Sarama Cluster
Cluster extensions for Sarama, the Go client library for Apache Kafka 0.9 [DEPRECATED]
Stars: ✭ 969 (+2591.67%)
Mutual labels:  deprecated
Ng Suggest
AngularJS module to provide Typeahead via OpenSearch Suggestions
Stars: ✭ 9 (-75%)
Mutual labels:  deprecated
Angela
🙂angela (安其拉):react ssr router redux; react同构框架
Stars: ✭ 15 (-58.33%)
Mutual labels:  cd
Brunch With Vue
[deprecated] A skeleton application utilizing vue, vuex, vue-resource and vue-router.
Stars: ✭ 32 (-11.11%)
Mutual labels:  deprecated

Strano

This is fork of original Strano project. We remove Sidekiq and Redis dependencies and allow Strano to run any task (not just Capistrano).

The Github and Git backed mostly deployment management UI, see screenshots.

Strano allows you to run any task via a clean and simple web interface. Simply create a project from any of your Github or Git repositories, and Strano will use repository as working directory to run any task you want (but we only use it for Capistrano). Which means you don't have to set up Capistrano twice, and you can still run capistrano tasks from the command line without fear of different configurations being used, causing conflicted deploys.

All tasks are recorded, so you can look back and see a full history of who did what and when.

Strano is in production use at KupiKupon and other Express42 clients, but is still in active development. So I need your help to improve and ensure the code is top quality. So I encourage any and all pull requests. Fork away!

Installation

Strano is simply a Rails app with a DB backend for processing background jobs. Clone the repo from Github and run:

script/bootstrap

Then start the app:

bundle exec rails s

NOTE Strano cannot be run on Heroku, as the project repositories have to cloned to a local directory in your app at vendors/repos.

Configuration

Strano requires that you define only three configuration variables. The rest are optional, but can be overridden. You can either create a config/strano.yml configuration file and define them in there, or you can define them in the ENV variable. See config/strano.example.yml for all possible configuration variables.

The following are required and should be defined before running Strano.

  • Github Key and Secret

    Create a Github application and copy the generated key and secret to: github_key and github_secret.

  • Public SSH key

    In order to clone repositories from Github, it requires a public SSH key be defined in public_ssh_key. Or strano process running user should have access to Github (or Git) repo. Also user running strano process should have SSH access to the machines, if you want it to run Capistrano tasks.

Background Processing

Background processing of tasks and repo management is taken care of by the excellent rake task. Run the queue like this:

bundle exec rake bg:worker

License

Strano is released under the MIT license:

Contributing

Once you've made your great commits:

  1. Fork Strano
  2. Create a topic branch - git checkout -b my_branch
  3. Push to your branch - git push origin my_branch
  4. Create a Pull Request from your branch
  5. That's it!
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].