puppet-strings 2.6.0 → 2.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +65 -6
- data/COMMITTERS.md +17 -17
- data/CONTRIBUTING.md +6 -6
- data/README.md +10 -10
- data/lib/puppet-strings/tasks/validate.rb +42 -0
- data/lib/puppet-strings/tasks.rb +1 -0
- data/lib/puppet-strings/version.rb +1 -1
- data/lib/puppet-strings/yard/code_objects/type.rb +3 -1
- data/lib/puppet-strings/yard/handlers/ruby/type_extras_handler.rb +10 -3
- data/lib/puppet-strings/yard/parsers/puppet/parser.rb +6 -4
- metadata +7 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9397d83c2092aed842ea468c79012270659c27b5c9ad85e1a67f614ca3fef2a2
|
4
|
+
data.tar.gz: 65bc26d31881eefbb6de381a29afe1de4274bfeb2f1748969af60f9e30dcb9fe
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a20053eca0ac726c86ea1b21596f1c66a98f9a28679ee00c4d9b64afe30d3f9fa9ce9d67bec6dd28ef9ff4c5c70f8f0b075d43c5d07c87c382265433bda13993
|
7
|
+
data.tar.gz: a476bfcc359d3e2603902f080a7d54f4e80b04d18b470dc0e8980c20cc7b4452e44ea7e344db4bf7702ce5c3b9aa7745d52d75e5cadc5991313d596de97f0d4a
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,62 @@
|
|
3
3
|
All significant changes to this repo will be summarized in this file.
|
4
4
|
|
5
5
|
|
6
|
+
## [v2.9.0](https://github.com/puppetlabs/puppet-strings/tree/v2.9.0) (2021-11-29)
|
7
|
+
|
8
|
+
[Full Changelog](https://github.com/puppetlabs/puppet-strings/compare/v2.8.0...v2.9.0)
|
9
|
+
|
10
|
+
Added
|
11
|
+
|
12
|
+
- Add strings:validate:reference task [\#293](https://github.com/puppetlabs/puppet-strings/issues/293)
|
13
|
+
|
14
|
+
Fixed
|
15
|
+
|
16
|
+
- Fix rare undefined method `any?' for nil:NilClass error [\#289](https://github.com/puppetlabs/puppet-strings/pull/289) ([sanfrancrisko](https://github.com/sanfrancrisko))
|
17
|
+
|
18
|
+
**Closed issues:**
|
19
|
+
|
20
|
+
- Error: undefined method `any?' for nil:NilClass when generating documentation [\#287](https://github.com/puppetlabs/puppet-strings/issues/287)
|
21
|
+
- Update changelog with recent commits [\#283](https://github.com/puppetlabs/puppet-strings/issues/283)
|
22
|
+
- Please document the `author` tag [\#256](https://github.com/puppetlabs/puppet-strings/issues/256)
|
23
|
+
|
24
|
+
**Merged pull requests:**
|
25
|
+
|
26
|
+
- Implement a strings:validate:reference task [\#291](https://github.com/puppetlabs/puppet-strings/pull/291) ([ekohl](https://github.com/ekohl))
|
27
|
+
|
28
|
+
## [v2.8.0](https://github.com/puppetlabs/puppet-strings/tree/v2.8.0) (2021-07-19)
|
29
|
+
|
30
|
+
[Full Changelog](https://github.com/puppetlabs/puppet-strings/compare/v2.7.0...v2.8.0)
|
31
|
+
|
32
|
+
Added
|
33
|
+
|
34
|
+
- \(DOCUMENT-1232\) Add support for ensurable in types\_extras\_handler [\#281](https://github.com/puppetlabs/puppet-strings/pull/281) ([joshcooper](https://github.com/joshcooper))
|
35
|
+
|
36
|
+
**Merged pull requests:**
|
37
|
+
|
38
|
+
- \(FIXUP\) Check for nil before injecting provider param into Types [\#285](https://github.com/puppetlabs/puppet-strings/pull/285) ([scotje](https://github.com/scotje))
|
39
|
+
- README.md: update link to docs [\#276](https://github.com/puppetlabs/puppet-strings/pull/276) ([kenyon](https://github.com/kenyon))
|
40
|
+
|
41
|
+
## [v2.7.0](https://github.com/puppetlabs/puppet-strings/tree/v2.7.0) (2021-05-17)
|
42
|
+
|
43
|
+
[Full Changelog](https://github.com/puppetlabs/puppet-strings/compare/v2.6.0...v2.7.0)
|
44
|
+
|
45
|
+
Added
|
46
|
+
|
47
|
+
- Add supported\_features to puppet strings input/output for types [\#228](https://github.com/puppetlabs/puppet-strings/issues/228)
|
48
|
+
|
49
|
+
Fixed
|
50
|
+
|
51
|
+
- `file` type is missing `ensure` in generated reference docs [\#230](https://github.com/puppetlabs/puppet-strings/issues/230)
|
52
|
+
|
53
|
+
**Closed issues:**
|
54
|
+
|
55
|
+
- class with "apply" attribute causes parser error [\#251](https://github.com/puppetlabs/puppet-strings/issues/251)
|
56
|
+
|
57
|
+
**Merged pull requests:**
|
58
|
+
|
59
|
+
- Update CODEOWNERS [\#272](https://github.com/puppetlabs/puppet-strings/pull/272) ([binford2k](https://github.com/binford2k))
|
60
|
+
- Only set tasks = true when parsing plans. [\#266](https://github.com/puppetlabs/puppet-strings/pull/266) ([binford2k](https://github.com/binford2k))
|
61
|
+
|
6
62
|
## [v2.6.0](https://github.com/puppetlabs/puppet-strings/tree/v2.6.0) (2021-01-18)
|
7
63
|
|
8
64
|
[Full Changelog](https://github.com/puppetlabs/puppet-strings/compare/v2.5.0...v2.6.0)
|
@@ -17,6 +73,7 @@ Fixed
|
|
17
73
|
- Handle a missing description gracefully [\#260](https://github.com/puppetlabs/puppet-strings/pull/260) ([scotje](https://github.com/scotje))
|
18
74
|
- Fix ERB failure - parameters without descriptions [\#255](https://github.com/puppetlabs/puppet-strings/pull/255) ([trevor-vaughan](https://github.com/trevor-vaughan))
|
19
75
|
- puppet\_function template: fix tags, source [\#249](https://github.com/puppetlabs/puppet-strings/pull/249) ([raemer](https://github.com/raemer))
|
76
|
+
- Handle a missing description gracefully [\#246](https://github.com/puppetlabs/puppet-strings/pull/246) ([ekohl](https://github.com/ekohl))
|
20
77
|
|
21
78
|
Changed
|
22
79
|
|
@@ -26,7 +83,6 @@ Changed
|
|
26
83
|
|
27
84
|
- Tags \(Parameter, Returns\) not generated in HTML output [\#248](https://github.com/puppetlabs/puppet-strings/issues/248)
|
28
85
|
- Can we get 2.5.0 released please [\#244](https://github.com/puppetlabs/puppet-strings/issues/244)
|
29
|
-
- Add supported\_features to puppet strings input/output for types [\#228](https://github.com/puppetlabs/puppet-strings/issues/228)
|
30
86
|
- Provider attribute is missing in generated types documentation [\#227](https://github.com/puppetlabs/puppet-strings/issues/227)
|
31
87
|
|
32
88
|
## [v2.5.0](https://github.com/puppetlabs/puppet-strings/tree/v2.5.0) (2020-07-16)
|
@@ -36,6 +92,7 @@ Changed
|
|
36
92
|
Added
|
37
93
|
|
38
94
|
- \(GH-225\) Document functions in Puppet Datatypes [\#235](https://github.com/puppetlabs/puppet-strings/pull/235) ([glennsarti](https://github.com/glennsarti))
|
95
|
+
- Add checks to resource\_type handler and code objects [\#232](https://github.com/puppetlabs/puppet-strings/pull/232) ([scotje](https://github.com/scotje))
|
39
96
|
- \(\#227\) Inject `provider` into params list for types with providers [\#231](https://github.com/puppetlabs/puppet-strings/pull/231) ([scotje](https://github.com/scotje))
|
40
97
|
|
41
98
|
Fixed
|
@@ -62,7 +119,6 @@ Fixed
|
|
62
119
|
|
63
120
|
Added
|
64
121
|
|
65
|
-
- Add checks to resource\_type handler and code objects [\#232](https://github.com/puppetlabs/puppet-strings/pull/232) ([scotje](https://github.com/scotje))
|
66
122
|
- Add missing HTML output support for enum tag [\#218](https://github.com/puppetlabs/puppet-strings/pull/218) ([seanmil](https://github.com/seanmil))
|
67
123
|
- \(PDOC-295\) Add @enum tag support for Enum data types [\#215](https://github.com/puppetlabs/puppet-strings/pull/215) ([seanmil](https://github.com/seanmil))
|
68
124
|
- Expanded default search glob for plans. [\#214](https://github.com/puppetlabs/puppet-strings/pull/214) ([Raskil](https://github.com/Raskil))
|
@@ -88,6 +144,10 @@ Added
|
|
88
144
|
|
89
145
|
- Add Puppet Data Type documentation [\#199](https://github.com/puppetlabs/puppet-strings/pull/199) ([glennsarti](https://github.com/glennsarti))
|
90
146
|
|
147
|
+
Fixed
|
148
|
+
|
149
|
+
- \(PDOC-283\) Fix namespaced symbols [\#205](https://github.com/puppetlabs/puppet-strings/pull/205) ([glennsarti](https://github.com/glennsarti))
|
150
|
+
|
91
151
|
## [v2.2.0](https://github.com/puppetlabs/puppet-strings/tree/v2.2.0) (2019-04-05)
|
92
152
|
|
93
153
|
[Full Changelog](https://github.com/puppetlabs/puppet-strings/compare/v2.1.0...v2.2.0)
|
@@ -101,7 +161,6 @@ Added
|
|
101
161
|
|
102
162
|
Fixed
|
103
163
|
|
104
|
-
- \(PDOC-283\) Fix namespaced symbols [\#205](https://github.com/puppetlabs/puppet-strings/pull/205) ([glennsarti](https://github.com/glennsarti))
|
105
164
|
- \(PDOC-266\) Silence 'unexpected construct regexp\_literal' warning [\#189](https://github.com/puppetlabs/puppet-strings/pull/189) ([seanmil](https://github.com/seanmil))
|
106
165
|
|
107
166
|
## [v2.1.0](https://github.com/puppetlabs/puppet-strings/tree/v2.1.0) (2018-06-26)
|
@@ -233,7 +292,7 @@ All related tickets can be found under the [PDOC][PDOC JIRA] JIRA project with t
|
|
233
292
|
- Note: this means Markdown text in YARD comments and tags, not a change in the output of strings
|
234
293
|
- New commandline options: --emit-json and --emit-json-stdout to generate JSON documentation **(PDOC-84)**
|
235
294
|
- Runtime dependency on Puppet has been removed, allowing strings to function in Puppet Enterprise 3.8 **(PDOC-80)**
|
236
|
-
- Note that the gem still requires puppet. We recommend that the strings gem be installed with puppet, as suggested in the [README](https://github.com/puppetlabs/puppet-strings/blob/
|
295
|
+
- Note that the gem still requires puppet. We recommend that the strings gem be installed with puppet, as suggested in the [README](https://github.com/puppetlabs/puppet-strings/blob/main/README.md#installing-puppet-strings)
|
237
296
|
- New gemspec requirement on Ruby version 1.9.3, the oldest supported Ruby version
|
238
297
|
|
239
298
|
### BugFixes
|
@@ -253,8 +312,8 @@ All related tickets can be found under the [PDOC][PDOC JIRA] JIRA project with t
|
|
253
312
|
### Features
|
254
313
|
- Support for JSON output **(PDOC-23)**
|
255
314
|
- Strings now has the ability to produce a JSON representation of a given puppet module
|
256
|
-
- The details of the JSON schema can be found [here](https://github.com/puppetlabs/puppet-strings/blob/
|
257
|
-
- For details on how to generate JSON, see the [README](https://github.com/puppetlabs/puppet-strings/blob/
|
315
|
+
- The details of the JSON schema can be found [here](https://github.com/puppetlabs/puppet-strings/blob/main/json_dom.md)
|
316
|
+
- For details on how to generate JSON, see the [README](https://github.com/puppetlabs/puppet-strings/blob/main/README.md#running-puppet-strings)
|
258
317
|
- Migrate to ruby gems as a distribution method **(PDOC-28)**
|
259
318
|
- This is the last release of strings that will be available as a puppet module
|
260
319
|
- The 0.4.0 release will be released concurrently as a ruby gem
|
data/COMMITTERS.md
CHANGED
@@ -4,7 +4,7 @@ Committing changes to Strings
|
|
4
4
|
We would like to make it easier for community members to contribute to strings
|
5
5
|
using pull requests, even if it makes the task of reviewing and committing
|
6
6
|
these changes a little harder. Pull requests are only ever based on a single
|
7
|
-
branch. As a result contributors should target their changes at the
|
7
|
+
branch. As a result contributors should target their changes at the main branch.
|
8
8
|
This makes the process of contributing a little easier for the contributor since
|
9
9
|
they don't need to concern themselves with the question, "What branch do I base my changes
|
10
10
|
on?" This is already called out in the [CONTRIBUTING.md](http://goo.gl/XRH2J).
|
@@ -17,7 +17,7 @@ effort to make sure the end users must opt-in to new behavior that is
|
|
17
17
|
incompatible with previous behavior. We employ the use of [feature
|
18
18
|
flags](http://stackoverflow.com/questions/7707383/what-is-a-feature-flag) as
|
19
19
|
the primary way to achieve this user opt-in behavior. Finally, it is the
|
20
|
-
responsibility of the committer to make sure the `
|
20
|
+
responsibility of the committer to make sure the `main` branch
|
21
21
|
is clean and working at all times. Clean means that dead code is not
|
22
22
|
allowed, everything needs to be usable in some manner at all points in time.
|
23
23
|
|
@@ -45,9 +45,9 @@ making the decision what base branch to merge the change set into.
|
|
45
45
|
|
46
46
|
**base branch** - A branch in Git that contains an active history of changes
|
47
47
|
and will eventually be released using semantic version guidelines. The branch
|
48
|
-
named `
|
48
|
+
named `main` will always exist as a base branch.
|
49
49
|
|
50
|
-
**
|
50
|
+
**main branch** - The branch where new functionality that and bug fixes are
|
51
51
|
merged.
|
52
52
|
|
53
53
|
**security** - Where critical security fixes are merged. These change sets
|
@@ -70,7 +70,7 @@ This section provides a guide to help a committer decide the specific base
|
|
70
70
|
branch that a change set should be merged into.
|
71
71
|
|
72
72
|
The latest minor release of a major release is the only base branch that should
|
73
|
-
be patched. These patches will be merged into `
|
73
|
+
be patched. These patches will be merged into `main` if they contain new
|
74
74
|
functionality and if they fix a critical bug. Older minor releases in a major release
|
75
75
|
do not get patched.
|
76
76
|
|
@@ -87,7 +87,7 @@ security branch as the base branch. Please send all security related
|
|
87
87
|
information or patches to security@puppet.com as per our [Security
|
88
88
|
Policy](https://puppet.com/security/).
|
89
89
|
|
90
|
-
The CI systems are configured to run against `
|
90
|
+
The CI systems are configured to run against `main`. Over time, this branch
|
91
91
|
will refer to different versions, but its name will remain fixed to avoid having
|
92
92
|
to update CI jobs and tasks as new versions are released.
|
93
93
|
|
@@ -108,7 +108,7 @@ branch:
|
|
108
108
|
documentation being kept up to date?
|
109
109
|
* Does the change set include clean code? (software code that is formatted
|
110
110
|
correctly and in an organized manner so that another coder can easily read
|
111
|
-
or modify it.) HINT: `git diff
|
111
|
+
or modify it.) HINT: `git diff main --check`
|
112
112
|
* Does the change set conform to the contributing guide?
|
113
113
|
|
114
114
|
Commit citizen guidelines:
|
@@ -118,13 +118,13 @@ This section aims to provide guidelines for being a good commit citizen by
|
|
118
118
|
paying attention to our automated build tools.
|
119
119
|
|
120
120
|
* Don’t push on a broken build. (A broken build is defined as a failing job
|
121
|
-
in [Puppet Strings](https://
|
121
|
+
in [Puppet Strings](https://travis-ci.com/github/puppetlabs/puppet-strings)
|
122
122
|
page.)
|
123
123
|
* Watch the build until your changes have gone through green
|
124
124
|
* Update the ticket status and target version. The target version field in
|
125
125
|
our issue tracker should be updated to be the next release of Puppet. For
|
126
126
|
example, if the most recent release of Puppet is 3.1.1 and you merge a
|
127
|
-
backwards compatible change set into
|
127
|
+
backwards compatible change set into main, then the target version should
|
128
128
|
be 3.2.0 in the issue tracker.)
|
129
129
|
* Ensure the pull request is closed (Hint: amend your merge commit to contain
|
130
130
|
the string `closes #123` where 123 is the pull request number and github
|
@@ -135,7 +135,7 @@ Example Procedure
|
|
135
135
|
|
136
136
|
This section helps a committer rebase and merge a contribution into the base branch.
|
137
137
|
|
138
|
-
Suppose a contributor submits a pull request based on
|
138
|
+
Suppose a contributor submits a pull request based on main. The change set
|
139
139
|
fixes a bug reported against strings 0.1.0 which is the most recently released
|
140
140
|
version of strings.
|
141
141
|
|
@@ -147,20 +147,20 @@ branch to track the remote branch.
|
|
147
147
|
Branch jeffmccune-pdoc-34_fix_foo_error set up to track remote branch pdoc-34-fix_foo_error from jeffmccune.
|
148
148
|
Switched to a new branch 'jeffmccune-pdoc-34_fix_foo_error'
|
149
149
|
|
150
|
-
It's possible that more changes have been merged into
|
150
|
+
It's possible that more changes have been merged into main since the pull
|
151
151
|
request was submitted. In this case it may be necessary to rebase the branch
|
152
152
|
that contains the changes:
|
153
153
|
|
154
|
-
$ git rebase upstream/
|
154
|
+
$ git rebase upstream/main
|
155
155
|
|
156
156
|
After the branch has been checked out and rebased, the committer should ensure that
|
157
157
|
the code review check list has been completed.
|
158
158
|
|
159
159
|
Now that we have a topic branch containing the change set based on the most recent
|
160
|
-
`
|
160
|
+
`main` branch, the committer merges in:
|
161
161
|
|
162
|
-
$ git checkout
|
163
|
-
Switched to branch '
|
162
|
+
$ git checkout main
|
163
|
+
Switched to branch 'main'
|
164
164
|
$ git merge --no-ff --log jeffmccune-pdoc-34_fix_foo_error
|
165
165
|
Merge made by the 'recursive' strategy.
|
166
166
|
foo | 0
|
@@ -173,12 +173,12 @@ preserve the usefulness of `git branch --contains`. If there are any merge
|
|
173
173
|
conflicts, they are to be resolved in the merge commit itself and not by
|
174
174
|
re-writing (rebasing) the patches for one base branch, but not another.
|
175
175
|
|
176
|
-
Once the change set has been merged into `
|
176
|
+
Once the change set has been merged into `main`, the committer pushes.
|
177
177
|
Please note, the checklist should be complete at this point. It's helpful to make
|
178
178
|
sure your local branches are up to date to avoid one of the branches failing to fast
|
179
179
|
forward while the other succeeds.
|
180
180
|
|
181
|
-
$ git push origin
|
181
|
+
$ git push origin main:main
|
182
182
|
|
183
183
|
That's it! The committer then updates the pull request, updates the issue in
|
184
184
|
our issue tracker, and keeps an eye on the [build
|
data/CONTRIBUTING.md
CHANGED
@@ -23,7 +23,7 @@ Before you submit your issue, take a minute to...
|
|
23
23
|
reported.
|
24
24
|
|
25
25
|
2. **Check if the issue has been fixed** — try to reproduce it using the
|
26
|
-
latest `
|
26
|
+
latest `main` or release tag.
|
27
27
|
|
28
28
|
A good bug report shouldn't leave others needing to chase you up for more
|
29
29
|
information. Please try to be as **detailed as possible** in your issue. What is
|
@@ -48,12 +48,12 @@ Example:
|
|
48
48
|
## Making Changes
|
49
49
|
|
50
50
|
* Create a topic branch from where you want to base your work.
|
51
|
-
* This is usually the
|
51
|
+
* This is usually the main branch.
|
52
52
|
* Only target release branches if you are certain your fix must be on that
|
53
53
|
branch.
|
54
|
-
* To quickly create a topic branch based on
|
55
|
-
fix/
|
56
|
-
`
|
54
|
+
* To quickly create a topic branch based on main; `git checkout -b
|
55
|
+
fix/main/my_contribution main`. Please avoid working directly on the
|
56
|
+
`main` branch.
|
57
57
|
* Make commits of logical units.
|
58
58
|
* Check for unnecessary whitespace with `git diff --check` before committing.
|
59
59
|
* Make sure your commit messages are in the proper format.
|
@@ -109,7 +109,7 @@ a ticket number.
|
|
109
109
|
|
110
110
|
## Cutting a release
|
111
111
|
|
112
|
-
To cut a new release, from a current `
|
112
|
+
To cut a new release, from a current `main` checkout:
|
113
113
|
|
114
114
|
* Start the release branch with `git checkout -b release-prep`
|
115
115
|
* Update `lib/puppet-strings/version.rb` to the new version
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Puppet Strings
|
2
2
|
==============
|
3
|
-
[![Build Status](https://travis-ci.org/puppetlabs/puppet-strings.png?branch=
|
3
|
+
[![Build Status](https://travis-ci.org/puppetlabs/puppet-strings.png?branch=main)](https://travis-ci.org/puppetlabs/puppet-strings) [![Gem Version](https://badge.fury.io/rb/puppet-strings.svg)](https://badge.fury.io/rb/puppet-strings)
|
4
4
|
|
5
5
|
Puppet Strings generates documentation for Puppet code and extensions written in Puppet and Ruby. Strings processes code and YARD-style code comments to create documentation in HTML, Markdown, or JSON formats.
|
6
6
|
|
@@ -62,7 +62,7 @@ See the [Puppet Strings documentation](https://puppet.com/docs/puppet/latest/pup
|
|
62
62
|
|
63
63
|
Here are a few other good resources for getting started with documentation:
|
64
64
|
|
65
|
-
* [Module README Template](https://
|
65
|
+
* [Module README Template](https://puppet.com/docs/puppet/latest/puppet_strings.html)
|
66
66
|
* [YARD Getting Started Guide](http://www.rubydoc.info/gems/yard/file/docs/GettingStarted.md)
|
67
67
|
* [YARD Tags Overview](http://www.rubydoc.info/gems/yard/file/docs/Tags.md)
|
68
68
|
|
@@ -70,7 +70,7 @@ Here are a few other good resources for getting started with documentation:
|
|
70
70
|
|
71
71
|
We love contributions from the community!
|
72
72
|
|
73
|
-
If you'd like to contribute to `puppet-strings`, check out [CONTRIBUTING.md](https://github.com/puppetlabs/puppet-strings/blob/
|
73
|
+
If you'd like to contribute to `puppet-strings`, check out [CONTRIBUTING.md](https://github.com/puppetlabs/puppet-strings/blob/main/CONTRIBUTING.md) to get information on the contribution process.
|
74
74
|
|
75
75
|
### Running Specs
|
76
76
|
|
@@ -98,14 +98,14 @@ An example of running the acceptance tests locally with Docker:
|
|
98
98
|
3. Provision a docker container, in this case CentOS 7
|
99
99
|
|
100
100
|
``` text
|
101
|
-
$ bundle exec rake litmus:provision[docker, centos:7]
|
101
|
+
$ bundle exec rake 'litmus:provision[docker, centos:7]'
|
102
102
|
```
|
103
103
|
|
104
104
|
4. Install test items; Puppet Agent, our test module, and the puppet-strings gem built from this source code
|
105
105
|
|
106
106
|
``` text
|
107
|
-
$ bundle exec rake litmus:install_agent[puppet6]
|
108
|
-
$ bundle exec rake litmus:
|
107
|
+
$ bundle exec rake 'litmus:install_agent[puppet6]'
|
108
|
+
$ bundle exec rake 'litmus:install_modules_from_directory[./spec/fixtures/acceptance/modules]'
|
109
109
|
$ bundle exec rake litmus:install_gems
|
110
110
|
```
|
111
111
|
|
@@ -141,9 +141,9 @@ Bug fixes and ongoing development will occur in minor releases for the current m
|
|
141
141
|
|
142
142
|
[repo]: https://github.com/puppetlabs/puppet-strings
|
143
143
|
[issues]: https://github.com/puppetlabs/puppet-strings/issues
|
144
|
-
[LICENSE]: https://github.com/puppetlabs/puppet-strings/blob/
|
145
|
-
[changelog]: https://github.com/puppetlabs/puppet-strings/blob/
|
146
|
-
[contributing]: https://github.com/puppetlabs/puppet-strings/blob/
|
147
|
-
[committers]: https://github.com/puppetlabs/puppet-strings/blob/
|
144
|
+
[LICENSE]: https://github.com/puppetlabs/puppet-strings/blob/main/LICENSE
|
145
|
+
[changelog]: https://github.com/puppetlabs/puppet-strings/blob/main/CHANGELOG.md
|
146
|
+
[contributing]: https://github.com/puppetlabs/puppet-strings/blob/main/CONTRIBUTING.md
|
147
|
+
[committers]: https://github.com/puppetlabs/puppet-strings/blob/main/COMMITTERS.md
|
148
148
|
[Puppet community Slack]: https://slack.puppet.com
|
149
149
|
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'puppet-strings'
|
4
|
+
require 'tempfile'
|
5
|
+
|
6
|
+
namespace :strings do
|
7
|
+
namespace :validate do
|
8
|
+
desc 'Validate the reference is up to date'
|
9
|
+
task :reference, [:patterns, :debug, :backtrace] do |t, args|
|
10
|
+
filename = 'REFERENCE.md'
|
11
|
+
|
12
|
+
unless File.exist?(filename)
|
13
|
+
STDERR.puts "#{filename} does not exist"
|
14
|
+
exit 1
|
15
|
+
end
|
16
|
+
|
17
|
+
patterns = args[:patterns]
|
18
|
+
patterns = patterns.split if patterns
|
19
|
+
patterns ||= PuppetStrings::DEFAULT_SEARCH_PATTERNS
|
20
|
+
|
21
|
+
generated = Tempfile.create do |file|
|
22
|
+
options = {
|
23
|
+
debug: args[:debug] == 'true',
|
24
|
+
backtrace: args[:backtrace] == 'true',
|
25
|
+
json: false,
|
26
|
+
markdown: true,
|
27
|
+
path: file,
|
28
|
+
}
|
29
|
+
PuppetStrings.generate(patterns, options)
|
30
|
+
|
31
|
+
file.read
|
32
|
+
end
|
33
|
+
|
34
|
+
existing = File.read(filename)
|
35
|
+
|
36
|
+
if generated != existing
|
37
|
+
STDERR.puts "#{filename} is outdated"
|
38
|
+
exit 1
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
data/lib/puppet-strings/tasks.rb
CHANGED
@@ -148,11 +148,12 @@ class PuppetStrings::Yard::CodeObjects::Type < PuppetStrings::Yard::CodeObjects:
|
|
148
148
|
end
|
149
149
|
|
150
150
|
def parameters
|
151
|
+
@parameters ||= [] # guard against not filled parameters
|
151
152
|
# just return params if there are no providers
|
152
153
|
return @parameters if providers.empty?
|
153
154
|
|
154
155
|
# return existing params if we have already added provider
|
155
|
-
return @parameters if @parameters
|
156
|
+
return @parameters if @parameters&.any? { |p| p.name == 'provider' }
|
156
157
|
|
157
158
|
provider_param = Parameter.new(
|
158
159
|
'provider',
|
@@ -160,6 +161,7 @@ class PuppetStrings::Yard::CodeObjects::Type < PuppetStrings::Yard::CodeObjects:
|
|
160
161
|
"to specify this --- Puppet will usually discover the appropriate provider for your platform."
|
161
162
|
)
|
162
163
|
|
164
|
+
@parameters ||= []
|
163
165
|
@parameters << provider_param
|
164
166
|
end
|
165
167
|
|
@@ -5,7 +5,7 @@ require 'puppet-strings/yard/handlers/ruby/type_base'
|
|
5
5
|
require 'puppet-strings/yard/code_objects'
|
6
6
|
require 'puppet-strings/yard/util'
|
7
7
|
|
8
|
-
# Implements the handler for Puppet resource type newparam/newproperty calls written in Ruby.
|
8
|
+
# Implements the handler for Puppet resource type newparam/newproperty/ensurable calls written in Ruby.
|
9
9
|
class PuppetStrings::Yard::Handlers::Ruby::TypeExtrasHandler < PuppetStrings::Yard::Handlers::Ruby::TypeBase
|
10
10
|
# The default docstring when ensurable is used without given a docstring.
|
11
11
|
DEFAULT_ENSURABLE_DOCSTRING = 'The basic property that the resource should be in.'
|
@@ -13,6 +13,7 @@ class PuppetStrings::Yard::Handlers::Ruby::TypeExtrasHandler < PuppetStrings::Ya
|
|
13
13
|
namespace_only
|
14
14
|
handles method_call(:newparam)
|
15
15
|
handles method_call(:newproperty)
|
16
|
+
handles method_call(:ensurable)
|
16
17
|
|
17
18
|
process do
|
18
19
|
|
@@ -38,9 +39,15 @@ class PuppetStrings::Yard::Handlers::Ruby::TypeExtrasHandler < PuppetStrings::Ya
|
|
38
39
|
method1_name = statement[0].children.drop(1).find{ |c| c.type == :ident }.source
|
39
40
|
return unless ['Type', 'Puppet::Type'].include?(module_name) && method1_name == 'type'
|
40
41
|
|
42
|
+
# ensurable is syntatic sugar for newproperty
|
41
43
|
typename = get_name(statement[0], 'Puppet::Type.type')
|
42
|
-
|
43
|
-
|
44
|
+
if caller_method == 'ensurable'
|
45
|
+
method2_name = 'newproperty'
|
46
|
+
propertyname = 'ensure'
|
47
|
+
else
|
48
|
+
method2_name = caller_method
|
49
|
+
propertyname = get_name(statement, "Puppet::Type.type().#{method2_name}")
|
50
|
+
end
|
44
51
|
|
45
52
|
typeobject = get_type_yard_object(typename)
|
46
53
|
|
@@ -22,10 +22,12 @@ class PuppetStrings::Yard::Parsers::Puppet::Parser < YARD::Parser::Base
|
|
22
22
|
# @return [void]
|
23
23
|
def parse
|
24
24
|
begin
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
25
|
+
if @file.to_s.match(/^plans|\/plans\//)
|
26
|
+
if Puppet::Util::Package.versioncmp(Puppet.version, "5.0.0") < 0
|
27
|
+
log.warn "Skipping #{@file}: Puppet Plans require Puppet 5 or greater."
|
28
|
+
return
|
29
|
+
end
|
30
|
+
Puppet[:tasks] = true if Puppet.settings.include?(:tasks)
|
29
31
|
end
|
30
32
|
@statements ||= (@visitor.visit(::Puppet::Pops::Parser::Parser.new.parse_string(source)) || []).compact
|
31
33
|
rescue ::Puppet::ParseError => e
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: puppet-strings
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Puppet Inc.
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: yard
|
@@ -85,6 +85,7 @@ files:
|
|
85
85
|
- lib/puppet-strings/tasks.rb
|
86
86
|
- lib/puppet-strings/tasks/generate.rb
|
87
87
|
- lib/puppet-strings/tasks/gh_pages.rb
|
88
|
+
- lib/puppet-strings/tasks/validate.rb
|
88
89
|
- lib/puppet-strings/version.rb
|
89
90
|
- lib/puppet-strings/yard.rb
|
90
91
|
- lib/puppet-strings/yard/code_objects.rb
|
@@ -227,7 +228,7 @@ homepage: https://github.com/puppetlabs/puppet-strings
|
|
227
228
|
licenses:
|
228
229
|
- Apache-2.0
|
229
230
|
metadata: {}
|
230
|
-
post_install_message:
|
231
|
+
post_install_message:
|
231
232
|
rdoc_options: []
|
232
233
|
require_paths:
|
233
234
|
- lib
|
@@ -243,8 +244,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
243
244
|
version: '0'
|
244
245
|
requirements:
|
245
246
|
- puppet, >= 5.0.0
|
246
|
-
rubygems_version: 3.
|
247
|
-
signing_key:
|
247
|
+
rubygems_version: 3.1.6
|
248
|
+
signing_key:
|
248
249
|
specification_version: 4
|
249
250
|
summary: Puppet documentation via YARD
|
250
251
|
test_files: []
|