worker-army 0.6.1 → 0.6.2
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/Gemfile +1 -0
- data/Gemfile.lock +3 -0
- data/README.md +3 -0
- data/VERSION +1 -1
- data/lib/worker_army/base.rb +9 -0
- data/lib/worker_army/web.rb +21 -2
- data/worker-army.gemspec +6 -3
- data/worker_army.yml.sample +3 -0
- metadata +16 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 59ec12d554f7bbbab1a78ce9d578eb136af8283e
         | 
| 4 | 
            +
              data.tar.gz: e1aa674d2b057c4a4d5ab37b335920b5bd5b2ea9
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 4725ba9ea36829d7559820b753d34ea848b82ac8f92b1814a586da4e84972d3b006cd17ac552e39b58903feba450775f1574d1383f7f1fd0001d39d2b12a2883
         | 
| 7 | 
            +
              data.tar.gz: b697e10af515e02eba24df71d63418c2ce4970ea87e8abfc0dc3f16c1e1b9632ed7ce63d3e09ff93f22251f813a58218cdec476de04b7a7718d4ac78eff44f5c
         | 
    
        data/Gemfile
    CHANGED
    
    
    
        data/Gemfile.lock
    CHANGED
    
    | @@ -65,6 +65,8 @@ GEM | |
| 65 65 | 
             
                  rack (~> 1.4)
         | 
| 66 66 | 
             
                  rack-protection (~> 1.4)
         | 
| 67 67 | 
             
                  tilt (~> 1.3, >= 1.3.4)
         | 
| 68 | 
            +
                sinatra-basic-auth (0.1.0)
         | 
| 69 | 
            +
                  sinatra
         | 
| 68 70 | 
             
                sinatra-contrib (1.4.2)
         | 
| 69 71 | 
             
                  backports (>= 2.0)
         | 
| 70 72 | 
             
                  multi_json
         | 
| @@ -92,5 +94,6 @@ DEPENDENCIES | |
| 92 94 | 
             
              redis
         | 
| 93 95 | 
             
              rest-client
         | 
| 94 96 | 
             
              sinatra
         | 
| 97 | 
            +
              sinatra-basic-auth
         | 
| 95 98 | 
             
              sinatra-contrib
         | 
| 96 99 | 
             
              unicorn
         | 
    
        data/README.md
    CHANGED
    
    | @@ -31,6 +31,9 @@ If you can't provide or don't want to provide the config file at that location, | |
| 31 31 | 
             
                 worker_army_client_retry_count
         | 
| 32 32 | 
             
                 worker_army_callback_retry_count
         | 
| 33 33 | 
             
                 worker_army_store_job_data
         | 
| 34 | 
            +
                 worker_army_use_basic_auth
         | 
| 35 | 
            +
                 worker_army_basic_auth_username
         | 
| 36 | 
            +
                 worker_army_basic_auth_password
         | 
| 34 37 |  | 
| 35 38 | 
             
            ## Server / Queue
         | 
| 36 39 |  | 
    
        data/VERSION
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            0.6. | 
| 1 | 
            +
            0.6.2
         | 
    
        data/lib/worker_army/base.rb
    CHANGED
    
    | @@ -23,6 +23,15 @@ module WorkerArmy | |
| 23 23 | 
             
                      if ENV['worker_army_store_job_data']
         | 
| 24 24 | 
             
                        config['store_job_data'] = (ENV['worker_army_store_job_data'] == 'true')
         | 
| 25 25 | 
             
                      end
         | 
| 26 | 
            +
                      if ENV['worker_army_use_basic_auth']
         | 
| 27 | 
            +
                        config['use_basic_auth'] = (ENV['worker_army_use_basic_auth'] == 'true')
         | 
| 28 | 
            +
                      end
         | 
| 29 | 
            +
                      if ENV['worker_army_basic_auth_username']
         | 
| 30 | 
            +
                        config['basic_auth_username'] = ENV['worker_army_basic_auth_username']
         | 
| 31 | 
            +
                      end
         | 
| 32 | 
            +
                      if ENV['worker_army_basic_auth_password']
         | 
| 33 | 
            +
                        config['basic_auth_password'] = ENV['worker_army_basic_auth_password']
         | 
| 34 | 
            +
                      end
         | 
| 26 35 | 
             
                    else
         | 
| 27 36 | 
             
                      begin
         | 
| 28 37 | 
             
                        # puts "Using config in your home directory"
         | 
    
        data/lib/worker_army/web.rb
    CHANGED
    
    | @@ -2,16 +2,24 @@ require "json" | |
| 2 2 | 
             
            require "multi_json"
         | 
| 3 3 | 
             
            require "sinatra"
         | 
| 4 4 | 
             
            require "sinatra/json"
         | 
| 5 | 
            +
            require "sinatra/basic_auth"
         | 
| 5 6 | 
             
            require File.dirname(__FILE__) + '/log'
         | 
| 6 7 | 
             
            require File.dirname(__FILE__) + '/queue'
         | 
| 7 8 |  | 
| 8 9 | 
             
            queue = WorkerArmy::Queue.new
         | 
| 10 | 
            +
            auth = false
         | 
| 11 | 
            +
            if queue.config['use_basic_auth'] and queue.config['basic_auth_username'] and queue.config['basic_auth_password']
         | 
| 12 | 
            +
              authorize do |username, password|
         | 
| 13 | 
            +
                username == queue.config['basic_auth_username'] && password == queue.config['basic_auth_password']
         | 
| 14 | 
            +
              end
         | 
| 15 | 
            +
              auth = true
         | 
| 16 | 
            +
            end
         | 
| 9 17 |  | 
| 10 18 | 
             
            before do
         | 
| 11 19 | 
             
              content_type 'application/json', :charset => 'utf-8'
         | 
| 12 20 | 
             
            end
         | 
| 13 21 |  | 
| 14 | 
            -
             | 
| 22 | 
            +
            def overview(queue)
         | 
| 15 23 | 
             
              job_count = queue.get_job_count || 0
         | 
| 16 24 | 
             
              workers = queue.get_known_workers
         | 
| 17 25 | 
             
              last_ping = queue.last_ping || 0
         | 
| @@ -25,7 +33,18 @@ get '/' do | |
| 25 33 | 
             
                workers: workers, last_worker_ping: last_ping.to_i, queues: queues,
         | 
| 26 34 | 
             
                current_jobs: current_jobs
         | 
| 27 35 | 
             
              }
         | 
| 28 | 
            -
             | 
| 36 | 
            +
            end
         | 
| 37 | 
            +
             | 
| 38 | 
            +
            if auth
         | 
| 39 | 
            +
              protect do
         | 
| 40 | 
            +
                get "/" do
         | 
| 41 | 
            +
                  json overview(queue)
         | 
| 42 | 
            +
                end
         | 
| 43 | 
            +
              end
         | 
| 44 | 
            +
            else
         | 
| 45 | 
            +
              get '/' do
         | 
| 46 | 
            +
                json overview(queue)
         | 
| 47 | 
            +
              end
         | 
| 29 48 | 
             
            end
         | 
| 30 49 |  | 
| 31 50 | 
             
            post '/jobs' do
         | 
    
        data/worker-army.gemspec
    CHANGED
    
    | @@ -2,16 +2,16 @@ | |
| 2 2 | 
             
            # DO NOT EDIT THIS FILE DIRECTLY
         | 
| 3 3 | 
             
            # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
         | 
| 4 4 | 
             
            # -*- encoding: utf-8 -*-
         | 
| 5 | 
            -
            # stub: worker-army 0.6. | 
| 5 | 
            +
            # stub: worker-army 0.6.2 ruby lib
         | 
| 6 6 |  | 
| 7 7 | 
             
            Gem::Specification.new do |s|
         | 
| 8 8 | 
             
              s.name = "worker-army"
         | 
| 9 | 
            -
              s.version = "0.6. | 
| 9 | 
            +
              s.version = "0.6.2"
         | 
| 10 10 |  | 
| 11 11 | 
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
         | 
| 12 12 | 
             
              s.require_paths = ["lib"]
         | 
| 13 13 | 
             
              s.authors = ["Oliver Kiessler"]
         | 
| 14 | 
            -
              s.date = "2014- | 
| 14 | 
            +
              s.date = "2014-08-02"
         | 
| 15 15 | 
             
              s.description = "Simple redis based worker queue with a HTTP/Rest interface"
         | 
| 16 16 | 
             
              s.email = "kiessler@inceedo.com"
         | 
| 17 17 | 
             
              s.executables = ["worker_army"]
         | 
| @@ -60,6 +60,7 @@ Gem::Specification.new do |s| | |
| 60 60 | 
             
                  s.add_runtime_dependency(%q<multi_json>, [">= 0"])
         | 
| 61 61 | 
             
                  s.add_runtime_dependency(%q<sinatra>, [">= 0"])
         | 
| 62 62 | 
             
                  s.add_runtime_dependency(%q<sinatra-contrib>, [">= 0"])
         | 
| 63 | 
            +
                  s.add_runtime_dependency(%q<sinatra-basic-auth>, [">= 0"])
         | 
| 63 64 | 
             
                  s.add_runtime_dependency(%q<rest-client>, [">= 0"])
         | 
| 64 65 | 
             
                  s.add_runtime_dependency(%q<rake>, [">= 0"])
         | 
| 65 66 | 
             
                  s.add_runtime_dependency(%q<unicorn>, [">= 0"])
         | 
| @@ -71,6 +72,7 @@ Gem::Specification.new do |s| | |
| 71 72 | 
             
                  s.add_dependency(%q<multi_json>, [">= 0"])
         | 
| 72 73 | 
             
                  s.add_dependency(%q<sinatra>, [">= 0"])
         | 
| 73 74 | 
             
                  s.add_dependency(%q<sinatra-contrib>, [">= 0"])
         | 
| 75 | 
            +
                  s.add_dependency(%q<sinatra-basic-auth>, [">= 0"])
         | 
| 74 76 | 
             
                  s.add_dependency(%q<rest-client>, [">= 0"])
         | 
| 75 77 | 
             
                  s.add_dependency(%q<rake>, [">= 0"])
         | 
| 76 78 | 
             
                  s.add_dependency(%q<unicorn>, [">= 0"])
         | 
| @@ -83,6 +85,7 @@ Gem::Specification.new do |s| | |
| 83 85 | 
             
                s.add_dependency(%q<multi_json>, [">= 0"])
         | 
| 84 86 | 
             
                s.add_dependency(%q<sinatra>, [">= 0"])
         | 
| 85 87 | 
             
                s.add_dependency(%q<sinatra-contrib>, [">= 0"])
         | 
| 88 | 
            +
                s.add_dependency(%q<sinatra-basic-auth>, [">= 0"])
         | 
| 86 89 | 
             
                s.add_dependency(%q<rest-client>, [">= 0"])
         | 
| 87 90 | 
             
                s.add_dependency(%q<rake>, [">= 0"])
         | 
| 88 91 | 
             
                s.add_dependency(%q<unicorn>, [">= 0"])
         | 
    
        data/worker_army.yml.sample
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: worker-army
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.6. | 
| 4 | 
            +
              version: 0.6.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Oliver Kiessler
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2014- | 
| 11 | 
            +
            date: 2014-08-02 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: redis
         | 
| @@ -66,6 +66,20 @@ dependencies: | |
| 66 66 | 
             
                - - ">="
         | 
| 67 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 68 | 
             
                    version: '0'
         | 
| 69 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 70 | 
            +
              name: sinatra-basic-auth
         | 
| 71 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 72 | 
            +
                requirements:
         | 
| 73 | 
            +
                - - ">="
         | 
| 74 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 75 | 
            +
                    version: '0'
         | 
| 76 | 
            +
              type: :runtime
         | 
| 77 | 
            +
              prerelease: false
         | 
| 78 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 79 | 
            +
                requirements:
         | 
| 80 | 
            +
                - - ">="
         | 
| 81 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 82 | 
            +
                    version: '0'
         | 
| 69 83 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 84 | 
             
              name: rest-client
         | 
| 71 85 | 
             
              requirement: !ruby/object:Gem::Requirement
         |