kuby-linode 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 67b3964fc1ab77044195a89727a066b7439955087601e4df807ddc6641971367
4
- data.tar.gz: f055e6159a6f1be6def44464664523f39b531e20f22af5c8765b1adffcaf02e5
3
+ metadata.gz: f2b02f5b7ceb4756e4c177d3e2cbddb01340e4483c445be7450022da2d0abe75
4
+ data.tar.gz: d203e31153215b224a1fd7eb1b46edcabdf515da1074d8aa01c6451623fbadff
5
5
  SHA512:
6
- metadata.gz: 0f00f8e48e27df72dfc2b2534169ffc7d64c23a2f78cbab3f42cd05fa2013167c1000da8b7e2f8be031280c03707d2be5423f50bd093acc80837c05d880f2577
7
- data.tar.gz: 03530b38c6dcdc10850a47b85696e3526cb12e47055d7092f6571929abb01a41021803e4d3eedc21744e142f3677db72c27f61a100a8662e5939081e72d8d4ce
6
+ metadata.gz: 6fe8b16ab0a4d5d84f6782f7683df929c4a9655ce25bcd4295c1c84fb1ed230090a805b399898400405bb5ce1916a436137c880f559c7294d04c956f41ae6561
7
+ data.tar.gz: d4e02a93bbc31e140922afe500d35645f3ee7fc427265f88ef59f9c8ae22189348bdcb8e1220962ed680ab72d709b449551196094ed12cfe4d83245e444bc627
@@ -1,2 +1,8 @@
1
+ ## 0.2.0
2
+ * Remove dependency on rails app.
3
+ * Refresh kubeconfig in more places.
4
+ - Before setup
5
+ - Before deploy
6
+
1
7
  ## 0.1.0
2
8
  * Birthday!
@@ -0,0 +1,36 @@
1
+ ## kuby-linode
2
+
3
+ Linode provider for [Kuby](https://github.com/getkuby/kuby-core).
4
+
5
+ ## Intro
6
+
7
+ In Kuby parlance, a "provider" is an [adapter](https://en.wikipedia.org/wiki/Adapter_pattern) that enables Kuby to deploy apps to a specific cloud provider. In this case, we're talking about [Linode](https://www.linode.com/).
8
+
9
+ All providers adhere to a specific interface, meaning you can swap out one provider for another without having to change your code.
10
+
11
+ ## Usage
12
+
13
+ Enable the Linode provider like so:
14
+
15
+ ```ruby
16
+ Kuby.define(:production) do
17
+ kubernetes do
18
+
19
+ provider :linode do
20
+ access_token 'my-linode-access-token'
21
+ cluster_id 'my-cluster-id'
22
+ end
23
+
24
+ end
25
+ end
26
+ ```
27
+
28
+ Once configured, you should be able to run all the Kuby rake tasks as you would with any provider.
29
+
30
+ ## License
31
+
32
+ Licensed under the MIT license. See LICENSE for details.
33
+
34
+ ## Authors
35
+
36
+ * Cameron C. Dutro: http://github.com/camertron
@@ -1,4 +1,5 @@
1
1
  require 'fileutils'
2
+ require 'tmpdir'
2
3
 
3
4
  module Kuby
4
5
  module Linode
@@ -13,12 +14,16 @@ module Kuby
13
14
  end
14
15
 
15
16
  def kubeconfig_path
16
- @kubeconfig_path ||= kubeconfig_dir.join(
17
- "#{definition.app_name.downcase}-kubeconfig.yaml"
18
- ).to_s
17
+ @kubeconfig_path ||= File.join(
18
+ kubeconfig_dir, "#{definition.app_name.downcase}-kubeconfig.yaml"
19
+ )
19
20
  end
20
21
 
21
- def after_configuration
22
+ def before_setup
23
+ refresh_kubeconfig
24
+ end
25
+
26
+ def before_deploy(*)
22
27
  refresh_kubeconfig
23
28
  end
24
29
 
@@ -30,6 +35,10 @@ module Kuby
30
35
 
31
36
  def after_initialize
32
37
  @config = Config.new
38
+
39
+ kubernetes_cli.before_execute do
40
+ refresh_kubeconfig
41
+ end
33
42
  end
34
43
 
35
44
  def client
@@ -53,8 +62,8 @@ module Kuby
53
62
  end
54
63
 
55
64
  def kubeconfig_dir
56
- @kubeconfig_dir ||= definition.app.root.join(
57
- 'tmp', 'kuby-linode'
65
+ @kubeconfig_dir ||= File.join(
66
+ Dir.tmpdir, 'kuby-linode'
58
67
  )
59
68
  end
60
69
  end
@@ -1,5 +1,5 @@
1
1
  module Kuby
2
2
  module Linode
3
- VERSION = '0.1.0'.freeze
3
+ VERSION = '0.2.0'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kuby-linode
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cameron Dutro
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-11 00:00:00.000000000 Z
11
+ date: 2020-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -48,6 +48,7 @@ files:
48
48
  - CHANGELOG.md
49
49
  - Gemfile
50
50
  - LICENSE
51
+ - README.md
51
52
  - Rakefile
52
53
  - kuby-linode.gemspec
53
54
  - lib/kuby/linode.rb
@@ -58,7 +59,7 @@ files:
58
59
  homepage: http://github.com/getkuby/kuby-linode
59
60
  licenses: []
60
61
  metadata: {}
61
- post_install_message:
62
+ post_install_message:
62
63
  rdoc_options: []
63
64
  require_paths:
64
65
  - lib
@@ -73,8 +74,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
73
74
  - !ruby/object:Gem::Version
74
75
  version: '0'
75
76
  requirements: []
76
- rubygems_version: 3.0.6
77
- signing_key:
77
+ rubygems_version: 3.1.4
78
+ signing_key:
78
79
  specification_version: 4
79
80
  summary: Linode provider for Kuby.
80
81
  test_files: []