Commit graph

342 commits

Author SHA1 Message Date
Alexandre Aubin
08ff7404be Update official helper list 2021-05-10 18:00:49 +02:00
Alexandre Aubin
c9d2ae81ad Put an actual license in LICENSE 2021-04-23 18:34:39 +02:00
Alexandre Aubin
dc5cb76a40 Don't complain about app requesting 4.1.0 instead of 4.1.2 because meh 2021-04-16 22:26:14 +02:00
Alexandre Aubin
24f7031aee Don't break json output 2021-04-13 00:23:31 +02:00
Alexandre Aubin
59285decfc Don't miserably crash because of syntax error in apps.json 2021-04-11 19:58:15 +02:00
Alexandre Aubin
6fb6cdc15d Bump date in comment about helpers requirement 2021-04-11 17:13:59 +02:00
Alexandre Aubin
3393cfe0b8 Update helpers version requirements 2021-04-11 17:07:09 +02:00
Alexandre Aubin
975e2de5fc Add info about osbsolete/superflous ask strings 2021-03-15 02:26:41 +01:00
Alexandre Aubin
0b1aa10e44 Also report set -u used in remove, making some remove crash ... 2021-03-14 18:40:39 +01:00
Alexandre Aubin
6ce44da797 Fix forbidden data location test.. 2021-03-11 19:50:01 +01:00
Alexandre Aubin
4effddeab1 Report app using a folder in /home that aint the recommended practice /home/yunohost.app/ or multimedia 2021-03-11 02:59:34 +01:00
Alexandre Aubin
abf751cd61
Merge pull request #92 from YunoHost/report-legacy-permissions
Report legacy permission stuff (as info)
2021-03-07 18:32:40 +01:00
Alexandre Aubin
c8555839b2 Epic bug in json output wtf :| 2021-02-22 19:00:08 +01:00
Alexandre Aubin
5a3794957e Report legacy permission stuff (as info) 2021-02-21 18:31:06 +01:00
Alexandre Aubin
12117dad7d No need to differentiate if output == plain, _print handle this, we shoudl always add stuff to tests_reports 2021-02-03 18:42:50 +01:00
Alexandre Aubin
0c13d92b6d Polish the output for better UX? 2021-02-03 18:30:26 +01:00
Alexandre Aubin
adec1fdf02
Requalify the check that app is working as an Error instead of Critical because that's hella confusing for CI test on apps not yet in the catalog 2021-01-21 20:30:13 +01:00
Alexandre Aubin
9db63cc2ce Ignore binary file match derp 2021-01-17 15:32:34 +01:00
Alexandre Aubin
0e5c8a4504 Report default/placeholder help string + remaining REPLACEBYYOURAPP 2021-01-10 18:53:00 +01:00
Alexandre Aubin
d6bfb089c9 Report having a message talking about configuring firewall when it's only about finding an available port ... 2021-01-09 22:11:44 +01:00
Alexandre Aubin
8ba4a25b8b Report black magic with conf.json.persistent 2021-01-09 18:45:40 +01:00
ericgaspar
403fff1e7c
Update package_linter.py 2021-01-09 14:46:53 +01:00
Alexandre Aubin
360da39e15 Improved regex to avoid matching timer/target services 2021-01-07 18:43:58 +01:00
Alexandre Aubin
2650e4cc4b Report starting services with systemctl start instead of ynh_systemd_action 2021-01-07 18:37:51 +01:00
Alexandre Aubin
a47f5952cd Return qualify_for_level_9 if app is flagged high quality 2020-12-17 22:47:24 +01:00
Alexandre Aubin
095a690fe7 Fix change_url check + set it as info? 2020-12-05 17:02:27 +01:00
ericgaspar
cb6548e2ad
Update package_linter.py 2020-12-05 15:52:38 +01:00
ericgaspar
582fe709a9
Update package_linter.py 2020-12-05 15:37:23 +01:00
Alexandre Aubin
1539c5da74 Report deprecated 'yunohost app addaccess' 2020-12-01 01:25:57 +01:00
Alexandre Aubin
035ba260cb Ugly code to check consistency of 'yunohost service add' deeper :| 2020-12-01 01:19:58 +01:00
Alexandre Aubin
8b30b547a5 Report use of ynh_normalize_url_path 2020-11-29 07:02:19 +01:00
Alexandre Aubin
595edefa59 Report lack of badge in the README 2020-11-28 19:55:26 +01:00
Alexandre Aubin
8447af9142 Report (as info) ynh_script_progression during backup 2020-11-28 18:51:19 +01:00
Alexandre Aubin
ee3d38c177 Report using md5sum for checksums (as info) 2020-11-28 18:43:15 +01:00
Alexandre Aubin
657c33e575 Don't lint systemd override files 2020-11-28 18:32:51 +01:00
Alexandre Aubin
14a199a944 Merge branch 'master' into long_term_quality_and_checks_for_level_7 2020-11-27 06:53:07 +01:00
Alexandre Aubin
6cc1b2f330 Report is_public default value being a string 2020-11-25 02:11:26 +01:00
Alexandre Aubin
b00ef3d23c Make sure wget is quiet 2020-11-24 03:45:10 +01:00
Alexandre Aubin
c1f2bfe536 Recommend to add --quiet when using raw systemclt enable/disable 2020-11-24 03:25:45 +01:00
Alexandre Aubin
809232f8b3 Support multiple licenses 2020-11-21 02:34:01 +01:00
Alexandre Aubin
ce36805ad5 Turn some error into critical ? 2020-11-21 00:33:09 +01:00
Alexandre Aubin
a682a34454 Misc message tweaks 2020-11-19 00:47:57 +01:00
Alexandre Aubin
ef8256372f Minor tweak about version requirements 2020-11-19 00:40:35 +01:00
Alexandre Aubin
0b4a17ddd6 Uuuh more info vs. warning tweaks ? 2020-11-19 00:35:17 +01:00
Alexandre Aubin
9d88e90857 Misc fix 2020-11-19 00:07:36 +01:00
Alexandre Aubin
84d9a3a5c2 Cosmetics 2020-11-18 23:56:58 +01:00
Alexandre Aubin
d80db3d9a4 Implement new level 7 and 8 definitions 2020-11-18 23:56:52 +01:00
Alexandre Aubin
fe90e3acec Warning -> Info for not-so-important-warnings 2020-11-18 20:32:40 +01:00
Alexandre Aubin
8970d3b960 Change the test for the license key: expect a license ID listed on spxd. I really doubt we need to cover the case of "the license is free but not listed on spdx" ... Spdx's list is quite exhaustive... 2020-11-18 20:30:55 +01:00
Alexandre Aubin
91cd621e0c Refactor app catalog checks, add a check related to long-term good-quality-ness... + eligibility of 'new' level 7 ? 2020-11-17 01:13:05 +01:00
Alexandre Aubin
d66362f08f Report incorrect syntax for more_set_headers 2020-11-16 18:11:26 +01:00
Alexandre Aubin
813b244f01 Report obsolete use of -i/--installed with yunohost app list 2020-11-16 17:49:29 +01:00
Alexandre Aubin
6e0c314098 Try/except because flarum has a nonutf8 file >_> 2020-11-11 17:13:01 +01:00
Alexandre Aubin
bd199390cd Add checks for running systemd and php worker as non-root ... + small refactor to have a proper 'config' test suite 2020-11-11 17:08:49 +01:00
Alexandre Aubin
0c9f532e36 Better manifest syntax issue handling 2020-11-10 14:08:16 +01:00
Alexandre Aubin
f6b9acc401 Path may contain spaces >_> 2020-11-10 13:46:47 +01:00
Alexandre Aubin
eb774ae2fc Weird CHECK_SIZE helper >_> 2020-11-09 18:56:29 +01:00
Alexandre Aubin
efcacd2bd2 Typo 2020-11-09 18:31:59 +01:00
Alexandre Aubin
f803acd1fd Report references to php5 2020-11-09 18:21:31 +01:00
Alexandre Aubin
4b513b4cd6 Misc fixes + some apps are using rm -fR or -Rf instead of -rf, which wasnt caught by linter... 2020-11-09 15:46:32 +01:00
Alexandre Aubin
c4e823062f
Apply suggestions from code review
Co-authored-by: Éric Gaspar <46165813+ericgaspar@users.noreply.github.com>
2020-11-08 15:41:53 +01:00
Alexandre Aubin
e15a959860 No more 'app' type 2020-11-07 17:41:40 +01:00
Alexandre Aubin
603d663c8d Add more tests related to app catalog infos 2020-11-07 17:40:45 +01:00
Alexandre Aubin
06b8953033 Tweak checks about progress bar weights, check that the weights don't have super huge differences 2020-11-04 15:51:24 +01:00
Alexandre Aubin
94e81683ab change_url script is only relevant if this is a webapp 2020-11-04 14:06:17 +01:00
Alexandre Aubin
7d5b87ef84 Add some consistency check for content of check_process compared to manifest 2020-11-03 19:03:06 +01:00
Alexandre Aubin
43523543e0 Add a check that yunohost required version is not 2.x 2020-11-03 17:45:17 +01:00
Alexandre Aubin
2e4b25e008 Add check_process checks 2020-10-15 21:38:14 +02:00
Alexandre Aubin
a374b997e0 Encourage people to implement a change_url script 2020-10-15 21:29:17 +02:00
Alexandre Aubin
cd396af50e Fix some false-negative about exit usage + report it as error 2020-10-08 16:40:04 +02:00
Alexandre Aubin
01adf07c5e Fix an edge case of path traversal detection 2020-10-08 16:06:19 +02:00
Alexandre Aubin
79c52b28c7 Enforcing some stuff as errors because most level 7 apps pass these 2020-10-08 16:04:17 +02:00
Alexandre Aubin
25e6cc1962 Moar consistency checks 2020-10-08 16:03:52 +02:00
Alexandre Aubin
961e0bce9f Fix regressions 2020-10-08 15:01:36 +02:00
Alexandre Aubin
89a9eb3f73 [wip] Epic refactoring 2020-10-08 14:25:15 +02:00
Alexandre Aubin
462cf09587 Fix issue about var 'conn' not being defined 2020-09-20 19:18:50 +02:00
Kayou
e7bf7580c1
Fix warning_count not defined 2020-06-13 00:09:36 +02:00
Alexandre Aubin
0b0b40008d Add a --json option to generate a json output 2020-06-10 17:34:34 +02:00
Alexandre Aubin
bc8ec3e3df Tell to specify the exact version of php dependencies 2020-05-27 13:06:13 +02:00
Alexandre Aubin
bff00f6b0d Fix tip for extra app dependencies installation 2020-05-27 12:54:18 +02:00
Alexandre Aubin
a6d411c38d Advise to not start/stop services during backups ... 2020-05-25 18:47:48 +02:00
Alexandre Aubin
56f8cb6dc7 Do not fetch argument from manifest using foo= 2020-05-23 23:48:56 +02:00
Alexandre Aubin
aefe62a28e Update official helpers list 2020-05-21 02:45:48 +02:00
Augustin Trancart
726bf2a81b Enforce ynh_postgres_test_if_first_run and not yunohost service add 2020-05-17 22:48:20 +02:00
ericgaspar
53894076da Allow 0 to be used in ID field 2020-05-11 00:17:14 +02:00
Augustin Trancart
eb301456cd Allow --time=10,100,1000... 2020-05-03 23:11:38 +02:00
Alexandre Aubin
e4f85ae967 Complain about ynh_script_progression used with --time and --weight=1 all over the place 2020-04-30 04:50:56 +02:00
Alexandre Aubin
8a46b28747 At least add a warning about using chmod 777 -_- 2020-04-25 18:19:47 +02:00
Alexandre Aubin
2cdbe79e75 Check for existence of 'version' key in manifest and that it does respect the format <x>~ynh<y> 2020-04-25 06:01:59 +02:00
Alexandre Aubin
de06a6bc49 Fallback to downloading apps.json again if cache is messed up 2020-04-23 17:51:56 +02:00
Alexandre Aubin
a85f6edbf0 Recognize display_text as a valid argument type for manifest 2020-04-19 00:10:07 +02:00
Alexandre Aubin
e7c24466be No need to start description by is 2020-04-11 18:37:50 +02:00
Alexandre Aubin
0e8e5ba043 Ugh, path can have spaces -.- 2020-04-08 21:24:05 +02:00
Alexandre Aubin
94360abfbc Ugly tricks to avoid 2-3 delay every time its run because of fetching apps.json etc 2020-04-08 02:35:03 +02:00
Alexandre Aubin
8439fd0b2e Reorganize some stuff 2020-04-08 01:50:29 +02:00
Alexandre Aubin
fcdb15f02d Detect helper sourcing after official ones 2020-04-08 01:43:08 +02:00
Alexandre Aubin
dda9bcf5e7 Smarter regexes for sed -i subsitutions detections 2020-04-03 15:32:30 +02:00
Alexandre Aubin
d34e840d84 Path can contain space :s 2020-04-03 14:48:45 +02:00
Alexandre Aubin
7095e096bf
Keep reporting nginx path traversal as a warning for now ... 2020-04-03 04:39:06 +02:00
Alexandre Aubin
98ff1ad323 Add note about issue tracker 2020-03-31 21:28:38 +02:00
Alexandre Aubin
a9559d7953 Do not miserably fail if /conf doesnt exists 2020-03-31 21:22:35 +02:00
Alexandre Aubin
d53ee42a7f Check for helpers usage : custom helpers now official, and version requirement not up to date.. 2020-03-31 21:15:08 +02:00
Alexandre Aubin
4a5d619ad1 Do not fail miserably if not able to parse nginx conf 2020-03-31 20:06:03 +02:00
Alexandre Aubin
3399c15f73 Hack to auto install dependencies if inside a venv 2020-03-31 19:17:54 +02:00
Alexandre Aubin
8a62054f34 Also report path traversal issue if alias path doesn't use __FINALPATH__ 2020-03-31 18:45:42 +02:00
Alexandre Aubin
450249197b Promote path traversal issue detection to error instead of warning 2020-03-31 18:45:42 +02:00
Alexandre Aubin
16bb33b884 Fix path traversal issue detection, the alias folder also needs to end with / for path traversal to happen 2020-03-31 18:45:42 +02:00
Alexandre Aubin
acc32c9796 Improve path traversal issue detection with proper nginx conf parser 2020-03-31 18:45:42 +02:00
Alexandre Aubin
25f9b06517 Deprecate yunohost service regen-conf 2020-03-31 18:44:50 +02:00
Alexandre Aubin
54e5541a78 Let's just get rid of this test that comes from a pretty old era... Not really relevant anymore 2020-03-31 05:47:02 +02:00
Alexandre Aubin
7b473212ad Also check _common.sh 2020-03-31 05:45:51 +02:00
Alexandre Aubin
bb1eba88bf Be more agressive and report these old helpers as errors. 2020-03-31 05:26:03 +02:00
Alexandre Aubin
1c26f84174 Be happy and thankful when not even a warning 2020-03-31 04:43:48 +02:00
Alexandre Aubin
3ff0e10d11 Remove some false negative about ynh_die/exit check 2020-03-31 04:31:15 +02:00
Alexandre Aubin
1775202a26 Only check for ssowatconf at the end of the file, which is typically where it's useless 2020-03-31 04:30:57 +02:00
Alexandre Aubin
73741c225f Allow sudo -u as a legit usage of sudo since ynh_exec_as ain't official 2020-03-31 04:30:11 +02:00
Alexandre Aubin
794abd57fd Wording 2020-03-31 04:29:12 +02:00
Alexandre Aubin
4d9b1050c3 Idk, let's have this just as an info ... seems like not so many people are convinced by this 2020-03-31 04:28:53 +02:00
Alexandre Aubin
804bfbd55d Cache license from spdx to avoid a 1-2 sec delay each time it's ran ... 2020-03-31 04:27:41 +02:00
moutonjr
4a1a8ef0f2
Update package_linter.py
Avoid misunderstandings with error message

Co-Authored-By: Kayou <pierre.moltess@gmail.com>
2019-11-05 11:00:47 +01:00
Moutonjr Geoff
d9ea9253b9 Adding apps.json new repository paradigm on linter
since YunoHost 3.6 release (https://forum.yunohost.org/t/yunohost-3-6-release-sortie-de-yunohost-3-6/8359),
apps.json is the standard repo for packaging Apps, making YEP1.2 obsolete.

The code has been changed but other documentation and misc must be updated as well,
consider this PR as collaborative.
2019-11-04 23:09:03 +01:00
Alexandre Aubin
28f5c5bb10
Merge pull request #72 from yalh76/master
adding labriqueinternet as autorized repository
2019-05-30 15:33:00 +02:00
yalh76
21ab4c25cb fix ynh_add_extra_apt_repos 2019-05-24 14:20:24 +02:00
yalh76
affb4fd693 adding labriqueinternet as autorized repository 2019-05-22 19:16:12 +02:00
Alexandre Aubin
209e1367c7
Merge pull request #70 from YunoHost/improve-sources-list-detection
Improve sources list detection + report messing with sources.list as an error (if not using the helpers)
2019-05-03 01:19:24 +02:00
Alexandre Aubin
eec5c67af3 Add warning about unecessary use of 'app ssowatconf' 2019-04-29 20:23:50 +02:00
Alexandre Aubin
0bdd518046 Add check for description which are too long... 2019-04-25 23:14:45 +02:00
Alexandre Aubin
729e95fec2 Report usage of extra repo / messing up with sources.list as error 2019-04-19 17:58:12 +02:00
Alexandre Aubin
c1f328894e Improve detection of apps messing with sources.list 2019-04-19 17:42:40 +02:00
Alexandre Aubin
73a1eb528a More gentle warning when failing to parse lines 2019-04-19 16:58:57 +02:00
Kayou
f3935cdfaa
fix sudo detection 2019-04-02 20:57:19 +02:00
Alexandre Aubin
3664802f29 Show a warning if 'optional' critera for argument ain't a bool 2019-03-27 14:52:10 +01:00
Alexandre Aubin
9181e08814
Report "source _common.sh" as warning instead of error 2019-03-19 00:10:26 +01:00
Alexandre Aubin
5f2a9101a4
Merge branch 'master' into check-custom-apt-source 2019-03-18 00:21:45 +01:00
Alexandre Aubin
c4d3b27a21
Merge branch 'master' into check-for-path-traversal-issue 2019-03-18 00:20:14 +01:00
Alexandre Aubin
f0b497d996
Merge pull request #64 from YunoHost/check-required-yunohost-version
Add a warning if required YunoHost version is still 2.x
2019-03-18 00:19:41 +01:00
Alexandre Aubin
a343165390
Merge pull request #63 from YunoHost/check-for-duplicated-key-in-json
Check for duplicated key in json + empty description
2019-03-18 00:19:28 +01:00
Alexandre Aubin
4ce3e0c023
Merge pull request #60 from YunoHost/explain-what-ispublic-means
Encourage packagers to detail what is_public means
2019-03-18 00:19:10 +01:00
Alexandre Aubin
711312d73b
Merge pull request #57 from Mickael-Martin/services_check_manifest
add check service in install file match with manifest (new services)
2019-03-18 00:18:55 +01:00
Alexandre Aubin
febac1761c
Merge pull request #56 from Mickael-Martin/checksource
Add test of common file
2019-03-18 00:18:45 +01:00
Alexandre Aubin
dc2194dfcf Add a warning if required YunoHost version is still 2.x 2019-03-09 20:26:30 +01:00
Alexandre Aubin
9867d11ff8 Check for duplicated key in json + empty description 2019-03-09 19:54:55 +01:00
Alexandre Aubin
f99f2ff5a1 Additional check to avoid trying to read binary file in some edge case 2019-03-09 19:40:46 +01:00
Alexandre Aubin
af751292ca Check and report usage of custom apt sources 2019-03-09 19:36:52 +01:00
Alexandre Aubin
82b715f068 Handle case were { is on a newline 2019-03-09 19:22:43 +01:00
Alexandre Aubin
fbcdf54cdf Force script order 2019-03-09 18:47:48 +01:00
Alexandre Aubin
f6e98894cf Check for path traversal issue 2019-03-09 18:38:37 +01:00
Alexandre Aubin
74e60bab86
Uhoh not checking the right file 2019-03-09 18:35:15 +01:00
Alexandre Aubin
652d6bacb3 Encourage packagers to detail what is_public means 2019-03-09 17:52:08 +01:00
Alexandre Aubin
ecb7483694 Rework check_source_common 2019-03-09 17:39:00 +01:00