Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
186 changes: 28 additions & 158 deletions README.md

Large diffs are not rendered by default.

8 changes: 1 addition & 7 deletions cmd/executor/cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ var RootCmd = &cobra.Command{
if err := os.Chdir("/"); err != nil {
exit(fmt.Errorf("error changing to root dir: %w", err))
}
if opts.Cleanup && config.FF.CleanKanikoDir {
if opts.Cleanup {
defer func() {
if err := config.Cleanup(); err != nil {
logrus.Warnf("error cleaning kaniko dir: %v", err)
Expand Down Expand Up @@ -391,12 +391,6 @@ func checkNoDeprecatedFlags() {
if opts.SkipUnusedStagesDeprecated {
logrus.Warn("Flag --skip-unused-stages is deprecated. This is the new default behaviour. If you want to build multiple independent stages pass them as --target instead")
}

if !config.FF.DeprecateInterStageRestore {
if opts.PreserveContext && !opts.PreCleanup {
logrus.Warn("--preserve-context without --pre-cleanup restores the original context between stages; this is deprecated and will be removed. Use --mount=type=secret for secrets. Set FF_KANIKO_DEPRECATE_INTER_STAGE_RESTORE=1 to opt into the new behaviour now.")
}
}
}

// cacheFlagsValid makes sure the flags passed in related to caching are valid
Expand Down
15 changes: 15 additions & 0 deletions golden/testdata/test_issue_mz195/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,38 @@ var Tests = types.GoldenTests{
Tests: []types.GoldenTest{
{
Args: []string{"--no-push"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
// TODO: clean after first-stage is unnecesary
Plan: "normal",
},
{
Args: []string{"--no-push", "--target=fifth-stage"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "normal",
},
{
Args: []string{"--destination=registry"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "push",
},
{
Args: []string{"--no-push", "--target=fourth-stage"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "fourth",
},
{
Args: []string{"--no-push", "--target=noise"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "noise",
},
},
Expand Down
1 change: 1 addition & 0 deletions golden/testdata/test_issue_mz333/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ var Tests = types.GoldenTests{
Tests: []types.GoldenTest{
{
Args: []string{"--no-push"},
Env: map[string]string{},
Plan: "plan",
},
},
Expand Down
30 changes: 21 additions & 9 deletions golden/testdata/test_issue_mz334/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,26 @@ var Tests = types.GoldenTests{
Dockerfile: "Dockerfile",
Tests: []types.GoldenTest{
{
Args: []string{"--no-push", "--cache", "--cache-copy-layers"},
Args: []string{"--no-push", "--cache", "--cache-copy-layers"},
Env: map[string]string{
"FF_KANIKO_INFER_CROSS_STAGE_CACHE_KEY": "0",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
"FF_KANIKO_SHARED_BASE_CACHE": "0",
"FF_KANIKO_SKIP_CACHED_STAGES": "0",
},
CachedKeys: []string{},
Plan: "plan",
},
{
Args: []string{"--no-push", "--cache", "--cache-copy-layers"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_INFER_CROSS_STAGE_CACHE_KEY": "0",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
"FF_KANIKO_SHARED_BASE_CACHE": "0",
"FF_KANIKO_SKIP_CACHED_STAGES": "0",
},
CachedKeys: []string{
"72e9e0e54e4522d381e54427f5ac6f24dd09910e1ff8d4bc7f60d02f54e2cdc3",
Expand All @@ -36,20 +48,20 @@ var Tests = types.GoldenTests{
{
Args: []string{"--no-push", "--cache", "--cache-copy-layers"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_INFER_CROSS_STAGE_CACHE_KEY": "1",
"FF_KANIKO_ROLLING_CACHE_KEY": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_SHARED_BASE_CACHE": "0",
"FF_KANIKO_SKIP_CACHED_STAGES": "0",
},
CachedKeys: chainKeys,
Plan: "inferred",
},
{
Args: []string{"--no-push", "--cache", "--cache-copy-layers"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_INFER_CROSS_STAGE_CACHE_KEY": "1",
"FF_KANIKO_ROLLING_CACHE_KEY": "1",
"FF_KANIKO_SKIP_CACHED_STAGES": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
CachedKeys: chainKeys,
Plan: "eliminated",
Expand Down
1 change: 1 addition & 0 deletions golden/testdata/test_issue_mz338/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ var Tests = types.GoldenTests{
Tests: []types.GoldenTest{
{
Args: []string{"--no-push"},
Env: map[string]string{},
Plan: "plan",
},
},
Expand Down
9 changes: 9 additions & 0 deletions golden/testdata/test_issue_mz480/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,16 +8,25 @@ var Tests = types.GoldenTests{
Tests: []types.GoldenTest{
{
Args: []string{"--target=final", "--destination=registry"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
// TODO: clean after "base" stage is unnecesary
Plan: "final",
},
{
Args: []string{"--target=final", "--target=build", "--destination=registry"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
// TODO: clean after "base" stage is unnecesary
Plan: "final",
},
{
Args: []string{"--target=final", "--target=test", "--destination=registry"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
// TODO: clean after "base" stage is unnecesary
// TODO: saving the "final" stage is unnecessary
// TODO: clean after "final" stage is unnecesary
Expand Down
3 changes: 3 additions & 0 deletions golden/testdata/test_issue_mz487/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ var Tests = types.GoldenTests{
Tests: []types.GoldenTest{
{
Args: []string{"--no-push"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "plan",
},
},
Expand Down
6 changes: 5 additions & 1 deletion golden/testdata/test_issue_mz703/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ var Tests = types.GoldenTests{
{
Args: []string{"--no-push", "--cache"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
CachedKeys: []string{
"ef4ba1bfa1a8010630d9a007fad694d95d88419c791f0053b5525169f21e3247",
Expand All @@ -22,6 +24,8 @@ var Tests = types.GoldenTests{
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_CACHE_PROBE_AFTER_MISS": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
CachedKeys: []string{
"ef4ba1bfa1a8010630d9a007fad694d95d88419c791f0053b5525169f21e3247",
Expand Down
24 changes: 14 additions & 10 deletions golden/testdata/test_issue_mz791/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,20 @@ var Tests = types.GoldenTests{
{
Args: []string{"--no-push", "--cache", "--cache-copy-layers", "--build-arg", "A=one"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_INFER_CROSS_STAGE_CACHE_KEY": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "unresolved_one",
},
{
Args: []string{"--no-push", "--cache", "--cache-copy-layers", "--build-arg", "A=two"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_INFER_CROSS_STAGE_CACHE_KEY": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "unresolved_two",
},
Expand All @@ -30,18 +34,18 @@ var Tests = types.GoldenTests{
{
Args: []string{"--no-push", "--cache", "--cache-copy-layers", "--build-arg", "A=one"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_INFER_CROSS_STAGE_CACHE_KEY": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "resolved_one",
},
{
Args: []string{"--no-push", "--cache", "--cache-copy-layers", "--build-arg", "A=two"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_INFER_CROSS_STAGE_CACHE_KEY": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "resolved_two",
},
Expand Down
12 changes: 8 additions & 4 deletions golden/testdata/test_issue_mz813/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,18 @@ var Tests = types.GoldenTests{
{
Args: []string{"--no-push", "--cache", "--build-arg", "A=one"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
Plan: "unresolved_one",
},
{
Args: []string{"--no-push", "--cache", "--build-arg", "A=two"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
Plan: "unresolved_two",
},
Expand All @@ -29,15 +33,15 @@ var Tests = types.GoldenTests{
Args: []string{"--no-push", "--cache", "--build-arg", "A=one"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "1",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
Plan: "resolved_one",
},
{
Args: []string{"--no-push", "--cache", "--build-arg", "A=two"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "1",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
Plan: "resolved_two",
},
Expand Down
16 changes: 8 additions & 8 deletions golden/testdata/test_issue_mz822/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,18 @@ var Tests = types.GoldenTests{
{
Args: []string{"--no-push", "--cache", "--build-arg", "A=one"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_EXPAND_HEREDOC": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
Plan: "unresolved",
},
{
Args: []string{"--no-push", "--cache", "--build-arg", "A=two"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_EXPAND_HEREDOC": "1",
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "0",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
Plan: "unresolved",
},
Expand All @@ -34,17 +36,15 @@ var Tests = types.GoldenTests{
Args: []string{"--no-push", "--cache", "--build-arg", "A=one"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "1",
"FF_KANIKO_EXPAND_HEREDOC": "1",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
Plan: "resolved_one",
},
{
Args: []string{"--no-push", "--cache", "--build-arg", "A=two"},
Env: map[string]string{
"FF_KANIKO_CACHE_LOOKAHEAD": "1",
"FF_KANIKO_RESOLVE_CACHE_KEY": "1",
"FF_KANIKO_EXPAND_HEREDOC": "1",
"FF_KANIKO_ROLLING_CACHE_KEY": "0",
},
Plan: "resolved_two",
},
Expand Down
7 changes: 5 additions & 2 deletions golden/testdata/test_issue_mz936/test.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,20 @@ var Tests = types.GoldenTests{
Tests: []types.GoldenTest{
{
Args: []string{"--no-push"},
Env: map[string]string{"FF_KANIKO_SHARED_BASE_CACHE": "1"},
Env: map[string]string{},
Plan: "shared",
},
{
Args: []string{"-d", "example.com/img:latest"},
Env: map[string]string{"FF_KANIKO_SHARED_BASE_CACHE": "1"},
Env: map[string]string{},
Plan: "push",
},
{
// Flag off: every base streams, the behavior before this change.
Args: []string{"--no-push"},
Env: map[string]string{
"FF_KANIKO_SHARED_BASE_CACHE": "0",
},
Plan: "streamed",
},
},
Expand Down
Loading
Loading