rake_circle_ci 0.2.0.pre.10 → 0.2.0.pre.11

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e436cbd483130841e428a315c59fdd791d9fe540a014df7152267df13a3fdd64
4
- data.tar.gz: d1dff86690bdff0cde6853976eda3809926c04c582ec9428b315b26865100527
3
+ metadata.gz: 16542cf53d773ebcda487a68b9985b565507b90cfcc19fa7aba66233db0ce01d
4
+ data.tar.gz: 5c8bd33d45ca784422dc8c9992debe43b0d854de2ee514b92aac72f9b257912b
5
5
  SHA512:
6
- metadata.gz: e1ca284246645f3dbec643d2a2341ecd5baf6afcaafb9f0afd602c87e23abfa8ffb028cdfdb5cf7ecb852310fec265e46b65e725580b59bab23e387fd9d714d9
7
- data.tar.gz: 3c842bff229f1308170a15eee28a3aaf69904a75fc79a13264da25487e40fd36ad387b510d1c30025f9e9119b6b42db7d74c8bb83d068cc9583b1de4cb4b9ec5
6
+ metadata.gz: b6704dc617c774964eadaa6dff7d0e4dfbdfa4897f093026ab1359c0d2a882e4b51378b934f69414221e14b473e98a1d10ff7253ab9ccc72ee0231a603a27c56
7
+ data.tar.gz: 8188d9997732a83bb261dff50308308396900d4e0a0495459836dda3b7d66580a0e3e06bcb7c306bde637a539efeb2f7fca56c34003c50ba1550103592d5d086
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rake_circle_ci (0.2.0.pre.10)
4
+ rake_circle_ci (0.2.0.pre.11)
5
5
  colored2 (~> 3.1)
6
6
  excon (~> 0.72)
7
7
  rake_factory (~> 0.23)
@@ -0,0 +1,85 @@
1
+ require 'rake_factory'
2
+
3
+ require_relative '../tasks'
4
+
5
+ module RakeCircleCI
6
+ module TaskSets
7
+ class Project < RakeFactory::TaskSet
8
+ prepend RakeFactory::Namespaceable
9
+
10
+ parameter :project_slug, required: true
11
+ parameter :api_token, required: true
12
+ parameter :base_url, default: 'https://circleci.com/api'
13
+ parameter :environment_variables, default: {}
14
+ parameter :ssh_keys, default: {}
15
+
16
+ parameter :env_vars_namespace, default: :env_vars
17
+ parameter :env_vars_destroy_task_name, default: :destroy
18
+ parameter :env_vars_provision_task_name, default: :provision
19
+ parameter :env_vars_ensure_task_name, default: :ensure
20
+
21
+ parameter :ssh_keys_namespace, default: :ssh_keys
22
+ parameter :ssh_keys_destroy_task_name, default: :destroy
23
+ parameter :ssh_keys_provision_task_name, default: :provision
24
+ parameter :ssh_keys_ensure_task_name, default: :ensure
25
+
26
+ task Tasks::EnvironmentVariables::Provision,
27
+ name: RakeFactory::DynamicValue.new { |ts|
28
+ ts.env_vars_provision_task_name
29
+ }
30
+ task Tasks::EnvironmentVariables::Destroy,
31
+ name: RakeFactory::DynamicValue.new { |ts|
32
+ ts.env_vars_destroy_task_name
33
+ }
34
+ task Tasks::EnvironmentVariables::Ensure,
35
+ name: RakeFactory::DynamicValue.new { |ts|
36
+ ts.env_vars_ensure_task_name
37
+ },
38
+ destroy_task_name: RakeFactory::DynamicValue.new { |ts|
39
+ ts.env_vars_destroy_task_name
40
+ },
41
+ provision_task_name: RakeFactory::DynamicValue.new { |ts|
42
+ ts.env_vars_provision_task_name
43
+ }
44
+ task Tasks::SSHKeys::Provision,
45
+ name: RakeFactory::DynamicValue.new { |ts|
46
+ ts.ssh_keys_provision_task_name
47
+ }
48
+ task Tasks::SSHKeys::Destroy,
49
+ name: RakeFactory::DynamicValue.new { |ts|
50
+ ts.ssh_keys_destroy_task_name
51
+ }
52
+ task Tasks::SSHKeys::Ensure,
53
+ name: RakeFactory::DynamicValue.new { |ts|
54
+ ts.ssh_keys_ensure_task_name
55
+ },
56
+ destroy_task_name: RakeFactory::DynamicValue.new { |ts|
57
+ ts.ssh_keys_destroy_task_name
58
+ },
59
+ provision_task_name: RakeFactory::DynamicValue.new { |ts|
60
+ ts.ssh_keys_provision_task_name
61
+ }
62
+
63
+ def define_on(application)
64
+ around_define(application) do
65
+ self.class.tasks.each do |task_definition|
66
+ ns = case task_definition.klass.to_s
67
+ when /EnvironmentVariables/
68
+ env_vars_namespace
69
+ when /SSHKeys/
70
+ ssh_keys_namespace
71
+ else
72
+ nil
73
+ end
74
+
75
+ application.in_namespace(ns) do
76
+ task_definition
77
+ .for_task_set(self)
78
+ .define_on(application)
79
+ end
80
+ end
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
@@ -1,5 +1,6 @@
1
1
  require_relative 'task_sets/environment_variables'
2
2
  require_relative 'task_sets/ssh_keys'
3
+ require_relative 'task_sets/project'
3
4
 
4
5
  module RakeCircleCI
5
6
  module TaskSets
@@ -22,7 +22,7 @@ module RakeCircleCI
22
22
  api_token: t.api_token,
23
23
  project_slug: t.project_slug)
24
24
 
25
- print "Destroying all SSH keys to the '#{t.project_slug}' " +
25
+ print "Destroying all SSH keys in the '#{t.project_slug}' " +
26
26
  "project... "
27
27
  client.delete_ssh_keys
28
28
  puts "Done."
@@ -1,3 +1,3 @@
1
1
  module RakeCircleCI
2
- VERSION = '0.2.0.pre.10'
2
+ VERSION = '0.2.0.pre.11'
3
3
  end
@@ -11,4 +11,8 @@ module RakeCircleCI
11
11
  def self.define_ssh_keys_tasks(opts = {}, &block)
12
12
  RakeCircleCI::TaskSets::SSHKeys.define(opts, &block)
13
13
  end
14
+
15
+ def self.define_project_tasks(opts = {}, &block)
16
+ RakeCircleCI::TaskSets::Project.define(opts, &block)
17
+ end
14
18
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake_circle_ci
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0.pre.10
4
+ version: 0.2.0.pre.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Toby Clemson
@@ -201,6 +201,7 @@ files:
201
201
  - lib/rake_circle_ci/client.rb
202
202
  - lib/rake_circle_ci/task_sets.rb
203
203
  - lib/rake_circle_ci/task_sets/environment_variables.rb
204
+ - lib/rake_circle_ci/task_sets/project.rb
204
205
  - lib/rake_circle_ci/task_sets/ssh_keys.rb
205
206
  - lib/rake_circle_ci/tasks.rb
206
207
  - lib/rake_circle_ci/tasks/environment_variables.rb