mirror of
				https://gitea.com/Lydanne/buildx.git
				synced 2025-11-04 01:53:42 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			51 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package confutil
 | 
						|
 | 
						|
import (
 | 
						|
	"os"
 | 
						|
	"strconv"
 | 
						|
)
 | 
						|
 | 
						|
// MetadataProvenanceMode is the type for setting provenance in the metadata
 | 
						|
// file
 | 
						|
type MetadataProvenanceMode string
 | 
						|
 | 
						|
const (
 | 
						|
	// MetadataProvenanceModeMin sets minimal provenance (default)
 | 
						|
	MetadataProvenanceModeMin MetadataProvenanceMode = "min"
 | 
						|
	// MetadataProvenanceModeMax sets full provenance
 | 
						|
	MetadataProvenanceModeMax MetadataProvenanceMode = "max"
 | 
						|
	// MetadataProvenanceModeDisabled doesn't set provenance
 | 
						|
	MetadataProvenanceModeDisabled MetadataProvenanceMode = "disabled"
 | 
						|
)
 | 
						|
 | 
						|
// MetadataProvenance returns the metadata provenance mode from
 | 
						|
// BUILDX_METADATA_PROVENANCE environment variable
 | 
						|
func MetadataProvenance() MetadataProvenanceMode {
 | 
						|
	return ParseMetadataProvenance(os.Getenv("BUILDX_METADATA_PROVENANCE"))
 | 
						|
}
 | 
						|
 | 
						|
// ParseMetadataProvenance parses the metadata provenance mode from a string
 | 
						|
func ParseMetadataProvenance(inp string) MetadataProvenanceMode {
 | 
						|
	switch inp {
 | 
						|
	case "min":
 | 
						|
		return MetadataProvenanceModeMin
 | 
						|
	case "max":
 | 
						|
		return MetadataProvenanceModeMax
 | 
						|
	case "disabled":
 | 
						|
		return MetadataProvenanceModeDisabled
 | 
						|
	}
 | 
						|
	if ok, err := strconv.ParseBool(inp); err == nil && !ok {
 | 
						|
		return MetadataProvenanceModeDisabled
 | 
						|
	}
 | 
						|
	return MetadataProvenanceModeMin
 | 
						|
}
 | 
						|
 | 
						|
// MetadataWarningsEnabled returns whether metadata warnings are enabled from
 | 
						|
// BUILDX_METADATA_WARNINGS environment variable (default false)
 | 
						|
func MetadataWarningsEnabled() bool {
 | 
						|
	if ok, err := strconv.ParseBool(os.Getenv("BUILDX_METADATA_WARNINGS")); err == nil {
 | 
						|
		return ok
 | 
						|
	}
 | 
						|
	return false
 | 
						|
}
 |