voxpupuli / metadata-json-lint

Tool to check the validity of Puppet metadata.json files
Apache License 2.0
29 stars 27 forks source link

Only log open dependency warning with --strict-dependencies #78

Closed domcleal closed 7 years ago

domcleal commented 7 years ago

Same change as 748d23e but for --strict-dependencies, a change in behaviour since a4bc76e.

Open dependency checks are now opt-in again (when --strict-dependencies is given), and they're logged as warnings rather than needing users to also disable fail on warnings.

Fixes #76

rnelson0 commented 7 years ago

@cdenneen can you confirm this branch solves your issue?

cdenneen commented 7 years ago

@domcleal @rnelson0 So the strict part seems to work as default disabled. With strict parameter works and exits 1

 #  be metadata-json-lint --strict-dependencies; echo $?
(WARN) dependencies: Dependency puppetlabs-stdlib has an open ended dependency version requirement >= 4.15.0
(WARN) dependencies: Dependency puppetlabs-firewall has an open ended dependency version requirement >= 1.8.2
(WARN) dependencies: Dependency puppetlabs-ntp has an open ended dependency version requirement >= 6.0.0
(WARN) dependencies: Dependency puppetlabs-inifile has an open ended dependency version requirement >= 1.6.0
(WARN) dependencies: Dependency puppetlabs-accounts has an open ended dependency version requirement >= 1.1.0
(WARN) dependencies: Dependency cdenneen-ec2tags has an open ended dependency version requirement >= 1.1.0
(WARN) dependencies: Dependency bashtoni-timezone has an open ended dependency version requirement >= 1.0.0
(WARN) dependencies: Dependency razorsedge-snmp has an open ended dependency version requirement >= 3.6.0
(WARN) dependencies: Dependency saz-sudo has an open ended dependency version requirement >= 4.1.0
(WARN) dependencies: Dependency puppet-selinux has an open ended dependency version requirement >= 0.8.0
(WARN) dependencies: Dependency sensu-puppet has an open ended dependency version requirement >= 2.1.0
(WARN) dependencies: Dependency puppet-yum has an open ended dependency version requirement >= 1.0.0
(WARN) dependencies: Dependency pcfens-ca_cert has an open ended dependency version requirement >= 1.6.1
(WARN) dependencies: Dependency puppetlabs-apt has an open ended dependency version requirement >= 2.3.0
(WARN) dependencies: Dependency lwf-remote_file has an open ended dependency version requirement >= 1.1.3
(WARN) dependencies: Dependency pcfens-filebeat has an open ended dependency version requirement >= 0.10.2
(WARN) dependencies: Dependency razorsedge-openvmtools has an open ended dependency version requirement >= 1.0.0
(WARN) dependencies: Dependency razorsedge-vmwaretools has an open ended dependency version requirement >= 6.0.0
(WARN) dependencies: Dependency stahnma-epel has an open ended dependency version requirement >= 1.2.2
(WARN) dependencies: Dependency treydock-yum_cron has an open ended dependency version requirement >= 2.0.0
(WARN) dependencies: Dependency herculesteam-augeasproviders_shellvar has an open ended dependency version requirement >= 2.2.1
(WARN) dependencies: Dependency herculesteam-augeasproviders_core has an open ended dependency version requirement >= 2.1.3
Warnings found in metadata.json
1
#  be metadata-json-lint --fail-on-warnings; echo $?
0
# be metadata-json-lint --fail-on-warnings --strict-dependencies; echo $?
(WARN) dependencies: Dependency puppetlabs-stdlib has an open ended dependency version requirement >= 4.15.0
(WARN) dependencies: Dependency puppetlabs-firewall has an open ended dependency version requirement >= 1.8.2
(WARN) dependencies: Dependency puppetlabs-ntp has an open ended dependency version requirement >= 6.0.0
(WARN) dependencies: Dependency puppetlabs-inifile has an open ended dependency version requirement >= 1.6.0
(WARN) dependencies: Dependency puppetlabs-accounts has an open ended dependency version requirement >= 1.1.0
(WARN) dependencies: Dependency cdenneen-ec2tags has an open ended dependency version requirement >= 1.1.0
(WARN) dependencies: Dependency bashtoni-timezone has an open ended dependency version requirement >= 1.0.0
(WARN) dependencies: Dependency razorsedge-snmp has an open ended dependency version requirement >= 3.6.0
(WARN) dependencies: Dependency saz-sudo has an open ended dependency version requirement >= 4.1.0
(WARN) dependencies: Dependency puppet-selinux has an open ended dependency version requirement >= 0.8.0
(WARN) dependencies: Dependency sensu-puppet has an open ended dependency version requirement >= 2.1.0
(WARN) dependencies: Dependency puppet-yum has an open ended dependency version requirement >= 1.0.0
(WARN) dependencies: Dependency pcfens-ca_cert has an open ended dependency version requirement >= 1.6.1
(WARN) dependencies: Dependency puppetlabs-apt has an open ended dependency version requirement >= 2.3.0
(WARN) dependencies: Dependency lwf-remote_file has an open ended dependency version requirement >= 1.1.3
(WARN) dependencies: Dependency pcfens-filebeat has an open ended dependency version requirement >= 0.10.2
(WARN) dependencies: Dependency razorsedge-openvmtools has an open ended dependency version requirement >= 1.0.0
(WARN) dependencies: Dependency razorsedge-vmwaretools has an open ended dependency version requirement >= 6.0.0
(WARN) dependencies: Dependency stahnma-epel has an open ended dependency version requirement >= 1.2.2
(WARN) dependencies: Dependency treydock-yum_cron has an open ended dependency version requirement >= 2.0.0
(WARN) dependencies: Dependency herculesteam-augeasproviders_shellvar has an open ended dependency version requirement >= 2.2.1
(WARN) dependencies: Dependency herculesteam-augeasproviders_core has an open ended dependency version requirement >= 2.1.3
Warnings found in metadata.json
1

Looks good. 👍

cdenneen commented 7 years ago

@rnelson0 @domcleal can this be merged and released?

rnelson0 commented 7 years ago

You may want to open a release ticket, I won't get to this tonight and TBH I will forget.