Merge pull request #370 from vbehar/cleanup-flag
Add a new flag to cleanup the filesystem at the end
This commit is contained in:
		
						commit
						7eb691055e
					
				|  | @ -317,6 +317,10 @@ If `--destination=gcr.io/kaniko-project/test`, then cached layers will be stored | ||||||
| 
 | 
 | ||||||
| _This flag must be used in conjunction with the `--cache=true` flag._ | _This flag must be used in conjunction with the `--cache=true` flag._ | ||||||
| 
 | 
 | ||||||
|  | #### --cleanup | ||||||
|  | 
 | ||||||
|  | Set this flag to cleanup the filesystem at the end, leaving a clean kaniko container (if you want to build multiple images in the same container, using the debug kaniko image) | ||||||
|  | 
 | ||||||
| ### Debug Image | ### Debug Image | ||||||
| 
 | 
 | ||||||
| The kaniko executor image is based off of scratch and doesn't contain a shell. | The kaniko executor image is based off of scratch and doesn't contain a shell. | ||||||
|  |  | ||||||
|  | @ -97,6 +97,7 @@ func addKanikoOptionsFlags(cmd *cobra.Command) { | ||||||
| 	RootCmd.PersistentFlags().BoolVarP(&opts.NoPush, "no-push", "", false, "Do not push the image to the registry") | 	RootCmd.PersistentFlags().BoolVarP(&opts.NoPush, "no-push", "", false, "Do not push the image to the registry") | ||||||
| 	RootCmd.PersistentFlags().StringVarP(&opts.CacheRepo, "cache-repo", "", "", "Specify a repository to use as a cache, otherwise one will be inferred from the destination provided") | 	RootCmd.PersistentFlags().StringVarP(&opts.CacheRepo, "cache-repo", "", "", "Specify a repository to use as a cache, otherwise one will be inferred from the destination provided") | ||||||
| 	RootCmd.PersistentFlags().BoolVarP(&opts.Cache, "cache", "", false, "Use cache when building image") | 	RootCmd.PersistentFlags().BoolVarP(&opts.Cache, "cache", "", false, "Use cache when building image") | ||||||
|  | 	RootCmd.PersistentFlags().BoolVarP(&opts.Cleanup, "cleanup", "", false, "Clean the filesystem at the end") | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // addHiddenFlags marks certain flags as hidden from the executor help text
 | // addHiddenFlags marks certain flags as hidden from the executor help text
 | ||||||
|  |  | ||||||
|  | @ -33,4 +33,5 @@ type KanikoOptions struct { | ||||||
| 	Reproducible   bool | 	Reproducible   bool | ||||||
| 	NoPush         bool | 	NoPush         bool | ||||||
| 	Cache          bool | 	Cache          bool | ||||||
|  | 	Cleanup        bool | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -264,6 +264,11 @@ func DoBuild(opts *config.KanikoOptions) (v1.Image, error) { | ||||||
| 					return nil, err | 					return nil, err | ||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
|  | 			if opts.Cleanup { | ||||||
|  | 				if err = util.DeleteFilesystem(); err != nil { | ||||||
|  | 					return nil, err | ||||||
|  | 				} | ||||||
|  | 			} | ||||||
| 			return sourceImage, nil | 			return sourceImage, nil | ||||||
| 		} | 		} | ||||||
| 		if stage.SaveStage { | 		if stage.SaveStage { | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue