kuby-linode 0.1.0 → 0.2.0

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: 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: []