knife-linode 0.3.2 → 0.3.3

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
- SHA1:
3
- metadata.gz: a6f47d35a254089494d5e4ca24827a0b696ea49a
4
- data.tar.gz: eb559a699426fe378ee87dfb0597337b65506da5
2
+ SHA256:
3
+ metadata.gz: 75329cddc1c5430f5f92a03ff35003c5d2603504c09e853d82033fa6e6086030
4
+ data.tar.gz: 17ce5e9fbadc035328d46866c6c95a72c642d2e06b7419a7de374f693e5cd404
5
5
  SHA512:
6
- metadata.gz: da98f8d901d5f1b1e262c9659dc40fcb7ada91dd5e770f6d17140f2909624a7aaeceb17941e1a0d9edec6f79460978f59b04b9fe653d091a97df2180d7fea28a
7
- data.tar.gz: ae95c2c4da167b25bd75a8f34203416fd8a6c9e81f28e46ae885eb0ab1f8d2dae99c4579525e85e5e98b47fcf0d7c4c6dab2b4f177b37951169fc042d8dfff9b
6
+ metadata.gz: 6d6eee210bc080fbffd8f29921f4f55338d730641fd3efcc0f9ac630ce5201a311e040402a9cda547efe2074cc6a15d8eabe4cf7759e82beb21fa17d1dbae407
7
+ data.tar.gz: b13aa6196a7b1cea1e4a1530104164a2564bb11a8bef79b97e5936cc4bedffa53dba0b7188fd0bded47e1d9e4b618b5c0e3a6a937f1733ac4ea3d5f2b21f6ebb
@@ -0,0 +1,44 @@
1
+ # Documentation available at https://expeditor.chef.io/docs/getting-started/
2
+ ---
3
+ # Slack channel in Chef Software slack to send notifications about build failures, etc
4
+ slack:
5
+ notify_channel: sustaining-notify
6
+
7
+ # This publish is triggered by the `built_in:publish_rubygems` artifact_action.
8
+ rubygems:
9
+ - knife-linode
10
+
11
+ github:
12
+ # This deletes the GitHub PR branch after successfully merged into the release branch
13
+ delete_branch_on_merge: true
14
+ # The tag format to use (e.g. v1.0.0)
15
+ version_tag_format: "v{{version}}"
16
+ # allow bumping the minor release via label
17
+ minor_bump_labels:
18
+ - "Expeditor: Bump Version Minor"
19
+ # allow bumping the major release via label
20
+ major_bump_labels:
21
+ - "Expeditor: Bump Version Major"
22
+
23
+ changelog:
24
+ rollup_header: Changes not yet released to rubygems.org
25
+
26
+ # These actions are taken, in order they are specified, anytime a Pull Request is merged.
27
+ merge_actions:
28
+ - built_in:bump_version:
29
+ ignore_labels:
30
+ - "Expeditor: Skip Version Bump"
31
+ - "Expeditor: Skip All"
32
+ - bash:.expeditor/update_version.sh:
33
+ only_if: built_in:bump_version
34
+ - built_in:update_changelog:
35
+ ignore_labels:
36
+ - "Expeditor: Skip Changelog"
37
+ - "Expeditor: Skip All"
38
+ - built_in:build_gem:
39
+ only_if: built_in:bump_version
40
+
41
+ promote:
42
+ actions:
43
+ - built_in:rollover_changelog
44
+ - built_in:publish_rubygems
@@ -0,0 +1,12 @@
1
+ #!/bin/sh
2
+ #
3
+ # After a PR merge, Chef Expeditor will bump the PATCH version in the VERSION file.
4
+ # It then executes this file to update any other files/components with that new version.
5
+ #
6
+
7
+ set -evx
8
+
9
+ sed -i -r "s/^(\s*)VERSION = \".+\"/\1VERSION = \"$(cat VERSION)\"/" lib/knife-linode/version.rb
10
+
11
+ # Once Expeditor finishes executing this script, it will commit the changes and push
12
+ # the commit as a new tag corresponding to the value in the VERSION file.
@@ -0,0 +1,5 @@
1
+ # Order is important. The last matching pattern has the most precedence.
2
+
3
+ * @chef/msys-developers
4
+ .expeditor/ @chef/jex-team
5
+ *.md @chef/docs-team
@@ -0,0 +1,29 @@
1
+ ---
2
+ name: � Bug Report
3
+ about: If something isn't working as expected �.
4
+ labels: "Status: Untriaged"
5
+ ---
6
+
7
+ # Version:
8
+
9
+ [Version of the project installed]
10
+
11
+ # Environment:
12
+
13
+ [Details about the environment such as the Operating System, cookbook details, etc...]
14
+
15
+ # Scenario:
16
+
17
+ [What you are trying to achieve and you can't?]
18
+
19
+ # Steps to Reproduce:
20
+
21
+ [If you are filing an issue what are the things we need to do in order to repro your problem?]
22
+
23
+ # Expected Result:
24
+
25
+ [What are you expecting to happen as the consequence of above reproduction steps?]
26
+
27
+ # Actual Result:
28
+
29
+ [What actually happens after the reproduction steps?]
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: Design Proposal
3
+ about: I have a significant change I would like to propose and discuss before starting
4
+ labels: "Status: Untriaged"
5
+ ---
6
+
7
+ ### When a Change Needs a Design Proposal
8
+
9
+ A design proposal should be opened any time a change meets one of the following qualifications:
10
+
11
+ - Significantly changes the user experience of a project in a way that impacts users.
12
+ - Significantly changes the underlying architecture of the project in a way that impacts other developers.
13
+ - Changes the development or testing process of the project such as a change of CI systems or test frameworks.
14
+
15
+ ### Why We Use This Process
16
+
17
+ - Allows all interested parties (including any community member) to discuss large impact changes to a project.
18
+ - Serves as a durable paper trail for discussions regarding project architecture.
19
+ - Forces design discussions to occur before PRs are created.
20
+ - Reduces PR refactoring and rejected PRs.
21
+
22
+ ---
23
+
24
+ <!--- Proposal description and rationale. -->
25
+
26
+ ## Motivation
27
+
28
+ <!---
29
+ As a <<user_profile>>,
30
+ I want to <<functionality>>,
31
+ so that <<benefit>>.
32
+ -->
33
+
34
+ ## Specification
35
+
36
+ <!--- A detailed description of the planned implementation. -->
37
+
38
+ ## Downstream Impact
39
+
40
+ <!--- Which other tools will be impacted by this work? -->
@@ -0,0 +1,17 @@
1
+ ---
2
+ name: 🚀 Enhancement Request
3
+ about: I have a suggestion (and may want to implement it 🙂)!
4
+ labels: "Status: Untriaged"
5
+ ---
6
+
7
+ ### Describe the Enhancement:
8
+ <!--- What you are trying to achieve that you can't? -->
9
+
10
+ ### Describe the Need:
11
+ <!--- What kind of user do you believe would utilize this enhancement, and how many users might want this functionality -->
12
+
13
+ ### Current Alternative
14
+ <!--- Is there a current alternative that you can utilize to workaround the lack of this enhancement -->
15
+
16
+ ### Can We Help You Implement This?:
17
+ <!--- The best way to ensure your enhancement is built is to help implement the enhancement yourself. If you're interested in helping out we'd love to give you a hand to make this possible. Let us know if there's something you need. -->
@@ -0,0 +1,12 @@
1
+ ---
2
+ name: 🤗 Support Question
3
+ about: If you have a question 💬, please check out our Slack!
4
+ ---
5
+
6
+ We use GitHub issues to track bugs and feature requests. If you need help please post to our Mailing List or join the Chef Community Slack.
7
+
8
+ * Chef Community Slack at http://community-slack.chef.io/.
9
+ * Chef Mailing List https://discourse.chef.io/
10
+
11
+
12
+ Support issues opened here will be closed and redirected to Slack or Discourse.
@@ -0,0 +1,15 @@
1
+ ### Description
2
+
3
+ [Please describe what this change achieves]
4
+
5
+ ### Issues Resolved
6
+
7
+ [List any existing issues this PR resolves, or any Discourse or
8
+ StackOverflow discussions that are relevant]
9
+
10
+ ### Check List
11
+
12
+ - [ ] New functionality includes tests
13
+ - [ ] All tests pass
14
+ - [ ] All commits have been signed-off for the Developer Certificate of Origin. See <https://github.com/chef/chef/blob/master/CONTRIBUTING.md#developer-certification-of-origin-dco>
15
+ - [ ] PR title is a worthy inclusion in the CHANGELOG
@@ -0,0 +1 @@
1
+ daysUntilLock: 60
data/.gitignore CHANGED
@@ -1,3 +1,26 @@
1
- pkg/*
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ coverage
6
+ InstalledFiles
7
+ lib/bundler/man
8
+ pkg
9
+ rdoc
10
+ spec/reports
11
+ test/tmp
12
+ test/version_tmp
13
+ tmp
14
+
15
+ # YARD artifacts
16
+ .yardoc
17
+ _yardoc
18
+ doc/
19
+ .swp
20
+ .swo
2
21
  Gemfile.lock
3
- .rspec
22
+ .rvmrc
23
+ .ruby-version
24
+
25
+ .direnv/
26
+ .envrc
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --color
2
+ -fdocumentation
3
+
@@ -0,0 +1,12 @@
1
+ Lint/DuplicateCaseCondition:
2
+ Exclude:
3
+ - 'spec/chef/knife/linode_server_create_spec.rb'
4
+
5
+ Lint/EmptyWhen:
6
+ Exclude:
7
+ - 'spec/chef/knife/linode_server_create_spec.rb'
8
+
9
+ Lint/UselessAssignment:
10
+ Exclude:
11
+ - 'lib/chef/knife/linode_base.rb'
12
+ - 'lib/chef/knife/linode_stackscript_list.rb'
@@ -1,5 +1,20 @@
1
- rvm:
2
- - 2.0.0
3
- script:
4
- # - bundle exec rubocop .
5
- - bundle exec rspec --color --format progress
1
+ sudo: false
2
+ language: ruby
3
+ cache: bundler
4
+
5
+ matrix:
6
+ include:
7
+ - rvm: 2.3.7
8
+ - rvm: 2.4.4
9
+ - rvm: 2.5.1
10
+ - rvm: ruby-head
11
+ allow_failures:
12
+ - rvm: ruby-head
13
+
14
+ branches:
15
+ only:
16
+ - master
17
+
18
+ bundler_args: --without docs development
19
+
20
+ script: bundle exec rake
@@ -0,0 +1,15 @@
1
+ # knife-linode Change Log
2
+
3
+ <!-- latest_release -->
4
+ <!-- latest_release -->
5
+
6
+ <!-- release_rollup -->
7
+ <!-- release_rollup -->
8
+
9
+ <!-- latest_stable_release -->
10
+ ## [v0.3.3](https://github.com/chef/knife-linode/tree/v0.3.3) (2019-08-08)
11
+
12
+ #### Merged Pull Requests
13
+ - Update README.md for OSS Best Practices [#61](https://github.com/chef/knife-linode/pull/61) ([Vasu1105](https://github.com/Vasu1105))
14
+ <!-- latest_stable_release -->
15
+
data/Gemfile CHANGED
@@ -1,4 +1,30 @@
1
- source "http://rubygems.org"
1
+ source "https://rubygems.org"
2
2
 
3
- # Specify your gem's dependencies in knife-linode.gemspec
4
3
  gemspec
4
+
5
+ group :docs do
6
+ gem "yard"
7
+ gem "redcarpet"
8
+ gem "github-markup"
9
+ end
10
+
11
+ group :test do
12
+ gem "chefstyle"
13
+ gem "rspec", "~> 3.1"
14
+ gem "rake"
15
+ gem "chef", ">= 12.0"
16
+ end
17
+
18
+ group :development do
19
+ gem "pry"
20
+ gem "pry-byebug"
21
+ gem "pry-stack_explorer"
22
+ gem "rb-readline"
23
+ gem "simplecov", "~> 0.9"
24
+ end
25
+
26
+ instance_eval(ENV["GEMFILE_MOD"]) if ENV["GEMFILE_MOD"]
27
+
28
+ # If you want to load debugging tools into the bundle exec sandbox,
29
+ # add these additional dependencies into Gemfile.local
30
+ eval_gemfile(__FILE__ + ".local") if File.exist?(__FILE__ + ".local")
data/README.md CHANGED
@@ -1,87 +1,81 @@
1
- ## Knife Linode
1
+ # Knife Linode
2
2
 
3
- ### Description
3
+ [![Gem Version](https://badge.fury.io/rb/knife-linode.svg)](https://rubygems.org/gems/knife-linode) [![Build Status](https://travis-ci.org/chef/knife-linode.svg?branch=master)](https://travis-ci.org/chef/knife-linode)
4
4
 
5
- This is the official Opscode Knife plugin for Linode. This plugin gives knife
6
- the ability to create, bootstrap, and manage Linode instances.
5
+ * **Umbrella Project: [Knife](https://github.com/chef/chef-oss-practices/blob/master/projects/knife.md)**
7
6
 
8
- In-depth usage instructions can be found on the [Chef Docs](http://docs.opscode.com/plugin_knife_linode.html).
7
+ * **Project State [Deprecated](https://github.com/chef/chef-oss-practices/blob/master/repo-management/repo-states.md#deprecated)**
9
8
 
10
- ### Requirements
9
+ * **Issues [Response Time Maximum](https://github.com/chef/chef-oss-practices/blob/master/repo-management/repo-states.md#what-is-the-response-time-maximum): None**
11
10
 
12
- * Chef 11.8.x or higher
13
- * Ruby 2.0.x or higher
11
+ * **Pull Request [Response Time Maximum](https://github.com/chef/chef-oss-practices/blob/master/repo-management/repo-states.md#what-is-the-response-time-maximum): None**
14
12
 
15
- ### Installation
13
+ ## Description
16
14
 
17
- This plugin is distributed as a Ruby Gem. To install it, run:
15
+ This is the official Chef Knife plugin for Linode. This plugin gives knife the ability to create, bootstrap, and manage Linode instances.
18
16
 
19
- gem install knife-linode
17
+ ## Requirements
20
18
 
21
- Or use bundler:
19
+ - Chef 12.0 higher
20
+ - Ruby 2.2.2 or higher
22
21
 
23
- gem 'knife-linode', '~> 0.3'
22
+ ## Installation
24
23
 
25
- Depending on your system's configuration, you may need to run this command
26
- with root privileges.
24
+ Using [ChefDK](https://downloads.chef.io/chef-dk/), simply install the Gem:
27
25
 
28
- ### Configuration
26
+ ```bash
27
+ $ chef gem install knife-linode
28
+ ```
29
29
 
30
- In order to communicate with the Linode API you will have to tell Knife about
31
- your Linode API Key. The easiest way to accomplish this is to create some
32
- entries in your `knife.rb` file:
30
+ ## Configuration
33
31
 
34
- knife[:linode_api_key] = "Your Linode API Key"
32
+ ### knife.rb
35
33
 
36
- If your knife.rb file will be checked into a SCM system (ie readable by
37
- others) you may want to read the values from environment variables:
34
+ In order to communicate with the Linode API you will have to tell Knife about your Linode API Key. The easiest way to accomplish this is to create some entries in your `knife.rb` file:
38
35
 
39
- knife[:linode_api_key] = "#{ENV['LINODE_API_KEY']}"
36
+ ```ruby
37
+ knife[:linode_api_key] = "Your Linode API Key"
38
+ ```
40
39
 
41
- You also have the option of passing your Linode API Key into the individual
42
- knife subcommands using the `-A` (or `--linode-api-key`) command option
40
+ If your knife.rb file will be checked into a SCM system (ie readable by others) you may want to read the values from environment variables:
43
41
 
44
- # Provision a new 1 GB 64 bit Ubuntu 14.04 Linode in the Dallas, TX datacenter
45
- knife linode server create -r 'role[webserver]' --linode-image 124 --linode-datacenter 2 --linode-flavor 1 --linode-node-name YOUR_LINODE_NODE_NAME
42
+ ```ruby
43
+ knife[:linode_api_key] = "#{ENV['LINODE_API_KEY']}"
44
+ ```
45
+
46
+ You also have the option of passing your Linode API Key into the individual knife subcommands using the `-A` (or `--linode-api-key`) command option
47
+
48
+ ```
49
+ # Provision a new 1 GB 64 bit Ubuntu 14.04 Linode in the Dallas, TX datacenter
50
+ knife linode server create -r 'role[webserver]' --linode-image 124 --linode-datacenter 2 --linode-flavor 1 --linode-node-name YOUR_LINODE_NODE_NAME
51
+ ```
46
52
 
47
53
  Additionally the following options may be set in your `knife.rb`:
48
54
 
49
- * linode_flavor
50
- * linode_image
51
- * linode_kernel
52
- * ssh_password
53
- * bootstrap_version
54
- * distro
55
- * template_file
55
+ - linode_flavor
56
+ - linode_image
57
+ - linode_kernel
58
+ - ssh_password
59
+ - bootstrap_version
60
+ - distro
61
+ - template_file
56
62
 
57
- ## Sub Commands
63
+ ## Knife Sub Commands
58
64
 
59
- This plugin provides the following Knife subcommands. Specific command
60
- options can be found by invoking the subcommand with a `--help` flag
65
+ This plugin provides the following Knife subcommands. Specific command options can be found by invoking the subcommand with a `--help` flag
61
66
 
62
67
  ### knife linode server create
63
68
 
64
- Provisions a new server in Linode and then perform a Chef bootstrap (using the
65
- SSH protocol). The goal of the bootstrap is to get Chef installed on the
66
- target system so it can run Chef Client with a Chef Server. The main
67
- assumption is a baseline OS installation exists (provided by the
68
- provisioning). It is primarily intended for Chef Client systems that talk to a
69
- Chef server. By default the server is bootstrapped using the
70
- [ubuntu10.04-gems](https://github.com/opscode/chef/blob/master/chef/lib/chef/k
71
- nife/bootstrap/ubuntu10.04-gems.erb) template. This can be overridden using
72
- the `-d` or `--template-file` command options.
69
+ Provisions a new server in Linode and then perform a Chef bootstrap (using the SSH protocol). The goal of the bootstrap is to get Chef installed on the target system so it can run Chef Client with a Chef Server. The main assumption is a baseline OS installation exists (provided by the provisioning). It is primarily intended for Chef Client systems that talk to a Chef server. By default the server is bootstrapped using the [ubuntu10.04-gems](https://github.com/opscode/chef/blob/master/chef/lib/chef/k
70
+ nife/bootstrap/ubuntu10.04-gems.erb) template. This can be overridden using the `-d` or `--template-file` command options.
73
71
 
74
72
  ### knife linode server delete
75
73
 
76
- Deletes an existing server in the currently configured Linode account.
77
- **PLEASE NOTE** - this does not delete the associated node and client objects
78
- from the Chef server.
74
+ Deletes an existing server in the currently configured Linode account. **PLEASE NOTE** - this does not delete the associated node and client objects from the Chef server.
79
75
 
80
76
  ### knife linode server list
81
77
 
82
- Outputs a list of all servers in the currently configured Linode account.
83
- **PLEASE NOTE** - this shows all instances associated with the account, some
84
- of which may not be currently managed by the Chef server.
78
+ Outputs a list of all servers in the currently configured Linode account. **PLEASE NOTE** - this shows all instances associated with the account, some of which may not be currently managed by the Chef server.
85
79
 
86
80
  ### knife linode server reboot
87
81
 
@@ -93,13 +87,11 @@ View a list of available data centers, listed by data center ID and location.
93
87
 
94
88
  ### knife linode flavor list
95
89
 
96
- View a list of servers from the Linode environment, listed by ID, name, RAM,
97
- disk, and Price.
90
+ View a list of servers from the Linode environment, listed by ID, name, RAM, disk, and Price.
98
91
 
99
92
  ### knife linode image list
100
93
 
101
- View a list of images from the Linode environment, listed by ID, name, bits,
102
- and image size.
94
+ View a list of images from the Linode environment, listed by ID, name, bits, and image size.
103
95
 
104
96
  ### knife linode kernel list
105
97
 
@@ -109,27 +101,27 @@ View a a list of available kernels, listed by ID and name.
109
101
 
110
102
  View a list of Linode StackScripts that are currently being used.
111
103
 
112
- ## License
104
+ ## Contributing
105
+
106
+ For information on contributing to this project see <https://github.com/chef/chef/blob/master/CONTRIBUTING.md>
113
107
 
114
- Apache License, Version 2.0
108
+ ## License and Authors
115
109
 
116
- Original Author: Adam Jacob (<adam@opscode.com>)
110
+ - Author:: Adam Jacob ([adam@chef.io](mailto:adam@chef.io))
111
+ - Author:: Jesse Adams ([jesse@techno-geeks.org](mailto:jesse@techno-geeks.org))
117
112
 
118
- Copyright (c) 2009-2014 Opscode, Inc.
113
+ ```text
114
+ Copyright 2009-2016 Chef Software, Inc.
119
115
 
120
- Licensed under the Apache License, Version 2.0 (the "License"); you may not
121
- use this file except in compliance with the License. You may obtain a copy of
122
- the License at
116
+ Licensed under the Apache License, Version 2.0 (the "License");
117
+ you may not use this file except in compliance with the License.
118
+ You may obtain a copy of the License at
123
119
 
124
120
  http://www.apache.org/licenses/LICENSE-2.0
125
121
 
126
122
  Unless required by applicable law or agreed to in writing, software
127
- distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
128
- WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
129
- License for the specific language governing permissions and limitations under
130
- the License.
131
-
132
- ## Maintainers
133
-
134
- * Jesse R. Adams ([jesseadams](https://github.com/jesseadams))
135
- * You?
123
+ distributed under the License is distributed on an "AS IS" BASIS,
124
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
125
+ See the License for the specific language governing permissions and
126
+ limitations under the License.
127
+ ```