Skip to content

Instantly share code, notes, and snippets.

@Dahie
Created April 22, 2015 06:59
Show Gist options
  • Save Dahie/1c04c9bff410d1118359 to your computer and use it in GitHub Desktop.
Save Dahie/1c04c9bff410d1118359 to your computer and use it in GitHub Desktop.
<!DOCTYPE html>
<html>
<head>
<title>Title</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<style type="text/css">
@import url(https://fonts.googleapis.com/css?family=Yanone+Kaffeesatz);
@import url(https://fonts.googleapis.com/css?family=Droid+Serif:400,700,400italic);
@import url(https://fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic);
body { font-family: 'Droid Serif'; }
h1, h2, h3 {
font-family: 'Yanone Kaffeesatz';
font-weight: normal;
}
.remark-code, .remark-inline-code { font-family: 'Ubuntu Mono'; }
</style>
</head>
<body>
<textarea id="source">
class: center, middle
# Woro
## Write once, run once
---
# Agenda
1. Premise
2. Usage
3. Gains
4. Ideas
5. Discussion
---
# Premise
---
# Usage
```shell
$ mina woro:init
```
Register with Gist/Github, create initial gist-collection.
Github credentials allow for private gists.
```shell
$ mina woro:new task=fix_questionnaires
```
Create new local Rake task
```shell
$ mina woro:execute task=fix_questionnaires
```
Push and Rake task on remote server
---
# Usage
```shell
$ mina woro:push task=fix_questionnaires
```
Only Push Rake task to remote server
```shell
$ mina woro:run task=fix_questionnaires
```
Only run Rake task on remote server
```shell
$ mina woro:list
```
List all remote rake tasks
```shell
$ mina woro:pull task=fix_questionnaires
```
Download Rake task
---
# Usage
* Init: Returns Gist-ID: 498ffa00d1a58ffbbc30, needs to be stored in deploy.rb!
* New: local Rake tasks at `lib/woro_task/cleanup_questionnaire.rake`
* Push: uploads `cleanup_questionnaire.rake` to Gist
* Run: downloads Rake file from Gist to remote `lib/tasks/cleanup_questionnaire.rake`, executes using `$ rake woro:cleanup_questionnaire`, then deletes file from remote
---
# Gains
* Sharing snippets for common cleanup tasks
* easy task management with version control
* No code clutter in git
* No pasting scripts to the console
----
# Ideas
* Gist authentication
* Where to store the Gist-ID? config-yaml?
* Support for Capistrano, same gem or split?
</textarea>
<script src="https://gnab.github.io/remark/downloads/remark-latest.min.js">
</script>
<script>
var slideshow = remark.create();
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment