Sha256: 4167c410decce4b082f4cd49d7af92e41a0d113b59c8dd2dcc3a11d12c6d07f2

Contents?: true

Size: 1.88 KB

Versions: 16

Compression:

Stored size: 1.88 KB

Contents

require 'yaml'
require 'rake_circle_ci'
require 'rake_github'
require 'rake_ssh'
require 'rspec/core/rake_task'

task :default => :spec

RSpec::Core::RakeTask.new(:spec)

RakeSSH.define_key_tasks(
    namespace: :deploy_key,
    path: 'config/secrets/ci/',
    comment: 'maintainers@infrablocks.io'
)

RakeCircleCI.define_project_tasks(
    namespace: :circle_ci,
    project_slug: 'github/infrablocks/rake_easy_rsa'
) do |t|
  circle_ci_config =
      YAML.load_file('config/secrets/circle_ci/config.yaml')

  t.api_token = circle_ci_config["circle_ci_api_token"]
  t.environment_variables = {
      ENCRYPTION_PASSPHRASE:
          File.read('config/secrets/ci/encryption.passphrase')
              .chomp
  }
  t.ssh_keys = [
      {
          hostname: "github.com",
          private_key: File.read('config/secrets/ci/ssh.private')
      }
  ]
end

RakeGithub.define_repository_tasks(
    namespace: :github,
    repository: 'infrablocks/rake_easy_rsa',
) do |t|
  github_config =
      YAML.load_file('config/secrets/github/config.yaml')

  t.access_token = github_config["github_personal_access_token"]
  t.deploy_keys = [
      {
          title: 'CircleCI',
          public_key: File.read('config/secrets/ci/ssh.public')
      }
  ]
end

namespace :pipeline do
  task :prepare => [
      :'circle_ci:project:follow',
      :'circle_ci:env_vars:ensure',
      :'circle_ci:ssh_keys:ensure',
      :'github:deploy_keys:ensure'
  ]
end

namespace :version do
  desc "Bump version for specified type (pre, major, minor, patch)"
  task :bump, [:type] do |_, args|
    bump_version_for(args.type)
  end
end

desc "Release gem"
task :release do
  sh "gem release --tag --push"
end

def bump_version_for(version_type)
  sh "gem bump --version #{version_type} " +
      "&& bundle install " +
      "&& export LAST_MESSAGE=\"$(git log -1 --pretty=%B)\" " +
      "&& git commit -a --amend -m \"${LAST_MESSAGE} [ci skip]\""
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
rake_easy_rsa-0.7.0 Rakefile
rake_easy_rsa-0.6.0.pre.2 Rakefile
rake_easy_rsa-0.6.0.pre.1 Rakefile
rake_easy_rsa-0.5.0 Rakefile
rake_easy_rsa-0.4.0.pre.1 Rakefile
rake_easy_rsa-0.3.0 Rakefile
rake_easy_rsa-0.2.0.pre.11 Rakefile
rake_easy_rsa-0.2.0.pre.10 Rakefile
rake_easy_rsa-0.2.0.pre.9 Rakefile
rake_easy_rsa-0.2.0.pre.8 Rakefile
rake_easy_rsa-0.2.0.pre.7 Rakefile
rake_easy_rsa-0.2.0.pre.6 Rakefile
rake_easy_rsa-0.2.0.pre.5 Rakefile
rake_easy_rsa-0.2.0.pre.4 Rakefile
rake_easy_rsa-0.2.0.pre.3 Rakefile
rake_easy_rsa-0.2.0.pre.2 Rakefile