@codacy/tools-hadolint-2 0.5.0 → 0.6.1

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.
package/dist/index.js CHANGED
@@ -48,6 +48,7 @@ var patterns_default = [
48
48
  severityLevel: "Info",
49
49
  title: "Avoid Using Inline Ignore Pragmas",
50
50
  enabled: false,
51
+ languages: ["Dockerfile"],
51
52
  parameters: []
52
53
  },
53
54
  {
@@ -56,6 +57,7 @@ var patterns_default = [
56
57
  severityLevel: "Warning",
57
58
  title: "Enforce use of absolute WORKDIR",
58
59
  enabled: true,
60
+ languages: ["Dockerfile"],
59
61
  parameters: []
60
62
  },
61
63
  {
@@ -64,6 +66,7 @@ var patterns_default = [
64
66
  severityLevel: "Warning",
65
67
  title: "Avoid Running Inappropriate Commands in Docker Containers",
66
68
  enabled: true,
69
+ languages: ["Dockerfile"],
67
70
  parameters: []
68
71
  },
69
72
  {
@@ -72,6 +75,7 @@ var patterns_default = [
72
75
  severityLevel: "High",
73
76
  title: "Avoid using root as the last USER in Dockerfile",
74
77
  enabled: true,
78
+ languages: ["Dockerfile"],
75
79
  parameters: []
76
80
  },
77
81
  {
@@ -80,6 +84,7 @@ var patterns_default = [
80
84
  severityLevel: "Warning",
81
85
  title: "Use WORKDIR to Switch to a Directory",
82
86
  enabled: true,
87
+ languages: ["Dockerfile"],
83
88
  parameters: []
84
89
  },
85
90
  {
@@ -88,6 +93,7 @@ var patterns_default = [
88
93
  severityLevel: "Warning",
89
94
  title: "Avoid Using sudo in Dockerfiles",
90
95
  enabled: true,
96
+ languages: ["Dockerfile"],
91
97
  parameters: []
92
98
  },
93
99
  {
@@ -96,6 +102,7 @@ var patterns_default = [
96
102
  severityLevel: "Warning",
97
103
  title: "Avoid Using apt-get dist-upgrade",
98
104
  enabled: true,
105
+ languages: ["Dockerfile"],
99
106
  parameters: []
100
107
  },
101
108
  {
@@ -104,6 +111,7 @@ var patterns_default = [
104
111
  severityLevel: "Warning",
105
112
  title: "Enforce Explicit Version Tag on Docker Image",
106
113
  enabled: true,
114
+ languages: ["Dockerfile"],
107
115
  parameters: []
108
116
  },
109
117
  {
@@ -112,6 +120,7 @@ var patterns_default = [
112
120
  severityLevel: "Warning",
113
121
  title: "Avoid Using 'latest' Tag in Docker Images",
114
122
  enabled: true,
123
+ languages: ["Dockerfile"],
115
124
  parameters: []
116
125
  },
117
126
  {
@@ -120,6 +129,7 @@ var patterns_default = [
120
129
  severityLevel: "Warning",
121
130
  title: "Enforce Pinning Versions in apt-get install",
122
131
  enabled: true,
132
+ languages: ["Dockerfile"],
123
133
  parameters: []
124
134
  },
125
135
  {
@@ -128,6 +138,7 @@ var patterns_default = [
128
138
  severityLevel: "Warning",
129
139
  title: "Delete apt-get lists after installing packages",
130
140
  enabled: true,
141
+ languages: ["Dockerfile"],
131
142
  parameters: []
132
143
  },
133
144
  {
@@ -136,6 +147,7 @@ var patterns_default = [
136
147
  severityLevel: "Info",
137
148
  title: "Use ADD for Extracting Archives into an Image",
138
149
  enabled: true,
150
+ languages: ["Dockerfile"],
139
151
  parameters: []
140
152
  },
141
153
  {
@@ -144,6 +156,7 @@ var patterns_default = [
144
156
  severityLevel: "High",
145
157
  title: "Enforce valid UNIX port range in Dockerfile EXPOSE instruction",
146
158
  enabled: true,
159
+ languages: ["Dockerfile"],
147
160
  parameters: []
148
161
  },
149
162
  {
@@ -152,6 +165,7 @@ var patterns_default = [
152
165
  severityLevel: "Warning",
153
166
  title: "Avoid Multiple HEALTHCHECK Instructions in Dockerfile",
154
167
  enabled: true,
168
+ languages: ["Dockerfile"],
155
169
  parameters: []
156
170
  },
157
171
  {
@@ -160,6 +174,7 @@ var patterns_default = [
160
174
  severityLevel: "Warning",
161
175
  title: "Pin Versions in pip Installations",
162
176
  enabled: true,
177
+ languages: ["Dockerfile"],
163
178
  parameters: []
164
179
  },
165
180
  {
@@ -168,6 +183,7 @@ var patterns_default = [
168
183
  severityLevel: "Warning",
169
184
  title: "Enforce Use of -y Switch in apt-get Install",
170
185
  enabled: true,
186
+ languages: ["Dockerfile"],
171
187
  parameters: []
172
188
  },
173
189
  {
@@ -176,6 +192,7 @@ var patterns_default = [
176
192
  severityLevel: "Warning",
177
193
  title: "Enforce Use of --no-install-recommends with apt-get install",
178
194
  enabled: true,
195
+ languages: ["Dockerfile"],
179
196
  parameters: []
180
197
  },
181
198
  {
@@ -184,6 +201,7 @@ var patterns_default = [
184
201
  severityLevel: "Warning",
185
202
  title: "Pin Versions in npm Install",
186
203
  enabled: false,
204
+ languages: ["Dockerfile"],
187
205
  parameters: []
188
206
  },
189
207
  {
@@ -192,6 +210,7 @@ var patterns_default = [
192
210
  severityLevel: "Warning",
193
211
  title: "Pin Versions in apk add",
194
212
  enabled: false,
213
+ languages: ["Dockerfile"],
195
214
  parameters: []
196
215
  },
197
216
  {
@@ -200,6 +219,7 @@ var patterns_default = [
200
219
  severityLevel: "Warning",
201
220
  title: "Use --no-cache Switch for apk Package Installation",
202
221
  enabled: false,
222
+ languages: ["Dockerfile"],
203
223
  parameters: []
204
224
  },
205
225
  {
@@ -208,6 +228,7 @@ var patterns_default = [
208
228
  severityLevel: "Info",
209
229
  title: "Use COPY Instead of ADD for Files and Folders",
210
230
  enabled: true,
231
+ languages: ["Dockerfile"],
211
232
  parameters: []
212
233
  },
213
234
  {
@@ -216,6 +237,7 @@ var patterns_default = [
216
237
  severityLevel: "High",
217
238
  title: "Enforce COPY Destination Ends with Slash for Multiple Sources",
218
239
  enabled: true,
240
+ languages: ["Dockerfile"],
219
241
  parameters: []
220
242
  },
221
243
  {
@@ -224,6 +246,7 @@ var patterns_default = [
224
246
  severityLevel: "High",
225
247
  title: "Enforce COPY --from References Defined FROM Alias",
226
248
  enabled: true,
249
+ languages: ["Dockerfile"],
227
250
  parameters: []
228
251
  },
229
252
  {
@@ -232,6 +255,7 @@ var patterns_default = [
232
255
  severityLevel: "High",
233
256
  title: "Avoid COPY --from referencing its own FROM alias",
234
257
  enabled: true,
258
+ languages: ["Dockerfile"],
235
259
  parameters: []
236
260
  },
237
261
  {
@@ -240,6 +264,7 @@ var patterns_default = [
240
264
  severityLevel: "High",
241
265
  title: "Enforce Unique FROM Aliases (Stage Names) in Dockerfiles",
242
266
  enabled: true,
267
+ languages: ["Dockerfile"],
243
268
  parameters: []
244
269
  },
245
270
  {
@@ -248,6 +273,7 @@ var patterns_default = [
248
273
  severityLevel: "Warning",
249
274
  title: "Use JSON Array Notation for CMD and ENTRYPOINT Arguments",
250
275
  enabled: false,
276
+ languages: ["Dockerfile"],
251
277
  parameters: []
252
278
  },
253
279
  {
@@ -256,6 +282,7 @@ var patterns_default = [
256
282
  severityLevel: "High",
257
283
  title: "Enforce Use of Allowed Registry in FROM Image",
258
284
  enabled: false,
285
+ languages: ["Dockerfile"],
259
286
  parameters: []
260
287
  },
261
288
  {
@@ -264,6 +291,7 @@ var patterns_default = [
264
291
  severityLevel: "Warning",
265
292
  title: "Avoid Using apt in Dockerfiles; Use apt-get or apt-cache Instead",
266
293
  enabled: false,
294
+ languages: ["Dockerfile"],
267
295
  parameters: []
268
296
  },
269
297
  {
@@ -272,6 +300,7 @@ var patterns_default = [
272
300
  severityLevel: "Warning",
273
301
  title: "Pin Versions in gem install",
274
302
  enabled: false,
303
+ languages: ["Dockerfile"],
275
304
  parameters: []
276
305
  },
277
306
  {
@@ -280,6 +309,7 @@ var patterns_default = [
280
309
  severityLevel: "Warning",
281
310
  title: "Avoid Using --platform Flag with FROM Instruction",
282
311
  enabled: false,
312
+ languages: ["Dockerfile"],
283
313
  parameters: []
284
314
  },
285
315
  {
@@ -288,6 +318,7 @@ var patterns_default = [
288
318
  severityLevel: "High",
289
319
  title: "Enforce using -y switch with yum install",
290
320
  enabled: false,
321
+ languages: ["Dockerfile"],
291
322
  parameters: []
292
323
  },
293
324
  {
@@ -296,6 +327,7 @@ var patterns_default = [
296
327
  severityLevel: "Warning",
297
328
  title: "Enforce yum clean all after yum command",
298
329
  enabled: false,
330
+ languages: ["Dockerfile"],
299
331
  parameters: []
300
332
  },
301
333
  {
@@ -304,6 +336,7 @@ var patterns_default = [
304
336
  severityLevel: "Warning",
305
337
  title: "Specify Version When Installing Packages with yum",
306
338
  enabled: false,
339
+ languages: ["Dockerfile"],
307
340
  parameters: []
308
341
  },
309
342
  {
@@ -312,6 +345,7 @@ var patterns_default = [
312
345
  severityLevel: "High",
313
346
  title: "Enforce Non-Interactive Switch in zypper Install Commands",
314
347
  enabled: false,
348
+ languages: ["Dockerfile"],
315
349
  parameters: []
316
350
  },
317
351
  {
@@ -320,6 +354,7 @@ var patterns_default = [
320
354
  severityLevel: "Warning",
321
355
  title: "Avoid Using zypper dist-upgrade",
322
356
  enabled: false,
357
+ languages: ["Dockerfile"],
323
358
  parameters: []
324
359
  },
325
360
  {
@@ -328,6 +363,7 @@ var patterns_default = [
328
363
  severityLevel: "Warning",
329
364
  title: "Enforce zypper clean after zypper use",
330
365
  enabled: false,
366
+ languages: ["Dockerfile"],
331
367
  parameters: []
332
368
  },
333
369
  {
@@ -336,6 +372,7 @@ var patterns_default = [
336
372
  severityLevel: "Warning",
337
373
  title: "Enforce Version Pinning with zypper install",
338
374
  enabled: false,
375
+ languages: ["Dockerfile"],
339
376
  parameters: []
340
377
  },
341
378
  {
@@ -344,6 +381,7 @@ var patterns_default = [
344
381
  severityLevel: "Warning",
345
382
  title: "Enforce Use of -y Switch in dnf install",
346
383
  enabled: false,
384
+ languages: ["Dockerfile"],
347
385
  parameters: []
348
386
  },
349
387
  {
@@ -352,6 +390,7 @@ var patterns_default = [
352
390
  severityLevel: "Warning",
353
391
  title: "Enforce dnf clean all After dnf Command",
354
392
  enabled: false,
393
+ languages: ["Dockerfile"],
355
394
  parameters: []
356
395
  },
357
396
  {
@@ -360,6 +399,7 @@ var patterns_default = [
360
399
  severityLevel: "Warning",
361
400
  title: "Enforce Version Pinning with dnf install",
362
401
  enabled: false,
402
+ languages: ["Dockerfile"],
363
403
  parameters: []
364
404
  },
365
405
  {
@@ -368,6 +408,7 @@ var patterns_default = [
368
408
  severityLevel: "Warning",
369
409
  title: "Avoid Using pip Cache Directory with pip install",
370
410
  enabled: false,
411
+ languages: ["Dockerfile"],
371
412
  parameters: []
372
413
  },
373
414
  {
@@ -376,6 +417,7 @@ var patterns_default = [
376
417
  severityLevel: "Error",
377
418
  title: "Avoid ONBUILD Triggering ONBUILD, FROM, or MAINTAINER",
378
419
  enabled: false,
420
+ languages: ["Dockerfile"],
379
421
  parameters: []
380
422
  },
381
423
  {
@@ -384,6 +426,7 @@ var patterns_default = [
384
426
  severityLevel: "Warning",
385
427
  title: "Avoid referring to environment variables within the same ENV statement where they are defined",
386
428
  enabled: false,
429
+ languages: ["Dockerfile"],
387
430
  parameters: []
388
431
  },
389
432
  {
@@ -392,6 +435,7 @@ var patterns_default = [
392
435
  severityLevel: "Warning",
393
436
  title: "Avoid COPY to Relative Destination Without WORKDIR Set",
394
437
  enabled: false,
438
+ languages: ["Dockerfile"],
395
439
  parameters: []
396
440
  },
397
441
  {
@@ -400,6 +444,7 @@ var patterns_default = [
400
444
  severityLevel: "Warning",
401
445
  title: "Enforce useradd with -l flag for high UID",
402
446
  enabled: false,
447
+ languages: ["Dockerfile"],
403
448
  parameters: []
404
449
  },
405
450
  {
@@ -408,6 +453,7 @@ var patterns_default = [
408
453
  severityLevel: "Info",
409
454
  title: "Enforce wget Progress Flag Usage",
410
455
  enabled: false,
456
+ languages: ["Dockerfile"],
411
457
  parameters: []
412
458
  },
413
459
  {
@@ -416,6 +462,7 @@ var patterns_default = [
416
462
  severityLevel: "High",
417
463
  title: "Enforce Valid Label Key",
418
464
  enabled: false,
465
+ languages: ["Dockerfile"],
419
466
  parameters: []
420
467
  },
421
468
  {
@@ -424,6 +471,7 @@ var patterns_default = [
424
471
  severityLevel: "Warning",
425
472
  title: "Enforce Required Label Presence",
426
473
  enabled: false,
474
+ languages: ["Dockerfile"],
427
475
  parameters: []
428
476
  },
429
477
  {
@@ -432,6 +480,7 @@ var patterns_default = [
432
480
  severityLevel: "Warning",
433
481
  title: "Avoid Superfluous Labels in Dockerfile",
434
482
  enabled: false,
483
+ languages: ["Dockerfile"],
435
484
  parameters: []
436
485
  },
437
486
  {
@@ -440,6 +489,7 @@ var patterns_default = [
440
489
  severityLevel: "Warning",
441
490
  title: "Avoid Empty Labels in Dockerfile",
442
491
  enabled: false,
492
+ languages: ["Dockerfile"],
443
493
  parameters: []
444
494
  },
445
495
  {
@@ -448,6 +498,7 @@ var patterns_default = [
448
498
  severityLevel: "Warning",
449
499
  title: "Enforce Valid URL in Label",
450
500
  enabled: false,
501
+ languages: ["Dockerfile"],
451
502
  parameters: []
452
503
  },
453
504
  {
@@ -456,6 +507,7 @@ var patterns_default = [
456
507
  severityLevel: "Warning",
457
508
  title: "Enforce RFC3339 Time Format in Labels",
458
509
  enabled: false,
510
+ languages: ["Dockerfile"],
459
511
  parameters: []
460
512
  },
461
513
  {
@@ -464,6 +516,7 @@ var patterns_default = [
464
516
  severityLevel: "Warning",
465
517
  title: "Enforce Valid SPDX License Identifier in Label",
466
518
  enabled: false,
519
+ languages: ["Dockerfile"],
467
520
  parameters: []
468
521
  },
469
522
  {
@@ -472,6 +525,7 @@ var patterns_default = [
472
525
  severityLevel: "Warning",
473
526
  title: "Enforce Valid Git Hash in Label",
474
527
  enabled: false,
528
+ languages: ["Dockerfile"],
475
529
  parameters: []
476
530
  },
477
531
  {
@@ -480,6 +534,7 @@ var patterns_default = [
480
534
  severityLevel: "Warning",
481
535
  title: "Enforce Semantic Versioning in Label",
482
536
  enabled: false,
537
+ languages: ["Dockerfile"],
483
538
  parameters: []
484
539
  },
485
540
  {
@@ -488,6 +543,7 @@ var patterns_default = [
488
543
  severityLevel: "Warning",
489
544
  title: "Enforce HEALTHCHECK Instruction Presence",
490
545
  enabled: false,
546
+ languages: ["Dockerfile"],
491
547
  parameters: []
492
548
  },
493
549
  {
@@ -496,6 +552,7 @@ var patterns_default = [
496
552
  severityLevel: "Warning",
497
553
  title: "Enforce Valid Email Format in Label",
498
554
  enabled: false,
555
+ languages: ["Dockerfile"],
499
556
  parameters: []
500
557
  },
501
558
  {
@@ -504,6 +561,7 @@ var patterns_default = [
504
561
  severityLevel: "Warning",
505
562
  title: "Consolidate Multiple Consecutive RUN Instructions",
506
563
  enabled: false,
564
+ languages: ["Dockerfile"],
507
565
  parameters: []
508
566
  },
509
567
  {
@@ -512,6 +570,7 @@ var patterns_default = [
512
570
  severityLevel: "Warning",
513
571
  title: "Enforce yarn cache clean after yarn install",
514
572
  enabled: false,
573
+ languages: ["Dockerfile"],
515
574
  parameters: []
516
575
  },
517
576
  {
@@ -520,6 +579,7 @@ var patterns_default = [
520
579
  severityLevel: "High",
521
580
  title: "Enforce Valid Instruction Order in Dockerfile",
522
581
  enabled: false,
582
+ languages: ["Dockerfile"],
523
583
  parameters: []
524
584
  },
525
585
  {
@@ -528,6 +588,7 @@ var patterns_default = [
528
588
  severityLevel: "Warning",
529
589
  title: "Avoid Deprecated MAINTAINER Instruction",
530
590
  enabled: true,
591
+ languages: ["Dockerfile"],
531
592
  parameters: []
532
593
  },
533
594
  {
@@ -536,6 +597,7 @@ var patterns_default = [
536
597
  severityLevel: "Info",
537
598
  title: "Enforce Consistent Use of Wget or Curl",
538
599
  enabled: true,
600
+ languages: ["Dockerfile"],
539
601
  parameters: []
540
602
  },
541
603
  {
@@ -544,6 +606,7 @@ var patterns_default = [
544
606
  severityLevel: "Warning",
545
607
  title: "Avoid Multiple CMD Instructions in Dockerfile",
546
608
  enabled: true,
609
+ languages: ["Dockerfile"],
547
610
  parameters: []
548
611
  },
549
612
  {
@@ -552,6 +615,7 @@ var patterns_default = [
552
615
  severityLevel: "Warning",
553
616
  title: "Avoid Multiple ENTRYPOINT Instructions",
554
617
  enabled: true,
618
+ languages: ["Dockerfile"],
555
619
  parameters: []
556
620
  },
557
621
  {
@@ -560,6 +624,7 @@ var patterns_default = [
560
624
  severityLevel: "Info",
561
625
  title: "Use SHELL Instruction to Change Default Shell",
562
626
  enabled: true,
627
+ languages: ["Dockerfile"],
563
628
  parameters: []
564
629
  },
565
630
  {
@@ -568,6 +633,7 @@ var patterns_default = [
568
633
  severityLevel: "High",
569
634
  title: "Set SHELL option -o pipefail before RUN with pipe",
570
635
  enabled: false,
636
+ languages: ["Dockerfile"],
571
637
  parameters: []
572
638
  },
573
639
  {
@@ -576,6 +642,7 @@ var patterns_default = [
576
642
  severityLevel: "Info",
577
643
  title: "Escape Literal Dollar Signs in Double Quotes",
578
644
  enabled: true,
645
+ languages: ["Dockerfile"],
579
646
  parameters: []
580
647
  },
581
648
  {
@@ -584,6 +651,7 @@ var patterns_default = [
584
651
  severityLevel: "Info",
585
652
  title: "Avoid Unnecessary Escape Sequences in Shell Scripts",
586
653
  enabled: true,
654
+ languages: ["Dockerfile"],
587
655
  parameters: []
588
656
  },
589
657
  {
@@ -592,6 +660,7 @@ var patterns_default = [
592
660
  severityLevel: "High",
593
661
  title: "Remove Space After '=' in Variable Assignment",
594
662
  enabled: true,
663
+ languages: ["Dockerfile"],
595
664
  parameters: []
596
665
  },
597
666
  {
@@ -600,6 +669,7 @@ var patterns_default = [
600
669
  severityLevel: "High",
601
670
  title: "Enforce Semicolon or Linefeed Before Shell Keywords like done",
602
671
  enabled: true,
672
+ languages: ["Dockerfile"],
603
673
  parameters: []
604
674
  },
605
675
  {
@@ -608,6 +678,7 @@ var patterns_default = [
608
678
  severityLevel: "High",
609
679
  title: "Avoid Unicode Non-Breaking and Zero-Width Spaces",
610
680
  enabled: true,
681
+ languages: ["Dockerfile"],
611
682
  parameters: []
612
683
  },
613
684
  {
@@ -616,6 +687,7 @@ var patterns_default = [
616
687
  severityLevel: "High",
617
688
  title: "Enforce Space After Negation in Shell Conditionals",
618
689
  enabled: true,
690
+ languages: ["Dockerfile"],
619
691
  parameters: []
620
692
  },
621
693
  {
@@ -624,6 +696,7 @@ var patterns_default = [
624
696
  severityLevel: "Warning",
625
697
  title: "Avoid Using Both '&' and ';' to Terminate Commands",
626
698
  enabled: true,
699
+ languages: ["Dockerfile"],
627
700
  parameters: []
628
701
  },
629
702
  {
@@ -632,6 +705,7 @@ var patterns_default = [
632
705
  severityLevel: "High",
633
706
  title: "Avoid Declaring Parameters in Shell Functions",
634
707
  enabled: true,
708
+ languages: ["Dockerfile"],
635
709
  parameters: []
636
710
  },
637
711
  {
@@ -640,6 +714,7 @@ var patterns_default = [
640
714
  severityLevel: "High",
641
715
  title: "Avoid Using $ on Left Side of Assignments",
642
716
  enabled: true,
717
+ languages: ["Dockerfile"],
643
718
  parameters: []
644
719
  },
645
720
  {
@@ -648,6 +723,7 @@ var patterns_default = [
648
723
  severityLevel: "High",
649
724
  title: "Avoid Spaces Around '=' in Shell Variable Assignments",
650
725
  enabled: true,
726
+ languages: ["Dockerfile"],
651
727
  parameters: []
652
728
  },
653
729
  {
@@ -656,6 +732,7 @@ var patterns_default = [
656
732
  severityLevel: "High",
657
733
  title: "Enforce Correct Use of Backticks for Command Expansion",
658
734
  enabled: true,
735
+ languages: ["Dockerfile"],
659
736
  parameters: []
660
737
  },
661
738
  {
@@ -664,6 +741,7 @@ var patterns_default = [
664
741
  severityLevel: "High",
665
742
  title: "Detect Unclosed Double-Quoted Strings",
666
743
  enabled: true,
744
+ languages: ["Dockerfile"],
667
745
  parameters: []
668
746
  },
669
747
  {
@@ -672,6 +750,7 @@ var patterns_default = [
672
750
  severityLevel: "Warning",
673
751
  title: "Detect Suspected Misplaced End Quote in Dockerfile",
674
752
  enabled: true,
753
+ languages: ["Dockerfile"],
675
754
  parameters: []
676
755
  },
677
756
  {
@@ -680,6 +759,7 @@ var patterns_default = [
680
759
  severityLevel: "High",
681
760
  title: "Enforce lowercase shell script keywords",
682
761
  enabled: true,
762
+ languages: ["Dockerfile"],
683
763
  parameters: []
684
764
  },
685
765
  {
@@ -688,6 +768,7 @@ var patterns_default = [
688
768
  severityLevel: "Warning",
689
769
  title: "Avoid Literal Curly Braces Without Proper Syntax or Quoting",
690
770
  enabled: true,
771
+ languages: ["Dockerfile"],
691
772
  parameters: []
692
773
  },
693
774
  {
@@ -696,6 +777,7 @@ var patterns_default = [
696
777
  severityLevel: "High",
697
778
  title: "Avoid Using Dollar Sign on Iterator Variable in For Loops",
698
779
  enabled: true,
780
+ languages: ["Dockerfile"],
699
781
  parameters: []
700
782
  },
701
783
  {
@@ -704,6 +786,7 @@ var patterns_default = [
704
786
  severityLevel: "Warning",
705
787
  title: "Enforce Braces When Expanding Arrays",
706
788
  enabled: true,
789
+ languages: ["Dockerfile"],
707
790
  parameters: []
708
791
  },
709
792
  {
@@ -712,6 +795,7 @@ var patterns_default = [
712
795
  severityLevel: "High",
713
796
  title: "Enforce Space Between Function Name and Body in Shell Scripts",
714
797
  enabled: true,
798
+ languages: ["Dockerfile"],
715
799
  parameters: []
716
800
  },
717
801
  {
@@ -720,6 +804,7 @@ var patterns_default = [
720
804
  severityLevel: "High",
721
805
  title: "Avoid Using Unexpected '==' in Shell Scripts",
722
806
  enabled: true,
807
+ languages: ["Dockerfile"],
723
808
  parameters: []
724
809
  },
725
810
  {
@@ -728,6 +813,7 @@ var patterns_default = [
728
813
  severityLevel: "Warning",
729
814
  title: "Quote or Escape Special Characters in eval",
730
815
  enabled: true,
816
+ languages: ["Dockerfile"],
731
817
  parameters: []
732
818
  },
733
819
  {
@@ -736,6 +822,7 @@ var patterns_default = [
736
822
  severityLevel: "Info",
737
823
  title: "Enforce Space Before Comment Hash",
738
824
  enabled: true,
825
+ languages: ["Dockerfile"],
739
826
  parameters: []
740
827
  },
741
828
  {
@@ -744,6 +831,7 @@ var patterns_default = [
744
831
  severityLevel: "Info",
745
832
  title: "Avoid Useless Use of cat",
746
833
  enabled: true,
834
+ languages: ["Dockerfile"],
747
835
  parameters: []
748
836
  },
749
837
  {
@@ -752,6 +840,7 @@ var patterns_default = [
752
840
  severityLevel: "High",
753
841
  title: "Avoid Using 'A && B || C' Instead of If-Then-Else",
754
842
  enabled: true,
843
+ languages: ["Dockerfile"],
755
844
  parameters: []
756
845
  },
757
846
  {
@@ -760,6 +849,7 @@ var patterns_default = [
760
849
  severityLevel: "High",
761
850
  title: "Avoid Unescaped Single Quotes Outside of Quotes in Shell Commands",
762
851
  enabled: true,
852
+ languages: ["Dockerfile"],
763
853
  parameters: []
764
854
  },
765
855
  {
@@ -768,6 +858,7 @@ var patterns_default = [
768
858
  severityLevel: "Warning",
769
859
  title: "Avoid Using echo for Escape Sequences; Use printf Instead",
770
860
  enabled: true,
861
+ languages: ["Dockerfile"],
771
862
  parameters: []
772
863
  },
773
864
  {
@@ -776,6 +867,7 @@ var patterns_default = [
776
867
  severityLevel: "High",
777
868
  title: "Enforce Safe Glob Usage to Avoid Misinterpretation as Options",
778
869
  enabled: true,
870
+ languages: ["Dockerfile"],
779
871
  parameters: []
780
872
  },
781
873
  {
@@ -784,6 +876,7 @@ var patterns_default = [
784
876
  severityLevel: "High",
785
877
  title: "Avoid Using Undefined Features in POSIX sh",
786
878
  enabled: false,
879
+ languages: ["Dockerfile"],
787
880
  parameters: []
788
881
  },
789
882
  {
@@ -792,6 +885,7 @@ var patterns_default = [
792
885
  severityLevel: "Warning",
793
886
  title: "Quote to Prevent Word Splitting",
794
887
  enabled: true,
888
+ languages: ["Dockerfile"],
795
889
  parameters: []
796
890
  },
797
891
  {
@@ -800,6 +894,7 @@ var patterns_default = [
800
894
  severityLevel: "High",
801
895
  title: "Enforce double quoting to prevent globbing and word splitting",
802
896
  enabled: true,
897
+ languages: ["Dockerfile"],
803
898
  parameters: []
804
899
  },
805
900
  {
@@ -808,6 +903,7 @@ var patterns_default = [
808
903
  severityLevel: "Warning",
809
904
  title: "Avoid Incorrectly Nested or Unnecessary Double Quotes in Shell Scripts",
810
905
  enabled: true,
906
+ languages: ["Dockerfile"],
811
907
  parameters: []
812
908
  },
813
909
  {
@@ -816,6 +912,7 @@ var patterns_default = [
816
912
  severityLevel: "High",
817
913
  title: "Detect Unassigned Variable References in Shell Scripts",
818
914
  enabled: true,
915
+ languages: ["Dockerfile"],
819
916
  parameters: []
820
917
  },
821
918
  {
@@ -824,6 +921,7 @@ var patterns_default = [
824
921
  severityLevel: "High",
825
922
  title: "Declare and Assign Separately to Avoid Masking Return Values",
826
923
  enabled: false,
924
+ languages: ["Dockerfile"],
827
925
  parameters: []
828
926
  },
829
927
  {
@@ -832,6 +930,7 @@ var patterns_default = [
832
930
  severityLevel: "High",
833
931
  title: "Ensure cd Command Failure is Handled",
834
932
  enabled: true,
933
+ languages: ["Dockerfile"],
835
934
  parameters: []
836
935
  }
837
936
  ];
@@ -842,7 +941,7 @@ var descriptor = {
842
941
  displayName: "Hadolint",
843
942
  preferredVersion: "2.14.0",
844
943
  languages: ["Dockerfile"],
845
- filePatterns: ["**/Dockerfile", "**/*.dockerfile", "**/Dockerfile.*"],
944
+ filePatterns: ["**/Dockerfile", "**/*.dockerfile", "**/*.Dockerfile", "**/Dockerfile.*"],
846
945
  supportedOS: ["linux", "darwin", "win32"],
847
946
  supportedArch: ["x64", "arm64"],
848
947
  supportedRunners: ["local", "container"]
@@ -864,6 +963,39 @@ function ruleMetadata(code) {
864
963
  return PATTERN_META.get(patternId) ?? { category: "BestPractice", severity: "Info" };
865
964
  }
866
965
  var BINARY = "hadolint";
966
+ var SHELLCHECK_CODE_RENAMES = {
967
+ SC1072: "SC1010",
968
+ // semicolon before `done`
969
+ SC2281: "SC1066",
970
+ // `$` on LHS of assignment
971
+ SC2283: "SC1068",
972
+ // spaces around `=`
973
+ SC1089: "SC1081",
974
+ // lowercase keywords
975
+ SC2128: "SC1087",
976
+ // `${arr[0]}` braces
977
+ SC2284: "SC1097",
978
+ // unexpected `==`
979
+ SC3009: "SC1098",
980
+ // quote/escape in `eval`
981
+ SC3046: "SC2039"
982
+ // POSIX `source`
983
+ };
984
+ function resolveRuleCode(code) {
985
+ return SHELLCHECK_CODE_RENAMES[code] ?? code;
986
+ }
987
+ function severityToHadolintFlag(severity) {
988
+ switch (severity) {
989
+ case "Error":
990
+ return "--error";
991
+ case "Info":
992
+ return "--info";
993
+ case "High":
994
+ case "Warning":
995
+ default:
996
+ return "--warning";
997
+ }
998
+ }
867
999
  var PLATFORM_MAP = {
868
1000
  "darwin-arm64": "macos-arm64",
869
1001
  "darwin-x64": "macos-x86_64",
@@ -1051,6 +1183,13 @@ var adapter = {
1051
1183
  const args = ["--format", "json"];
1052
1184
  if (codacyConfig.useLocalConfigurationFile && codacyConfig.localConfigurationFile) {
1053
1185
  args.push("--config", codacyConfig.localConfigurationFile);
1186
+ } else {
1187
+ for (const pattern of codacyConfig.patterns) {
1188
+ if (!pattern.patternId.startsWith(`${TOOL_ID}_`)) continue;
1189
+ const code = pattern.patternId.slice(TOOL_ID.length + 1);
1190
+ const flag = severityToHadolintFlag(PATTERN_META.get(pattern.patternId)?.severity);
1191
+ args.push(flag, code);
1192
+ }
1054
1193
  }
1055
1194
  args.push(...absoluteFiles);
1056
1195
  try {
@@ -1096,11 +1235,12 @@ var adapter = {
1096
1235
  const lines = await (0, import_tooling.readFileLines)(absoluteFilePath);
1097
1236
  const relPath = import_path.default.isAbsolute(filePath) ? import_path.default.relative(ctx.repositoryRoot, filePath) : filePath;
1098
1237
  for (const finding of fileFindings) {
1099
- const patternId = `${TOOL_ID}_${finding.code}`;
1238
+ const canonicalCode = resolveRuleCode(finding.code);
1239
+ const patternId = `${TOOL_ID}_${canonicalCode}`;
1100
1240
  if (enabledPatterns.size > 0 && !enabledPatterns.has(patternId)) {
1101
1241
  continue;
1102
1242
  }
1103
- const meta = ruleMetadata(finding.code);
1243
+ const meta = ruleMetadata(canonicalCode);
1104
1244
  issues.push({
1105
1245
  filePath: relPath,
1106
1246
  patternId,
package/dist/metadata.js CHANGED
@@ -28,7 +28,7 @@ var descriptor = {
28
28
  displayName: "Hadolint",
29
29
  preferredVersion: "2.14.0",
30
30
  languages: ["Dockerfile"],
31
- filePatterns: ["**/Dockerfile", "**/*.dockerfile", "**/Dockerfile.*"],
31
+ filePatterns: ["**/Dockerfile", "**/*.dockerfile", "**/*.Dockerfile", "**/Dockerfile.*"],
32
32
  supportedOS: ["linux", "darwin", "win32"],
33
33
  supportedArch: ["x64", "arm64"],
34
34
  supportedRunners: ["local", "container"]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codacy/tools-hadolint-2",
3
- "version": "0.5.0",
3
+ "version": "0.6.1",
4
4
  "description": "Hadolint adapter — CLI-mode Dockerfile linter",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -8,7 +8,7 @@
8
8
  "dist"
9
9
  ],
10
10
  "dependencies": {
11
- "@codacy/tooling": "0.5.0"
11
+ "@codacy/tooling": "0.6.1"
12
12
  },
13
13
  "license": "MIT",
14
14
  "author": "Codacy <support@codacy.com> (https://www.codacy.com)",