github.com/pdmccormick/importable-docker-buildx@v0.0.0-20240426161518-e47091289030/util/confutil/metadata.go (about) 1 package confutil 2 3 import ( 4 "os" 5 "strconv" 6 ) 7 8 // MetadataProvenanceMode is the type for setting provenance in the metdata file 9 type MetadataProvenanceMode int 10 11 const ( 12 // MetadataProvenanceModeMin sets minimal provenance (default) 13 MetadataProvenanceModeMin MetadataProvenanceMode = iota 14 // MetadataProvenanceModeMax sets full provenance 15 MetadataProvenanceModeMax 16 // MetadataProvenanceModeDisabled doesn't set provenance 17 MetadataProvenanceModeDisabled 18 ) 19 20 // MetadataProvenance returns the provenance mode to set in the metadata file 21 func MetadataProvenance() MetadataProvenanceMode { 22 bmp := os.Getenv("BUILDX_METADATA_PROVENANCE") 23 switch bmp { 24 case "min": 25 return MetadataProvenanceModeMin 26 case "max": 27 return MetadataProvenanceModeMax 28 case "disabled": 29 return MetadataProvenanceModeDisabled 30 } 31 if ok, err := strconv.ParseBool(bmp); err == nil && !ok { 32 return MetadataProvenanceModeDisabled 33 } 34 return MetadataProvenanceModeMin 35 }