instance_accountant 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 19a81626ec5302f9c0ae2bdd455c7aa70c2384f3
4
- data.tar.gz: 611a5db14d5b5284b16d5935e72df9df4148381d
3
+ metadata.gz: d4050e8562394fe0c8cbbbd33075f8fedbfeafe1
4
+ data.tar.gz: 78d22b9d8d3aabc24748fd0fbce92b9fd9d59388
5
5
  SHA512:
6
- metadata.gz: 948d6d0a669a3fa5ed8e6543cb93063e3ced2e46e875ab06c85169c034cfe196be66598cbe28cc0504d436951923299091cb380c6810f03d8708b8c3312690e5
7
- data.tar.gz: ff0797c01fb181fe887300fd8740a29ac0196882c51fc7f3c6a51cc96118585c11782afb742151cb97141eb60b476773473448ac72b688b7a26eb941a4917d06
6
+ metadata.gz: 57b2fc72feadc5f1cfa05d37ba5892df8c2f6205499b9d8a114f51f1b3e2ee7ac021d3842da556c92a76d810d57bf40d255341c0d8f27b4d9110d0818e5bb03f
7
+ data.tar.gz: 395d3eae795f35c7a8e6f45a7d69b4fe630d9bca270dca83ea05f2c91b4542cab42b153cff1710bb17ec34d34589f1e1f32165f2f338c3d1fbcc815edd31d614
@@ -5,28 +5,46 @@ $LOAD_PATH.unshift 'lib'
5
5
  require 'instance_accountant'
6
6
 
7
7
  Gem::Specification.new do |gem|
8
- gem.authors = [ 'Tom Mornini', 'John McKee' ]
8
+ gem.authors = [ 'Tom Mornini', 'John McKee' ]
9
9
 
10
- gem.files = Dir.glob( 'lib/**/*.rb' )
10
+ gem.files = Dir.glob( 'lib/**/*.rb' )
11
11
 
12
- gem.files << 'instance_accountant.gemspec'
13
- gem.files << 'LICENSE.txt'
14
- gem.files << 'Rakefile'
15
- gem.files << 'README.md'
12
+ gem.files << 'instance_accountant.gemspec'
13
+ gem.files << 'LICENSE.txt'
14
+ gem.files << 'Rakefile'
15
+ gem.files << 'README.md'
16
16
 
17
- gem.test_files = Dir.glob( 'spec/**/*.rb' )
17
+ gem.test_files = Dir.glob( 'spec/**/*.rb' )
18
18
 
19
- gem.name = 'instance_accountant'
20
- gem.description = File.read 'README.md'
21
- gem.summary = 'account for hourly instance usage using Subledger'
22
- gem.version = InstanceAccountant::VERSION
23
- gem.email = 'admin@subledger.com'
24
- gem.licenses = ['BSD 3-Clause']
19
+ gem.name = 'instance_accountant'
25
20
 
26
- gem.homepage = 'https://github.com/subledger/instance_accountant'
21
+ gem.description = <<-'EOF'
22
+ The instance_accountant gem is designed to be used to account
23
+ for hourly resource consumption, such as EC2 instances, using
24
+ Subledger, the double-entry accounting API.
27
25
 
28
- gem.bindir = 'bin'
29
- gem.executables = 'instance_accountant'
26
+ It can account for both cost (amount owed to AWS) as well as price
27
+ (amount owed to instance owner). If you run hourly-billed instances
28
+ for yourself, or for others, and want real-time usage information
29
+ for yourself, and for those paying you for the instance, then this
30
+ gem is for you. :-)
31
+
32
+ instance_accountant keeps state in an "hourfile" that contains the
33
+ timestamp of the last hour accounted for. It is intended to be run
34
+ in --daemon mode at startup. It makes no effort to account for
35
+ instance time when it is not running, so it's important to run it
36
+ immediately upon startup, and to make sure that it is always running.
37
+ EOF
38
+
39
+ gem.summary = 'account for hourly instance usage using Subledger'
40
+ gem.version = InstanceAccountant::VERSION
41
+ gem.email = 'admin@subledger.com'
42
+ gem.licenses = ['BSD 3-Clause']
43
+
44
+ gem.homepage = 'https://github.com/subledger/instance_accountant'
45
+
46
+ gem.bindir = 'bin'
47
+ gem.executables = 'instance_accountant'
30
48
 
31
49
  gem.add_runtime_dependency 'subledger', '~> 0.7'
32
50
  gem.add_runtime_dependency 'thor', '~> 0.19'
@@ -38,7 +38,7 @@ module InstanceAccountant
38
38
  aliases: :p
39
39
 
40
40
  method_option :price_description,
41
- default: 'instnace price for: %'
41
+ default: 'instance price for: %'
42
42
 
43
43
  method_option :price_reference
44
44
 
@@ -4,5 +4,5 @@ require 'instance_accountant/hour'
4
4
  require 'instance_accountant/poster'
5
5
 
6
6
  module InstanceAccountant
7
- VERSION = '0.0.2'
7
+ VERSION = '0.0.3'
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: instance_accountant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Mornini
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-11-05 00:00:00.000000000 Z
12
+ date: 2014-11-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: subledger
@@ -165,79 +165,22 @@ dependencies:
165
165
  - - "~>"
166
166
  - !ruby/object:Gem::Version
167
167
  version: '0.27'
168
- description: |
169
- Subledger instance accountant Ruby gem
168
+ description: |2
169
+ The instance_accountant gem is designed to be used to account
170
+ for hourly resource consumption, such as EC2 instances, using
171
+ Subledger, the double-entry accounting API.
170
172
 
171
- Installation:
173
+ It can account for both cost (amount owed to AWS) as well as price
174
+ (amount owed to instance owner). If you run hourly-billed instances
175
+ for yourself, or for others, and want real-time usage information
176
+ for yourself, and for those paying you for the instance, then this
177
+ gem is for you. :-)
172
178
 
173
- gem install instance_accountant
174
-
175
- Gemfile:
176
-
177
- gem 'instance_accountant'
178
-
179
- The gem provides an executable that can be invoked two ways:
180
-
181
- 1) you want to account for the hourly cost of instances:
182
-
183
- #!/bin/bash
184
-
185
- instance_accountant account \
186
- --cost 0.1 \
187
- --cost_reference 'http://test.com/cost' \
188
- --expense_acct subledger_account_id \
189
- --payable_acct subledger_account_id \
190
- --key_id subledger_key_id \
191
- --secret subledger_secret \
192
- --org_id subledger_org_id \
193
- --book_id subledger_book_id \
194
- --daemon 2>&1 >> instance_accountant.log
195
-
196
- 2) you want to account for both the hourly cost and income:
197
-
198
- #!/bin/bash
199
-
200
- instance_accountant account \
201
- --cost 0.1 \
202
- --expense_acct subledger_account_id \
203
- --payable_acct subledger_account_id \
204
- --price 0.2 \
205
- --receivable_acct subledger_account_id \
206
- --income_acct subledger_account_id \
207
- --key_id subledger_key_id \
208
- --secret subledger_secret \
209
- --org_id subledger_org_id \
210
- --book_id subledger_book_id \
211
- --daemon 2>&1 >> instance_accountant.log
212
-
213
- Here's a complete set of options:
214
-
215
- Options:
216
- f, [--filepath=FILEPATH]
217
- # Default: ~/.instance_accountant
218
- d, --description=DESCRIPTION
219
- # Default: instance usage for: %
220
- [--reference=REFERENCE]
221
- c, --cost=COST
222
- [--cost-description=COST_DESCRIPTION]
223
- # Default: instance cost for: %
224
- [--cost-reference=COST_REFERENCE]
225
- e, --expense-acct=EXPENSE_ACCT
226
- p, --payable-acct=PAYABLE_ACCT
227
- p, [--price=PRICE]
228
- [--price-description=PRICE_DESCRIPTION]
229
- # Default: instance price for %
230
- [--price-reference=PRICE_REFERENCE]
231
- i, [--income-acct=INCOME_ACCT]
232
- r, [--receivable-acct=RECEIVABLE_ACCT]
233
- k, --key-id=KEY_ID
234
- s, --secret=SECRET
235
- o, --org-id=ORG_ID
236
- b, --book-id=BOOK_ID
237
- [--daemon], [--no-daemon]
238
-
239
- Note: %s in descriptions will be replaced by the ISO 8601 of the hour in UTC
240
- Note: instance_accountant captures errors and does its best to keep running
179
+ instance_accountant keeps state in an "hourfile" that contains the
180
+ timestamp of the last hour accounted for. It is intended to be run
181
+ in --daemon mode at startup. It makes no effort to account for
182
+ instance time when it is not running, so it's important to run it
183
+ immediately upon startup, and to make sure that it is always running.
241
184
  email: admin@subledger.com
242
185
  executables:
243
186
  - instance_accountant