@@ -97,11 +97,11 @@ func NewBuildCmd() *cobra.Command {
97
97
}
98
98
// if its value is default platforms, build image as single sealer image.
99
99
if ok := platforms .Default ().Match (p ); ok {
100
- return buildSingleSealerImage (engine , buildFlags .Tag , "" , buildFlags .Platforms [0 ])
100
+ return buildSingleSealerImage (engine , buildFlags .Tag , "" , buildFlags .Platforms [0 ], buildFlags . SkipTLSVerify )
101
101
}
102
102
}
103
103
104
- return buildMultiPlatformSealerImage (engine )
104
+ return buildMultiPlatformSealerImage (engine , buildFlags . SkipTLSVerify )
105
105
},
106
106
}
107
107
buildCmd .Flags ().StringVarP (& buildFlags .Kubefile , "file" , "f" , "Kubefile" , "Kubefile filepath" )
@@ -118,6 +118,7 @@ func NewBuildCmd() *cobra.Command {
118
118
buildCmd .Flags ().StringSliceVar (& buildFlags .Labels , "label" , []string {getSealerLabel ()}, "add labels for image. Format like --label key=[value]" )
119
119
buildCmd .Flags ().BoolVar (& buildFlags .NoCache , "no-cache" , false , "do not use existing cached images for building. Build from the start with a new set of cached layers." )
120
120
buildCmd .Flags ().StringVar (& buildFlags .BuildMode , "build-mode" , options .WithAllMode , "whether to download container image during the build process. default is `all`." )
121
+ buildCmd .Flags ().BoolVar (& buildFlags .SkipTLSVerify , "skip-tls-verify" , true , "default is requiring HTTPS and verify certificates when accessing the registry." )
121
122
122
123
supportedImageType := map [string ]struct {}{v12 .KubeInstaller : {}, v12 .AppInstaller : {}}
123
124
if _ , ok := supportedImageType [buildFlags .ImageType ]; ! ok {
@@ -132,7 +133,7 @@ func NewBuildCmd() *cobra.Command {
132
133
return buildCmd
133
134
}
134
135
135
- func buildMultiPlatformSealerImage (engine imageengine.Interface ) error {
136
+ func buildMultiPlatformSealerImage (engine imageengine.Interface , skipTLSVerify bool ) error {
136
137
var (
137
138
// use buildFlags.Tag as manifest name for multi arch build
138
139
manifest = buildFlags .Tag
@@ -146,7 +147,7 @@ func buildMultiPlatformSealerImage(engine imageengine.Interface) error {
146
147
147
148
// build multi platform
148
149
for _ , p := range buildFlags .Platforms {
149
- err = buildSingleSealerImage (engine , "" , manifest , p )
150
+ err = buildSingleSealerImage (engine , "" , manifest , p , skipTLSVerify )
150
151
if err != nil {
151
152
// clean manifest
152
153
_ = engine .DeleteManifests ([]string {manifest }, & options.ManifestDeleteOpts {})
@@ -157,9 +158,10 @@ func buildMultiPlatformSealerImage(engine imageengine.Interface) error {
157
158
return nil
158
159
}
159
160
160
- func buildSingleSealerImage (engine imageengine.Interface , imageName string , manifest string , platformStr string ) error {
161
+ func buildSingleSealerImage (engine imageengine.Interface , imageName string , manifest string , platformStr string , skipTLSVerify bool ) error {
162
+ // parse Kubefile & try pull image in "from" syntax
161
163
kubefileParser := parser .NewParser (rootfs .GlobalManager .App ().Root (), buildFlags , engine , platformStr )
162
- result , err := getKubefileParseResult (buildFlags .ContextDir , buildFlags .Kubefile , kubefileParser )
164
+ result , err := getKubefileParseResult (buildFlags .ContextDir , buildFlags .Kubefile , kubefileParser , skipTLSVerify )
163
165
if err != nil {
164
166
return err
165
167
}
@@ -483,7 +485,7 @@ func buildImageExtensionOnResult(result *parser.KubefileResult, imageType string
483
485
return extension
484
486
}
485
487
486
- func getKubefileParseResult (contextDir , file string , kubefileParser * parser.KubefileParser ) (* parser.KubefileResult , error ) {
488
+ func getKubefileParseResult (contextDir , file string , kubefileParser * parser.KubefileParser , skipTLSVerify bool ) (* parser.KubefileResult , error ) {
487
489
kubefile , err := getKubefile (contextDir , file )
488
490
if err != nil {
489
491
return nil , err
@@ -497,7 +499,7 @@ func getKubefileParseResult(contextDir, file string, kubefileParser *parser.Kube
497
499
_ = kfr .Close ()
498
500
}()
499
501
500
- kr , err := kubefileParser .ParseKubefile (kfr )
502
+ kr , err := kubefileParser .ParseKubefile (kfr , skipTLSVerify )
501
503
if err != nil {
502
504
return nil , err
503
505
}
0 commit comments