Sha256: a4b6253725434914a5b7498623045eb25650f013b30b4bdfa5994b5d5e003865

Contents?: true

Size: 1.07 KB

Versions: 14

Compression:

Stored size: 1.07 KB

Contents

# frozen_string_literal: true

require 'rake_factory'
require 'octokit'

module RakeGithub
  module Tasks
    module DeployKeys
      class Provision < RakeFactory::Task
        default_name :provision
        default_description(RakeFactory::DynamicValue.new do |t|
          "Provision deploy keys to the #{t.repository} repository"
        end)

        parameter :repository, required: true
        parameter :access_token, required: true
        parameter :deploy_keys, default: []

        action do |t|
          client = Octokit::Client.new(access_token: access_token)

          $stdout.puts 'Adding specified deploy keys to the ' \
                       "'#{t.repository}' repository... "
          t.deploy_keys.each do |deploy_key|
            $stdout.print "Adding '#{deploy_key[:title]}'... "
            client.add_deploy_key(
              t.repository,
              deploy_key[:title],
              deploy_key[:public_key],
              read_only: !deploy_key[:read_only].nil?
            )
            $stdout.puts 'Done.'
          end
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
rake_github-0.14.0.pre.1 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.13.0 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.12.0.pre.6 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.12.0.pre.5 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.12.0.pre.4 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.12.0.pre.3 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.12.0.pre.2 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.12.0.pre.1 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.11.0 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.10.0.pre.8 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.10.0.pre.7 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.10.0.pre.6 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.10.0.pre.5 lib/rake_github/tasks/deploy_keys/provision.rb
rake_github-0.10.0.pre.4 lib/rake_github/tasks/deploy_keys/provision.rb