Help us shape the future of Go! Take the 2026 Go Developer Survey

lint

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 16, 2026 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package lint analyse la ligne de commande docker tapée par l'apprenant, sans rien exécuter, pour repérer les écritures que Docker accepte mais qui ne font pas ce qui est voulu (feature 003) : options placées après l'image ou le conteneur, et pièges silencieux.

Index

Constants

View Source
const (
	SeverityWarning = "warning"
	SeverityInfo    = "info"
)

Niveaux d'un piège (repris de l'entrée de catalogue correspondante).

Variables

This section is empty.

Functions

func Display

func Display(args []string) (cmd string, masked bool)

Display prépare des arguments pour l'affichage : nettoyage, masquage des secrets et citation shell ; masked indique qu'au moins une valeur a été masquée.

func FixedCommand

func FixedCommand(args []string, target int, move []int, replace map[int]string) (cmd string, masked bool)

FixedCommand reconstruit la commande corrigée à partir des arguments d'origine (sans le mot « docker ») : les arguments d'indice move sont déplacés, dans leur ordre d'origine, juste avant la cible (image ou conteneur, indice target) ; replace remplace un argument. Le résultat est nettoyé, masqué et cité pour le shell ; masked indique qu'un secret a été masqué (la commande n'est alors pas exécutable telle quelle).

Types

type Env

type Env struct {
	HasVar    func(name string) bool
	DirExists func(name string) bool
}

Env fournit les deux seules lectures locales autorisées : présence d'une variable d'environnement (jamais sa valeur) et existence d'un dossier dans le dossier courant.

type Finding

type Finding struct {
	EntryID     string
	Severity    string
	Captures    map[string]string
	Fingerprint string
	// contains filtered or unexported fields
}

Finding est un piège reconnu dans une ligne de commande. Les captures sont nettoyées et masquées ; l'empreinte ne contient jamais de valeur saisie par l'apprenant.

func Analyze

func Analyze(args []string, env Env) []Finding

Analyze analyse les arguments d'une commande docker (sans le mot « docker ») et renvoie les pièges trouvés : avertissements d'abord, puis informations, chacun dans l'ordre d'apparition dans la ligne.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL