opsask 2.0.14 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/Readme.md +72 -1
  3. data/VERSION +1 -1
  4. data/lib/opsask/main.rb +26 -4
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: afaab8b48d1b4b88a6d08b1fa8389047ecabd7d0
4
- data.tar.gz: 5465eac2903cd280fbe7ac36529249ab5a202f55
3
+ metadata.gz: 684e95a8d720907abd8feb1b2a0f735cb3007165
4
+ data.tar.gz: 4c861f36f2c5935ccfe6a67211786b93708b2577
5
5
  SHA512:
6
- metadata.gz: 04205e73b621125a06062784682815ae79f609730b8dd8d21a9c3da9b4ba2f2e9fcfff10b4477d664974ed94fcbdb87be23f4ef4a4bb99184ab549f043405c8b
7
- data.tar.gz: 56a99dfc8c2f89188fe52157507deaab8de882d1f92883ac9af46843ce9f38a0ebf3bec91b733e0758de517f24bb70c2062c2e8267859d9731963847858f55c3
6
+ metadata.gz: 0509da3102cca736a57ec2cffa21d7417060daedb9e032c8f61ddc2357deeb5ce7ade8850d03671ab4209e73595ff238575d91d378e9f5e4d0c9e0cafe810a19
7
+ data.tar.gz: fcdc38a7e4f5270acf4401c946add892ede593acae992685706e2026fe982bae25d5177443ead1901125db930b009b3d55f2b15c021f6c39e5476e3499a0242b
data/Readme.md CHANGED
@@ -1,3 +1,74 @@
1
1
  # OpsAsk
2
2
 
3
- Ask Ops for things.
3
+ Ask Ops for things.
4
+
5
+ ![Sample](http://i.imgur.com/tBFuEAE.png?1)
6
+
7
+
8
+ ## Usage
9
+
10
+ $ opsask help
11
+ Commands:
12
+ opsask art # Show the application art
13
+ opsask help [COMMAND] # Describe available commands or one specific command
14
+ opsask server # Start application web server
15
+ opsask version # Show the application version
16
+
17
+ You're probably most interested in the `server` command:
18
+
19
+ $ opsask help server
20
+ Usage:
21
+ opsask server -c, --config=CONFIG
22
+
23
+ Options:
24
+ -c, --config=CONFIG # Path to configuration file
25
+ -p, [--port=N] # Set Sinatra port
26
+ # Default: 3000
27
+ -e, [--environment=ENVIRONMENT] # Set Sinatra environment
28
+ # Default: development
29
+ -b, [--bind=BIND] # Set Sinatra interface
30
+ # Default: 0.0.0.0
31
+
32
+ Start application web server
33
+
34
+
35
+ ## Configuration
36
+
37
+ Configuration is JSON:
38
+
39
+ {
40
+ "assignee": "some_user", // This user will be assigned
41
+ "jira_user": "another_user", // This user will file JIRAs
42
+ "jira_pass": "some_really_strong_password", // We'll need the password, too
43
+ "jira_url": "http://your.jira", // Base URL for JIRA installation
44
+ "queue_size": 5, // Limit submissions per day
45
+ "cutoff_hour": 18, // Stop submissions after this hour
46
+ "project_key": "TEST", // Project to file JIRAs under
47
+ "project_name": "Test", // We also need the full name
48
+ "issue_type": "Task", // Kind of JIRA to file
49
+ "version": "Un-targeted", // If required by project
50
+ "jira_private_key": "/path/to/consumer.pem", // You probably generated it
51
+ "jira_consumer_key": "consumer-key", // Name associated with key
52
+ "require_label": "GoodLabel", // Scope to label (optional)
53
+ "ignore_label": "BadLabel" // Filter out label (optional)
54
+ }
55
+
56
+ To fill out `jira_private_key` and `jira_consumer_key`, you'll need to create
57
+ what JIRA calls an "Application Link" which is unfortunately non-trivial. Here
58
+ are some sample configuration values, which oughta help:
59
+
60
+ - *Applicaiton Name:* OpsAsk
61
+ - *Application Type:* Generic Application
62
+ - *Service Provider Name:* Your Company, Inc.
63
+ - *Consumer Name:* OpsAsk
64
+ - *Consumer Key:* opsask
65
+ - *Shared secret:* opsask
66
+ - *Consumer Callback URL:* http://opsask/callback
67
+ - *Request Token URL:* http://jira/plugins/servlet/oauth/request-token
68
+ - *Access Token URL:* http://jira/plugins/servlet/oauth/access-token
69
+ - *Authorize URL:* http://jira/plugins/servlet/oauth/authorize
70
+
71
+ To generate a keypair:
72
+
73
+ $ openssl genrsa -out opsask.pem 1024
74
+ $ openssl rsa -in opsask.pem -pubout -out opsask.pub
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.0.14
1
+ 2.1.0
data/lib/opsask/main.rb CHANGED
@@ -23,8 +23,26 @@ module OpsAsk
23
23
  end
24
24
 
25
25
  desc 'server', 'Start application web server'
26
- option :port, default: 3000, aliases: :p
27
- option :config, default: nil, aliases: :c
26
+ option :config, \
27
+ type: :string,
28
+ aliases: %w[ -c ],
29
+ desc: 'Path to configuration file',
30
+ required: true
31
+ option :port, \
32
+ type: :numeric,
33
+ aliases: %w[ -p ],
34
+ desc: 'Set Sinatra port',
35
+ default: 3000
36
+ option :environment, \
37
+ type: :string,
38
+ aliases: %w[ -e ],
39
+ desc: 'Set Sinatra environment',
40
+ default: 'development'
41
+ option :bind, \
42
+ type: :string,
43
+ aliases: %w[ -b ],
44
+ desc: 'Set Sinatra interface',
45
+ default: '0.0.0.0'
28
46
  def server
29
47
  config = {
30
48
  ops_group: 'change-network-operations',
@@ -49,8 +67,12 @@ module OpsAsk
49
67
  config.merge! JSON::parse(File.read(options[:config]), symbolize_names: true)
50
68
  end
51
69
 
52
- App.run! port: options[:port], config: config, \
53
- environment: 'production', raise_errors: true
70
+ App.run! \
71
+ config: config,
72
+ bind: options[:bind],
73
+ port: options[:port],
74
+ environment: options[:environment],
75
+ raise_errors: true
54
76
  end
55
77
  end
56
78
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opsask
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.14
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Clemmer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-07 00:00:00.000000000 Z
11
+ date: 2015-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor