GitXplorerGitXplorer
o

active-job-kubernetes

public
5 stars
1 forks
0 issues

Commits

List of commits on branch main.
Unverified
a45099791e3e4f04e2b01a63f02283b048c6dae4

chore: update usage

oomjadas committed 3 years ago
Unverified
db6810c738a79f8142a817c200660e2a91617e7d

docs: update README

oomjadas committed 3 years ago
Unverified
0e973de4cee6809ea846110c65a0bcbd6dd5d14e

chore: set SERIALIZED_JOB env var for all containers

oomjadas committed 3 years ago
Unverified
023201b45e098b16e1fa71b471ba26b83536f40a

fix: queue adapter

oomjadas committed 3 years ago
Unverified
a1cd3e981839ee0d6a1c8f5405c9111229d081f9

chore: create rake task

oomjadas committed 3 years ago
Unverified
ff2379baae3801c7550020f952dafd9eeab99c07

refactor: fix lint issues

oomjadas committed 3 years ago

README

The README file for this repository.

active-job-kubernetes

Rails Active Job adapter to run background jobs using Kubernetes Jobs.

Installation

Add this line to your application's Gemfile:

gem 'active_job_kubernetes'

And then execute:

bundle install

Or install it yourself as:

gem install active-job-kubernetes

Usage

class HelloWorldJob < ApplicationJob
  self.queue_adapter = :kubernetes

  def perform
    puts 'Hello, world'
  end

  def manifest
    YAML.safe_load(
      <<~MANIFEST
        apiVersion: batch/v1
        kind: Job
        metadata:
          generatedName: hello-world
        spec:
          template:
            metadata:
              name: hello-world
            spec:
              restartPolicy: Never
              containers:
                - name: worker
                  image: example:latest
                  command: ["rake"]
                  args: ["active_job_kubernetes:run_job"]
      MANIFEST
    )
  end

  def kubeclient(scope)
    endpoint = '' # cluster endpoint

    Kubeclient::Client.new(endpoint + scope, 'v1')
  end
end

Development

After checking out the repo, run bin/setup to install dependencies. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/omjadas/active-job-kubernetes.

License

The gem is available as open source under the terms of the MIT License.