croner 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +23 -0
- data/lib/croner/config.rb +6 -0
- data/lib/croner/engine.rb +11 -0
- data/lib/croner/version.rb +1 -1
- data/lib/croner.rb +8 -1
- data/lib/generators/croner/install_generator.rb +13 -0
- data/lib/generators/templates/croner.rb +7 -0
- metadata +8 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9d7450c7f6c94d41f65897bbd9491d1ab909e40c
|
4
|
+
data.tar.gz: 17a15b5b8ea604e50a81c66d9060462db8885692
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a06ebef4e8c31bfb8b6fea9f8da6d34a00e7fcd7ab255e08492caf618ab22cf5a5bcd4ab24f6c281d34de99bf037a203442fea7dce505ae08c028d73c21d1b2b
|
7
|
+
data.tar.gz: 156c0dc859b84e6582ecbcf6153456cf4ce276a1cfd69a9bd12246173e693ccc191a9dc3f137de4743100131e3e69166db9f40b770b3aaf9a968f2ba4cded7f3
|
data/README.md
CHANGED
@@ -15,9 +15,32 @@ And then execute:
|
|
15
15
|
$ bundle
|
16
16
|
```
|
17
17
|
|
18
|
+
And then run initial settings:
|
19
|
+
```bash
|
20
|
+
$ rails g croner:install
|
21
|
+
```
|
22
|
+
|
23
|
+
## Configure
|
24
|
+
Edit the `/config/initializers/croner.rb` file and customize following settings.
|
25
|
+
#### enable_backup
|
26
|
+
Settings that save backup file.
|
27
|
+
#### backup_path
|
28
|
+
Backup file's path.
|
29
|
+
|
18
30
|
## Usage
|
19
31
|
Make `config/croner/hosts/[hostname]` and run task `croner:update`.
|
20
32
|
|
33
|
+
## Capistrano integration
|
34
|
+
In your `config/deploy.rb` or `Capfile` file:
|
35
|
+
```rb
|
36
|
+
require "croner/capistrano"
|
37
|
+
```
|
38
|
+
|
39
|
+
And if you want to change role, append your `config/deploy.rb` file:
|
40
|
+
```rb
|
41
|
+
croner_roles %w(web db)
|
42
|
+
```
|
43
|
+
|
21
44
|
## License
|
22
45
|
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
23
46
|
|
data/lib/croner/version.rb
CHANGED
data/lib/croner.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'croner/engine'
|
1
2
|
require 'croner/railtie'
|
2
3
|
|
3
4
|
module Croner
|
@@ -10,7 +11,13 @@ module Croner
|
|
10
11
|
insert_rows = File.read(Rails.root.join('config', 'croner', 'hosts', `hostname`.delete("\n"))).split("\n")
|
11
12
|
|
12
13
|
# backup current cron contents
|
13
|
-
|
14
|
+
if Croner.config.enable_backup
|
15
|
+
if Croner.config.backup_path.blank?
|
16
|
+
`crontab -l > ./cron_#{Time.current.strftime('%Y%m%d%H%M%S')}.bak`
|
17
|
+
else
|
18
|
+
`crontab -l > ./#{Croner.config.backup_path}/cron_#{Time.current.strftime('%Y%m%d%H%M%S')}.bak`
|
19
|
+
end
|
20
|
+
end
|
14
21
|
|
15
22
|
# get current cron contents
|
16
23
|
cron_rows = `crontab -l`.split("\n")
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Croner
|
2
|
+
module Generators
|
3
|
+
class InstallGenerator < Rails::Generators::Base
|
4
|
+
source_root File.expand_path("../../templates", __FILE__)
|
5
|
+
|
6
|
+
desc "Creates a Croner initializer to your application."
|
7
|
+
|
8
|
+
def copy_initializer
|
9
|
+
template "croner.rb", "config/initializers/croner.rb"
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: croner
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ykogure
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-09-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 3.2.22
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 3.2.22
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: mysql2
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -51,8 +51,12 @@ files:
|
|
51
51
|
- lib/croner.rb
|
52
52
|
- lib/croner/capistrano.rb
|
53
53
|
- lib/croner/capistrano/croner.rake
|
54
|
+
- lib/croner/config.rb
|
55
|
+
- lib/croner/engine.rb
|
54
56
|
- lib/croner/railtie.rb
|
55
57
|
- lib/croner/version.rb
|
58
|
+
- lib/generators/croner/install_generator.rb
|
59
|
+
- lib/generators/templates/croner.rb
|
56
60
|
- lib/tasks/croner_tasks.rake
|
57
61
|
homepage: https://github.com/ZIGExN/croner
|
58
62
|
licenses:
|