Copy disabled (too large)
Download .txt
Showing preview only (17,581K chars total). Download the full file to get everything.
Repository: GoogleContainerTools/kaniko
Branch: main
Commit: 236ba5690eda
Files: 6691
Total size: 67.8 MB
Directory structure:
gitextract_j9trgfvp/
├── .dockerignore
├── .github/
│ ├── ISSUE_TEMPLATE/
│ │ └── bug_report.md
│ ├── dependabot.yml
│ ├── pull_request_template.md
│ └── workflows/
│ ├── images.yaml
│ ├── integration-tests.yaml
│ ├── nightly-vulnerability-scan.yml
│ └── unit-tests.yaml
├── .gitignore
├── .golangci.yaml
├── .prettierrc
├── CHANGELOG.md
├── CONTRIBUTING.md
├── DEVELOPMENT.md
├── LICENSE
├── MAINTAINERS
├── Makefile
├── README.md
├── RELEASE.md
├── ROADMAP.md
├── SECURITY.md
├── Vagrantfile
├── benchmark.sh
├── cmd/
│ ├── executor/
│ │ ├── cmd/
│ │ │ ├── root.go
│ │ │ ├── root_test.go
│ │ │ └── version.go
│ │ └── main.go
│ └── warmer/
│ ├── cmd/
│ │ └── root.go
│ └── main.go
├── code-of-conduct.md
├── cosign.pub
├── deploy/
│ └── Dockerfile
├── docs/
│ ├── design_proposals/
│ │ ├── design-proposal-template.md
│ │ └── filesystem-resolution-proposal-01.md
│ ├── designdoc.md
│ ├── testplan.md
│ └── tutorial.md
├── examples/
│ ├── kaniko-cache-claim.yaml
│ ├── kaniko-cache-volume.yaml
│ ├── kaniko-test.yaml
│ ├── kaniko-warmer.yaml
│ ├── pod-blobstorage.yaml
│ ├── pod-build-profile.yaml
│ ├── pod.yaml
│ ├── volume-claim.yaml
│ └── volume.yaml
├── files/
│ └── nsswitch.conf
├── go.mod
├── go.sum
├── hack/
│ ├── .gitignore
│ ├── boilerplate/
│ │ ├── boilerplate.Dockerfile.txt
│ │ ├── boilerplate.Makefile.txt
│ │ ├── boilerplate.go.txt
│ │ ├── boilerplate.py
│ │ ├── boilerplate.py.txt
│ │ └── boilerplate.sh.txt
│ ├── boilerplate.sh
│ ├── gofmt.sh
│ ├── install_golint.sh
│ ├── linter.sh
│ ├── release.sh
│ └── release_notes/
│ ├── changelog_template.txt
│ └── listpullreqs.go
├── integration/
│ ├── .dockerignore
│ ├── .gitignore
│ ├── BUILD
│ ├── benchmark_fs/
│ │ ├── Dockerfile
│ │ ├── cloudbuild.yaml
│ │ ├── context.txt
│ │ └── make.sh
│ ├── benchmark_test.go
│ ├── cleanup.go
│ ├── cmd.go
│ ├── config.go
│ ├── context/
│ │ ├── arr[0].txt
│ │ ├── bar/
│ │ │ ├── bam/
│ │ │ │ └── bat
│ │ │ ├── bat
│ │ │ └── baz
│ │ ├── empty/
│ │ │ └── .gitignore
│ │ ├── foo
│ │ ├── qux/
│ │ │ ├── qup
│ │ │ ├── quw/
│ │ │ │ └── que
│ │ │ └── quz
│ │ ├── tars/
│ │ │ ├── file
│ │ │ └── file.bz2
│ │ └── workspace/
│ │ └── test
│ ├── dockerfiles/
│ │ ├── 1097
│ │ ├── Dockerfile_dockerignore_relative
│ │ ├── Dockerfile_dockerignore_relative.dockerignore
│ │ ├── Dockerfile_git_buildcontext
│ │ ├── Dockerfile_hardlink_base
│ │ ├── Dockerfile_onbuild_base
│ │ ├── Dockerfile_registry_mirror
│ │ ├── Dockerfile_relative_copy
│ │ ├── Dockerfile_test_add
│ │ ├── Dockerfile_test_add_404
│ │ ├── Dockerfile_test_add_chown_intermediate_dirs
│ │ ├── Dockerfile_test_add_dest_symlink_dir
│ │ ├── Dockerfile_test_add_url_with_arg
│ │ ├── Dockerfile_test_arg_blank_with_quotes
│ │ ├── Dockerfile_test_arg_from_quotes
│ │ ├── Dockerfile_test_arg_from_single_quotes
│ │ ├── Dockerfile_test_arg_multi
│ │ ├── Dockerfile_test_arg_multi_empty_val
│ │ ├── Dockerfile_test_arg_multi_with_quotes
│ │ ├── Dockerfile_test_arg_secret
│ │ ├── Dockerfile_test_arg_two_level
│ │ ├── Dockerfile_test_cache
│ │ ├── Dockerfile_test_cache_copy
│ │ ├── Dockerfile_test_cache_copy_oci
│ │ ├── Dockerfile_test_cache_install
│ │ ├── Dockerfile_test_cache_install_oci
│ │ ├── Dockerfile_test_cache_oci
│ │ ├── Dockerfile_test_cache_perm
│ │ ├── Dockerfile_test_cache_perm_oci
│ │ ├── Dockerfile_test_cmd
│ │ ├── Dockerfile_test_complex_substitution
│ │ ├── Dockerfile_test_copy
│ │ ├── Dockerfile_test_copy_bucket
│ │ ├── Dockerfile_test_copy_chown_intermediate_dirs
│ │ ├── Dockerfile_test_copy_chown_nonexisting_user
│ │ ├── Dockerfile_test_copy_reproducible
│ │ ├── Dockerfile_test_copy_root_multistage
│ │ ├── Dockerfile_test_copy_same_file_many_times
│ │ ├── Dockerfile_test_copy_symlink
│ │ ├── Dockerfile_test_copyadd_chmod
│ │ ├── Dockerfile_test_daemons
│ │ ├── Dockerfile_test_dangling_symlink
│ │ ├── Dockerfile_test_deleted_file_cached
│ │ ├── Dockerfile_test_dockerignore
│ │ ├── Dockerfile_test_env
│ │ ├── Dockerfile_test_expose
│ │ ├── Dockerfile_test_extract_fs
│ │ ├── Dockerfile_test_extraction
│ │ ├── Dockerfile_test_from_multistage_capital
│ │ ├── Dockerfile_test_hardlink
│ │ ├── Dockerfile_test_ignore
│ │ ├── Dockerfile_test_issue_1039
│ │ ├── Dockerfile_test_issue_1837
│ │ ├── Dockerfile_test_issue_2049
│ │ ├── Dockerfile_test_issue_2066
│ │ ├── Dockerfile_test_issue_519
│ │ ├── Dockerfile_test_issue_647
│ │ ├── Dockerfile_test_issue_684
│ │ ├── Dockerfile_test_issue_704
│ │ ├── Dockerfile_test_label
│ │ ├── Dockerfile_test_maintainer
│ │ ├── Dockerfile_test_meta_arg
│ │ ├── Dockerfile_test_metadata
│ │ ├── Dockerfile_test_multistage
│ │ ├── Dockerfile_test_multistage_args_issue_1911
│ │ ├── Dockerfile_test_mv_add
│ │ ├── Dockerfile_test_onbuild
│ │ ├── Dockerfile_test_parent_dir_perms
│ │ ├── Dockerfile_test_registry
│ │ ├── Dockerfile_test_replaced_hardlinks
│ │ ├── Dockerfile_test_replaced_symlinks
│ │ ├── Dockerfile_test_run
│ │ ├── Dockerfile_test_run_2
│ │ ├── Dockerfile_test_run_new
│ │ ├── Dockerfile_test_run_redo
│ │ ├── Dockerfile_test_scratch
│ │ ├── Dockerfile_test_snapshotter_ignorelist
│ │ ├── Dockerfile_test_target
│ │ ├── Dockerfile_test_user
│ │ ├── Dockerfile_test_user_home
│ │ ├── Dockerfile_test_user_nonexisting
│ │ ├── Dockerfile_test_user_run
│ │ ├── Dockerfile_test_volume
│ │ ├── Dockerfile_test_volume_2
│ │ ├── Dockerfile_test_volume_3
│ │ ├── Dockerfile_test_volume_4
│ │ ├── Dockerfile_test_whitelist
│ │ ├── Dockerfile_test_workdir
│ │ ├── Dockerfile_test_workdir_with_user
│ │ ├── TestReplaceFolderWithFile
│ │ └── TestReplaceFolderWithLink
│ ├── dockerfiles-with-context/
│ │ ├── issue-1020/
│ │ │ ├── Dockerfile
│ │ │ └── package.json
│ │ ├── issue-1315/
│ │ │ └── Dockerfile
│ │ ├── issue-2075/
│ │ │ ├── Dockerfile
│ │ │ └── top1
│ │ ├── issue-57/
│ │ │ ├── Dockerfile
│ │ │ ├── a.txt
│ │ │ └── b.txt
│ │ ├── issue-721/
│ │ │ ├── Dockerfile
│ │ │ └── test.txt
│ │ └── issue-774/
│ │ ├── Dockerfile
│ │ └── test-file
│ ├── ignore/
│ │ ├── bar
│ │ ├── baz
│ │ └── foo
│ ├── ignore_relative/
│ │ ├── bar
│ │ ├── baz
│ │ └── foo
│ ├── images.go
│ ├── integration_test.go
│ ├── integration_with_context_test.go
│ ├── integration_with_stdin_test.go
│ ├── k8s-job.yaml
│ ├── k8s_test.go
│ ├── tar.go
│ └── testdata/
│ ├── Dockerfile.trivial
│ ├── build.yaml
│ ├── exec.yaml
│ ├── exit-code-propagation/
│ │ └── Dockerfile_exit_code_propagation
│ ├── files.yaml
│ └── testfiles.yaml
├── logo/
│ └── README.md
├── pkg/
│ ├── buildcontext/
│ │ ├── azureblob.go
│ │ ├── buildcontext.go
│ │ ├── dir.go
│ │ ├── gcs.go
│ │ ├── git.go
│ │ ├── git_test.go
│ │ ├── https.go
│ │ ├── https_test.go
│ │ ├── s3.go
│ │ ├── tar.go
│ │ └── tar_test.go
│ ├── cache/
│ │ ├── cache.go
│ │ ├── doc_test.go
│ │ ├── errors.go
│ │ ├── warm.go
│ │ └── warm_test.go
│ ├── commands/
│ │ ├── add.go
│ │ ├── add_test.go
│ │ ├── arg.go
│ │ ├── base_command.go
│ │ ├── cache.go
│ │ ├── cache_test.go
│ │ ├── cmd.go
│ │ ├── cmd_test.go
│ │ ├── commands.go
│ │ ├── copy.go
│ │ ├── copy_test.go
│ │ ├── entrypoint.go
│ │ ├── entrypoint_test.go
│ │ ├── env.go
│ │ ├── env_test.go
│ │ ├── expose.go
│ │ ├── expose_test.go
│ │ ├── fake_commands.go
│ │ ├── healthcheck.go
│ │ ├── label.go
│ │ ├── label_test.go
│ │ ├── onbuild.go
│ │ ├── onbuild_test.go
│ │ ├── run.go
│ │ ├── run_marker.go
│ │ ├── run_test.go
│ │ ├── shell.go
│ │ ├── shell_test.go
│ │ ├── stopsignal.go
│ │ ├── stopsignal_test.go
│ │ ├── user.go
│ │ ├── user_test.go
│ │ ├── volume.go
│ │ ├── volume_test.go
│ │ ├── workdir.go
│ │ └── workdir_test.go
│ ├── config/
│ │ ├── args.go
│ │ ├── args_test.go
│ │ ├── init.go
│ │ ├── options.go
│ │ ├── options_test.go
│ │ └── stage.go
│ ├── constants/
│ │ └── constants.go
│ ├── creds/
│ │ └── creds.go
│ ├── dockerfile/
│ │ ├── buildargs.go
│ │ ├── dockerfile.go
│ │ └── dockerfile_test.go
│ ├── executor/
│ │ ├── build.go
│ │ ├── build_test.go
│ │ ├── composite_cache.go
│ │ ├── composite_cache_test.go
│ │ ├── copy_multistage_test.go
│ │ ├── fakes.go
│ │ ├── push.go
│ │ └── push_test.go
│ ├── fakes/
│ │ └── image.go
│ ├── filesystem/
│ │ ├── resolve.go
│ │ └── resolve_test.go
│ ├── image/
│ │ ├── image_util.go
│ │ ├── image_util_test.go
│ │ └── remote/
│ │ ├── remote.go
│ │ └── remote_test.go
│ ├── logging/
│ │ └── logging.go
│ ├── mocks/
│ │ └── go-containerregistry/
│ │ └── mockv1/
│ │ └── mocks.go
│ ├── snapshot/
│ │ ├── layered_map.go
│ │ ├── layered_map_test.go
│ │ ├── snapshot.go
│ │ └── snapshot_test.go
│ ├── timing/
│ │ ├── timing.go
│ │ └── timing_test.go
│ ├── util/
│ │ ├── .editorconfig
│ │ ├── azureblob_util.go
│ │ ├── azureblob_util_test.go
│ │ ├── bucket/
│ │ │ ├── bucket_util.go
│ │ │ └── bucket_util_test.go
│ │ ├── command_util.go
│ │ ├── command_util_test.go
│ │ ├── fs_util.go
│ │ ├── fs_util_test.go
│ │ ├── gcr_util.go
│ │ ├── gcr_util_test.go
│ │ ├── groupids_cgo.go
│ │ ├── groupids_fallback.go
│ │ ├── proc/
│ │ │ ├── proc.go
│ │ │ └── proc_test.go
│ │ ├── syscall_credentials.go
│ │ ├── syscall_credentials_test.go
│ │ ├── tar_util.go
│ │ ├── tar_util_test.go
│ │ ├── transport_util.go
│ │ ├── transport_util_test.go
│ │ ├── util.go
│ │ └── util_test.go
│ └── version/
│ └── version.go
├── run_in_docker.sh
├── scripts/
│ ├── boxed_warm_in_docker.sh
│ ├── integration-test.sh
│ ├── k3s-setup.sh
│ ├── local-registry-helm.yaml
│ ├── misc-integration-test.sh
│ └── test.sh
├── testutil/
│ ├── constants.go
│ └── util.go
├── tools/
│ └── tools.go
└── vendor/
├── cel.dev/
│ └── expr/
│ ├── .bazelversion
│ ├── .gitattributes
│ ├── .gitignore
│ ├── CODE_OF_CONDUCT.md
│ ├── CONTRIBUTING.md
│ ├── GOVERNANCE.md
│ ├── LICENSE
│ ├── MAINTAINERS.md
│ ├── MODULE.bazel
│ ├── README.md
│ ├── WORKSPACE
│ ├── WORKSPACE.bzlmod
│ ├── checked.pb.go
│ ├── cloudbuild.yaml
│ ├── eval.pb.go
│ ├── explain.pb.go
│ ├── regen_go_proto.sh
│ ├── regen_go_proto_canonical_protos.sh
│ ├── syntax.pb.go
│ └── value.pb.go
├── cloud.google.com/
│ └── go/
│ ├── LICENSE
│ ├── auth/
│ │ ├── CHANGES.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── auth.go
│ │ ├── credentials/
│ │ │ ├── compute.go
│ │ │ ├── detect.go
│ │ │ ├── doc.go
│ │ │ ├── filetypes.go
│ │ │ ├── internal/
│ │ │ │ ├── externalaccount/
│ │ │ │ │ ├── aws_provider.go
│ │ │ │ │ ├── executable_provider.go
│ │ │ │ │ ├── externalaccount.go
│ │ │ │ │ ├── file_provider.go
│ │ │ │ │ ├── info.go
│ │ │ │ │ ├── programmatic_provider.go
│ │ │ │ │ ├── url_provider.go
│ │ │ │ │ └── x509_provider.go
│ │ │ │ ├── externalaccountuser/
│ │ │ │ │ └── externalaccountuser.go
│ │ │ │ ├── gdch/
│ │ │ │ │ └── gdch.go
│ │ │ │ ├── impersonate/
│ │ │ │ │ ├── idtoken.go
│ │ │ │ │ └── impersonate.go
│ │ │ │ └── stsexchange/
│ │ │ │ └── sts_exchange.go
│ │ │ └── selfsignedjwt.go
│ │ ├── grpctransport/
│ │ │ ├── dial_socketopt.go
│ │ │ ├── directpath.go
│ │ │ ├── grpctransport.go
│ │ │ └── pool.go
│ │ ├── httptransport/
│ │ │ ├── httptransport.go
│ │ │ └── transport.go
│ │ ├── internal/
│ │ │ ├── compute/
│ │ │ │ ├── compute.go
│ │ │ │ ├── manufacturer.go
│ │ │ │ ├── manufacturer_linux.go
│ │ │ │ └── manufacturer_windows.go
│ │ │ ├── credsfile/
│ │ │ │ ├── credsfile.go
│ │ │ │ ├── filetype.go
│ │ │ │ └── parse.go
│ │ │ ├── internal.go
│ │ │ ├── jwt/
│ │ │ │ └── jwt.go
│ │ │ └── transport/
│ │ │ ├── cba.go
│ │ │ ├── cert/
│ │ │ │ ├── default_cert.go
│ │ │ │ ├── enterprise_cert.go
│ │ │ │ ├── secureconnect_cert.go
│ │ │ │ └── workload_cert.go
│ │ │ ├── s2a.go
│ │ │ └── transport.go
│ │ ├── oauth2adapt/
│ │ │ ├── CHANGES.md
│ │ │ ├── LICENSE
│ │ │ └── oauth2adapt.go
│ │ └── threelegged.go
│ ├── compute/
│ │ └── metadata/
│ │ ├── CHANGES.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── log.go
│ │ ├── metadata.go
│ │ ├── retry.go
│ │ ├── retry_linux.go
│ │ ├── syscheck.go
│ │ ├── syscheck_linux.go
│ │ └── syscheck_windows.go
│ ├── iam/
│ │ ├── CHANGES.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── apiv1/
│ │ │ └── iampb/
│ │ │ ├── iam_policy.pb.go
│ │ │ ├── options.pb.go
│ │ │ ├── policy.pb.go
│ │ │ └── resource_policy_member.pb.go
│ │ └── iam.go
│ ├── internal/
│ │ ├── .repo-metadata-full.json
│ │ ├── README.md
│ │ ├── annotate.go
│ │ ├── gen_info.sh
│ │ ├── optional/
│ │ │ └── optional.go
│ │ ├── retry.go
│ │ ├── trace/
│ │ │ └── trace.go
│ │ └── version/
│ │ ├── update_version.sh
│ │ └── version.go
│ ├── monitoring/
│ │ ├── LICENSE
│ │ ├── apiv3/
│ │ │ └── v2/
│ │ │ ├── alert_policy_client.go
│ │ │ ├── auxiliary.go
│ │ │ ├── auxiliary_go123.go
│ │ │ ├── doc.go
│ │ │ ├── gapic_metadata.json
│ │ │ ├── group_client.go
│ │ │ ├── helpers.go
│ │ │ ├── metric_client.go
│ │ │ ├── monitoringpb/
│ │ │ │ ├── alert.pb.go
│ │ │ │ ├── alert_service.pb.go
│ │ │ │ ├── common.pb.go
│ │ │ │ ├── dropped_labels.pb.go
│ │ │ │ ├── group.pb.go
│ │ │ │ ├── group_service.pb.go
│ │ │ │ ├── metric.pb.go
│ │ │ │ ├── metric_service.pb.go
│ │ │ │ ├── mutation_record.pb.go
│ │ │ │ ├── notification.pb.go
│ │ │ │ ├── notification_service.pb.go
│ │ │ │ ├── query_service.pb.go
│ │ │ │ ├── service.pb.go
│ │ │ │ ├── service_service.pb.go
│ │ │ │ ├── snooze.pb.go
│ │ │ │ ├── snooze_service.pb.go
│ │ │ │ ├── span_context.pb.go
│ │ │ │ ├── uptime.pb.go
│ │ │ │ └── uptime_service.pb.go
│ │ │ ├── notification_channel_client.go
│ │ │ ├── query_client.go
│ │ │ ├── service_monitoring_client.go
│ │ │ ├── snooze_client.go
│ │ │ ├── uptime_check_client.go
│ │ │ └── version.go
│ │ └── internal/
│ │ └── version.go
│ └── storage/
│ ├── CHANGES.md
│ ├── LICENSE
│ ├── README.md
│ ├── acl.go
│ ├── bucket.go
│ ├── client.go
│ ├── copy.go
│ ├── doc.go
│ ├── dynamic_delay.go
│ ├── emulator_test.sh
│ ├── experimental/
│ │ └── experimental.go
│ ├── grpc_client.go
│ ├── grpc_dp.go
│ ├── grpc_metrics.go
│ ├── grpc_reader.go
│ ├── grpc_reader_multi_range.go
│ ├── grpc_writer.go
│ ├── hmac.go
│ ├── http_client.go
│ ├── iam.go
│ ├── internal/
│ │ ├── apiv2/
│ │ │ ├── auxiliary.go
│ │ │ ├── auxiliary_go123.go
│ │ │ ├── doc.go
│ │ │ ├── gapic_metadata.json
│ │ │ ├── helpers.go
│ │ │ ├── storage_client.go
│ │ │ ├── storagepb/
│ │ │ │ └── storage.pb.go
│ │ │ └── version.go
│ │ ├── experimental.go
│ │ └── version.go
│ ├── invoke.go
│ ├── notifications.go
│ ├── option.go
│ ├── post_policy_v4.go
│ ├── reader.go
│ ├── storage.go
│ ├── storage.replay
│ ├── trace.go
│ └── writer.go
├── dario.cat/
│ └── mergo/
│ ├── .deepsource.toml
│ ├── .gitignore
│ ├── .travis.yml
│ ├── CODE_OF_CONDUCT.md
│ ├── CONTRIBUTING.md
│ ├── FUNDING.json
│ ├── LICENSE
│ ├── README.md
│ ├── SECURITY.md
│ ├── doc.go
│ ├── map.go
│ ├── merge.go
│ └── mergo.go
├── github.com/
│ ├── Azure/
│ │ ├── azure-sdk-for-go/
│ │ │ ├── LICENSE.txt
│ │ │ ├── NOTICE.txt
│ │ │ ├── sdk/
│ │ │ │ ├── azcore/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── ci.yml
│ │ │ │ │ ├── cloud/
│ │ │ │ │ │ ├── cloud.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── core.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── etag.go
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ ├── exported/
│ │ │ │ │ │ │ ├── exported.go
│ │ │ │ │ │ │ ├── pipeline.go
│ │ │ │ │ │ │ ├── request.go
│ │ │ │ │ │ │ └── response_error.go
│ │ │ │ │ │ ├── log/
│ │ │ │ │ │ │ └── log.go
│ │ │ │ │ │ ├── pollers/
│ │ │ │ │ │ │ ├── async/
│ │ │ │ │ │ │ │ └── async.go
│ │ │ │ │ │ │ ├── body/
│ │ │ │ │ │ │ │ └── body.go
│ │ │ │ │ │ │ ├── fake/
│ │ │ │ │ │ │ │ └── fake.go
│ │ │ │ │ │ │ ├── loc/
│ │ │ │ │ │ │ │ └── loc.go
│ │ │ │ │ │ │ ├── op/
│ │ │ │ │ │ │ │ └── op.go
│ │ │ │ │ │ │ ├── poller.go
│ │ │ │ │ │ │ └── util.go
│ │ │ │ │ │ └── shared/
│ │ │ │ │ │ ├── constants.go
│ │ │ │ │ │ └── shared.go
│ │ │ │ │ ├── log/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── log.go
│ │ │ │ │ ├── policy/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── policy.go
│ │ │ │ │ ├── runtime/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── errors.go
│ │ │ │ │ │ ├── pager.go
│ │ │ │ │ │ ├── pipeline.go
│ │ │ │ │ │ ├── policy_api_version.go
│ │ │ │ │ │ ├── policy_bearer_token.go
│ │ │ │ │ │ ├── policy_body_download.go
│ │ │ │ │ │ ├── policy_http_header.go
│ │ │ │ │ │ ├── policy_http_trace.go
│ │ │ │ │ │ ├── policy_include_response.go
│ │ │ │ │ │ ├── policy_key_credential.go
│ │ │ │ │ │ ├── policy_logging.go
│ │ │ │ │ │ ├── policy_request_id.go
│ │ │ │ │ │ ├── policy_retry.go
│ │ │ │ │ │ ├── policy_sas_credential.go
│ │ │ │ │ │ ├── policy_telemetry.go
│ │ │ │ │ │ ├── poller.go
│ │ │ │ │ │ ├── request.go
│ │ │ │ │ │ ├── response.go
│ │ │ │ │ │ ├── transport_default_dialer_other.go
│ │ │ │ │ │ ├── transport_default_dialer_wasm.go
│ │ │ │ │ │ └── transport_default_http_client.go
│ │ │ │ │ ├── streaming/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── progress.go
│ │ │ │ │ ├── to/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── to.go
│ │ │ │ │ └── tracing/
│ │ │ │ │ ├── constants.go
│ │ │ │ │ └── tracing.go
│ │ │ │ ├── internal/
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── diag/
│ │ │ │ │ │ ├── diag.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── errorinfo/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── errorinfo.go
│ │ │ │ │ ├── exported/
│ │ │ │ │ │ └── exported.go
│ │ │ │ │ ├── log/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── log.go
│ │ │ │ │ ├── poller/
│ │ │ │ │ │ └── util.go
│ │ │ │ │ ├── temporal/
│ │ │ │ │ │ └── resource.go
│ │ │ │ │ └── uuid/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── uuid.go
│ │ │ │ └── storage/
│ │ │ │ └── azblob/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── README.md
│ │ │ │ ├── appendblob/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ ├── assets.json
│ │ │ │ ├── blob/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ ├── responses.go
│ │ │ │ │ ├── retry_reader.go
│ │ │ │ │ └── utils.go
│ │ │ │ ├── bloberror/
│ │ │ │ │ └── error_codes.go
│ │ │ │ ├── blockblob/
│ │ │ │ │ ├── chunkwriting.go
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ ├── ci.yml
│ │ │ │ ├── client.go
│ │ │ │ ├── common.go
│ │ │ │ ├── constants.go
│ │ │ │ ├── container/
│ │ │ │ │ ├── batch_builder.go
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── internal/
│ │ │ │ │ ├── base/
│ │ │ │ │ │ └── clients.go
│ │ │ │ │ ├── exported/
│ │ │ │ │ │ ├── access_conditions.go
│ │ │ │ │ │ ├── access_policy.go
│ │ │ │ │ │ ├── blob_batch.go
│ │ │ │ │ │ ├── exported.go
│ │ │ │ │ │ ├── log_events.go
│ │ │ │ │ │ ├── set_expiry.go
│ │ │ │ │ │ ├── shared_key_credential.go
│ │ │ │ │ │ ├── transfer_validation_option.go
│ │ │ │ │ │ ├── user_delegation_credential.go
│ │ │ │ │ │ └── version.go
│ │ │ │ │ ├── generated/
│ │ │ │ │ │ ├── appendblob_client.go
│ │ │ │ │ │ ├── autorest.md
│ │ │ │ │ │ ├── blob_client.go
│ │ │ │ │ │ ├── block_blob_client.go
│ │ │ │ │ │ ├── build.go
│ │ │ │ │ │ ├── constants.go
│ │ │ │ │ │ ├── container_client.go
│ │ │ │ │ │ ├── models.go
│ │ │ │ │ │ ├── pageblob_client.go
│ │ │ │ │ │ ├── service_client.go
│ │ │ │ │ │ ├── zz_appendblob_client.go
│ │ │ │ │ │ ├── zz_blob_client.go
│ │ │ │ │ │ ├── zz_blockblob_client.go
│ │ │ │ │ │ ├── zz_constants.go
│ │ │ │ │ │ ├── zz_container_client.go
│ │ │ │ │ │ ├── zz_models.go
│ │ │ │ │ │ ├── zz_models_serde.go
│ │ │ │ │ │ ├── zz_options.go
│ │ │ │ │ │ ├── zz_pageblob_client.go
│ │ │ │ │ │ ├── zz_responses.go
│ │ │ │ │ │ ├── zz_service_client.go
│ │ │ │ │ │ ├── zz_time_rfc1123.go
│ │ │ │ │ │ ├── zz_time_rfc3339.go
│ │ │ │ │ │ └── zz_xml_helper.go
│ │ │ │ │ └── shared/
│ │ │ │ │ ├── batch_transfer.go
│ │ │ │ │ ├── buffer_manager.go
│ │ │ │ │ ├── bytes_writer.go
│ │ │ │ │ ├── challenge_policy.go
│ │ │ │ │ ├── mmf_unix.go
│ │ │ │ │ ├── mmf_windows.go
│ │ │ │ │ ├── section_writer.go
│ │ │ │ │ └── shared.go
│ │ │ │ ├── log.go
│ │ │ │ ├── migrationguide.md
│ │ │ │ ├── models.go
│ │ │ │ ├── pageblob/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ ├── responses.go
│ │ │ │ ├── sas/
│ │ │ │ │ ├── account.go
│ │ │ │ │ ├── query_params.go
│ │ │ │ │ ├── service.go
│ │ │ │ │ └── url_parts.go
│ │ │ │ ├── service/
│ │ │ │ │ ├── batch_builder.go
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ └── test-resources.json
│ │ │ ├── services/
│ │ │ │ └── preview/
│ │ │ │ └── containerregistry/
│ │ │ │ └── runtime/
│ │ │ │ └── 2019-08-15-preview/
│ │ │ │ └── containerregistry/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── accesstokens.go
│ │ │ │ ├── blob.go
│ │ │ │ ├── client.go
│ │ │ │ ├── dataplane_meta.json
│ │ │ │ ├── manifests.go
│ │ │ │ ├── models.go
│ │ │ │ ├── refreshtokens.go
│ │ │ │ ├── repository.go
│ │ │ │ ├── tag.go
│ │ │ │ ├── v2support.go
│ │ │ │ └── version.go
│ │ │ └── version/
│ │ │ └── version.go
│ │ └── go-ansiterm/
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── constants.go
│ │ ├── context.go
│ │ ├── csi_entry_state.go
│ │ ├── csi_param_state.go
│ │ ├── escape_intermediate_state.go
│ │ ├── escape_state.go
│ │ ├── event_handler.go
│ │ ├── ground_state.go
│ │ ├── osc_string_state.go
│ │ ├── parser.go
│ │ ├── parser_action_helpers.go
│ │ ├── parser_actions.go
│ │ ├── states.go
│ │ ├── utilities.go
│ │ └── winterm/
│ │ ├── ansi.go
│ │ ├── api.go
│ │ ├── attr_translation.go
│ │ ├── cursor_helpers.go
│ │ ├── erase_helpers.go
│ │ ├── scroll_helper.go
│ │ ├── utilities.go
│ │ └── win_event_handler.go
│ ├── GoogleCloudPlatform/
│ │ └── opentelemetry-operations-go/
│ │ ├── detectors/
│ │ │ └── gcp/
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── app_engine.go
│ │ │ ├── bms.go
│ │ │ ├── detector.go
│ │ │ ├── faas.go
│ │ │ ├── gce.go
│ │ │ └── gke.go
│ │ ├── exporter/
│ │ │ └── metric/
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── cloudmonitoring.go
│ │ │ ├── constants.go
│ │ │ ├── error.go
│ │ │ ├── metric.go
│ │ │ ├── option.go
│ │ │ └── version.go
│ │ └── internal/
│ │ └── resourcemapping/
│ │ ├── LICENSE
│ │ └── resourcemapping.go
│ ├── Microsoft/
│ │ ├── go-winio/
│ │ │ ├── .gitattributes
│ │ │ ├── .gitignore
│ │ │ ├── .golangci.yml
│ │ │ ├── CODEOWNERS
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── SECURITY.md
│ │ │ ├── backup.go
│ │ │ ├── backuptar/
│ │ │ │ ├── doc.go
│ │ │ │ ├── strconv.go
│ │ │ │ └── tar.go
│ │ │ ├── doc.go
│ │ │ ├── ea.go
│ │ │ ├── file.go
│ │ │ ├── fileinfo.go
│ │ │ ├── hvsock.go
│ │ │ ├── internal/
│ │ │ │ ├── fs/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── fs.go
│ │ │ │ │ ├── security.go
│ │ │ │ │ └── zsyscall_windows.go
│ │ │ │ ├── socket/
│ │ │ │ │ ├── rawaddr.go
│ │ │ │ │ ├── socket.go
│ │ │ │ │ └── zsyscall_windows.go
│ │ │ │ └── stringbuffer/
│ │ │ │ └── wstring.go
│ │ │ ├── pipe.go
│ │ │ ├── pkg/
│ │ │ │ ├── bindfilter/
│ │ │ │ │ ├── bind_filter.go
│ │ │ │ │ └── zsyscall_windows.go
│ │ │ │ └── guid/
│ │ │ │ ├── guid.go
│ │ │ │ ├── guid_nonwindows.go
│ │ │ │ ├── guid_windows.go
│ │ │ │ └── variant_string.go
│ │ │ ├── privilege.go
│ │ │ ├── reparse.go
│ │ │ ├── sd.go
│ │ │ ├── syscall.go
│ │ │ ├── vhd/
│ │ │ │ ├── vhd.go
│ │ │ │ └── zvhd_windows.go
│ │ │ └── zsyscall_windows.go
│ │ └── hcsshim/
│ │ ├── .clang-format
│ │ ├── .gitattributes
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── CODEOWNERS
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── Makefile.bootfiles
│ │ ├── Protobuild.toml
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── cmd/
│ │ │ └── containerd-shim-runhcs-v1/
│ │ │ └── options/
│ │ │ ├── doc.go
│ │ │ ├── runhcs.pb.go
│ │ │ └── runhcs.proto
│ │ ├── computestorage/
│ │ │ ├── attach.go
│ │ │ ├── destroy.go
│ │ │ ├── detach.go
│ │ │ ├── export.go
│ │ │ ├── format.go
│ │ │ ├── helpers.go
│ │ │ ├── import.go
│ │ │ ├── initialize.go
│ │ │ ├── mount.go
│ │ │ ├── setup.go
│ │ │ ├── storage.go
│ │ │ └── zsyscall_windows.go
│ │ ├── container.go
│ │ ├── errors.go
│ │ ├── hcsshim.go
│ │ ├── hnsaccelnet.go
│ │ ├── hnsendpoint.go
│ │ ├── hnsglobals.go
│ │ ├── hnsnetwork.go
│ │ ├── hnspolicy.go
│ │ ├── hnspolicylist.go
│ │ ├── hnssupport.go
│ │ ├── interface.go
│ │ ├── internal/
│ │ │ ├── cow/
│ │ │ │ └── cow.go
│ │ │ ├── hcs/
│ │ │ │ ├── callback.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── errors.go
│ │ │ │ ├── process.go
│ │ │ │ ├── schema1/
│ │ │ │ │ └── schema1.go
│ │ │ │ ├── schema2/
│ │ │ │ │ ├── attachment.go
│ │ │ │ │ ├── battery.go
│ │ │ │ │ ├── cache_query_stats_response.go
│ │ │ │ │ ├── chipset.go
│ │ │ │ │ ├── cimfs.go
│ │ │ │ │ ├── close_handle.go
│ │ │ │ │ ├── com_port.go
│ │ │ │ │ ├── compute_system.go
│ │ │ │ │ ├── configuration.go
│ │ │ │ │ ├── console_size.go
│ │ │ │ │ ├── container.go
│ │ │ │ │ ├── container_credential_guard_add_instance_request.go
│ │ │ │ │ ├── container_credential_guard_hv_socket_service_config.go
│ │ │ │ │ ├── container_credential_guard_instance.go
│ │ │ │ │ ├── container_credential_guard_modify_operation.go
│ │ │ │ │ ├── container_credential_guard_operation_request.go
│ │ │ │ │ ├── container_credential_guard_remove_instance_request.go
│ │ │ │ │ ├── container_credential_guard_state.go
│ │ │ │ │ ├── container_credential_guard_system_info.go
│ │ │ │ │ ├── container_memory_information.go
│ │ │ │ │ ├── cpu_group.go
│ │ │ │ │ ├── cpu_group_affinity.go
│ │ │ │ │ ├── cpu_group_config.go
│ │ │ │ │ ├── cpu_group_configurations.go
│ │ │ │ │ ├── cpu_group_operations.go
│ │ │ │ │ ├── cpu_group_property.go
│ │ │ │ │ ├── create_group_operation.go
│ │ │ │ │ ├── debug_options.go
│ │ │ │ │ ├── delete_group_operation.go
│ │ │ │ │ ├── device.go
│ │ │ │ │ ├── devices.go
│ │ │ │ │ ├── enhanced_mode_video.go
│ │ │ │ │ ├── firmware.go
│ │ │ │ │ ├── flexible_io_device.go
│ │ │ │ │ ├── guest_connection.go
│ │ │ │ │ ├── guest_connection_info.go
│ │ │ │ │ ├── guest_crash_reporting.go
│ │ │ │ │ ├── guest_os.go
│ │ │ │ │ ├── guest_state.go
│ │ │ │ │ ├── host_processor_modify_request.go
│ │ │ │ │ ├── hosted_system.go
│ │ │ │ │ ├── hv_socket.go
│ │ │ │ │ ├── hv_socket_2.go
│ │ │ │ │ ├── hv_socket_address.go
│ │ │ │ │ ├── hv_socket_service_config.go
│ │ │ │ │ ├── hv_socket_system_config.go
│ │ │ │ │ ├── interrupt_moderation_mode.go
│ │ │ │ │ ├── iov_settings.go
│ │ │ │ │ ├── isolation_settings.go
│ │ │ │ │ ├── keyboard.go
│ │ │ │ │ ├── layer.go
│ │ │ │ │ ├── linux_kernel_direct.go
│ │ │ │ │ ├── logical_processor.go
│ │ │ │ │ ├── mapped_directory.go
│ │ │ │ │ ├── mapped_pipe.go
│ │ │ │ │ ├── memory.go
│ │ │ │ │ ├── memory_backing_type.go
│ │ │ │ │ ├── memory_information_for_vm.go
│ │ │ │ │ ├── memory_stats.go
│ │ │ │ │ ├── model_container_definition_device.go
│ │ │ │ │ ├── model_device_category.go
│ │ │ │ │ ├── model_device_extension.go
│ │ │ │ │ ├── model_device_instance.go
│ │ │ │ │ ├── model_device_namespace.go
│ │ │ │ │ ├── model_interface_class.go
│ │ │ │ │ ├── model_namespace.go
│ │ │ │ │ ├── model_object_directory.go
│ │ │ │ │ ├── model_object_namespace.go
│ │ │ │ │ ├── model_object_symlink.go
│ │ │ │ │ ├── modification_request.go
│ │ │ │ │ ├── modify_setting_request.go
│ │ │ │ │ ├── mouse.go
│ │ │ │ │ ├── network_adapter.go
│ │ │ │ │ ├── networking.go
│ │ │ │ │ ├── numa.go
│ │ │ │ │ ├── numa_node.go
│ │ │ │ │ ├── numa_node_memory.go
│ │ │ │ │ ├── numa_node_processor.go
│ │ │ │ │ ├── numa_processors.go
│ │ │ │ │ ├── numa_setting.go
│ │ │ │ │ ├── pause_notification.go
│ │ │ │ │ ├── pause_options.go
│ │ │ │ │ ├── plan9.go
│ │ │ │ │ ├── plan9_share.go
│ │ │ │ │ ├── process_details.go
│ │ │ │ │ ├── process_modify_request.go
│ │ │ │ │ ├── process_parameters.go
│ │ │ │ │ ├── process_status.go
│ │ │ │ │ ├── processor.go
│ │ │ │ │ ├── processor_stats.go
│ │ │ │ │ ├── processor_topology.go
│ │ │ │ │ ├── properties.go
│ │ │ │ │ ├── property_query.go
│ │ │ │ │ ├── property_type.go
│ │ │ │ │ ├── rdp_connection_options.go
│ │ │ │ │ ├── registry_changes.go
│ │ │ │ │ ├── registry_hive.go
│ │ │ │ │ ├── registry_key.go
│ │ │ │ │ ├── registry_value.go
│ │ │ │ │ ├── registry_value_type.go
│ │ │ │ │ ├── restore_state.go
│ │ │ │ │ ├── save_options.go
│ │ │ │ │ ├── scsi.go
│ │ │ │ │ ├── security_settings.go
│ │ │ │ │ ├── service_properties.go
│ │ │ │ │ ├── shared_memory_configuration.go
│ │ │ │ │ ├── shared_memory_region.go
│ │ │ │ │ ├── shared_memory_region_info.go
│ │ │ │ │ ├── silo_properties.go
│ │ │ │ │ ├── statistics.go
│ │ │ │ │ ├── storage.go
│ │ │ │ │ ├── storage_qo_s.go
│ │ │ │ │ ├── storage_stats.go
│ │ │ │ │ ├── system_time.go
│ │ │ │ │ ├── time_zone_information.go
│ │ │ │ │ ├── topology.go
│ │ │ │ │ ├── uefi.go
│ │ │ │ │ ├── uefi_boot_entry.go
│ │ │ │ │ ├── version.go
│ │ │ │ │ ├── video_monitor.go
│ │ │ │ │ ├── virtual_machine.go
│ │ │ │ │ ├── virtual_machine_memory.go
│ │ │ │ │ ├── virtual_machine_processor.go
│ │ │ │ │ ├── virtual_node_info.go
│ │ │ │ │ ├── virtual_p_mem_controller.go
│ │ │ │ │ ├── virtual_p_mem_device.go
│ │ │ │ │ ├── virtual_p_mem_mapping.go
│ │ │ │ │ ├── virtual_pci_device.go
│ │ │ │ │ ├── virtual_pci_function.go
│ │ │ │ │ ├── virtual_slit_type.go
│ │ │ │ │ ├── virtual_smb.go
│ │ │ │ │ ├── virtual_smb_share.go
│ │ │ │ │ ├── virtual_smb_share_options.go
│ │ │ │ │ ├── vm_memory.go
│ │ │ │ │ ├── vm_processor_limits.go
│ │ │ │ │ └── windows_crash_reporting.go
│ │ │ │ ├── service.go
│ │ │ │ ├── system.go
│ │ │ │ ├── utils.go
│ │ │ │ └── waithelper.go
│ │ │ ├── hcserror/
│ │ │ │ ├── doc.go
│ │ │ │ └── hcserror.go
│ │ │ ├── hns/
│ │ │ │ ├── doc.go
│ │ │ │ ├── hns.go
│ │ │ │ ├── hnsaccelnet.go
│ │ │ │ ├── hnsendpoint.go
│ │ │ │ ├── hnsfuncs.go
│ │ │ │ ├── hnsglobals.go
│ │ │ │ ├── hnsnetwork.go
│ │ │ │ ├── hnspolicy.go
│ │ │ │ ├── hnspolicylist.go
│ │ │ │ ├── hnssupport.go
│ │ │ │ ├── namespace.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ ├── interop/
│ │ │ │ ├── doc.go
│ │ │ │ ├── interop.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ ├── jobobject/
│ │ │ │ ├── doc.go
│ │ │ │ ├── iocp.go
│ │ │ │ ├── jobobject.go
│ │ │ │ └── limits.go
│ │ │ ├── log/
│ │ │ │ ├── context.go
│ │ │ │ ├── format.go
│ │ │ │ ├── hook.go
│ │ │ │ ├── nopformatter.go
│ │ │ │ └── scrub.go
│ │ │ ├── logfields/
│ │ │ │ └── fields.go
│ │ │ ├── longpath/
│ │ │ │ └── longpath.go
│ │ │ ├── memory/
│ │ │ │ ├── pool.go
│ │ │ │ └── types.go
│ │ │ ├── mergemaps/
│ │ │ │ └── merge.go
│ │ │ ├── oc/
│ │ │ │ ├── errors.go
│ │ │ │ ├── exporter.go
│ │ │ │ └── span.go
│ │ │ ├── protocol/
│ │ │ │ └── guestrequest/
│ │ │ │ └── types.go
│ │ │ ├── queue/
│ │ │ │ └── mq.go
│ │ │ ├── safefile/
│ │ │ │ ├── do.go
│ │ │ │ └── safeopen.go
│ │ │ ├── security/
│ │ │ │ ├── grantvmgroupaccess.go
│ │ │ │ ├── syscall_windows.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ ├── timeout/
│ │ │ │ └── timeout.go
│ │ │ ├── vmcompute/
│ │ │ │ ├── doc.go
│ │ │ │ ├── vmcompute.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ ├── wclayer/
│ │ │ │ ├── activatelayer.go
│ │ │ │ ├── baselayerreader.go
│ │ │ │ ├── baselayerwriter.go
│ │ │ │ ├── converttobaselayer.go
│ │ │ │ ├── createlayer.go
│ │ │ │ ├── createscratchlayer.go
│ │ │ │ ├── deactivatelayer.go
│ │ │ │ ├── destroylayer.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── expandscratchsize.go
│ │ │ │ ├── exportlayer.go
│ │ │ │ ├── getlayermountpath.go
│ │ │ │ ├── getsharedbaseimages.go
│ │ │ │ ├── grantvmaccess.go
│ │ │ │ ├── importlayer.go
│ │ │ │ ├── layerexists.go
│ │ │ │ ├── layerid.go
│ │ │ │ ├── layerutils.go
│ │ │ │ ├── legacy.go
│ │ │ │ ├── nametoguid.go
│ │ │ │ ├── preparelayer.go
│ │ │ │ ├── processimage.go
│ │ │ │ ├── unpreparelayer.go
│ │ │ │ ├── wclayer.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ └── winapi/
│ │ │ ├── bindflt.go
│ │ │ ├── cimfs.go
│ │ │ ├── console.go
│ │ │ ├── devices.go
│ │ │ ├── doc.go
│ │ │ ├── elevation.go
│ │ │ ├── errors.go
│ │ │ ├── filesystem.go
│ │ │ ├── jobobject.go
│ │ │ ├── logon.go
│ │ │ ├── memory.go
│ │ │ ├── net.go
│ │ │ ├── offlinereg.go
│ │ │ ├── path.go
│ │ │ ├── process.go
│ │ │ ├── processor.go
│ │ │ ├── system.go
│ │ │ ├── thread.go
│ │ │ ├── user.go
│ │ │ ├── utils.go
│ │ │ ├── winapi.go
│ │ │ └── zsyscall_windows.go
│ │ ├── layer.go
│ │ ├── osversion/
│ │ │ ├── osversion_windows.go
│ │ │ ├── platform_compat_windows.go
│ │ │ └── windowsbuilds.go
│ │ ├── pkg/
│ │ │ └── ociwclayer/
│ │ │ ├── doc.go
│ │ │ ├── export.go
│ │ │ └── import.go
│ │ ├── process.go
│ │ └── zsyscall_windows.go
│ ├── ProtonMail/
│ │ └── go-crypto/
│ │ ├── AUTHORS
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ ├── PATENTS
│ │ ├── bitcurves/
│ │ │ └── bitcurve.go
│ │ ├── brainpool/
│ │ │ ├── brainpool.go
│ │ │ └── rcurve.go
│ │ ├── eax/
│ │ │ ├── eax.go
│ │ │ ├── eax_test_vectors.go
│ │ │ └── random_vectors.go
│ │ ├── internal/
│ │ │ └── byteutil/
│ │ │ └── byteutil.go
│ │ ├── ocb/
│ │ │ ├── ocb.go
│ │ │ ├── random_vectors.go
│ │ │ ├── rfc7253_test_vectors_suite_a.go
│ │ │ └── rfc7253_test_vectors_suite_b.go
│ │ └── openpgp/
│ │ ├── aes/
│ │ │ └── keywrap/
│ │ │ └── keywrap.go
│ │ ├── armor/
│ │ │ ├── armor.go
│ │ │ └── encode.go
│ │ ├── canonical_text.go
│ │ ├── ecdh/
│ │ │ └── ecdh.go
│ │ ├── ecdsa/
│ │ │ └── ecdsa.go
│ │ ├── ed25519/
│ │ │ └── ed25519.go
│ │ ├── ed448/
│ │ │ └── ed448.go
│ │ ├── eddsa/
│ │ │ └── eddsa.go
│ │ ├── elgamal/
│ │ │ └── elgamal.go
│ │ ├── errors/
│ │ │ └── errors.go
│ │ ├── hash.go
│ │ ├── internal/
│ │ │ ├── algorithm/
│ │ │ │ ├── aead.go
│ │ │ │ ├── cipher.go
│ │ │ │ └── hash.go
│ │ │ ├── ecc/
│ │ │ │ ├── curve25519.go
│ │ │ │ ├── curve_info.go
│ │ │ │ ├── curves.go
│ │ │ │ ├── ed25519.go
│ │ │ │ ├── ed448.go
│ │ │ │ ├── generic.go
│ │ │ │ └── x448.go
│ │ │ └── encoding/
│ │ │ ├── encoding.go
│ │ │ ├── mpi.go
│ │ │ └── oid.go
│ │ ├── key_generation.go
│ │ ├── keys.go
│ │ ├── keys_test_data.go
│ │ ├── packet/
│ │ │ ├── aead_config.go
│ │ │ ├── aead_crypter.go
│ │ │ ├── aead_encrypted.go
│ │ │ ├── compressed.go
│ │ │ ├── config.go
│ │ │ ├── config_v5.go
│ │ │ ├── encrypted_key.go
│ │ │ ├── literal.go
│ │ │ ├── marker.go
│ │ │ ├── notation.go
│ │ │ ├── ocfb.go
│ │ │ ├── one_pass_signature.go
│ │ │ ├── opaque.go
│ │ │ ├── packet.go
│ │ │ ├── packet_sequence.go
│ │ │ ├── packet_unsupported.go
│ │ │ ├── padding.go
│ │ │ ├── private_key.go
│ │ │ ├── private_key_test_data.go
│ │ │ ├── public_key.go
│ │ │ ├── public_key_test_data.go
│ │ │ ├── reader.go
│ │ │ ├── recipient.go
│ │ │ ├── signature.go
│ │ │ ├── symmetric_key_encrypted.go
│ │ │ ├── symmetrically_encrypted.go
│ │ │ ├── symmetrically_encrypted_aead.go
│ │ │ ├── symmetrically_encrypted_mdc.go
│ │ │ ├── userattribute.go
│ │ │ └── userid.go
│ │ ├── read.go
│ │ ├── read_write_test_data.go
│ │ ├── s2k/
│ │ │ ├── s2k.go
│ │ │ ├── s2k_cache.go
│ │ │ └── s2k_config.go
│ │ ├── write.go
│ │ ├── x25519/
│ │ │ └── x25519.go
│ │ └── x448/
│ │ └── x448.go
│ ├── agext/
│ │ └── levenshtein/
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── DCO
│ │ ├── LICENSE
│ │ ├── MAINTAINERS
│ │ ├── NOTICE
│ │ ├── README.md
│ │ ├── levenshtein.go
│ │ ├── params.go
│ │ └── test.sh
│ ├── aws/
│ │ ├── aws-sdk-go-v2/
│ │ │ ├── LICENSE.txt
│ │ │ ├── NOTICE.txt
│ │ │ ├── aws/
│ │ │ │ ├── accountid_endpoint_mode.go
│ │ │ │ ├── arn/
│ │ │ │ │ └── arn.go
│ │ │ │ ├── checksum.go
│ │ │ │ ├── config.go
│ │ │ │ ├── context.go
│ │ │ │ ├── credential_cache.go
│ │ │ │ ├── credentials.go
│ │ │ │ ├── defaults/
│ │ │ │ │ ├── auto.go
│ │ │ │ │ ├── configuration.go
│ │ │ │ │ ├── defaults.go
│ │ │ │ │ └── doc.go
│ │ │ │ ├── defaultsmode.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── errors.go
│ │ │ │ ├── from_ptr.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── logging.go
│ │ │ │ ├── logging_generate.go
│ │ │ │ ├── middleware/
│ │ │ │ │ ├── metadata.go
│ │ │ │ │ ├── middleware.go
│ │ │ │ │ ├── osname.go
│ │ │ │ │ ├── osname_go115.go
│ │ │ │ │ ├── recursion_detection.go
│ │ │ │ │ ├── request_id.go
│ │ │ │ │ ├── request_id_retriever.go
│ │ │ │ │ └── user_agent.go
│ │ │ │ ├── protocol/
│ │ │ │ │ ├── eventstream/
│ │ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ │ ├── debug.go
│ │ │ │ │ │ ├── decode.go
│ │ │ │ │ │ ├── encode.go
│ │ │ │ │ │ ├── error.go
│ │ │ │ │ │ ├── eventstreamapi/
│ │ │ │ │ │ │ ├── headers.go
│ │ │ │ │ │ │ ├── middleware.go
│ │ │ │ │ │ │ ├── transport.go
│ │ │ │ │ │ │ └── transport_go117.go
│ │ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ │ ├── header.go
│ │ │ │ │ │ ├── header_value.go
│ │ │ │ │ │ └── message.go
│ │ │ │ │ ├── query/
│ │ │ │ │ │ ├── array.go
│ │ │ │ │ │ ├── encoder.go
│ │ │ │ │ │ ├── map.go
│ │ │ │ │ │ ├── middleware.go
│ │ │ │ │ │ ├── object.go
│ │ │ │ │ │ └── value.go
│ │ │ │ │ ├── restjson/
│ │ │ │ │ │ └── decoder_util.go
│ │ │ │ │ └── xml/
│ │ │ │ │ └── error_utils.go
│ │ │ │ ├── ratelimit/
│ │ │ │ │ ├── none.go
│ │ │ │ │ ├── token_bucket.go
│ │ │ │ │ └── token_rate_limit.go
│ │ │ │ ├── request.go
│ │ │ │ ├── retry/
│ │ │ │ │ ├── adaptive.go
│ │ │ │ │ ├── adaptive_ratelimit.go
│ │ │ │ │ ├── adaptive_token_bucket.go
│ │ │ │ │ ├── attempt_metrics.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── jitter_backoff.go
│ │ │ │ │ ├── metadata.go
│ │ │ │ │ ├── middleware.go
│ │ │ │ │ ├── retry.go
│ │ │ │ │ ├── retryable_error.go
│ │ │ │ │ ├── standard.go
│ │ │ │ │ ├── throttle_error.go
│ │ │ │ │ └── timeout_error.go
│ │ │ │ ├── retryer.go
│ │ │ │ ├── runtime.go
│ │ │ │ ├── signer/
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ └── v4/
│ │ │ │ │ │ ├── cache.go
│ │ │ │ │ │ ├── const.go
│ │ │ │ │ │ ├── header_rules.go
│ │ │ │ │ │ ├── headers.go
│ │ │ │ │ │ ├── hmac.go
│ │ │ │ │ │ ├── host.go
│ │ │ │ │ │ ├── scope.go
│ │ │ │ │ │ ├── time.go
│ │ │ │ │ │ └── util.go
│ │ │ │ │ └── v4/
│ │ │ │ │ ├── middleware.go
│ │ │ │ │ ├── presign_middleware.go
│ │ │ │ │ ├── stream.go
│ │ │ │ │ └── v4.go
│ │ │ │ ├── to_ptr.go
│ │ │ │ ├── transport/
│ │ │ │ │ └── http/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── content_type.go
│ │ │ │ │ ├── response_error.go
│ │ │ │ │ ├── response_error_middleware.go
│ │ │ │ │ └── timeout_read_closer.go
│ │ │ │ ├── types.go
│ │ │ │ └── version.go
│ │ │ ├── config/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── config.go
│ │ │ │ ├── defaultsmode.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── env_config.go
│ │ │ │ ├── generate.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── load_options.go
│ │ │ │ ├── local.go
│ │ │ │ ├── provider.go
│ │ │ │ ├── resolve.go
│ │ │ │ ├── resolve_bearer_token.go
│ │ │ │ ├── resolve_credentials.go
│ │ │ │ └── shared_config.go
│ │ │ ├── credentials/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── doc.go
│ │ │ │ ├── ec2rolecreds/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── provider.go
│ │ │ │ ├── endpointcreds/
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ └── client/
│ │ │ │ │ │ ├── auth.go
│ │ │ │ │ │ ├── client.go
│ │ │ │ │ │ ├── endpoints.go
│ │ │ │ │ │ └── middleware.go
│ │ │ │ │ └── provider.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── processcreds/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── provider.go
│ │ │ │ ├── ssocreds/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── sso_cached_token.go
│ │ │ │ │ ├── sso_credentials_provider.go
│ │ │ │ │ └── sso_token_provider.go
│ │ │ │ ├── static_provider.go
│ │ │ │ └── stscreds/
│ │ │ │ ├── assume_role_provider.go
│ │ │ │ └── web_identity_provider.go
│ │ │ ├── feature/
│ │ │ │ ├── ec2/
│ │ │ │ │ └── imds/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── api_client.go
│ │ │ │ │ ├── api_op_GetDynamicData.go
│ │ │ │ │ ├── api_op_GetIAMInfo.go
│ │ │ │ │ ├── api_op_GetInstanceIdentityDocument.go
│ │ │ │ │ ├── api_op_GetMetadata.go
│ │ │ │ │ ├── api_op_GetRegion.go
│ │ │ │ │ ├── api_op_GetToken.go
│ │ │ │ │ ├── api_op_GetUserData.go
│ │ │ │ │ ├── auth.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── endpoints.go
│ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ └── config/
│ │ │ │ │ │ └── resolvers.go
│ │ │ │ │ ├── request_middleware.go
│ │ │ │ │ └── token_provider.go
│ │ │ │ └── s3/
│ │ │ │ └── manager/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api.go
│ │ │ │ ├── arn.go
│ │ │ │ ├── bucket_region.go
│ │ │ │ ├── buffered_read_seeker.go
│ │ │ │ ├── default_read_seeker_write_to.go
│ │ │ │ ├── default_read_seeker_write_to_windows.go
│ │ │ │ ├── default_writer_read_from.go
│ │ │ │ ├── default_writer_read_from_windows.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── download.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── pool.go
│ │ │ │ ├── read_seeker_write_to.go
│ │ │ │ ├── types.go
│ │ │ │ ├── upload.go
│ │ │ │ └── writer_read_from.go
│ │ │ ├── internal/
│ │ │ │ ├── auth/
│ │ │ │ │ ├── auth.go
│ │ │ │ │ ├── scheme.go
│ │ │ │ │ └── smithy/
│ │ │ │ │ ├── bearer_token_adapter.go
│ │ │ │ │ ├── bearer_token_signer_adapter.go
│ │ │ │ │ ├── credentials_adapter.go
│ │ │ │ │ ├── smithy.go
│ │ │ │ │ └── v4signer_adapter.go
│ │ │ │ ├── awsutil/
│ │ │ │ │ ├── copy.go
│ │ │ │ │ ├── equal.go
│ │ │ │ │ ├── prettify.go
│ │ │ │ │ └── string_value.go
│ │ │ │ ├── configsources/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── config.go
│ │ │ │ │ ├── endpoints.go
│ │ │ │ │ └── go_module_metadata.go
│ │ │ │ ├── context/
│ │ │ │ │ └── context.go
│ │ │ │ ├── endpoints/
│ │ │ │ │ ├── awsrulesfn/
│ │ │ │ │ │ ├── arn.go
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── generate.go
│ │ │ │ │ │ ├── host.go
│ │ │ │ │ │ ├── partition.go
│ │ │ │ │ │ ├── partitions.go
│ │ │ │ │ │ └── partitions.json
│ │ │ │ │ ├── endpoints.go
│ │ │ │ │ └── v2/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── endpoints.go
│ │ │ │ │ └── go_module_metadata.go
│ │ │ │ ├── ini/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ ├── ini.go
│ │ │ │ │ ├── parse.go
│ │ │ │ │ ├── sections.go
│ │ │ │ │ ├── strings.go
│ │ │ │ │ ├── token.go
│ │ │ │ │ ├── tokenize.go
│ │ │ │ │ └── value.go
│ │ │ │ ├── middleware/
│ │ │ │ │ └── middleware.go
│ │ │ │ ├── rand/
│ │ │ │ │ └── rand.go
│ │ │ │ ├── sdk/
│ │ │ │ │ ├── interfaces.go
│ │ │ │ │ └── time.go
│ │ │ │ ├── sdkio/
│ │ │ │ │ └── byte.go
│ │ │ │ ├── shareddefaults/
│ │ │ │ │ └── shared_config.go
│ │ │ │ ├── strings/
│ │ │ │ │ └── strings.go
│ │ │ │ ├── sync/
│ │ │ │ │ └── singleflight/
│ │ │ │ │ ├── LICENSE
│ │ │ │ │ ├── docs.go
│ │ │ │ │ └── singleflight.go
│ │ │ │ ├── timeconv/
│ │ │ │ │ └── duration.go
│ │ │ │ └── v4a/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── credentials.go
│ │ │ │ ├── error.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ ├── crypto/
│ │ │ │ │ │ ├── compare.go
│ │ │ │ │ │ └── ecc.go
│ │ │ │ │ └── v4/
│ │ │ │ │ ├── const.go
│ │ │ │ │ ├── header_rules.go
│ │ │ │ │ ├── headers.go
│ │ │ │ │ ├── hmac.go
│ │ │ │ │ ├── host.go
│ │ │ │ │ ├── time.go
│ │ │ │ │ └── util.go
│ │ │ │ ├── middleware.go
│ │ │ │ ├── presign_middleware.go
│ │ │ │ ├── smithy.go
│ │ │ │ └── v4a.go
│ │ │ └── service/
│ │ │ ├── ecr/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_BatchCheckLayerAvailability.go
│ │ │ │ ├── api_op_BatchDeleteImage.go
│ │ │ │ ├── api_op_BatchGetImage.go
│ │ │ │ ├── api_op_BatchGetRepositoryScanningConfiguration.go
│ │ │ │ ├── api_op_CompleteLayerUpload.go
│ │ │ │ ├── api_op_CreatePullThroughCacheRule.go
│ │ │ │ ├── api_op_CreateRepository.go
│ │ │ │ ├── api_op_CreateRepositoryCreationTemplate.go
│ │ │ │ ├── api_op_DeleteLifecyclePolicy.go
│ │ │ │ ├── api_op_DeletePullThroughCacheRule.go
│ │ │ │ ├── api_op_DeleteRegistryPolicy.go
│ │ │ │ ├── api_op_DeleteRepository.go
│ │ │ │ ├── api_op_DeleteRepositoryCreationTemplate.go
│ │ │ │ ├── api_op_DeleteRepositoryPolicy.go
│ │ │ │ ├── api_op_DescribeImageReplicationStatus.go
│ │ │ │ ├── api_op_DescribeImageScanFindings.go
│ │ │ │ ├── api_op_DescribeImages.go
│ │ │ │ ├── api_op_DescribePullThroughCacheRules.go
│ │ │ │ ├── api_op_DescribeRegistry.go
│ │ │ │ ├── api_op_DescribeRepositories.go
│ │ │ │ ├── api_op_DescribeRepositoryCreationTemplates.go
│ │ │ │ ├── api_op_GetAccountSetting.go
│ │ │ │ ├── api_op_GetAuthorizationToken.go
│ │ │ │ ├── api_op_GetDownloadUrlForLayer.go
│ │ │ │ ├── api_op_GetLifecyclePolicy.go
│ │ │ │ ├── api_op_GetLifecyclePolicyPreview.go
│ │ │ │ ├── api_op_GetRegistryPolicy.go
│ │ │ │ ├── api_op_GetRegistryScanningConfiguration.go
│ │ │ │ ├── api_op_GetRepositoryPolicy.go
│ │ │ │ ├── api_op_InitiateLayerUpload.go
│ │ │ │ ├── api_op_ListImages.go
│ │ │ │ ├── api_op_ListTagsForResource.go
│ │ │ │ ├── api_op_PutAccountSetting.go
│ │ │ │ ├── api_op_PutImage.go
│ │ │ │ ├── api_op_PutImageScanningConfiguration.go
│ │ │ │ ├── api_op_PutImageTagMutability.go
│ │ │ │ ├── api_op_PutLifecyclePolicy.go
│ │ │ │ ├── api_op_PutRegistryPolicy.go
│ │ │ │ ├── api_op_PutRegistryScanningConfiguration.go
│ │ │ │ ├── api_op_PutReplicationConfiguration.go
│ │ │ │ ├── api_op_SetRepositoryPolicy.go
│ │ │ │ ├── api_op_StartImageScan.go
│ │ │ │ ├── api_op_StartLifecyclePolicyPreview.go
│ │ │ │ ├── api_op_TagResource.go
│ │ │ │ ├── api_op_UntagResource.go
│ │ │ │ ├── api_op_UpdatePullThroughCacheRule.go
│ │ │ │ ├── api_op_UpdateRepositoryCreationTemplate.go
│ │ │ │ ├── api_op_UploadLayerPart.go
│ │ │ │ ├── api_op_ValidatePullThroughCacheRule.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── enums.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ └── validators.go
│ │ │ ├── ecrpublic/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_BatchCheckLayerAvailability.go
│ │ │ │ ├── api_op_BatchDeleteImage.go
│ │ │ │ ├── api_op_CompleteLayerUpload.go
│ │ │ │ ├── api_op_CreateRepository.go
│ │ │ │ ├── api_op_DeleteRepository.go
│ │ │ │ ├── api_op_DeleteRepositoryPolicy.go
│ │ │ │ ├── api_op_DescribeImageTags.go
│ │ │ │ ├── api_op_DescribeImages.go
│ │ │ │ ├── api_op_DescribeRegistries.go
│ │ │ │ ├── api_op_DescribeRepositories.go
│ │ │ │ ├── api_op_GetAuthorizationToken.go
│ │ │ │ ├── api_op_GetRegistryCatalogData.go
│ │ │ │ ├── api_op_GetRepositoryCatalogData.go
│ │ │ │ ├── api_op_GetRepositoryPolicy.go
│ │ │ │ ├── api_op_InitiateLayerUpload.go
│ │ │ │ ├── api_op_ListTagsForResource.go
│ │ │ │ ├── api_op_PutImage.go
│ │ │ │ ├── api_op_PutRegistryCatalogData.go
│ │ │ │ ├── api_op_PutRepositoryCatalogData.go
│ │ │ │ ├── api_op_SetRepositoryPolicy.go
│ │ │ │ ├── api_op_TagResource.go
│ │ │ │ ├── api_op_UntagResource.go
│ │ │ │ ├── api_op_UploadLayerPart.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── enums.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ └── validators.go
│ │ │ ├── internal/
│ │ │ │ ├── accept-encoding/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── accept_encoding_gzip.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── go_module_metadata.go
│ │ │ │ ├── checksum/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── algorithms.go
│ │ │ │ │ ├── aws_chunked_encoding.go
│ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ ├── middleware_add.go
│ │ │ │ │ ├── middleware_checksum_metrics_tracking.go
│ │ │ │ │ ├── middleware_compute_input_checksum.go
│ │ │ │ │ ├── middleware_setup_context.go
│ │ │ │ │ └── middleware_validate_output.go
│ │ │ │ ├── presigned-url/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── context.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ └── middleware.go
│ │ │ │ └── s3shared/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── arn/
│ │ │ │ │ ├── accesspoint_arn.go
│ │ │ │ │ ├── arn.go
│ │ │ │ │ ├── arn_member.go
│ │ │ │ │ ├── outpost_arn.go
│ │ │ │ │ └── s3_object_lambda_arn.go
│ │ │ │ ├── arn_lookup.go
│ │ │ │ ├── config/
│ │ │ │ │ └── config.go
│ │ │ │ ├── endpoint_error.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── host_id.go
│ │ │ │ ├── metadata.go
│ │ │ │ ├── metadata_retriever.go
│ │ │ │ ├── resource_request.go
│ │ │ │ ├── response_error.go
│ │ │ │ ├── response_error_middleware.go
│ │ │ │ ├── s3100continue.go
│ │ │ │ ├── update_endpoint.go
│ │ │ │ └── xml_utils.go
│ │ │ ├── s3/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_AbortMultipartUpload.go
│ │ │ │ ├── api_op_CompleteMultipartUpload.go
│ │ │ │ ├── api_op_CopyObject.go
│ │ │ │ ├── api_op_CreateBucket.go
│ │ │ │ ├── api_op_CreateBucketMetadataTableConfiguration.go
│ │ │ │ ├── api_op_CreateMultipartUpload.go
│ │ │ │ ├── api_op_CreateSession.go
│ │ │ │ ├── api_op_DeleteBucket.go
│ │ │ │ ├── api_op_DeleteBucketAnalyticsConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketCors.go
│ │ │ │ ├── api_op_DeleteBucketEncryption.go
│ │ │ │ ├── api_op_DeleteBucketIntelligentTieringConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketInventoryConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketLifecycle.go
│ │ │ │ ├── api_op_DeleteBucketMetadataTableConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketMetricsConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketOwnershipControls.go
│ │ │ │ ├── api_op_DeleteBucketPolicy.go
│ │ │ │ ├── api_op_DeleteBucketReplication.go
│ │ │ │ ├── api_op_DeleteBucketTagging.go
│ │ │ │ ├── api_op_DeleteBucketWebsite.go
│ │ │ │ ├── api_op_DeleteObject.go
│ │ │ │ ├── api_op_DeleteObjectTagging.go
│ │ │ │ ├── api_op_DeleteObjects.go
│ │ │ │ ├── api_op_DeletePublicAccessBlock.go
│ │ │ │ ├── api_op_GetBucketAccelerateConfiguration.go
│ │ │ │ ├── api_op_GetBucketAcl.go
│ │ │ │ ├── api_op_GetBucketAnalyticsConfiguration.go
│ │ │ │ ├── api_op_GetBucketCors.go
│ │ │ │ ├── api_op_GetBucketEncryption.go
│ │ │ │ ├── api_op_GetBucketIntelligentTieringConfiguration.go
│ │ │ │ ├── api_op_GetBucketInventoryConfiguration.go
│ │ │ │ ├── api_op_GetBucketLifecycleConfiguration.go
│ │ │ │ ├── api_op_GetBucketLocation.go
│ │ │ │ ├── api_op_GetBucketLogging.go
│ │ │ │ ├── api_op_GetBucketMetadataTableConfiguration.go
│ │ │ │ ├── api_op_GetBucketMetricsConfiguration.go
│ │ │ │ ├── api_op_GetBucketNotificationConfiguration.go
│ │ │ │ ├── api_op_GetBucketOwnershipControls.go
│ │ │ │ ├── api_op_GetBucketPolicy.go
│ │ │ │ ├── api_op_GetBucketPolicyStatus.go
│ │ │ │ ├── api_op_GetBucketReplication.go
│ │ │ │ ├── api_op_GetBucketRequestPayment.go
│ │ │ │ ├── api_op_GetBucketTagging.go
│ │ │ │ ├── api_op_GetBucketVersioning.go
│ │ │ │ ├── api_op_GetBucketWebsite.go
│ │ │ │ ├── api_op_GetObject.go
│ │ │ │ ├── api_op_GetObjectAcl.go
│ │ │ │ ├── api_op_GetObjectAttributes.go
│ │ │ │ ├── api_op_GetObjectLegalHold.go
│ │ │ │ ├── api_op_GetObjectLockConfiguration.go
│ │ │ │ ├── api_op_GetObjectRetention.go
│ │ │ │ ├── api_op_GetObjectTagging.go
│ │ │ │ ├── api_op_GetObjectTorrent.go
│ │ │ │ ├── api_op_GetPublicAccessBlock.go
│ │ │ │ ├── api_op_HeadBucket.go
│ │ │ │ ├── api_op_HeadObject.go
│ │ │ │ ├── api_op_ListBucketAnalyticsConfigurations.go
│ │ │ │ ├── api_op_ListBucketIntelligentTieringConfigurations.go
│ │ │ │ ├── api_op_ListBucketInventoryConfigurations.go
│ │ │ │ ├── api_op_ListBucketMetricsConfigurations.go
│ │ │ │ ├── api_op_ListBuckets.go
│ │ │ │ ├── api_op_ListDirectoryBuckets.go
│ │ │ │ ├── api_op_ListMultipartUploads.go
│ │ │ │ ├── api_op_ListObjectVersions.go
│ │ │ │ ├── api_op_ListObjects.go
│ │ │ │ ├── api_op_ListObjectsV2.go
│ │ │ │ ├── api_op_ListParts.go
│ │ │ │ ├── api_op_PutBucketAccelerateConfiguration.go
│ │ │ │ ├── api_op_PutBucketAcl.go
│ │ │ │ ├── api_op_PutBucketAnalyticsConfiguration.go
│ │ │ │ ├── api_op_PutBucketCors.go
│ │ │ │ ├── api_op_PutBucketEncryption.go
│ │ │ │ ├── api_op_PutBucketIntelligentTieringConfiguration.go
│ │ │ │ ├── api_op_PutBucketInventoryConfiguration.go
│ │ │ │ ├── api_op_PutBucketLifecycleConfiguration.go
│ │ │ │ ├── api_op_PutBucketLogging.go
│ │ │ │ ├── api_op_PutBucketMetricsConfiguration.go
│ │ │ │ ├── api_op_PutBucketNotificationConfiguration.go
│ │ │ │ ├── api_op_PutBucketOwnershipControls.go
│ │ │ │ ├── api_op_PutBucketPolicy.go
│ │ │ │ ├── api_op_PutBucketReplication.go
│ │ │ │ ├── api_op_PutBucketRequestPayment.go
│ │ │ │ ├── api_op_PutBucketTagging.go
│ │ │ │ ├── api_op_PutBucketVersioning.go
│ │ │ │ ├── api_op_PutBucketWebsite.go
│ │ │ │ ├── api_op_PutObject.go
│ │ │ │ ├── api_op_PutObjectAcl.go
│ │ │ │ ├── api_op_PutObjectLegalHold.go
│ │ │ │ ├── api_op_PutObjectLockConfiguration.go
│ │ │ │ ├── api_op_PutObjectRetention.go
│ │ │ │ ├── api_op_PutObjectTagging.go
│ │ │ │ ├── api_op_PutPublicAccessBlock.go
│ │ │ │ ├── api_op_RestoreObject.go
│ │ │ │ ├── api_op_SelectObjectContent.go
│ │ │ │ ├── api_op_UploadPart.go
│ │ │ │ ├── api_op_UploadPartCopy.go
│ │ │ │ ├── api_op_WriteGetObjectResponse.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── bucket_context.go
│ │ │ │ ├── bucketer.go
│ │ │ │ ├── create_mpu_checksum.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoint_auth_resolver.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── eventstream.go
│ │ │ │ ├── express.go
│ │ │ │ ├── express_default.go
│ │ │ │ ├── express_resolve.go
│ │ │ │ ├── express_user_agent.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── handwritten_paginators.go
│ │ │ │ ├── internal/
│ │ │ │ │ ├── arn/
│ │ │ │ │ │ └── arn_parser.go
│ │ │ │ │ ├── customizations/
│ │ │ │ │ │ ├── context.go
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── express.go
│ │ │ │ │ │ ├── express_config.go
│ │ │ │ │ │ ├── express_default_checksum.go
│ │ │ │ │ │ ├── express_properties.go
│ │ │ │ │ │ ├── express_signer.go
│ │ │ │ │ │ ├── express_signer_smithy.go
│ │ │ │ │ │ ├── handle_200_error.go
│ │ │ │ │ │ ├── host.go
│ │ │ │ │ │ ├── presigned_expires.go
│ │ │ │ │ │ ├── process_arn_resource.go
│ │ │ │ │ │ ├── remove_bucket_middleware.go
│ │ │ │ │ │ ├── s3_object_lambda.go
│ │ │ │ │ │ ├── signer_wrapper.go
│ │ │ │ │ │ └── update_endpoint.go
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── presign_post.go
│ │ │ │ ├── serialize_immutable_hostname_bucket.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── enums.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ ├── uri_context.go
│ │ │ │ └── validators.go
│ │ │ ├── sso/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_GetRoleCredentials.go
│ │ │ │ ├── api_op_ListAccountRoles.go
│ │ │ │ ├── api_op_ListAccounts.go
│ │ │ │ ├── api_op_Logout.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ └── validators.go
│ │ │ ├── ssooidc/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_CreateToken.go
│ │ │ │ ├── api_op_CreateTokenWithIAM.go
│ │ │ │ ├── api_op_RegisterClient.go
│ │ │ │ ├── api_op_StartDeviceAuthorization.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ └── validators.go
│ │ │ └── sts/
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE.txt
│ │ │ ├── api_client.go
│ │ │ ├── api_op_AssumeRole.go
│ │ │ ├── api_op_AssumeRoleWithSAML.go
│ │ │ ├── api_op_AssumeRoleWithWebIdentity.go
│ │ │ ├── api_op_AssumeRoot.go
│ │ │ ├── api_op_DecodeAuthorizationMessage.go
│ │ │ ├── api_op_GetAccessKeyInfo.go
│ │ │ ├── api_op_GetCallerIdentity.go
│ │ │ ├── api_op_GetFederationToken.go
│ │ │ ├── api_op_GetSessionToken.go
│ │ │ ├── auth.go
│ │ │ ├── deserializers.go
│ │ │ ├── doc.go
│ │ │ ├── endpoints.go
│ │ │ ├── generated.json
│ │ │ ├── go_module_metadata.go
│ │ │ ├── internal/
│ │ │ │ └── endpoints/
│ │ │ │ └── endpoints.go
│ │ │ ├── options.go
│ │ │ ├── serializers.go
│ │ │ ├── types/
│ │ │ │ ├── errors.go
│ │ │ │ └── types.go
│ │ │ └── validators.go
│ │ └── smithy-go/
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── CHANGELOG.md
│ │ ├── CODE_OF_CONDUCT.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── NOTICE
│ │ ├── README.md
│ │ ├── auth/
│ │ │ ├── auth.go
│ │ │ ├── bearer/
│ │ │ │ ├── docs.go
│ │ │ │ ├── middleware.go
│ │ │ │ ├── token.go
│ │ │ │ └── token_cache.go
│ │ │ ├── identity.go
│ │ │ ├── option.go
│ │ │ └── scheme_id.go
│ │ ├── changelog-template.json
│ │ ├── container/
│ │ │ └── private/
│ │ │ └── cache/
│ │ │ ├── cache.go
│ │ │ └── lru/
│ │ │ └── lru.go
│ │ ├── context/
│ │ │ └── suppress_expired.go
│ │ ├── doc.go
│ │ ├── document/
│ │ │ ├── doc.go
│ │ │ ├── document.go
│ │ │ └── errors.go
│ │ ├── document.go
│ │ ├── encoding/
│ │ │ ├── doc.go
│ │ │ ├── encoding.go
│ │ │ ├── httpbinding/
│ │ │ │ ├── encode.go
│ │ │ │ ├── header.go
│ │ │ │ ├── path_replace.go
│ │ │ │ ├── query.go
│ │ │ │ └── uri.go
│ │ │ ├── json/
│ │ │ │ ├── array.go
│ │ │ │ ├── constants.go
│ │ │ │ ├── decoder_util.go
│ │ │ │ ├── encoder.go
│ │ │ │ ├── escape.go
│ │ │ │ ├── object.go
│ │ │ │ └── value.go
│ │ │ └── xml/
│ │ │ ├── array.go
│ │ │ ├── constants.go
│ │ │ ├── doc.go
│ │ │ ├── element.go
│ │ │ ├── encoder.go
│ │ │ ├── error_utils.go
│ │ │ ├── escape.go
│ │ │ ├── map.go
│ │ │ ├── value.go
│ │ │ └── xml_decoder.go
│ │ ├── endpoints/
│ │ │ ├── endpoint.go
│ │ │ └── private/
│ │ │ └── rulesfn/
│ │ │ ├── doc.go
│ │ │ ├── strings.go
│ │ │ └── uri.go
│ │ ├── errors.go
│ │ ├── go_module_metadata.go
│ │ ├── internal/
│ │ │ └── sync/
│ │ │ └── singleflight/
│ │ │ ├── LICENSE
│ │ │ ├── docs.go
│ │ │ └── singleflight.go
│ │ ├── io/
│ │ │ ├── byte.go
│ │ │ ├── doc.go
│ │ │ ├── reader.go
│ │ │ └── ringbuffer.go
│ │ ├── local-mod-replace.sh
│ │ ├── logging/
│ │ │ └── logger.go
│ │ ├── metrics/
│ │ │ ├── metrics.go
│ │ │ └── nop.go
│ │ ├── middleware/
│ │ │ ├── context.go
│ │ │ ├── doc.go
│ │ │ ├── logging.go
│ │ │ ├── metadata.go
│ │ │ ├── middleware.go
│ │ │ ├── ordered_group.go
│ │ │ ├── stack.go
│ │ │ ├── stack_values.go
│ │ │ ├── step_build.go
│ │ │ ├── step_deserialize.go
│ │ │ ├── step_finalize.go
│ │ │ ├── step_initialize.go
│ │ │ └── step_serialize.go
│ │ ├── modman.toml
│ │ ├── private/
│ │ │ └── requestcompression/
│ │ │ ├── gzip.go
│ │ │ ├── middleware_capture_request_compression.go
│ │ │ └── request_compression.go
│ │ ├── properties.go
│ │ ├── ptr/
│ │ │ ├── doc.go
│ │ │ ├── from_ptr.go
│ │ │ ├── gen_scalars.go
│ │ │ └── to_ptr.go
│ │ ├── rand/
│ │ │ ├── doc.go
│ │ │ ├── rand.go
│ │ │ └── uuid.go
│ │ ├── sync/
│ │ │ └── error.go
│ │ ├── time/
│ │ │ └── time.go
│ │ ├── tracing/
│ │ │ ├── context.go
│ │ │ ├── nop.go
│ │ │ └── tracing.go
│ │ ├── transport/
│ │ │ └── http/
│ │ │ ├── auth.go
│ │ │ ├── auth_schemes.go
│ │ │ ├── checksum_middleware.go
│ │ │ ├── client.go
│ │ │ ├── doc.go
│ │ │ ├── headerlist.go
│ │ │ ├── host.go
│ │ │ ├── internal/
│ │ │ │ └── io/
│ │ │ │ └── safe.go
│ │ │ ├── md5_checksum.go
│ │ │ ├── metrics.go
│ │ │ ├── middleware_close_response_body.go
│ │ │ ├── middleware_content_length.go
│ │ │ ├── middleware_header_comment.go
│ │ │ ├── middleware_headers.go
│ │ │ ├── middleware_http_logging.go
│ │ │ ├── middleware_metadata.go
│ │ │ ├── middleware_min_proto.go
│ │ │ ├── properties.go
│ │ │ ├── request.go
│ │ │ ├── response.go
│ │ │ ├── time.go
│ │ │ ├── url.go
│ │ │ └── user_agent.go
│ │ ├── validation.go
│ │ └── waiter/
│ │ ├── logger.go
│ │ └── waiter.go
│ ├── awslabs/
│ │ └── amazon-ecr-credential-helper/
│ │ └── ecr-login/
│ │ ├── LICENSE
│ │ ├── api/
│ │ │ ├── client.go
│ │ │ └── factory.go
│ │ ├── cache/
│ │ │ ├── build.go
│ │ │ ├── credentials.go
│ │ │ ├── file.go
│ │ │ └── null.go
│ │ ├── cli/
│ │ │ └── docker-credential-ecr-login/
│ │ │ └── main.go
│ │ ├── config/
│ │ │ ├── cache_dir.go
│ │ │ └── log.go
│ │ ├── ecr.go
│ │ └── version/
│ │ └── version.go
│ ├── beorn7/
│ │ └── perks/
│ │ ├── LICENSE
│ │ └── quantile/
│ │ ├── exampledata.txt
│ │ └── stream.go
│ ├── cespare/
│ │ └── xxhash/
│ │ └── v2/
│ │ ├── LICENSE.txt
│ │ ├── README.md
│ │ ├── testall.sh
│ │ ├── xxhash.go
│ │ ├── xxhash_amd64.s
│ │ ├── xxhash_arm64.s
│ │ ├── xxhash_asm.go
│ │ ├── xxhash_other.go
│ │ ├── xxhash_safe.go
│ │ └── xxhash_unsafe.go
│ ├── chrismellard/
│ │ └── docker-credential-acr-env/
│ │ ├── .gitignore
│ │ ├── .goreleaser.yml
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── cmd/
│ │ │ ├── get.go
│ │ │ └── root.go
│ │ ├── main.go
│ │ └── pkg/
│ │ ├── credhelper/
│ │ │ └── helper.go
│ │ ├── registry/
│ │ │ ├── const.go
│ │ │ └── registry.go
│ │ └── token/
│ │ └── token.go
│ ├── cloudflare/
│ │ └── circl/
│ │ ├── LICENSE
│ │ ├── dh/
│ │ │ ├── x25519/
│ │ │ │ ├── curve.go
│ │ │ │ ├── curve_amd64.go
│ │ │ │ ├── curve_amd64.h
│ │ │ │ ├── curve_amd64.s
│ │ │ │ ├── curve_generic.go
│ │ │ │ ├── curve_noasm.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── key.go
│ │ │ │ └── table.go
│ │ │ └── x448/
│ │ │ ├── curve.go
│ │ │ ├── curve_amd64.go
│ │ │ ├── curve_amd64.h
│ │ │ ├── curve_amd64.s
│ │ │ ├── curve_generic.go
│ │ │ ├── curve_noasm.go
│ │ │ ├── doc.go
│ │ │ ├── key.go
│ │ │ └── table.go
│ │ ├── ecc/
│ │ │ └── goldilocks/
│ │ │ ├── constants.go
│ │ │ ├── curve.go
│ │ │ ├── isogeny.go
│ │ │ ├── point.go
│ │ │ ├── scalar.go
│ │ │ ├── twist.go
│ │ │ ├── twistPoint.go
│ │ │ ├── twistTables.go
│ │ │ └── twist_basemult.go
│ │ ├── internal/
│ │ │ ├── conv/
│ │ │ │ └── conv.go
│ │ │ └── sha3/
│ │ │ ├── doc.go
│ │ │ ├── hashes.go
│ │ │ ├── keccakf.go
│ │ │ ├── rc.go
│ │ │ ├── sha3.go
│ │ │ ├── sha3_s390x.s
│ │ │ ├── shake.go
│ │ │ ├── xor.go
│ │ │ ├── xor_generic.go
│ │ │ └── xor_unaligned.go
│ │ ├── math/
│ │ │ ├── fp25519/
│ │ │ │ ├── fp.go
│ │ │ │ ├── fp_amd64.go
│ │ │ │ ├── fp_amd64.h
│ │ │ │ ├── fp_amd64.s
│ │ │ │ ├── fp_generic.go
│ │ │ │ └── fp_noasm.go
│ │ │ ├── fp448/
│ │ │ │ ├── fp.go
│ │ │ │ ├── fp_amd64.go
│ │ │ │ ├── fp_amd64.h
│ │ │ │ ├── fp_amd64.s
│ │ │ │ ├── fp_generic.go
│ │ │ │ ├── fp_noasm.go
│ │ │ │ └── fuzzer.go
│ │ │ ├── integer.go
│ │ │ ├── mlsbset/
│ │ │ │ ├── mlsbset.go
│ │ │ │ └── power.go
│ │ │ ├── primes.go
│ │ │ └── wnaf.go
│ │ └── sign/
│ │ ├── ed25519/
│ │ │ ├── ed25519.go
│ │ │ ├── modular.go
│ │ │ ├── mult.go
│ │ │ ├── point.go
│ │ │ ├── pubkey.go
│ │ │ ├── pubkey112.go
│ │ │ ├── signapi.go
│ │ │ └── tables.go
│ │ ├── ed448/
│ │ │ ├── ed448.go
│ │ │ └── signapi.go
│ │ └── sign.go
│ ├── cncf/
│ │ └── xds/
│ │ └── go/
│ │ ├── LICENSE
│ │ ├── udpa/
│ │ │ ├── annotations/
│ │ │ │ ├── migrate.pb.go
│ │ │ │ ├── migrate.pb.validate.go
│ │ │ │ ├── security.pb.go
│ │ │ │ ├── security.pb.validate.go
│ │ │ │ ├── sensitive.pb.go
│ │ │ │ ├── sensitive.pb.validate.go
│ │ │ │ ├── status.pb.go
│ │ │ │ ├── status.pb.validate.go
│ │ │ │ ├── versioning.pb.go
│ │ │ │ └── versioning.pb.validate.go
│ │ │ └── type/
│ │ │ └── v1/
│ │ │ ├── typed_struct.pb.go
│ │ │ └── typed_struct.pb.validate.go
│ │ └── xds/
│ │ ├── annotations/
│ │ │ └── v3/
│ │ │ ├── migrate.pb.go
│ │ │ ├── migrate.pb.validate.go
│ │ │ ├── security.pb.go
│ │ │ ├── security.pb.validate.go
│ │ │ ├── sensitive.pb.go
│ │ │ ├── sensitive.pb.validate.go
│ │ │ ├── status.pb.go
│ │ │ ├── status.pb.validate.go
│ │ │ ├── versioning.pb.go
│ │ │ └── versioning.pb.validate.go
│ │ ├── core/
│ │ │ └── v3/
│ │ │ ├── authority.pb.go
│ │ │ ├── authority.pb.validate.go
│ │ │ ├── cidr.pb.go
│ │ │ ├── cidr.pb.validate.go
│ │ │ ├── collection_entry.pb.go
│ │ │ ├── collection_entry.pb.validate.go
│ │ │ ├── context_params.pb.go
│ │ │ ├── context_params.pb.validate.go
│ │ │ ├── extension.pb.go
│ │ │ ├── extension.pb.validate.go
│ │ │ ├── resource.pb.go
│ │ │ ├── resource.pb.validate.go
│ │ │ ├── resource_locator.pb.go
│ │ │ ├── resource_locator.pb.validate.go
│ │ │ ├── resource_name.pb.go
│ │ │ └── resource_name.pb.validate.go
│ │ ├── data/
│ │ │ └── orca/
│ │ │ └── v3/
│ │ │ ├── orca_load_report.pb.go
│ │ │ └── orca_load_report.pb.validate.go
│ │ ├── service/
│ │ │ └── orca/
│ │ │ └── v3/
│ │ │ ├── orca.pb.go
│ │ │ ├── orca.pb.validate.go
│ │ │ └── orca_grpc.pb.go
│ │ └── type/
│ │ ├── matcher/
│ │ │ └── v3/
│ │ │ ├── cel.pb.go
│ │ │ ├── cel.pb.validate.go
│ │ │ ├── domain.pb.go
│ │ │ ├── domain.pb.validate.go
│ │ │ ├── http_inputs.pb.go
│ │ │ ├── http_inputs.pb.validate.go
│ │ │ ├── ip.pb.go
│ │ │ ├── ip.pb.validate.go
│ │ │ ├── matcher.pb.go
│ │ │ ├── matcher.pb.validate.go
│ │ │ ├── range.pb.go
│ │ │ ├── range.pb.validate.go
│ │ │ ├── regex.pb.go
│ │ │ ├── regex.pb.validate.go
│ │ │ ├── string.pb.go
│ │ │ └── string.pb.validate.go
│ │ └── v3/
│ │ ├── cel.pb.go
│ │ ├── cel.pb.validate.go
│ │ ├── range.pb.go
│ │ ├── range.pb.validate.go
│ │ ├── typed_struct.pb.go
│ │ └── typed_struct.pb.validate.go
│ ├── containerd/
│ │ ├── cgroups/
│ │ │ └── v3/
│ │ │ ├── LICENSE
│ │ │ └── cgroup1/
│ │ │ └── stats/
│ │ │ ├── doc.go
│ │ │ ├── metrics.pb.go
│ │ │ ├── metrics.pb.txt
│ │ │ └── metrics.proto
│ │ ├── containerd/
│ │ │ ├── LICENSE
│ │ │ ├── NOTICE
│ │ │ ├── api/
│ │ │ │ ├── LICENSE
│ │ │ │ ├── runtime/
│ │ │ │ │ └── sandbox/
│ │ │ │ │ └── v1/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── sandbox.pb.go
│ │ │ │ │ ├── sandbox.proto
│ │ │ │ │ ├── sandbox_grpc.pb.go
│ │ │ │ │ └── sandbox_ttrpc.pb.go
│ │ │ │ ├── services/
│ │ │ │ │ ├── containers/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── containers.pb.go
│ │ │ │ │ │ ├── containers.proto
│ │ │ │ │ │ ├── containers_grpc.pb.go
│ │ │ │ │ │ ├── containers_ttrpc.pb.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── content/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── content.pb.go
│ │ │ │ │ │ ├── content.proto
│ │ │ │ │ │ ├── content_grpc.pb.go
│ │ │ │ │ │ ├── content_ttrpc.pb.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── diff/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── diff.pb.go
│ │ │ │ │ │ ├── diff.proto
│ │ │ │ │ │ ├── diff_grpc.pb.go
│ │ │ │ │ │ ├── diff_ttrpc.pb.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── events/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── events.pb.go
│ │ │ │ │ │ ├── events.proto
│ │ │ │ │ │ ├── events_grpc.pb.go
│ │ │ │ │ │ └── events_ttrpc.pb.go
│ │ │ │ │ ├── images/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── docs.go
│ │ │ │ │ │ ├── images.pb.go
│ │ │ │ │ │ ├── images.proto
│ │ │ │ │ │ ├── images_grpc.pb.go
│ │ │ │ │ │ └── images_ttrpc.pb.go
│ │ │ │ │ ├── introspection/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── introspection.pb.go
│ │ │ │ │ │ ├── introspection.proto
│ │ │ │ │ │ ├── introspection_grpc.pb.go
│ │ │ │ │ │ └── introspection_ttrpc.pb.go
│ │ │ │ │ ├── leases/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── leases.pb.go
│ │ │ │ │ │ ├── leases.proto
│ │ │ │ │ │ ├── leases_grpc.pb.go
│ │ │ │ │ │ └── leases_ttrpc.pb.go
│ │ │ │ │ ├── namespaces/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── namespace.pb.go
│ │ │ │ │ │ ├── namespace.proto
│ │ │ │ │ │ ├── namespace_grpc.pb.go
│ │ │ │ │ │ └── namespace_ttrpc.pb.go
│ │ │ │ │ ├── sandbox/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── sandbox.pb.go
│ │ │ │ │ │ ├── sandbox.proto
│ │ │ │ │ │ ├── sandbox_grpc.pb.go
│ │ │ │ │ │ └── sandbox_ttrpc.pb.go
│ │ │ │ │ ├── snapshots/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── snapshots.pb.go
│ │ │ │ │ │ ├── snapshots.proto
│ │ │ │ │ │ ├── snapshots_grpc.pb.go
│ │ │ │ │ │ └── snapshots_ttrpc.pb.go
│ │ │ │ │ ├── streaming/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── streaming.pb.go
│ │ │ │ │ │ ├── streaming.proto
│ │ │ │ │ │ ├── streaming_grpc.pb.go
│ │ │ │ │ │ └── streaming_ttrpc.pb.go
│ │ │ │ │ ├── tasks/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── tasks.pb.go
│ │ │ │ │ │ ├── tasks.proto
│ │ │ │ │ │ ├── tasks_grpc.pb.go
│ │ │ │ │ │ └── tasks_ttrpc.pb.go
│ │ │ │ │ ├── transfer/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── transfer.pb.go
│ │ │ │ │ │ ├── transfer.proto
│ │ │ │ │ │ ├── transfer_grpc.pb.go
│ │ │ │ │ │ └── transfer_ttrpc.pb.go
│ │ │ │ │ └── version/
│ │ │ │ │ └── v1/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── version.pb.go
│ │ │ │ │ ├── version.proto
│ │ │ │ │ ├── version_grpc.pb.go
│ │ │ │ │ └── version_ttrpc.pb.go
│ │ │ │ └── types/
│ │ │ │ ├── descriptor.pb.go
│ │ │ │ ├── descriptor.proto
│ │ │ │ ├── doc.go
│ │ │ │ ├── event.pb.go
│ │ │ │ ├── event.proto
│ │ │ │ ├── fieldpath.pb.go
│ │ │ │ ├── fieldpath.proto
│ │ │ │ ├── introspection.pb.go
│ │ │ │ ├── introspection.proto
│ │ │ │ ├── metrics.pb.go
│ │ │ │ ├── metrics.proto
│ │ │ │ ├── mount.pb.go
│ │ │ │ ├── mount.proto
│ │ │ │ ├── platform.pb.go
│ │ │ │ ├── platform.proto
│ │ │ │ ├── platform_helpers.go
│ │ │ │ ├── runc/
│ │ │ │ │ └── options/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── next.pb.txt
│ │ │ │ │ ├── oci.pb.go
│ │ │ │ │ └── oci.proto
│ │ │ │ ├── sandbox.pb.go
│ │ │ │ ├── sandbox.proto
│ │ │ │ ├── task/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── task.pb.go
│ │ │ │ │ └── task.proto
│ │ │ │ └── transfer/
│ │ │ │ ├── doc.go
│ │ │ │ ├── imagestore.pb.go
│ │ │ │ ├── imagestore.proto
│ │ │ │ ├── importexport.pb.go
│ │ │ │ ├── importexport.proto
│ │ │ │ ├── progress.pb.go
│ │ │ │ ├── progress.proto
│ │ │ │ ├── registry.pb.go
│ │ │ │ ├── registry.proto
│ │ │ │ ├── streaming.pb.go
│ │ │ │ └── streaming.proto
│ │ │ ├── platforms/
│ │ │ │ ├── platforms_deprecated.go
│ │ │ │ ├── platforms_deprecated_other.go
│ │ │ │ └── platforms_deprecated_windows.go
│ │ │ └── v2/
│ │ │ ├── LICENSE
│ │ │ ├── NOTICE
│ │ │ ├── client/
│ │ │ │ ├── client.go
│ │ │ │ ├── client_opts.go
│ │ │ │ ├── container.go
│ │ │ │ ├── container_checkpoint_opts.go
│ │ │ │ ├── container_opts.go
│ │ │ │ ├── container_opts_unix.go
│ │ │ │ ├── container_restore_opts.go
│ │ │ │ ├── containerstore.go
│ │ │ │ ├── diff.go
│ │ │ │ ├── events.go
│ │ │ │ ├── export.go
│ │ │ │ ├── grpc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── image_store.go
│ │ │ │ ├── import.go
│ │ │ │ ├── install.go
│ │ │ │ ├── install_opts.go
│ │ │ │ ├── lease.go
│ │ │ │ ├── namespaces.go
│ │ │ │ ├── process.go
│ │ │ │ ├── pull.go
│ │ │ │ ├── sandbox.go
│ │ │ │ ├── services.go
│ │ │ │ ├── signals.go
│ │ │ │ ├── snapshotter_opts_unix.go
│ │ │ │ ├── snapshotter_opts_windows.go
│ │ │ │ ├── task.go
│ │ │ │ ├── task_opts.go
│ │ │ │ ├── task_opts_unix.go
│ │ │ │ └── transfer.go
│ │ │ ├── core/
│ │ │ │ ├── containers/
│ │ │ │ │ └── containers.go
│ │ │ │ ├── content/
│ │ │ │ │ ├── adaptor.go
│ │ │ │ │ ├── content.go
│ │ │ │ │ ├── helpers.go
│ │ │ │ │ └── proxy/
│ │ │ │ │ ├── content_reader.go
│ │ │ │ │ ├── content_store.go
│ │ │ │ │ └── content_writer.go
│ │ │ │ ├── diff/
│ │ │ │ │ ├── diff.go
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ └── differ.go
│ │ │ │ │ ├── stream.go
│ │ │ │ │ ├── stream_unix.go
│ │ │ │ │ └── stream_windows.go
│ │ │ │ ├── events/
│ │ │ │ │ ├── events.go
│ │ │ │ │ └── proxy/
│ │ │ │ │ └── remote_events.go
│ │ │ │ ├── images/
│ │ │ │ │ ├── annotations.go
│ │ │ │ │ ├── archive/
│ │ │ │ │ │ ├── exporter.go
│ │ │ │ │ │ ├── importer.go
│ │ │ │ │ │ └── reference.go
│ │ │ │ │ ├── diffid.go
│ │ │ │ │ ├── handlers.go
│ │ │ │ │ ├── image.go
│ │ │ │ │ ├── importexport.go
│ │ │ │ │ ├── mediatypes.go
│ │ │ │ │ └── usage/
│ │ │ │ │ └── calculator.go
│ │ │ │ ├── introspection/
│ │ │ │ │ ├── introspection.go
│ │ │ │ │ └── proxy/
│ │ │ │ │ └── remote.go
│ │ │ │ ├── leases/
│ │ │ │ │ ├── context.go
│ │ │ │ │ ├── grpc.go
│ │ │ │ │ ├── id.go
│ │ │ │ │ ├── lease.go
│ │ │ │ │ └── proxy/
│ │ │ │ │ └── manager.go
│ │ │ │ ├── mount/
│ │ │ │ │ ├── fuse_linux.go
│ │ │ │ │ ├── fuse_unsupported.go
│ │ │ │ │ ├── lookup_unix.go
│ │ │ │ │ ├── lookup_unsupported.go
│ │ │ │ │ ├── losetup_linux.go
│ │ │ │ │ ├── mount.go
│ │ │ │ │ ├── mount_darwin.go
│ │ │ │ │ ├── mount_freebsd.go
│ │ │ │ │ ├── mount_idmapped_linux.go
│ │ │ │ │ ├── mount_idmapped_utils_linux.go
│ │ │ │ │ ├── mount_idmapped_utils_linux_go122.go
│ │ │ │ │ ├── mount_linux.go
│ │ │ │ │ ├── mount_unix.go
│ │ │ │ │ ├── mount_unsupported.go
│ │ │ │ │ ├── mount_windows.go
│ │ │ │ │ ├── mountinfo.go
│ │ │ │ │ ├── temp.go
│ │ │ │ │ ├── temp_unix.go
│ │ │ │ │ └── temp_unsupported.go
│ │ │ │ ├── remotes/
│ │ │ │ │ ├── docker/
│ │ │ │ │ │ ├── auth/
│ │ │ │ │ │ │ ├── fetch.go
│ │ │ │ │ │ │ └── parse.go
│ │ │ │ │ │ ├── authorizer.go
│ │ │ │ │ │ ├── converter.go
│ │ │ │ │ │ ├── errcode.go
│ │ │ │ │ │ ├── errdesc.go
│ │ │ │ │ │ ├── fetcher.go
│ │ │ │ │ │ ├── handler.go
│ │ │ │ │ │ ├── httpreadseeker.go
│ │ │ │ │ │ ├── pusher.go
│ │ │ │ │ │ ├── registry.go
│ │ │ │ │ │ ├── resolver.go
│ │ │ │ │ │ ├── resolver_unix.go
│ │ │ │ │ │ ├── resolver_windows.go
│ │ │ │ │ │ ├── scope.go
│ │ │ │ │ │ └── status.go
│ │ │ │ │ ├── errors/
│ │ │ │ │ │ └── errors.go
│ │ │ │ │ ├── handlers.go
│ │ │ │ │ └── resolver.go
│ │ │ │ ├── sandbox/
│ │ │ │ │ ├── bridge.go
│ │ │ │ │ ├── controller.go
│ │ │ │ │ ├── helpers.go
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ ├── controller.go
│ │ │ │ │ │ └── store.go
│ │ │ │ │ └── store.go
│ │ │ │ ├── snapshots/
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ ├── convert.go
│ │ │ │ │ │ └── proxy.go
│ │ │ │ │ └── snapshotter.go
│ │ │ │ ├── streaming/
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ └── streaming.go
│ │ │ │ │ └── streaming.go
│ │ │ │ ├── transfer/
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ └── transfer.go
│ │ │ │ │ ├── streaming/
│ │ │ │ │ │ ├── reader.go
│ │ │ │ │ │ ├── stream.go
│ │ │ │ │ │ └── writer.go
│ │ │ │ │ └── transfer.go
│ │ │ │ └── unpack/
│ │ │ │ └── unpacker.go
│ │ │ ├── defaults/
│ │ │ │ ├── defaults.go
│ │ │ │ ├── defaults_darwin.go
│ │ │ │ ├── defaults_freebsd.go
│ │ │ │ ├── defaults_linux.go
│ │ │ │ ├── defaults_unix.go
│ │ │ │ ├── defaults_unix_nolinux.go
│ │ │ │ ├── defaults_windows.go
│ │ │ │ └── doc.go
│ │ │ ├── internal/
│ │ │ │ ├── cleanup/
│ │ │ │ │ └── context.go
│ │ │ │ ├── kmutex/
│ │ │ │ │ ├── kmutex.go
│ │ │ │ │ └── noop.go
│ │ │ │ ├── lazyregexp/
│ │ │ │ │ └── lazyregexp.go
│ │ │ │ ├── randutil/
│ │ │ │ │ └── randutil.go
│ │ │ │ └── userns/
│ │ │ │ └── idmap.go
│ │ │ ├── pkg/
│ │ │ │ ├── archive/
│ │ │ │ │ ├── compression/
│ │ │ │ │ │ └── compression.go
│ │ │ │ │ ├── link_default.go
│ │ │ │ │ ├── link_freebsd.go
│ │ │ │ │ ├── tar.go
│ │ │ │ │ ├── tar_freebsd.go
│ │ │ │ │ ├── tar_mostunix.go
│ │ │ │ │ ├── tar_opts.go
│ │ │ │ │ ├── tar_opts_linux.go
│ │ │ │ │ ├── tar_opts_windows.go
│ │ │ │ │ ├── tar_unix.go
│ │ │ │ │ ├── tar_windows.go
│ │ │ │ │ ├── tarheader/
│ │ │ │ │ │ ├── tarheader.go
│ │ │ │ │ │ └── tarheader_unix.go
│ │ │ │ │ ├── time.go
│ │ │ │ │ ├── time_unix.go
│ │ │ │ │ └── time_windows.go
│ │ │ │ ├── cap/
│ │ │ │ │ └── cap_linux.go
│ │ │ │ ├── cio/
│ │ │ │ │ ├── io.go
│ │ │ │ │ ├── io_unix.go
│ │ │ │ │ └── io_windows.go
│ │ │ │ ├── dialer/
│ │ │ │ │ ├── dialer.go
│ │ │ │ │ ├── dialer_unix.go
│ │ │ │ │ └── dialer_windows.go
│ │ │ │ ├── epoch/
│ │ │ │ │ ├── context.go
│ │ │ │ │ └── epoch.go
│ │ │ │ ├── filters/
│ │ │ │ │ ├── adaptor.go
│ │ │ │ │ ├── filter.go
│ │ │ │ │ ├── parser.go
│ │ │ │ │ ├── quote.go
│ │ │ │ │ └── scanner.go
│ │ │ │ ├── identifiers/
│ │ │ │ │ └── validate.go
│ │ │ │ ├── kernelversion/
│ │ │ │ │ └── kernel_linux.go
│ │ │ │ ├── labels/
│ │ │ │ │ ├── labels.go
│ │ │ │ │ └── validate.go
│ │ │ │ ├── namespaces/
│ │ │ │ │ ├── context.go
│ │ │ │ │ ├── grpc.go
│ │ │ │ │ ├── store.go
│ │ │ │ │ └── ttrpc.go
│ │ │ │ ├── oci/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── mounts.go
│ │ │ │ │ ├── mounts_freebsd.go
│ │ │ │ │ ├── spec.go
│ │ │ │ │ ├── spec_opts.go
│ │ │ │ │ ├── spec_opts_linux.go
│ │ │ │ │ ├── spec_opts_nonlinux.go
│ │ │ │ │ ├── spec_opts_nonwindows.go
│ │ │ │ │ ├── spec_opts_unix.go
│ │ │ │ │ ├── spec_opts_windows.go
│ │ │ │ │ └── utils_unix.go
│ │ │ │ ├── protobuf/
│ │ │ │ │ ├── compare.go
│ │ │ │ │ ├── proto/
│ │ │ │ │ │ └── proto.go
│ │ │ │ │ ├── timestamp.go
│ │ │ │ │ └── types/
│ │ │ │ │ └── types.go
│ │ │ │ ├── reference/
│ │ │ │ │ └── reference.go
│ │ │ │ ├── rootfs/
│ │ │ │ │ ├── apply.go
│ │ │ │ │ ├── diff.go
│ │ │ │ │ ├── init.go
│ │ │ │ │ ├── init_linux.go
│ │ │ │ │ └── init_other.go
│ │ │ │ ├── sys/
│ │ │ │ │ ├── eintr_unix.go
│ │ │ │ │ ├── filesys_unix.go
│ │ │ │ │ ├── filesys_windows.go
│ │ │ │ │ ├── namespace_linux.go
│ │ │ │ │ ├── oom_linux.go
│ │ │ │ │ ├── oom_unsupported.go
│ │ │ │ │ ├── pidfd_linux.go
│ │ │ │ │ ├── socket_unix.go
│ │ │ │ │ ├── socket_windows.go
│ │ │ │ │ └── unshare_linux.go
│ │ │ │ └── tracing/
│ │ │ │ ├── helpers.go
│ │ │ │ ├── log.go
│ │ │ │ └── tracing.go
│ │ │ ├── plugins/
│ │ │ │ ├── services/
│ │ │ │ │ └── services.go
│ │ │ │ └── types.go
│ │ │ └── version/
│ │ │ └── version.go
│ │ ├── continuity/
│ │ │ ├── AUTHORS
│ │ │ ├── LICENSE
│ │ │ ├── devices/
│ │ │ │ ├── devices.go
│ │ │ │ ├── devices_unix.go
│ │ │ │ ├── devices_windows.go
│ │ │ │ ├── mknod_freebsd.go
│ │ │ │ └── mknod_unix.go
│ │ │ ├── driver/
│ │ │ │ ├── driver.go
│ │ │ │ ├── driver_unix.go
│ │ │ │ ├── driver_windows.go
│ │ │ │ ├── lchmod_linux.go
│ │ │ │ ├── lchmod_unix.go
│ │ │ │ └── utils.go
│ │ │ ├── fs/
│ │ │ │ ├── copy.go
│ │ │ │ ├── copy_darwin.go
│ │ │ │ ├── copy_irregular_freebsd.go
│ │ │ │ ├── copy_irregular_unix.go
│ │ │ │ ├── copy_linux.go
│ │ │ │ ├── copy_nondarwin.go
│ │ │ │ ├── copy_unix.go
│ │ │ │ ├── copy_windows.go
│ │ │ │ ├── diff.go
│ │ │ │ ├── diff_linux.go
│ │ │ │ ├── diff_nonlinux.go
│ │ │ │ ├── diff_unix.go
│ │ │ │ ├── diff_windows.go
│ │ │ │ ├── dir.go
│ │ │ │ ├── dtype_linux.go
│ │ │ │ ├── du.go
│ │ │ │ ├── du_unix.go
│ │ │ │ ├── du_windows.go
│ │ │ │ ├── hardlink.go
│ │ │ │ ├── hardlink_unix.go
│ │ │ │ ├── hardlink_windows.go
│ │ │ │ ├── magic_linux.go
│ │ │ │ ├── path.go
│ │ │ │ ├── stat_darwinbsd.go
│ │ │ │ ├── stat_unix.go
│ │ │ │ ├── stat_windows.go
│ │ │ │ ├── time.go
│ │ │ │ └── utimesnanoat.go
│ │ │ └── sysx/
│ │ │ ├── README.md
│ │ │ ├── nodata_linux.go
│ │ │ ├── nodata_solaris.go
│ │ │ ├── nodata_unix.go
│ │ │ ├── xattr.go
│ │ │ └── xattr_unsupported.go
│ │ ├── errdefs/
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── errors.go
│ │ │ ├── pkg/
│ │ │ │ ├── LICENSE
│ │ │ │ ├── errgrpc/
│ │ │ │ │ └── grpc.go
│ │ │ │ └── internal/
│ │ │ │ ├── cause/
│ │ │ │ │ └── cause.go
│ │ │ │ └── types/
│ │ │ │ └── collapsible.go
│ │ │ └── resolve.go
│ │ ├── log/
│ │ │ ├── .golangci.yml
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ └── context.go
│ │ ├── platforms/
│ │ │ ├── .gitattributes
│ │ │ ├── .golangci.yml
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── compare.go
│ │ │ ├── cpuinfo.go
│ │ │ ├── cpuinfo_linux.go
│ │ │ ├── cpuinfo_other.go
│ │ │ ├── database.go
│ │ │ ├── defaults.go
│ │ │ ├── defaults_darwin.go
│ │ │ ├── defaults_freebsd.go
│ │ │ ├── defaults_unix.go
│ │ │ ├── defaults_windows.go
│ │ │ ├── errors.go
│ │ │ ├── platform_windows_compat.go
│ │ │ └── platforms.go
│ │ ├── plugin/
│ │ │ ├── .golangci.yml
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── context.go
│ │ │ └── plugin.go
│ │ ├── stargz-snapshotter/
│ │ │ └── estargz/
│ │ │ ├── LICENSE
│ │ │ ├── build.go
│ │ │ ├── errorutil/
│ │ │ │ └── errors.go
│ │ │ ├── estargz.go
│ │ │ ├── gzip.go
│ │ │ ├── testutil.go
│ │ │ └── types.go
│ │ ├── ttrpc/
│ │ │ ├── .gitattributes
│ │ │ ├── .gitignore
│ │ │ ├── .golangci.yml
│ │ │ ├── LICENSE
│ │ │ ├── Makefile
│ │ │ ├── PROTOCOL.md
│ │ │ ├── Protobuild.toml
│ │ │ ├── README.md
│ │ │ ├── channel.go
│ │ │ ├── client.go
│ │ │ ├── codec.go
│ │ │ ├── config.go
│ │ │ ├── doc.go
│ │ │ ├── errors.go
│ │ │ ├── handshake.go
│ │ │ ├── interceptor.go
│ │ │ ├── metadata.go
│ │ │ ├── request.pb.go
│ │ │ ├── request.proto
│ │ │ ├── server.go
│ │ │ ├── services.go
│ │ │ ├── stream.go
│ │ │ ├── stream_server.go
│ │ │ ├── test.proto
│ │ │ └── unixcreds_linux.go
│ │ └── typeurl/
│ │ └── v2/
│ │ ├── .gitignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── doc.go
│ │ ├── types.go
│ │ └── types_gogo.go
│ ├── cyphar/
│ │ └── filepath-securejoin/
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── VERSION
│ │ ├── doc.go
│ │ ├── gocompat_errors_go120.go
│ │ ├── gocompat_errors_unsupported.go
│ │ ├── gocompat_generics_go121.go
│ │ ├── gocompat_generics_unsupported.go
│ │ ├── join.go
│ │ ├── lookup_linux.go
│ │ ├── mkdir_linux.go
│ │ ├── open_linux.go
│ │ ├── openat2_linux.go
│ │ ├── openat_linux.go
│ │ ├── procfs_linux.go
│ │ └── vfs.go
│ ├── dimchansky/
│ │ └── utfbom/
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ └── utfbom.go
│ ├── distribution/
│ │ └── reference/
│ │ ├── .gitattributes
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── CODE-OF-CONDUCT.md
│ │ ├── CONTRIBUTING.md
│ │ ├── GOVERNANCE.md
│ │ ├── LICENSE
│ │ ├── MAINTAINERS
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── helpers.go
│ │ ├── normalize.go
│ │ ├── reference.go
│ │ ├── regexp.go
│ │ └── sort.go
│ ├── docker/
│ │ ├── cli/
│ │ │ ├── AUTHORS
│ │ │ ├── LICENSE
│ │ │ ├── NOTICE
│ │ │ └── cli/
│ │ │ └── config/
│ │ │ ├── config.go
│ │ │ ├── configfile/
│ │ │ │ ├── file.go
│ │ │ │ ├── file_unix.go
│ │ │ │ └── file_windows.go
│ │ │ ├── credentials/
│ │ │ │ ├── credentials.go
│ │ │ │ ├── default_store.go
│ │ │ │ ├── default_store_darwin.go
│ │ │ │ ├── default_store_linux.go
│ │ │ │ ├── default_store_unsupported.go
│ │ │ │ ├── default_store_windows.go
│ │ │ │ ├── file_store.go
│ │ │ │ └── native_store.go
│ │ │ └── types/
│ │ │ └── authconfig.go
│ │ ├── distribution/
│ │ │ ├── .dockerignore
│ │ │ ├── .gitignore
│ │ │ ├── .golangci.yml
│ │ │ ├── .mailmap
│ │ │ ├── BUILDING.md
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── Dockerfile
│ │ │ ├── LICENSE
│ │ │ ├── MAINTAINERS
│ │ │ ├── Makefile
│ │ │ ├── README.md
│ │ │ ├── ROADMAP.md
│ │ │ ├── blobs.go
│ │ │ ├── doc.go
│ │ │ ├── docker-bake.hcl
│ │ │ ├── errors.go
│ │ │ ├── manifests.go
│ │ │ ├── registry/
│ │ │ │ └── client/
│ │ │ │ └── auth/
│ │ │ │ └── challenge/
│ │ │ │ ├── addr.go
│ │ │ │ └── authchallenge.go
│ │ │ ├── registry.go
│ │ │ ├── tags.go
│ │ │ └── vendor.conf
│ │ ├── docker/
│ │ │ ├── AUTHORS
│ │ │ ├── LICENSE
│ │ │ ├── NOTICE
│ │ │ ├── api/
│ │ │ │ ├── README.md
│ │ │ │ ├── common.go
│ │ │ │ ├── swagger-gen.yaml
│ │ │ │ ├── swagger.yaml
│ │ │ │ └── types/
│ │ │ │ ├── backend/
│ │ │ │ │ ├── backend.go
│ │ │ │ │ └── build.go
│ │ │ │ ├── blkiodev/
│ │ │ │ │ └── blkio.go
│ │ │ │ ├── checkpoint/
│ │ │ │ │ ├── list.go
│ │ │ │ │ └── options.go
│ │ │ │ ├── client.go
│ │ │ │ ├── common/
│ │ │ │ │ └── id_response.go
│ │ │ │ ├── container/
│ │ │ │ │ ├── change_type.go
│ │ │ │ │ ├── change_types.go
│ │ │ │ │ ├── commit.go
│ │ │ │ │ ├── config.go
│ │ │ │ │ ├── container.go
│ │ │ │ │ ├── create_request.go
│ │ │ │ │ ├── create_response.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── exec.go
│ │ │ │ │ ├── filesystem_change.go
│ │ │ │ │ ├── health.go
│ │ │ │ │ ├── hostconfig.go
│ │ │ │ │ ├── hostconfig_unix.go
│ │ │ │ │ ├── hostconfig_windows.go
│ │ │ │ │ ├── network_settings.go
│ │ │ │ │ ├── options.go
│ │ │ │ │ ├── port.go
│ │ │ │ │ ├── stats.go
│ │ │ │ │ ├── top_response.go
│ │ │ │ │ ├── update_response.go
│ │ │ │ │ ├── wait_exit_error.go
│ │ │ │ │ ├── wait_response.go
│ │ │ │ │ └── waitcondition.go
│ │ │ │ ├── error_response.go
│ │ │ │ ├── error_response_ext.go
│ │ │ │ ├── events/
│ │ │ │ │ └── events.go
│ │ │ │ ├── filters/
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── parse.go
│ │ │ │ ├── image/
│ │ │ │ │ ├── delete_response.go
│ │ │ │ │ ├── image.go
│ │ │ │ │ ├── image_history.go
│ │ │ │ │ ├── image_inspect.go
│ │ │ │ │ ├── manifest.go
│ │ │ │ │ ├── opts.go
│ │ │ │ │ └── summary.go
│ │ │ │ ├── mount/
│ │ │ │ │ └── mount.go
│ │ │ │ ├── network/
│ │ │ │ │ ├── create_response.go
│ │ │ │ │ ├── endpoint.go
│ │ │ │ │ ├── ipam.go
│ │ │ │ │ └── network.go
│ │ │ │ ├── plugin.go
│ │ │ │ ├── plugin_device.go
│ │ │ │ ├── plugin_env.go
│ │ │ │ ├── plugin_interface_type.go
│ │ │ │ ├── plugin_mount.go
│ │ │ │ ├── plugin_responses.go
│ │ │ │ ├── plugins/
│ │ │ │ │ └── logdriver/
│ │ │ │ │ ├── entry.pb.go
│ │ │ │ │ ├── entry.proto
│ │ │ │ │ ├── gen.go
│ │ │ │ │ └── io.go
│ │ │ │ ├── registry/
│ │ │ │ │ ├── authconfig.go
│ │ │ │ │ ├── authenticate.go
│ │ │ │ │ ├── registry.go
│ │ │ │ │ └── search.go
│ │ │ │ ├── storage/
│ │ │ │ │ └── driver_data.go
│ │ │ │ ├── strslice/
│ │ │ │ │ └── strslice.go
│ │ │ │ ├── swarm/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── config.go
│ │ │ │ │ ├── container.go
│ │ │ │ │ ├── network.go
│ │ │ │ │ ├── node.go
│ │ │ │ │ ├── runtime/
│ │ │ │ │ │ ├── gen.go
│ │ │ │ │ │ ├── plugin.pb.go
│ │ │ │ │ │ └── plugin.proto
│ │ │ │ │ ├── runtime.go
│ │ │ │ │ ├── secret.go
│ │ │ │ │ ├── service.go
│ │ │ │ │ ├── service_create_response.go
│ │ │ │ │ ├── service_update_response.go
│ │ │ │ │ ├── swarm.go
│ │ │ │ │ └── task.go
│ │ │ │ ├── system/
│ │ │ │ │ ├── info.go
│ │ │ │ │ ├── runtime.go
│ │ │ │ │ └── security_opts.go
│ │ │ │ ├── time/
│ │ │ │ │ └── timestamp.go
│ │ │ │ ├── types.go
│ │ │ │ ├── types_deprecated.go
│ │ │ │ ├── versions/
│ │ │ │ │ └── compare.go
│ │ │ │ └── volume/
│ │ │ │ ├── cluster_volume.go
│ │ │ │ ├── create_options.go
│ │ │ │ ├── list_response.go
│ │ │ │ ├── options.go
│ │ │ │ ├── volume.go
│ │ │ │ └── volume_update.go
│ │ │ ├── builder/
│ │ │ │ ├── builder.go
│ │ │ │ ├── dockerfile/
│ │ │ │ │ ├── buildargs.go
│ │ │ │ │ ├── builder.go
│ │ │ │ │ ├── builder_unix.go
│ │ │ │ │ ├── builder_windows.go
│ │ │ │ │ ├── containerbackend.go
│ │ │ │ │ ├── copy.go
│ │ │ │ │ ├── copy_unix.go
│ │ │ │ │ ├── copy_windows.go
│ │ │ │ │ ├── dispatchers.go
│ │ │ │ │ ├── dispatchers_unix.go
│ │ │ │ │ ├── dispatchers_windows.go
│ │ │ │ │ ├── evaluator.go
│ │ │ │ │ ├── imagecontext.go
│ │ │ │ │ ├── imageprobe.go
│ │ │ │ │ ├── internals.go
│ │ │ │ │ ├── internals_linux.go
│ │ │ │ │ ├── internals_windows.go
│ │ │ │ │ └── metrics.go
│ │ │ │ └── remotecontext/
│ │ │ │ ├── archive.go
│ │ │ │ ├── detect.go
│ │ │ │ ├── filehash.go
│ │ │ │ ├── git/
│ │ │ │ │ └── gitutils.go
│ │ │ │ ├── git.go
│ │ │ │ ├── lazycontext.go
│ │ │ │ ├── mimetype.go
│ │ │ │ ├── remote.go
│ │ │ │ └── urlutil/
│ │ │ │ └── urlutil.go
│ │ │ ├── client/
│ │ │ │ ├── README.md
│ │ │ │ ├── build_cancel.go
│ │ │ │ ├── build_prune.go
│ │ │ │ ├── checkpoint.go
│ │ │ │ ├── checkpoint_create.go
│ │ │ │ ├── checkpoint_delete.go
│ │ │ │ ├── checkpoint_list.go
│ │ │ │ ├── client.go
│ │ │ │ ├── client_deprecated.go
│ │ │ │ ├── client_interfaces.go
│ │ │ │ ├── client_unix.go
│ │ │ │ ├── client_windows.go
│ │ │ │ ├── config_create.go
│ │ │ │ ├── config_inspect.go
│ │ │ │ ├── config_list.go
│ │ │ │ ├── config_remove.go
│ │ │ │ ├── config_update.go
│ │ │ │ ├── container_attach.go
│ │ │ │ ├── container_commit.go
│ │ │ │ ├── container_copy.go
│ │ │ │ ├── container_create.go
│ │ │ │ ├── container_diff.go
│ │ │ │ ├── container_exec.go
│ │ │ │ ├── container_export.go
│ │ │ │ ├── container_inspect.go
│ │ │ │ ├── container_kill.go
│ │ │ │ ├── container_list.go
│ │ │ │ ├── container_logs.go
│ │ │ │ ├── container_pause.go
│ │ │ │ ├── container_prune.go
│ │ │ │ ├── container_remove.go
│ │ │ │ ├── container_rename.go
│ │ │ │ ├── container_resize.go
│ │ │ │ ├── container_restart.go
│ │ │ │ ├── container_start.go
│ │ │ │ ├── container_stats.go
│ │ │ │ ├── container_stop.go
│ │ │ │ ├── container_top.go
│ │ │ │ ├── container_unpause.go
│ │ │ │ ├── container_update.go
│ │ │ │ ├── container_wait.go
│ │ │ │ ├── disk_usage.go
│ │ │ │ ├── distribution_inspect.go
│ │ │ │ ├── envvars.go
│ │ │ │ ├── errors.go
│ │ │ │ ├── events.go
│ │ │ │ ├── hijack.go
│ │ │ │ ├── image_build.go
│ │ │ │ ├── image_create.go
│ │ │ │ ├── image_history.go
│ │ │ │ ├── image_history_opts.go
│ │ │ │ ├── image_import.go
│ │ │ │ ├── image_inspect.go
│ │ │ │ ├── image_inspect_opts.go
│ │ │ │ ├── image_list.go
│ │ │ │ ├── image_load.go
│ │ │ │ ├── image_load_opts.go
│ │ │ │ ├── image_prune.go
│ │ │ │ ├── image_pull.go
│ │ │ │ ├── image_push.go
│ │ │ │ ├── image_remove.go
│ │ │ │ ├── image_save.go
│ │ │ │ ├── image_save_opts.go
│ │ │ │ ├── image_search.go
│ │ │ │ ├── image_tag.go
│ │ │ │ ├── info.go
│ │ │ │ ├── login.go
│ │ │ │ ├── network_connect.go
│ │ │ │ ├── network_create.go
│ │ │ │ ├── network_disconnect.go
│ │ │ │ ├── network_inspect.go
│ │ │ │ ├── network_list.go
│ │ │ │ ├── network_prune.go
│ │ │ │ ├── network_remove.go
│ │ │ │ ├── node_inspect.go
│ │ │ │ ├── node_list.go
│ │ │ │ ├── node_remove.go
│ │ │ │ ├── node_update.go
│ │ │ │ ├── options.go
│ │ │ │ ├── ping.go
│ │ │ │ ├── plugin_create.go
│ │ │ │ ├── plugin_disable.go
│ │ │ │ ├── plugin_enable.go
│ │ │ │ ├── plugin_inspect.go
│ │ │ │ ├── plugin_install.go
│ │ │ │ ├── plugin_list.go
│ │ │ │ ├── plugin_push.go
│ │ │ │ ├── plugin_remove.go
│ │ │ │ ├── plugin_set.go
│ │ │ │ ├── plugin_upgrade.go
│ │ │ │ ├── request.go
│ │ │ │ ├── secret_create.go
│ │ │ │ ├── secret_inspect.go
│ │ │ │ ├── secret_list.go
│ │ │ │ ├── secret_remove.go
│ │ │ │ ├── secret_update.go
│ │ │ │ ├── service_create.go
│ │ │ │ ├── service_inspect.go
│ │ │ │ ├── service_list.go
│ │ │ │ ├── service_logs.go
│ │ │ │ ├── service_remove.go
│ │ │ │ ├── service_update.go
│ │ │ │ ├── swarm_get_unlock_key.go
│ │ │ │ ├── swarm_init.go
│ │ │ │ ├── swarm_inspect.go
│ │ │ │ ├── swarm_join.go
│ │ │ │ ├── swarm_leave.go
│ │ │ │ ├── swarm_unlock.go
│ │ │ │ ├── swarm_update.go
│ │ │ │ ├── task_inspect.go
│ │ │ │ ├── task_list.go
│ │ │ │ ├── task_logs.go
│ │ │ │ ├── utils.go
│ │ │ │ ├── version.go
│ │ │ │ ├── volume_create.go
│ │ │ │ ├── volume_inspect.go
│ │ │ │ ├── volume_list.go
│ │ │ │ ├── volume_prune.go
│ │ │ │ ├── volume_remove.go
│ │ │ │ └── volume_update.go
│ │ │ ├── container/
│ │ │ │ ├── archive_windows.go
│ │ │ │ ├── attach_context.go
│ │ │ │ ├── container.go
│ │ │ │ ├── container_unix.go
│ │ │ │ ├── container_windows.go
│ │ │ │ ├── env.go
│ │ │ │ ├── exec.go
│ │ │ │ ├── health.go
│ │ │ │ ├── history.go
│ │ │ │ ├── memory_store.go
│ │ │ │ ├── monitor.go
│ │ │ │ ├── mounts_unix.go
│ │ │ │ ├── mounts_windows.go
│ │ │ │ ├── rwlayer.go
│ │ │ │ ├── state.go
│ │ │ │ ├── store.go
│ │ │ │ ├── stream/
│ │ │ │ │ ├── attach.go
│ │ │ │ │ ├── bytespipe/
│ │ │ │ │ │ ├── buffer.go
│ │ │ │ │ │ └── bytespipe.go
│ │ │ │ │ ├── streams.go
│ │ │ │ │ └── unbuffered.go
│ │ │ │ └── view.go
│ │ │ ├── daemon/
│ │ │ │ ├── cluster/
│ │ │ │ │ └── provider/
│ │ │ │ │ └── network.go
│ │ │ │ ├── graphdriver/
│ │ │ │ │ ├── driver.go
│ │ │ │ │ ├── driver_freebsd.go
│ │ │ │ │ ├── driver_linux.go
│ │ │ │ │ ├── driver_unsupported.go
│ │ │ │ │ ├── driver_windows.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── fsdiff.go
│ │ │ │ │ └── utils.go
│ │ │ │ ├── logger/
│ │ │ │ │ ├── adapter.go
│ │ │ │ │ ├── copier.go
│ │ │ │ │ ├── factory.go
│ │ │ │ │ ├── jsonfilelog/
│ │ │ │ │ │ ├── jsonfilelog.go
│ │ │ │ │ │ ├── jsonlog/
│ │ │ │ │ │ │ ├── jsonlog.go
│ │ │ │ │ │ │ ├── jsonlogbytes.go
│ │ │ │ │ │ │ └── time_marshalling.go
│ │ │ │ │ │ └── read.go
│ │ │ │ │ ├── local/
│ │ │ │ │ │ ├── config.go
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── local.go
│ │ │ │ │ │ └── read.go
│ │ │ │ │ ├── log_cache_opts.go
│ │ │ │ │ ├── logger.go
│ │ │ │ │ ├── logger_error.go
│ │ │ │ │ ├── loggerutils/
│ │ │ │ │ │ ├── cache/
│ │ │ │ │ │ │ ├── local_cache.go
│ │ │ │ │ │ │ └── validate.go
│ │ │ │ │ │ ├── file_unix.go
│ │ │ │ │ │ ├── file_windows.go
│ │ │ │ │ │ ├── follow.go
│ │ │ │ │ │ ├── log_tag.go
│ │ │ │ │ │ ├── logfile.go
│ │ │ │ │ │ ├── queue.go
│ │ │ │ │ │ └── sharedtemp.go
│ │ │ │ │ ├── loginfo.go
│ │ │ │ │ ├── metrics.go
│ │ │ │ │ ├── plugin.go
│ │ │ │ │ ├── plugin_unix.go
│ │ │ │ │ ├── plugin_unsupported.go
│ │ │ │ │ ├── proxy.go
│ │ │ │ │ ├── ring.go
│ │ │ │ │ └── templates/
│ │ │ │ │ └── templates.go
│ │ │ │ └── network/
│ │ │ │ ├── filter.go
│ │ │ │ ├── network_mode.go
│ │ │ │ ├── network_mode_unix.go
│ │ │ │ ├── network_mode_windows.go
│ │ │ │ └── settings.go
│ │ │ ├── dockerversion/
│ │ │ │ ├── useragent.go
│ │ │ │ └── version_lib.go
│ │ │ ├── errdefs/
│ │ │ │ ├── defs.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── helpers.go
│ │ │ │ ├── http_helpers.go
│ │ │ │ └── is.go
│ │ │ ├── image/
│ │ │ │ ├── fs.go
│ │ │ │ ├── image.go
│ │ │ │ ├── image_os.go
│ │ │ │ ├── rootfs.go
│ │ │ │ └── store.go
│ │ │ ├── internal/
│ │ │ │ ├── cleanups/
│ │ │ │ │ └── composite.go
│ │ │ │ ├── lazyregexp/
│ │ │ │ │ └── lazyregexp.go
│ │ │ │ ├── multierror/
│ │ │ │ │ └── multierror.go
│ │ │ │ ├── platform/
│ │ │ │ │ ├── platform.go
│ │ │ │ │ ├── platform_linux.go
│ │ │ │ │ ├── platform_unix.go
│ │ │ │ │ └── platform_windows.go
│ │ │ │ ├── safepath/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── join_linux.go
│ │ │ │ │ ├── join_windows.go
│ │ │ │ │ ├── k8s_safeopen_linux.go
│ │ │ │ │ └── safepath.go
│ │ │ │ ├── unix_noeintr/
│ │ │ │ │ ├── epoll_linux.go
│ │ │ │ │ └── fs_unix.go
│ │ │ │ └── usergroup/
│ │ │ │ ├── add_linux.go
│ │ │ │ ├── add_unsupported.go
│ │ │ │ ├── const_windows.go
│ │ │ │ ├── lookup_unix.go
│ │ │ │ ├── parser.go
│ │ │ │ └── utils_unix.go
│ │ │ ├── layer/
│ │ │ │ ├── empty.go
│ │ │ │ ├── filestore.go
│ │ │ │ ├── layer.go
│ │ │ │ ├── layer_store.go
│ │ │ │ ├── layer_store_windows.go
│ │ │ │ ├── layer_unix.go
│ │ │ │ ├── layer_windows.go
│ │ │ │ ├── migration.go
│ │ │ │ ├── mounted_layer.go
│ │ │ │ ├── ro_layer.go
│ │ │ │ └── ro_layer_windows.go
│ │ │ ├── libcontainerd/
│ │ │ │ └── types/
│ │ │ │ ├── types.go
│ │ │ │ ├── types_linux.go
│ │ │ │ └── types_windows.go
│ │ │ ├── oci/
│ │ │ │ ├── caps/
│ │ │ │ │ ├── defaults.go
│ │ │ │ │ ├── utils.go
│ │ │ │ │ ├── utils_linux.go
│ │ │ │ │ └── utils_other.go
│ │ │ │ ├── defaults.go
│ │ │ │ ├── devices_linux.go
│ │ │ │ ├── namespaces.go
│ │ │ │ └── oci.go
│ │ │ ├── pkg/
│ │ │ │ ├── archive/
│ │ │ │ │ ├── archive_deprecated.go
│ │ │ │ │ ├── changes_deprecated.go
│ │ │ │ │ ├── copy_deprecated.go
│ │ │ │ │ ├── diff_deprecated.go
│ │ │ │ │ ├── path_deprecated.go
│ │ │ │ │ ├── utils.go
│ │ │ │ │ ├── whiteouts_deprecated.go
│ │ │ │ │ └── wrap_deprecated.go
│ │ │ │ ├── homedir/
│ │ │ │ │ ├── homedir.go
│ │ │ │ │ ├── homedir_linux.go
│ │ │ │ │ └── homedir_others.go
│ │ │ │ ├── idtools/
│ │ │ │ │ ├── idtools.go
│ │ │ │ │ └── idtools_windows.go
│ │ │ │ ├── ioutils/
│ │ │ │ │ ├── fswriters_deprecated.go
│ │ │ │ │ ├── readers.go
│ │ │ │ │ ├── writeflusher.go
│ │ │ │ │ └── writers.go
│ │ │ │ ├── jsonmessage/
│ │ │ │ │ └── jsonmessage.go
│ │ │ │ ├── longpath/
│ │ │ │ │ └── longpath.go
│ │ │ │ ├── parsers/
│ │ │ │ │ └── kernel/
│ │ │ │ │ ├── kernel.go
│ │ │ │ │ ├── kernel_darwin.go
│ │ │ │ │ ├── kernel_unix.go
│ │ │ │ │ ├── kernel_windows.go
│ │ │ │ │ ├── uname_linux.go
│ │ │ │ │ └── uname_unsupported.go
│ │ │ │ ├── plugingetter/
│ │ │ │ │ └── getter.go
│ │ │ │ ├── plugins/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── discovery.go
│ │ │ │ │ ├── discovery_unix.go
│ │ │ │ │ ├── discovery_windows.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── plugins.go
│ │ │ │ │ └── transport/
│ │ │ │ │ ├── http.go
│ │ │ │ │ └── mimetype.go
│ │ │ │ ├── pools/
│ │ │ │ │ └── pools.go
│ │ │ │ ├── progress/
│ │ │ │ │ ├── progress.go
│ │ │ │ │ └── progressreader.go
│ │ │ │ ├── rootless/
│ │ │ │ │ └── rootless.go
│ │ │ │ ├── streamformatter/
│ │ │ │ │ ├── streamformatter.go
│ │ │ │ │ └── streamwriter.go
│ │ │ │ ├── stringid/
│ │ │ │ │ └── stringid.go
│ │ │ │ ├── system/
│ │ │ │ │ ├── args_windows.go
│ │ │ │ │ ├── chtimes.go
│ │ │ │ │ ├── chtimes_nowindows.go
│ │ │ │ │ ├── chtimes_windows.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── filesys.go
│ │ │ │ │ ├── filesys_unix.go
│ │ │ │ │ ├── filesys_windows.go
│ │ │ │ │ ├── init_windows.go
│ │ │ │ │ ├── utimes_unix.go
│ │ │ │ │ ├── utimes_unsupported.go
│ │ │ │ │ ├── xattrs.go
│ │ │ │ │ ├── xattrs_linux.go
│ │ │ │ │ └── xattrs_unsupported.go
│ │ │ │ ├── tailfile/
│ │ │ │ │ └── tailfile.go
│ │ │ │ ├── tarsum/
│ │ │ │ │ ├── builder_context.go
│ │ │ │ │ ├── fileinfosums.go
│ │ │ │ │ ├── tarsum.go
│ │ │ │ │ ├── tarsum_spec.md
│ │ │ │ │ ├── versioning.go
│ │ │ │ │ └── writercloser.go
│ │ │ │ └── useragent/
│ │ │ │ ├── README.md
│ │ │ │ └── useragent.go
│ │ │ ├── restartmanager/
│ │ │ │ └── restartmanager.go
│ │ │ └── volume/
│ │ │ ├── mounts/
│ │ │ │ ├── lcow_parser.go
│ │ │ │ ├── linux_parser.go
│ │ │ │ ├── mounts.go
│ │ │ │ ├── parser.go
│ │ │ │ ├── validate.go
│ │ │ │ ├── volume_copy.go
│ │ │ │ ├── volume_unix.go
│ │ │ │ ├── volume_windows.go
│ │ │ │ └── windows_parser.go
│ │ │ └── volume.go
│ │ ├── docker-credential-helpers/
│ │ │ ├── LICENSE
│ │ │ ├── client/
│ │ │ │ ├── client.go
│ │ │ │ └── command.go
│ │ │ └── credentials/
│ │ │ ├── credentials.go
│ │ │ ├── error.go
│ │ │ ├── helper.go
│ │ │ └── version.go
│ │ ├── go-connections/
│ │ │ ├── LICENSE
│ │ │ ├── nat/
│ │ │ │ ├── nat.go
│ │ │ │ ├── parse.go
│ │ │ │ └── sort.go
│ │ │ ├── sockets/
│ │ │ │ ├── README.md
│ │ │ │ ├── inmem_socket.go
│ │ │ │ ├── proxy.go
│ │ │ │ ├── sockets.go
│ │ │ │ ├── sockets_unix.go
│ │ │ │ ├── sockets_windows.go
│ │ │ │ ├── tcp_socket.go
│ │ │ │ └── unix_socket.go
│ │ │ └── tlsconfig/
│ │ │ ├── certpool.go
│ │ │ ├── config.go
│ │ │ └── config_client_ciphers.go
│ │ ├── go-events/
│ │ │ ├── .gitignore
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── LICENSE
│ │ │ ├── MAINTAINERS
│ │ │ ├── README.md
│ │ │ ├── SECURITY.md
│ │ │ ├── broadcast.go
│ │ │ ├── channel.go
│ │ │ ├── errors.go
│ │ │ ├── event.go
│ │ │ ├── filter.go
│ │ │ ├── queue.go
│ │ │ ├── retry.go
│ │ │ ├── vendor.mod
│ │ │ └── vendor.sum
│ │ ├── go-metrics/
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── LICENSE
│ │ │ ├── LICENSE.docs
│ │ │ ├── NOTICE
│ │ │ ├── README.md
│ │ │ ├── counter.go
│ │ │ ├── docs.go
│ │ │ ├── gauge.go
│ │ │ ├── handler.go
│ │ │ ├── helpers.go
│ │ │ ├── namespace.go
│ │ │ ├── register.go
│ │ │ ├── timer.go
│ │ │ └── unit.go
│ │ └── go-units/
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── MAINTAINERS
│ │ ├── README.md
│ │ ├── circle.yml
│ │ ├── duration.go
│ │ ├── size.go
│ │ └── ulimit.go
│ ├── ePirat/
│ │ └── docker-credential-gitlabci/
│ │ ├── LICENSE
│ │ └── pkg/
│ │ └── credhelper/
│ │ └── credhelper.go
│ ├── emirpasic/
│ │ └── gods/
│ │ ├── LICENSE
│ │ ├── containers/
│ │ │ ├── containers.go
│ │ │ ├── enumerable.go
│ │ │ ├── iterator.go
│ │ │ └── serialization.go
│ │ ├── lists/
│ │ │ ├── arraylist/
│ │ │ │ ├── arraylist.go
│ │ │ │ ├── enumerable.go
│ │ │ │ ├── iterator.go
│ │ │ │ └── serialization.go
│ │ │ └── lists.go
│ │ ├── trees/
│ │ │ ├── binaryheap/
│ │ │ │ ├── binaryheap.go
│ │ │ │ ├── iterator.go
│ │ │ │ └── serialization.go
│ │ │ └── trees.go
│ │ └── utils/
│ │ ├── comparator.go
│ │ ├── sort.go
│ │ └── utils.go
│ ├── envoyproxy/
│ │ ├── go-control-plane/
│ │ │ └── envoy/
│ │ │ ├── LICENSE
│ │ │ ├── admin/
│ │ │ │ └── v3/
│ │ │ │ ├── certs.pb.go
│ │ │ │ ├── certs.pb.validate.go
│ │ │ │ ├── certs_vtproto.pb.go
│ │ │ │ ├── clusters.pb.go
│ │ │ │ ├── clusters.pb.validate.go
│ │ │ │ ├── clusters_vtproto.pb.go
│ │ │ │ ├── config_dump.pb.go
│ │ │ │ ├── config_dump.pb.validate.go
│ │ │ │ ├── config_dump_shared.pb.go
│ │ │ │ ├── config_dump_shared.pb.validate.go
│ │ │ │ ├── config_dump_shared_vtproto.pb.go
│ │ │ │ ├── config_dump_vtproto.pb.go
│ │ │ │ ├── init_dump.pb.go
│ │ │ │ ├── init_dump.pb.validate.go
│ │ │ │ ├── init_dump_vtproto.pb.go
│ │ │ │ ├── listeners.pb.go
│ │ │ │ ├── listeners.pb.validate.go
│ │ │ │ ├── listeners_vtproto.pb.go
│ │ │ │ ├── memory.pb.go
│ │ │ │ ├── memory.pb.validate.go
│ │ │ │ ├── memory_vtproto.pb.go
│ │ │ │ ├── metrics.pb.go
│ │ │ │ ├── metrics.pb.validate.go
│ │ │ │ ├── metrics_vtproto.pb.go
│ │ │ │ ├── mutex_stats.pb.go
│ │ │ │ ├── mutex_stats.pb.validate.go
│ │ │ │ ├── mutex_stats_vtproto.pb.go
│ │ │ │ ├── server_info.pb.go
│ │ │ │ ├── server_info.pb.validate.go
│ │ │ │ ├── server_info_vtproto.pb.go
│ │ │ │ ├── tap.pb.go
│ │ │ │ ├── tap.pb.validate.go
│ │ │ │ └── tap_vtproto.pb.go
│ │ │ ├── annotations/
│ │ │ │ ├── deprecation.pb.go
│ │ │ │ ├── deprecation.pb.validate.go
│ │ │ │ ├── resource.pb.go
│ │ │ │ ├── resource.pb.validate.go
│ │ │ │ └── resource_vtproto.pb.go
│ │ │ ├── config/
│ │ │ │ ├── accesslog/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── accesslog.pb.go
│ │ │ │ │ ├── accesslog.pb.validate.go
│ │ │ │ │ └── accesslog_vtproto.pb.go
│ │ │ │ ├── bootstrap/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── bootstrap.pb.go
│ │ │ │ │ ├── bootstrap.pb.validate.go
│ │ │ │ │ └── bootstrap_vtproto.pb.go
│ │ │ │ ├── cluster/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── circuit_breaker.pb.go
│ │ │ │ │ ├── circuit_breaker.pb.validate.go
│ │ │ │ │ ├── circuit_breaker_vtproto.pb.go
│ │ │ │ │ ├── cluster.pb.go
│ │ │ │ │ ├── cluster.pb.validate.go
│ │ │ │ │ ├── cluster_vtproto.pb.go
│ │ │ │ │ ├── filter.pb.go
│ │ │ │ │ ├── filter.pb.validate.go
│ │ │ │ │ ├── filter_vtproto.pb.go
│ │ │ │ │ ├── outlier_detection.pb.go
│ │ │ │ │ ├── outlier_detection.pb.validate.go
│ │ │ │ │ └── outlier_detection_vtproto.pb.go
│ │ │ │ ├── common/
│ │ │ │ │ └── matcher/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── matcher.pb.go
│ │ │ │ │ ├── matcher.pb.validate.go
│ │ │ │ │ └── matcher_vtproto.pb.go
│ │ │ │ ├── core/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── address.pb.go
│ │ │ │ │ ├── address.pb.validate.go
│ │ │ │ │ ├── address_vtproto.pb.go
│ │ │ │ │ ├── backoff.pb.go
│ │ │ │ │ ├── backoff.pb.validate.go
│ │ │ │ │ ├── backoff_vtproto.pb.go
│ │ │ │ │ ├── base.pb.go
│ │ │ │ │ ├── base.pb.validate.go
│ │ │ │ │ ├── base_vtproto.pb.go
│ │ │ │ │ ├── config_source.pb.go
│ │ │ │ │ ├── config_source.pb.validate.go
│ │ │ │ │ ├── config_source_vtproto.pb.go
│ │ │ │ │ ├── event_service_config.pb.go
│ │ │ │ │ ├── event_service_config.pb.validate.go
│ │ │ │ │ ├── event_service_config_vtproto.pb.go
│ │ │ │ │ ├── extension.pb.go
│ │ │ │ │ ├── extension.pb.validate.go
│ │ │ │ │ ├── extension_vtproto.pb.go
│ │ │ │ │ ├── grpc_method_list.pb.go
│ │ │ │ │ ├── grpc_method_list.pb.validate.go
│ │ │ │ │ ├── grpc_method_list_vtproto.pb.go
│ │ │ │ │ ├── grpc_service.pb.go
│ │ │ │ │ ├── grpc_service.pb.validate.go
│ │ │ │ │ ├── grpc_service_vtproto.pb.go
│ │ │ │ │ ├── health_check.pb.go
│ │ │ │ │ ├── health_check.pb.validate.go
│ │ │ │ │ ├── health_check_vtproto.pb.go
│ │ │ │ │ ├── http_service.pb.go
│ │ │ │ │ ├── http_service.pb.validate.go
│ │ │ │ │ ├── http_service_vtproto.pb.go
│ │ │ │ │ ├── http_uri.pb.go
│ │ │ │ │ ├── http_uri.pb.validate.go
│ │ │ │ │ ├── http_uri_vtproto.pb.go
│ │ │ │ │ ├── protocol.pb.go
│ │ │ │ │ ├── protocol.pb.validate.go
│ │ │ │ │ ├── protocol_vtproto.pb.go
│ │ │ │ │ ├── proxy_protocol.pb.go
│ │ │ │ │ ├── proxy_protocol.pb.validate.go
│ │ │ │ │ ├── proxy_protocol_vtproto.pb.go
│ │ │ │ │ ├── resolver.pb.go
│ │ │ │ │ ├── resolver.pb.validate.go
│ │ │ │ │ ├── resolver_vtproto.pb.go
│ │ │ │ │ ├── socket_cmsg_headers.pb.go
│ │ │ │ │ ├── socket_cmsg_headers.pb.validate.go
│ │ │ │ │ ├── socket_cmsg_headers_vtproto.pb.go
│ │ │ │ │ ├── socket_option.pb.go
│ │ │ │ │ ├── socket_option.pb.validate.go
│ │ │ │ │ ├── socket_option_vtproto.pb.go
│ │ │ │ │ ├── substitution_format_string.pb.go
│ │ │ │ │ ├── substitution_format_string.pb.validate.go
│ │ │ │ │ ├── substitution_format_string_vtproto.pb.go
│ │ │ │ │ ├── udp_socket_config.pb.go
│ │ │ │ │ ├── udp_socket_config.pb.validate.go
│ │ │ │ │ └── udp_socket_config_vtproto.pb.go
│ │ │ │ ├── endpoint/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── endpoint.pb.go
│ │ │ │ │ ├── endpoint.pb.validate.go
│ │ │ │ │ ├── endpoint_components.pb.go
│ │ │ │ │ ├── endpoint_components.pb.validate.go
│ │ │ │ │ ├── endpoint_components_vtproto.pb.go
│ │ │ │ │ ├── endpoint_vtproto.pb.go
│ │ │ │ │ ├── load_report.pb.go
│ │ │ │ │ ├── load_report.pb.validate.go
│ │ │ │ │ └── load_report_vtproto.pb.go
│ │ │ │ ├── listener/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── api_listener.pb.go
│ │ │ │ │ ├── api_listener.pb.validate.go
│ │ │ │ │ ├── api_listener_vtproto.pb.go
│ │ │ │ │ ├── listener.pb.go
│ │ │ │ │ ├── listener.pb.validate.go
│ │ │ │ │ ├── listener_components.pb.go
│ │ │ │ │ ├── listener_components.pb.validate.go
│ │ │ │ │ ├── listener_components_vtproto.pb.go
│ │ │ │ │ ├── listener_vtproto.pb.go
│ │ │ │ │ ├── quic_config.pb.go
│ │ │ │ │ ├── quic_config.pb.validate.go
│ │ │ │ │ ├── quic_config_vtproto.pb.go
│ │ │ │ │ ├── udp_listener_config.pb.go
│ │ │ │ │ ├── udp_listener_config.pb.validate.go
│ │ │ │ │ └── udp_listener_config_vtproto.pb.go
│ │ │ │ ├── metrics/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── metrics_service.pb.go
│ │ │ │ │ ├── metrics_service.pb.validate.go
│ │ │ │ │ ├── metrics_service_vtproto.pb.go
│ │ │ │ │ ├── stats.pb.go
│ │ │ │ │ ├── stats.pb.validate.go
│ │ │ │ │ └── stats_vtproto.pb.go
│ │ │ │ ├── overload/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── overload.pb.go
│ │ │ │ │ ├── overload.pb.validate.go
│ │ │ │ │ └── overload_vtproto.pb.go
│ │ │ │ ├── rbac/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── rbac.pb.go
│ │ │ │ │ ├── rbac.pb.validate.go
│ │ │ │ │ └── rbac_vtproto.pb.go
│ │ │ │ ├── route/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── route.pb.go
│ │ │ │ │ ├── route.pb.validate.go
│ │ │ │ │ ├── route_components.pb.go
│ │ │ │ │ ├── route_components.pb.validate.go
│ │ │ │ │ ├── route_components_vtproto.pb.go
│ │ │ │ │ ├── route_vtproto.pb.go
│ │ │ │ │ ├── scoped_route.pb.go
│ │ │ │ │ ├── scoped_route.pb.validate.go
│ │ │ │ │ └── scoped_route_vtproto.pb.go
│ │ │ │ ├── tap/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── common.pb.go
│ │ │ │ │ ├── common.pb.validate.go
│ │ │ │ │ └── common_vtproto.pb.go
│ │ │ │ └── trace/
│ │ │ │ └── v3/
│ │ │ │ ├── datadog.pb.go
│ │ │ │ ├── datadog.pb.validate.go
│ │ │ │ ├── datadog_vtproto.pb.go
│ │ │ │ ├── dynamic_ot.pb.go
│ │ │ │ ├── dynamic_ot.pb.validate.go
│ │ │ │ ├── dynamic_ot_vtproto.pb.go
│ │ │ │ ├── http_tracer.pb.go
│ │ │ │ ├── http_tracer.pb.validate.go
│ │ │ │ ├── http_tracer_vtproto.pb.go
│ │ │ │ ├── lightstep.pb.go
│ │ │ │ ├── lightstep.pb.validate.go
│ │ │ │ ├── lightstep_vtproto.pb.go
│ │ │ │ ├── opentelemetry.pb.go
│ │ │ │ ├── opentelemetry.pb.validate.go
│ │ │ │ ├── opentelemetry_vtproto.pb.go
│ │ │ │ ├── service.pb.go
│ │ │ │ ├── service.pb.validate.go
│ │ │ │ ├── service_vtproto.pb.go
│ │ │ │ ├── skywalking.pb.go
│ │ │ │ ├── skywalking.pb.validate.go
│ │ │ │ ├── skywalking_vtproto.pb.go
│ │ │ │ ├── trace.pb.go
│ │ │ │ ├── trace.pb.validate.go
│ │ │ │ ├── xray.pb.go
│ │ │ │ ├── xray.pb.validate.go
│ │ │ │ ├── xray_vtproto.pb.go
│ │ │ │ ├── zipkin.pb.go
│ │ │ │ ├── zipkin.pb.validate.go
│ │ │ │ └── zipkin_vtproto.pb.go
│ │ │ ├── data/
│ │ │ │ └── accesslog/
│ │ │ │ └── v3/
│ │ │ │ ├── accesslog.pb.go
│ │ │ │ ├── accesslog.pb.validate.go
│ │ │ │ └── accesslog_vtproto.pb.go
│ │ │ ├── extensions/
│ │ │ │ ├── clusters/
│ │ │ │ │ └── aggregate/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── cluster.pb.go
│ │ │ │ │ ├── cluster.pb.validate.go
│ │ │ │ │ └── cluster_vtproto.pb.go
│ │ │ │ ├── filters/
│ │ │ │ │ ├── common/
│ │ │ │ │ │ └── fault/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── fault.pb.go
│ │ │ │ │ │ ├── fault.pb.validate.go
│ │ │ │ │ │ └── fault_vtproto.pb.go
│ │ │ │ │ ├── http/
│ │ │ │ │ │ ├── fault/
│ │ │ │ │ │ │ └── v3/
│ │ │ │ │ │ │ ├── fault.pb.go
│ │ │ │ │ │ │ ├── fault.pb.validate.go
│ │ │ │ │ │ │ └── fault_vtproto.pb.go
│ │ │ │ │ │ ├── rbac/
│ │ │ │ │ │ │ └── v3/
│ │ │ │ │ │ │ ├── rbac.pb.go
│ │ │ │ │ │ │ ├── rbac.pb.validate.go
│ │ │ │ │ │ │ └── rbac_vtproto.pb.go
│ │ │ │ │ │ └── router/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── router.pb.go
│ │ │ │ │ │ ├── router.pb.validate.go
│ │ │ │ │ │ └── router_vtproto.pb.go
│ │ │ │ │ └── network/
│ │ │ │ │ └── http_connection_manager/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── http_connection_manager.pb.go
│ │ │ │ │ ├── http_connection_manager.pb.validate.go
│ │ │ │ │ └── http_connection_manager_vtproto.pb.go
│ │ │ │ ├── load_balancing_policies/
│ │ │ │ │ ├── client_side_weighted_round_robin/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── client_side_weighted_round_robin.pb.go
│ │ │ │ │ │ ├── client_side_weighted_round_robin.pb.validate.go
│ │ │ │ │ │ └── client_side_weighted_round_robin_vtproto.pb.go
│ │ │ │ │ ├── common/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── common.pb.go
│ │ │ │ │ │ ├── common.pb.validate.go
│ │ │ │ │ │ └── common_vtproto.pb.go
│ │ │ │ │ ├── least_request/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── least_request.pb.go
│ │ │ │ │ │ ├── least_request.pb.validate.go
│ │ │ │ │ │ └── least_request_vtproto.pb.go
│ │ │ │ │ ├── pick_first/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── pick_first.pb.go
│ │ │ │ │ │ ├── pick_first.pb.validate.go
│ │ │ │ │ │ └── pick_first_vtproto.pb.go
│ │ │ │ │ ├── ring_hash/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── ring_hash.pb.go
│ │ │ │ │ │ ├── ring_hash.pb.validate.go
│ │ │ │ │ │ └── ring_hash_vtproto.pb.go
│ │ │ │ │ └── wrr_locality/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── wrr_locality.pb.go
│ │ │ │ │ ├── wrr_locality.pb.validate.go
│ │ │ │ │ └── wrr_locality_vtproto.pb.go
│ │ │ │ ├── rbac/
│ │ │ │ │ └── audit_loggers/
│ │ │ │ │ └── stream/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── stream.pb.go
│ │ │ │ │ ├── stream.pb.validate.go
│ │ │ │ │ └── stream_vtproto.pb.go
│ │ │ │ └── transport_sockets/
│ │ │ │ └── tls/
│ │ │ │ └── v3/
│ │ │ │ ├── cert.pb.go
│ │ │ │ ├── cert.pb.validate.go
│ │ │ │ ├── common.pb.go
│ │ │ │ ├── common.pb.validate.go
│ │ │ │ ├── common_vtproto.pb.go
│ │ │ │ ├── secret.pb.go
│ │ │ │ ├── secret.pb.validate.go
│ │ │ │ ├── secret_vtproto.pb.go
│ │ │ │ ├── tls.pb.go
│ │ │ │ ├── tls.pb.validate.go
│ │ │ │ ├── tls_spiffe_validator_config.pb.go
│ │ │ │ ├── tls_spiffe_validator_config.pb.validate.go
│ │ │ │ ├── tls_spiffe_validator_config_vtproto.pb.go
│ │ │ │ └── tls_vtproto.pb.go
│ │ │ ├── service/
│ │ │ │ ├── discovery/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── ads.pb.go
│ │ │ │ │ ├── ads.pb.validate.go
│ │ │ │ │ ├── ads_grpc.pb.go
│ │ │ │ │ ├── ads_vtproto.pb.go
│ │ │ │ │ ├── discovery.pb.go
│ │ │ │ │ ├── discovery.pb.validate.go
│ │ │ │ │ └── discovery_vtproto.pb.go
│ │ │ │ ├── load_stats/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── lrs.pb.go
│ │ │ │ │ ├── lrs.pb.validate.go
│ │ │ │ │ ├── lrs_grpc.pb.go
│ │ │ │ │ └── lrs_vtproto.pb.go
│ │ │ │ └── status/
│ │ │ │ └── v3/
│ │ │ │ ├── csds.pb.go
│ │ │ │ ├── csds.pb.validate.go
│ │ │ │ ├── csds_grpc.pb.go
│ │ │ │ └── csds_vtproto.pb.go
│ │ │ └── type/
│ │ │ ├── http/
│ │ │ │ └── v3/
│ │ │ │ ├── cookie.pb.go
│ │ │ │ ├── cookie.pb.validate.go
│ │ │ │ ├── cookie_vtproto.pb.go
│ │ │ │ ├── path_transformation.pb.go
│ │ │ │ ├── path_transformation.pb.validate.go
│ │ │ │ └── path_transformation_vtproto.pb.go
│ │ │ ├── matcher/
│ │ │ │ └── v3/
│ │ │ │ ├── address.pb.go
│ │ │ │ ├── address.pb.validate.go
│ │ │ │ ├── address_vtproto.pb.go
│ │ │ │ ├── filter_state.pb.go
│ │ │ │ ├── filter_state.pb.validate.go
│ │ │ │ ├── filter_state_vtproto.pb.go
│ │ │ │ ├── http_inputs.pb.go
│ │ │ │ ├── http_inputs.pb.validate.go
│ │ │ │ ├── http_inputs_vtproto.pb.go
│ │ │ │ ├── metadata.pb.go
│ │ │ │ ├── metadata.pb.validate.go
│ │ │ │ ├── metadata_vtproto.pb.go
│ │ │ │ ├── node.pb.go
│ │ │ │ ├── node.pb.validate.go
│ │ │ │ ├── node_vtproto.pb.go
│ │ │ │ ├── number.pb.go
│ │ │ │ ├── number.pb.validate.go
│ │ │ │ ├── number_vtproto.pb.go
│ │ │ │ ├── path.pb.go
│ │ │ │ ├── path.pb.validate.go
│ │ │ │ ├── path_vtproto.pb.go
│ │ │ │ ├── regex.pb.go
│ │ │ │ ├── regex.pb.validate.go
│ │ │ │ ├── regex_vtproto.pb.go
│ │ │ │ ├── status_code_input.pb.go
│ │ │ │ ├── status_code_input.pb.validate.go
│ │ │ │ ├── status_code_input_vtproto.pb.go
│ │ │ │ ├── string.pb.go
│ │ │ │ ├── string.pb.validate.go
│ │ │ │ ├── string_vtproto.pb.go
│ │ │ │ ├── struct.pb.go
│ │ │ │ ├── struct.pb.validate.go
│ │ │ │ ├── struct_vtproto.pb.go
│ │ │ │ ├── value.pb.go
│ │ │ │ ├── value.pb.validate.go
│ │ │ │ └── value_vtproto.pb.go
│ │ │ ├── metadata/
│ │ │ │ └── v3/
│ │ │ │ ├── metadata.pb.go
│ │ │ │ ├── metadata.pb.validate.go
│ │ │ │ └── metadata_vtproto.pb.go
│ │ │ ├── tracing/
│ │ │ │ └── v3/
│ │ │ │ ├── custom_tag.pb.go
│ │ │ │ ├── custom_tag.pb.validate.go
│ │ │ │ └── custom_tag_vtproto.pb.go
│ │ │ └── v3/
│ │ │ ├── hash_policy.pb.go
│ │ │ ├── hash_policy.pb.validate.go
│ │ │ ├── hash_policy_vtproto.pb.go
│ │ │ ├── http.pb.go
│ │ │ ├── http.pb.validate.go
│ │ │ ├── http_status.pb.go
│ │ │ ├── http_status.pb.validate.go
│ │ │ ├── http_status_vtproto.pb.go
│ │ │ ├── percent.pb.go
│ │ │ ├── percent.pb.validate.go
│ │ │ ├── percent_vtproto.pb.go
│ │ │ ├── range.pb.go
│ │ │ ├── range.pb.validate.go
│ │ │ ├── range_vtproto.pb.go
│ │ │ ├── ratelimit_strategy.pb.go
│ │ │ ├── ratelimit_strategy.pb.validate.go
│ │ │ ├── ratelimit_strategy_vtproto.pb.go
│ │ │ ├── ratelimit_unit.pb.go
│ │ │ ├── ratelimit_unit.pb.validate.go
│ │ │ ├── semantic_version.pb.go
│ │ │ ├── semantic_version.pb.validate.go
│ │ │ ├── semantic_version_vtproto.pb.go
│ │ │ ├── token_bucket.pb.go
│ │ │ ├── token_bucket.pb.validate.go
│ │ │ └── token_bucket_vtproto.pb.go
│ │ └── protoc-gen-validate/
│ │ ├── LICENSE
│ │ └── validate/
│ │ ├── BUILD
│ │ ├── validate.h
│ │ ├── validate.pb.go
│ │ └── validate.proto
│ ├── felixge/
│ │ └── httpsnoop/
│ │ ├── .gitignore
│ │ ├── LICENSE.txt
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── capture_metrics.go
│ │ ├── docs.go
│ │ ├── wrap_generated_gteq_1.8.go
│ │ └── wrap_generated_lt_1.8.go
│ ├── fsnotify/
│ │ └── fsnotify/
│ │ ├── .cirrus.yml
│ │ ├── .gitignore
│ │ ├── .mailmap
│ │ ├── CHANGELOG.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── backend_fen.go
│ │ ├── backend_inotify.go
│ │ ├── backend_kqueue.go
│ │ ├── backend_other.go
│ │ ├── backend_windows.go
│ │ ├── fsnotify.go
│ │ ├── internal/
│ │ │ ├── darwin.go
│ │ │ ├── debug_darwin.go
│ │ │ ├── debug_dragonfly.go
│ │ │ ├── debug_freebsd.go
│ │ │ ├── debug_kqueue.go
│ │ │ ├── debug_linux.go
│ │ │ ├── debug_netbsd.go
│ │ │ ├── debug_openbsd.go
│ │ │ ├── debug_solaris.go
│ │ │ ├── debug_windows.go
│ │ │ ├── freebsd.go
│ │ │ ├── internal.go
│ │ │ ├── unix.go
│ │ │ ├── unix2.go
│ │ │ └── windows.go
│ │ ├── shared.go
│ │ ├── staticcheck.conf
│ │ ├── system_bsd.go
│ │ └── system_darwin.go
│ ├── go-git/
│ │ ├── gcfg/
│ │ │ ├── .gitignore
│ │ │ ├── LICENSE
│ │ │ ├── Makefile
│ │ │ ├── README
│ │ │ ├── doc.go
│ │ │ ├── errors.go
│ │ │ ├── read.go
│ │ │ ├── scanner/
│ │ │ │ ├── errors.go
│ │ │ │ └── scanner.go
│ │ │ ├── set.go
│ │ │ ├── token/
│ │ │ │ ├── position.go
│ │ │ │ ├── serialize.go
│ │ │ │ └── token.go
│ │ │ └── types/
│ │ │ ├── bool.go
│ │ │ ├── doc.go
│ │ │ ├── enum.go
│ │ │ ├── int.go
│ │ │ └── scan.go
│ │ └── go-git/
│ │ └── v5/
│ │ ├── .gitignore
│ │ ├── CODE_OF_CONDUCT.md
│ │ ├── COMPATIBILITY.md
│ │ ├── CONTRIBUTING.md
│ │ ├── EXTENDING.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── blame.go
│ │ ├── common.go
│ │ ├── config/
│ │ │ ├── branch.go
│ │ │ ├── config.go
│ │ │ ├── modules.go
│ │ │ ├── refspec.go
│ │ │ └── url.go
│ │ ├── doc.go
│ │ ├── internal/
│ │ │ ├── path_util/
│ │ │ │ └── path_util.go
│ │ │ ├── revision/
│ │ │ │ ├── parser.go
│ │ │ │ ├── scanner.go
│ │ │ │ └── token.go
│ │ │ └── url/
│ │ │ └── url.go
│ │ ├── object_walker.go
│ │ ├── options.go
│ │ ├── oss-fuzz.sh
│ │ ├── plumbing/
│ │ │ ├── cache/
│ │ │ │ ├── buffer_lru.go
│ │ │ │ ├── common.go
│ │ │ │ └── object_lru.go
│ │ │ ├── color/
│ │ │ │ └── color.go
│ │ │ ├── error.go
│ │ │ ├── filemode/
│ │ │ │ └── filemode.go
│ │ │ ├── format/
│ │ │ │ ├── config/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── decoder.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── encoder.go
│ │ │ │ │ ├── format.go
│ │ │ │ │ ├── option.go
│ │ │ │ │ └── section.go
│ │ │ │ ├── diff/
│ │ │ │ │ ├── colorconfig.go
│ │ │ │ │ ├── patch.go
│ │ │ │ │ └── unified_encoder.go
│ │ │ │ ├── gitignore/
│ │ │ │ │ ├── dir.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── matcher.go
│ │ │ │ │ └── pattern.go
│ │ │ │ ├── idxfile/
│ │ │ │ │ ├── decoder.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── encoder.go
│ │ │ │ │ ├── idxfile.go
│ │ │ │ │ └── writer.go
│ │ │ │ ├── index/
│ │ │ │ │ ├── decoder.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── encoder.go
│ │ │ │ │ ├── index.go
│ │ │ │ │ └── match.go
│ │ │ │ ├── objfile/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── reader.go
│ │ │ │ │ └── writer.go
│ │ │ │ ├── packfile/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── delta_index.go
│ │ │ │ │ ├── delta_selector.go
│ │ │ │ │ ├── diff_delta.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── encoder.go
│ │ │ │ │ ├── error.go
│ │ │ │ │ ├── fsobject.go
│ │ │ │ │ ├── object_pack.go
│ │ │ │ │ ├── packfile.go
│ │ │ │ │ ├── parser.go
│ │ │ │ │ ├── patch_delta.go
│ │ │ │ │ └── scanner.go
│ │ │ │ └── pktline/
│ │ │ │ ├── encoder.go
│ │ │ │ ├── error.go
│ │ │ │ └── scanner.go
│ │ │ ├── hash/
│ │ │ │ ├── hash.go
│ │ │ │ ├── hash_sha1.go
│ │ │ │ └── hash_sha256.go
│ │ │ ├── hash.go
│ │ │ ├── memory.go
│ │ │ ├── object/
│ │ │ │ ├── blob.go
│ │ │ │ ├── change.go
│ │ │ │ ├── change_adaptor.go
│ │ │ │ ├── commit.go
│ │ │ │ ├── commit_walker.go
│ │ │ │ ├── commit_walker_bfs.go
│ │ │ │ ├── commit_walker_bfs_filtered.go
│ │ │ │ ├── commit_walker_ctime.go
│ │ │ │ ├── commit_walker_limit.go
│ │ │ │ ├── commit_walker_path.go
│ │ │ │ ├── difftree.go
│ │ │ │ ├── file.go
│ │ │ │ ├── merge_base.go
│ │ │ │ ├── object.go
│ │ │ │ ├── patch.go
│ │ │ │ ├── rename.go
│ │ │ │ ├── signature.go
│ │ │ │ ├── tag.go
│ │ │ │ ├── tree.go
│ │ │ │ └── treenoder.go
│ │ │ ├── object.go
│ │ │ ├── protocol/
│ │ │ │ └── packp/
│ │ │ │ ├── advrefs.go
│ │ │ │ ├── advrefs_decode.go
│ │ │ │ ├── advrefs_encode.go
│ │ │ │ ├── capability/
│ │ │ │ │ ├── capability.go
│ │ │ │ │ └── list.go
│ │ │ │ ├── common.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── filter.go
│ │ │ │ ├── gitproto.go
│ │ │ │ ├── report_status.go
│ │ │ │ ├── shallowupd.go
│ │ │ │ ├── sideband/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── demux.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── muxer.go
│ │ │ │ ├── srvresp.go
│ │ │ │ ├── ulreq.go
│ │ │ │ ├── ulreq_decode.go
│ │ │ │ ├── ulreq_encode.go
│ │ │ │ ├── updreq.go
│ │ │ │ ├── updreq_decode.go
│ │ │ │ ├── updreq_encode.go
│ │ │ │ ├── uppackreq.go
│ │ │ │ └── uppackresp.go
│ │ │ ├── reference.go
│ │ │ ├── revision.go
│ │ │ ├── revlist/
│ │ │ │ └── revlist.go
│ │ │ ├── storer/
│ │ │ │ ├── doc.go
│ │ │ │ ├── index.go
│ │ │ │ ├── object.go
│ │ │ │ ├── reference.go
│ │ │ │ ├── shallow.go
│ │ │ │ └── storer.go
│ │ │ └── transport/
│ │ │ ├── client/
│ │ │ │ └── client.go
│ │ │ ├── common.go
│ │ │ ├── file/
│ │ │ │ ├── client.go
│ │ │ │ └── server.go
│ │ │ ├── git/
│ │ │ │ └── common.go
│ │ │ ├── http/
│ │ │ │ ├── common.go
│ │ │ │ ├── receive_pack.go
│ │ │ │ ├── transport.go
│ │ │ │ └── upload_pack.go
│ │ │ ├── internal/
│ │ │ │ └── common/
│ │ │ │ ├── common.go
│ │ │ │ ├── mocks.go
│ │ │ │ └── server.go
│ │ │ ├── server/
│ │ │ │ ├── loader.go
│ │ │ │ └── server.go
│ │ │ └── ssh/
│ │ │ ├── auth_method.go
│ │ │ └── common.go
│ │ ├── prune.go
│ │ ├── remote.go
│ │ ├── repository.go
│ │ ├── signer.go
│ │ ├── status.go
│ │ ├── storage/
│ │ │ ├── filesystem/
│ │ │ │ ├── config.go
│ │ │ │ ├── deltaobject.go
│ │ │ │ ├── dotgit/
│ │ │ │ │ ├── dotgit.go
│ │ │ │ │ ├── dotgit_rewrite_packed_refs.go
│ │ │ │ │ ├── dotgit_setref.go
│ │ │ │ │ ├── reader.go
│ │ │ │ │ ├── repository_filesystem.go
│ │ │ │ │ └── writers.go
│ │ │ │ ├── index.go
│ │ │ │ ├── module.go
│ │ │ │ ├── object.go
│ │ │ │ ├── reference.go
│ │ │ │ ├── shallow.go
│ │ │ │ └── storage.go
│ │ │ ├── memory/
│ │ │ │ └── storage.go
│ │ │ └── storer.go
│ │ ├── submodule.go
│ │ ├── utils/
│ │ │ ├── binary/
│ │ │ │ ├── read.go
│ │ │ │ └── write.go
│ │ │ ├── diff/
│ │ │ │ └── diff.go
│ │ │ ├── ioutil/
│ │ │ │ └── common.go
│ │ │ ├── merkletrie/
│ │ │ │ ├── change.go
│ │ │ │ ├── difftree.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── doubleiter.go
│ │ │ │ ├── filesystem/
│ │ │ │ │ └── node.go
│ │ │ │ ├── index/
│ │ │ │ │ └── node.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── frame/
│ │ │ │ │ └── frame.go
│ │ │ │ ├── iter.go
│ │ │ │ └── noder/
│ │ │ │ ├── noder.go
│ │ │ │ └── path.go
│ │ │ ├── sync/
│ │ │ │ ├── bufio.go
│ │ │ │ ├── bytes.go
│ │ │ │ └── zlib.go
│ │ │ └── trace/
│ │ │ └── trace.go
│ │ ├── worktree.go
│ │ ├── worktree_bsd.go
│ │ ├── worktree_commit.go
│ │ ├── worktree_js.go
│ │ ├── worktree_linux.go
│ │ ├── worktree_plan9.go
│ │ ├── worktree_status.go
│ │ ├── worktree_unix_other.go
│ │ └── worktree_windows.go
│ ├── go-jose/
│ │ └── go-jose/
│ │ └── v4/
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── .travis.yml
│ │ ├── CHANGELOG.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── asymmetric.go
│ │ ├── cipher/
│ │ │ ├── cbc_hmac.go
│ │ │ ├── concat_kdf.go
│ │ │ ├── ecdh_es.go
│ │ │ └── key_wrap.go
│ │ ├── crypter.go
│ │ ├── doc.go
│ │ ├── encoding.go
│ │ ├── json/
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── decode.go
│ │ │ ├── encode.go
│ │ │ ├── indent.go
│ │ │ ├── scanner.go
│ │ │ ├── stream.go
│ │ │ └── tags.go
│ │ ├── jwe.go
│ │ ├── jwk.go
│ │ ├── jws.go
│ │ ├── opaque.go
│ │ ├── shared.go
│ │ ├── signing.go
│ │ └── symmetric.go
│ ├── go-logr/
│ │ ├── logr/
│ │ │ ├── .golangci.yaml
│ │ │ ├── CHANGELOG.md
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── SECURITY.md
│ │ │ ├── context.go
│ │ │ ├── context_noslog.go
│ │ │ ├── context_slog.go
│ │ │ ├── discard.go
│ │ │ ├── funcr/
│ │ │ │ ├── funcr.go
│ │ │ │ └── slogsink.go
│ │ │ ├── logr.go
│ │ │ ├── sloghandler.go
│ │ │ ├── slogr.go
│ │ │ └── slogsink.go
│ │ └── stdr/
│ │ ├── LICENSE
│ │ ├── README.md
│ │ └── stdr.go
│ ├── gogo/
│ │ └── protobuf/
│ │ ├── AUTHORS
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ ├── gogoproto/
│ │ │ ├── Makefile
│ │ │ ├── doc.go
│ │ │ ├── gogo.pb.go
│ │ │ ├── gogo.pb.golden
│ │ │ ├── gogo.proto
│ │ │ └── helper.go
│ │ ├── proto/
│ │ │ ├── Makefile
│ │ │ ├── clone.go
│ │ │ ├── custom_gogo.go
│ │ │ ├── decode.go
│ │ │ ├── deprecated.go
│ │ │ ├── discard.go
│ │ │ ├── duration.go
│ │ │ ├── duration_gogo.go
│ │ │ ├── encode.go
│ │ │ ├── encode_gogo.go
│ │ │ ├── equal.go
│ │ │ ├── extensions.go
│ │ │ ├── extensions_gogo.go
│ │ │ ├── lib.go
│ │ │ ├── lib_gogo.go
│ │ │ ├── message_set.go
│ │ │ ├── pointer_reflect.go
│ │ │ ├── pointer_reflect_gogo.go
│ │ │ ├── pointer_unsafe.go
│ │ │ ├── pointer_unsafe_gogo.go
│ │ │ ├── properties.go
│ │ │ ├── properties_gogo.go
│ │ │ ├── skip_gogo.go
│ │ │ ├── table_marshal.go
│ │ │ ├── table_marshal_gogo.go
│ │ │ ├── table_merge.go
│ │ │ ├── table_unmarshal.go
│ │ │ ├── table_unmarshal_gogo.go
│ │ │ ├── text.go
│ │ │ ├── text_gogo.go
│ │ │ ├── text_parser.go
│ │ │ ├── timestamp.go
│ │ │ ├── timestamp_gogo.go
│ │ │ ├── wrappers.go
│ │ │ └── wrappers_gogo.go
│ │ ├── protoc-gen-gogo/
│ │ │ └── descriptor/
│ │ │ ├── Makefile
│ │ │ ├── descriptor.go
│ │ │ ├── descriptor.pb.go
│ │ │ ├── descriptor_gostring.gen.go
│ │ │ └── helper.go
│ │ ├── sortkeys/
│ │ │ └── sortkeys.go
│ │ └── types/
│ │ ├── any.go
│ │ ├── any.pb.go
│ │ ├── api.pb.go
│ │ ├── doc.go
│ │ ├── duration.go
│ │ ├── duration.pb.go
│ │ ├── duration_gogo.go
│ │ ├── empty.pb.go
│ │ ├── field_mask.pb.go
│ │ ├── protosize.go
│ │ ├── source_context.pb.go
│ │ ├── struct.pb.go
│ │ ├── timestamp.go
│ │ ├── timestamp.pb.go
│ │ ├── timestamp_gogo.go
│ │ ├── type.pb.go
│ │ ├── wrappers.pb.go
│ │ └── wrappers_gogo.go
│ ├── golang/
│ │ ├── groupcache/
│ │ │ ├── LICENSE
│ │ │ └── lru/
│ │ │ └── lru.go
│ │ ├── mock/
│ │ │ ├── AUTHORS
│ │ │ ├── CONTRIBUTORS
│ │ │ ├── LICENSE
│ │ │ └── gomock/
│ │ │ ├── call.go
│ │ │ ├── callset.go
│ │ │ ├── controller.go
│ │ │ └── matchers.go
│ │ └── protobuf/
│ │ ├── AUTHORS
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ └── proto/
│ │ ├── buffer.go
│ │ ├── defaults.go
│ │ ├── deprecated.go
│ │ ├── discard.go
│ │ ├── extensions.go
│ │ ├── properties.go
│ │ ├── proto.go
│ │ ├── registry.go
│ │ ├── text_decode.go
│ │ ├── text_encode.go
│ │ ├── wire.go
│ │ └── wrappers.go
│ ├── golang-jwt/
│ │ └── jwt/
│ │ └── v4/
│ │ ├── .gitignore
│ │ ├── LICENSE
│ │ ├── MIGRATION_GUIDE.md
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── VERSION_HISTORY.md
│ │ ├── claims.go
│ │ ├── doc.go
│ │ ├── ecdsa.go
│ │ ├── ecdsa_utils.go
│ │ ├── ed25519.go
│ │ ├── ed25519_utils.go
│ │ ├── errors.go
│ │ ├── hmac.go
│ │ ├── map_claims.go
│ │ ├── none.go
│ │ ├── parser.go
│ │ ├── parser_option.go
│ │ ├── rsa.go
│ │ ├── rsa_pss.go
│ │ ├── rsa_utils.go
│ │ ├── signing_method.go
│ │ ├── staticcheck.conf
│ │ ├── token.go
│ │ └── types.go
│ ├── google/
│ │ ├── go-cmp/
│ │ │ ├── LICENSE
│ │ │ └── cmp/
│ │ │ ├── compare.go
│ │ │ ├── export.go
│ │ │ ├── internal/
│ │ │ │ ├── diff/
│ │ │ │ │ ├── debug_disable.go
│ │ │ │ │ ├── debug_enable.go
│ │ │ │ │ └── diff.go
│ │ │ │ ├── flags/
│ │ │ │ │ └── flags.go
│ │ │ │ ├── function/
│ │ │ │ │ └── func.go
│ │ │ │ └── value/
│ │ │ │ ├── name.go
│ │ │ │ ├── pointer.go
│ │ │ │ └── sort.go
│ │ │ ├── options.go
│ │ │ ├── path.go
│ │ │ ├── report.go
│ │ │ ├── report_compare.go
│ │ │ ├── report_references.go
│ │ │ ├── report_reflect.go
│ │ │ ├── report_slices.go
│ │ │ ├── report_text.go
│ │ │ └── report_value.go
│ │ ├── go-containerregistry/
│ │ │ ├── LICENSE
│ │ │ ├── internal/
│ │ │ │ ├── and/
│ │ │ │ │ └── and_closer.go
│ │ │ │ ├── compression/
│ │ │ │ │ └── compression.go
│ │ │ │ ├── estargz/
│ │ │ │ │ └── estargz.go
│ │ │ │ ├── gzip/
│ │ │ │ │ └── zip.go
│ │ │ │ ├── redact/
│ │ │ │ │ └── redact.go
│ │ │ │ ├── retry/
│ │ │ │ │ ├── retry.go
│ │ │ │ │ └── wait/
│ │ │ │ │ └── kubernetes_apimachinery_wait.go
│ │ │ │ ├── verify/
│ │ │ │ │ └── verify.go
│ │ │ │ └── zstd/
│ │ │ │ └── zstd.go
│ │ │ └── pkg/
│ │ │ ├── authn/
│ │ │ │ ├── README.md
│ │ │ │ ├── anon.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── authn.go
│ │ │ │ ├── basic.go
│ │ │ │ ├── bearer.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── keychain.go
│ │ │ │ └── multikeychain.go
│ │ │ ├── compression/
│ │ │ │ └── compression.go
│ │ │ ├── logs/
│ │ │ │ └── logs.go
│ │ │ ├── name/
│ │ │ │ ├── README.md
│ │ │ │ ├── check.go
│ │ │ │ ├── digest.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── errors.go
│ │ │ │ ├── options.go
│ │ │ │ ├── ref.go
│ │ │ │ ├── registry.go
│ │ │ │ ├── repository.go
│ │ │ │ └── tag.go
│ │ │ └── v1/
│ │ │ ├── config.go
│ │ │ ├── daemon/
│ │ │ │ ├── README.md
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── options.go
│ │ │ │ └── write.go
│ │ │ ├── doc.go
│ │ │ ├── empty/
│ │ │ │ ├── README.md
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ └── index.go
│ │ │ ├── google/
│ │ │ │ ├── README.md
│ │ │ │ ├── auth.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── keychain.go
│ │ │ │ ├── list.go
│ │ │ │ └── options.go
│ │ │ ├── hash.go
│ │ │ ├── image.go
│ │ │ ├── index.go
│ │ │ ├── layer.go
│ │ │ ├── layout/
│ │ │ │ ├── README.md
│ │ │ │ ├── blob.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── gc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ ├── layoutpath.go
│ │ │ │ ├── options.go
│ │ │ │ ├── read.go
│ │ │ │ └── write.go
│ │ │ ├── manifest.go
│ │ │ ├── match/
│ │ │ │ └── match.go
│ │ │ ├── mutate/
│ │ │ │ ├── README.md
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ ├── mutate.go
│ │ │ │ └── rebase.go
│ │ │ ├── partial/
│ │ │ │ ├── README.md
│ │ │ │ ├── compressed.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ ├── uncompressed.go
│ │ │ │ └── with.go
│ │ │ ├── platform.go
│ │ │ ├── progress.go
│ │ │ ├── random/
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ └── options.go
│ │ │ ├── remote/
│ │ │ │ ├── README.md
│ │ │ │ ├── catalog.go
│ │ │ │ ├── check.go
│ │ │ │ ├── delete.go
│ │ │ │ ├── descriptor.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── fetcher.go
│ │ │ │ ├── image.go
│
================================================
FILE CONTENTS
================================================
================================================
FILE: .dockerignore
================================================
integration/**/*
scripts/**/*
hack/**/*
examples/**/*
docs/**/*
.github/**/*
logo/**/*
out/**/*
================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Bug report
about: Report a bug in kaniko
---
**Actual behavior**
A clear and concise description of what the bug is.
**Expected behavior**
A clear and concise description of what you expected to happen.
**To Reproduce**
Steps to reproduce the behavior:
1. ...
2. ...
**Additional Information**
- Dockerfile
Please provide either the Dockerfile you're trying to build or one that can reproduce this error.
- Build Context
Please provide or clearly describe any files needed to build the Dockerfile (ADD/COPY commands)
- Kaniko Image (fully qualified with digest)
**Triage Notes for the Maintainers**
<!-- 🎉🎉🎉 Thank you for an opening an issue !!! 🎉🎉🎉
We are doing our best to get to this. Please help us by helping us prioritize your issue by filling the section below -->
| **Description** | **Yes/No** |
|----------------|---------------|
| Please check if this a new feature you are proposing | <ul><li>- [ ] </li></ul>|
| Please check if the build works in docker but not in kaniko | <ul><li>- [ ] </li></ul>|
| Please check if this error is seen when you use `--cache` flag | <ul><li>- [ ] </li></ul>|
| Please check if your dockerfile is a multistage dockerfile | <ul><li>- [ ] </li></ul>|
================================================
FILE: .github/dependabot.yml
================================================
version: 2
updates:
- package-ecosystem: gomod
directory: /
schedule:
interval: weekly
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
- package-ecosystem: docker
directory: /deploy
schedule:
interval: weekly
================================================
FILE: .github/pull_request_template.md
================================================
<!-- 🎉🎉🎉 Thank you for the PR!!! 🎉🎉🎉 -->
Fixes #<issue number> _in case of a bug fix, this should point to a bug and any other related issue(s)_
**Description**
<!-- Describe your changes here- ideally you can get that description straight from
your descriptive commit message(s)! -->
**Submitter Checklist**
These are the criteria that every PR should meet, please check them off as you
review them:
- [ ] Includes [unit tests](../DEVELOPMENT.md#creating-a-pr)
- [ ] Adds integration tests if needed.
_See [the contribution guide](../CONTRIBUTING.md) for more details._
**Reviewer Notes**
- [ ] The code flow looks good.
- [ ] Unit tests and or integration tests added.
**Release Notes**
Describe any changes here so maintainer can include it in the release notes, or delete this block.
```
Examples of user facing changes:
- kaniko adds a new flag `--registry-repo` to override registry
```
================================================
FILE: .github/workflows/images.yaml
================================================
name: Build images
on:
pull_request:
branches: ['main']
push:
branches: ['main']
tags: ['v[0-9]+.[0-9]+.[0-9]+*']
jobs:
build-images:
concurrency:
# If a previous run is ongoing with the same head_ref (it's a run on the
# same PR) then cancel it to save time. If it isn't a PR, only cancel the
# previous run if it's on the same commit SHA. This prevents a run for a
# commit push from cancelling a previous commit push's build, since we
# want an image built and tagged for each commit.
group: build-images-${{ matrix.image }}-${{ github.head_ref || github.sha }}
cancel-in-progress: true
permissions:
contents: read # Read the repo contents.
id-token: write # Produce identity token for keyless signing.
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
image:
- executor
- executor-debug
- executor-slim
- warmer
include:
- image: executor
target: kaniko-executor
platforms: linux/amd64,linux/arm64,linux/s390x,linux/ppc64le
image-name: gcr.io/kaniko-project/executor
tag: ${{ github.sha }}
release-tag: latest
- image: executor-debug
target: kaniko-debug
platforms: linux/amd64,linux/arm64,linux/s390x
image-name: gcr.io/kaniko-project/executor
tag: ${{ github.sha }}-debug
release-tag: debug
- image: executor-slim
target: kaniko-slim
platforms: linux/amd64,linux/arm64,linux/s390x,linux/ppc64le
image-name: gcr.io/kaniko-project/executor
tag: ${{ github.sha }}-slim
release-tag: slim
- image: warmer
target: kaniko-warmer
platforms: linux/amd64,linux/arm64,linux/s390x,linux/ppc64le
image-name: gcr.io/kaniko-project/warmer
tag: ${{ github.sha }}
release-tag: latest
steps:
- uses: actions/checkout@b0e28b5ac45a892f91e7d036f8200cf5ed489415 # v3
# Setup auth if not a PR.
- if: github.event_name != 'pull_request'
uses: google-github-actions/auth@ba79af03959ebeac9769e648f473a284504d9193 # v2.1.10
with:
credentials_json: '${{ secrets.GCR_DEVOPS_SERVICE_ACCOUNT_KEY }}'
export_environment_variables: true
create_credentials_file: true
- if: github.event_name != 'pull_request'
uses: google-github-actions/setup-gcloud@98ddc00a17442e89a24bbf282954a3b65ce6d200 # v2.1.0
- if: github.event_name != 'pull_request'
run: gcloud auth configure-docker
# Don't build for all platforms on PRs.
- id: platforms
run: |
event="${{ github.event_name }}"
if [[ "$event" == "pull_request" ]]; then
echo "platforms=linux/amd64" >> $GITHUB_OUTPUT
else
platforms="${{ matrix.platforms }}"
echo "platforms=${platforms}" >> $GITHUB_OUTPUT
fi
# Build and push with Docker.
- uses: docker/setup-qemu-action@5927c834f5b4fdf503fca6f4c7eccda82949e1ee # v3.1.0
with:
platforms: ${{ matrix.platforms }}
- uses: docker/setup-buildx-action@4fd812986e6c8c2a69e18311145f9371337f27d4 # v1
- uses: docker/build-push-action@14487ce63c7a62a4a324b0bfb37086795e31c6c1 # v6.16.0
id: build-and-push
with:
context: .
file: ./deploy/Dockerfile
platforms: ${{ steps.platforms.outputs.platforms }}
push: ${{ github.event_name != 'pull_request' }} # Only push if not a PR.
tags: ${{ matrix.image-name }}:${{ matrix.tag }}
no-cache-filters: certs
# https://github.com/docker/build-push-action/blob/master/docs/advanced/cache.md#github-cache
cache-from: type=gha
cache-to: type=gha,mode=max
target: ${{ matrix.target }}
# Sign images if not a PR.
- if: github.event_name != 'pull_request'
uses: sigstore/cosign-installer@3454372f43399081ed03b604cb2d021dabca52bb # v3.8.2
- if: github.event_name != 'pull_request'
run: |
cosign sign --yes \
--key gcpkms://projects/kaniko-project/locations/global/keyRings/cosign/cryptoKeys/cosign \
${{ matrix.image-name }}@${{ steps.build-and-push.outputs.digest }}
cosign sign --yes \
${{ matrix.image-name }}@${{ steps.build-and-push.outputs.digest }}
# If a tag push, use crane to add more tags.
- if: startsWith(github.ref, 'refs/tags/v')
uses: imjasonh/setup-crane@31b88efe9de28ae0ffa220711af4b60be9435f6e # v0.4
- if: startsWith(github.ref, 'refs/tags/v')
name: Apply release tags
run: |
tag=${GITHUB_REF/refs\/tags\//}
# Tag :latest, :debug, :slim
crane cp ${{ matrix.image-name }}@${{ steps.build-and-push.outputs.digest }} \
${{ matrix.image-name }}:${{ matrix.release-tag }}
if [[ "${{ matrix.release-tag }}" == "latest" ]]; then
# Tag :latest images as :v1.X.Y
crane cp ${{ matrix.image-name }}@${{ steps.build-and-push.outputs.digest }} \
${{ matrix.image-name }}:${tag}
else
# Or tag :v1.X.Y-debug and :v1.X.Y-slim
crane cp ${{ matrix.image-name }}@${{ steps.build-and-push.outputs.digest }} \
${{ matrix.image-name }}:${tag}-${{ matrix.release-tag }}
fi
================================================
FILE: .github/workflows/integration-tests.yaml
================================================
name: Integration tests
on:
push:
branches: ['main']
pull_request:
branches: ['main']
permissions:
contents: read
jobs:
tests:
runs-on: ubuntu-latest
env:
IMAGE_REPO: 'localhost:5000'
REGISTRY: 'localhost:5000'
DOCKER_BUILDKIT: '0'
strategy:
fail-fast: false
matrix:
make-target:
- integration-test-layers
- integration-test-misc
- integration-test-run
- k8s-executor-build-push integration-test-k8s
steps:
- name: Maximize build space
uses: AdityaGarg8/remove-unwanted-software@v4
with:
remove-android: 'true'
remove-dotnet: 'true'
remove-haskell: 'true'
- uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
with:
go-version: '1.22'
- uses: actions/checkout@b0e28b5ac45a892f91e7d036f8200cf5ed489415 # v3
- uses: docker/setup-buildx-action@4fd812986e6c8c2a69e18311145f9371337f27d4 # v1
- run: make install-container-diff k3s-setup
- run: make ${{ matrix.make-target }}
================================================
FILE: .github/workflows/nightly-vulnerability-scan.yml
================================================
name: Nightly Vulnerability Scan
on:
schedule:
# Schedule to run every night at midnight
- cron: '0 0 * * *'
jobs:
vulnerability-scan:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Grype
run: |
# Install Grype
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin
- name: Get latest commit SHA of Kaniko project
id: get-commit
run: |
LATEST_COMMIT_SHA=$(git rev-parse HEAD)
echo "Latest commit SHA: $LATEST_COMMIT_SHA"
echo "::set-output name=sha::$LATEST_COMMIT_SHA"
- name: Scan the latest CI/CD image
run: |
IMAGE_ID="gcr.io/kaniko-project/executor:${{ steps.get-commit.outputs.sha }}"
echo "Scanning image $IMAGE_ID"
grype $IMAGE_ID > grype-output.txt
- name: Check for vulnerabilities and create an issue
run: |
if grep -q 'No vulnerabilities found' grype-output.txt; then
echo "No vulnerabilities found."
else
gh issue create --title "Vulnerabilities Found in Nightly Scan" --body "Vulnerabilities found in the latest image scan. Please check the attached report." --body-file grype-output.txt
fi
================================================
FILE: .github/workflows/unit-tests.yaml
================================================
name: Unit tests
on:
push:
branches: ['main']
pull_request:
branches: ['main']
permissions:
contents: read
jobs:
tests:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v4.01
with:
go-version: '1.22'
- uses: actions/checkout@b0e28b5ac45a892f91e7d036f8200cf5ed489415 # v3
- run: make test
================================================
FILE: .gitignore
================================================
out/
bazel-*
*~
BUILD.bazel
.idea/**
*.iml
.vagrant
.vscode/
================================================
FILE: .golangci.yaml
================================================
# This file contains all available configuration options
# with their default values.
# options for analysis running
run:
# default concurrency is a available CPU number
concurrency: 4
# timeout for analysis, e.g. 30s, 5m, default is 1m
deadline: 1m
# exit code when at least one issue was found, default is 1
issues-exit-code: 1
# include test files or not, default is true
tests: true
# list of build tags, all linters use it. Default is empty list.
build-tags:
# which dirs to skip: they won't be analyzed;
# can use regexp here: generated.*, regexp is applied on full path;
# default value is empty list, but next dirs are always skipped independently
# from this option's value:
# vendor$, third_party$, testdata$, examples$, Godeps$, builtin$
skip-dirs:
# which files to skip: they will be analyzed, but issues from them
# won't be reported. Default value is empty list, but there is
# no need to include all autogenerated files, we confidently recognize
# autogenerated files. If it's not please let us know.
skip-files:
# output configuration options
output:
# colored-line-number|line-number|json|tab|checkstyle, default is "colored-line-number"
format: colored-line-number
# print lines of code with issue, default is true
print-issued-lines: true
# print linter name in the end of issue text, default is true
print-linter-name: true
# all available settings of specific linters
linters-settings:
errcheck:
# report about not checking of errors in type assetions: `a := b.(MyStruct)`;
# default is false: such cases aren't reported by default.
check-type-assertions: false
# report about assignment of errors to blank identifier: `num, _ := strconv.Atoi(numStr)`;
# default is false: such cases aren't reported by default.
check-blank: false
govet:
# report about shadowed variables
#check-shadowing: true
# Obtain type information from installed (to $GOPATH/pkg) package files:
# golangci-lint will execute `go install -i` and `go test -i` for analyzed packages
# before analyzing them.
# By default this option is disabled and govet gets type information by loader from source code.
# Loading from source code is slow, but it's done only once for all linters.
# Go-installing of packages first time is much slower than loading them from source code,
# therefore this option is disabled by default.
# But repeated installation is fast in go >= 1.10 because of build caching.
# Enable this option only if all conditions are met:
# 1. you use only "fast" linters (--fast e.g.): no program loading occurs
# 2. you use go >= 1.10
# 3. you do repeated runs (false for CI) or cache $GOPATH/pkg or `go env GOCACHE` dir in CI.
#use-installed-packages: false
golint:
# minimal confidence for issues, default is 0.8
min-confidence: 0.8
gofmt:
# simplify code: gofmt with `-s` option, true by default
simplify: true
#gocyclo:
# # minimal code complexity to report, 30 by default (but we recommend 10-20)
# min-complexity: 10
maligned:
# print struct with more effective memory layout or not, false by default
suggest-new: true
#dupl:
# # tokens count to trigger issue, 150 by default
# threshold: 100
goconst:
# minimal length of string constant, 3 by default
min-len: 3
# minimal occurrences count to trigger, 3 by default
min-occurrences: 3
misspell:
# Correct spellings using locale preferences for US or UK.
# Default is to use a neutral variety of English.
# Setting locale to US will correct the British spelling of 'colour' to 'color'.
locale: US
#lll:
# # max line length, lines longer will be reported. Default is 120.
# # '\t' is counted as 1 character by default, and can be changed with the tab-width option
# line-length: 120
# # tab width in spaces. Default to 1.
# tab-width: 1
unused:
# treat code as a program (not a library) and report unused exported identifiers; default is false.
# XXX: if you enable this setting, unused will report a lot of false-positives in text editors:
# if it's called for subdir of a project it can't find funcs usages. All text editor integrations
# with golangci-lint call it on a directory with the changed file.
check-exported: false
unparam:
# call graph construction algorithm (cha, rta). In general, use cha for libraries,
# and rta for programs with main packages. Default is cha.
algo: cha
# Inspect exported functions, default is false. Set to true if no external program/library imports your code.
# XXX: if you enable this setting, unparam will report a lot of false-positives in text editors:
# if it's called for subdir of a project it can't find external interfaces. All text editor integrations
# with golangci-lint call it on a directory with the changed file.
check-exported: false
#nakedret:
# # make an issue if func has more lines of code than this setting and it has naked returns; default is 30
# max-func-lines: 30
#prealloc:
# # XXX: we don't recommend using this linter before doing performance profiling.
# # For most programs usage of prealloc will be a premature optimization.
# # Report preallocation suggestions only on simple loops that have no returns/breaks/continues/gotos in them.
# # True by default.
# simple: true
# range-loops: true # Report preallocation suggestions on range loops, true by default
# for-loops: false # Report preallocation suggestions on for loops, false by default
linters:
enable:
- goconst
- goimports
- golint
- interfacer
- maligned
- misspell
- unconvert
- unparam
enable-all: false
disable:
- errcheck
- gas
- scopelint
- bodyclose
- staticcheck
disable-all: false
presets:
- bugs
- unused
fast: false
issues:
# List of regexps of issue texts to exclude, empty list by default.
# But independently from this option we use default exclude patterns,
# it can be disabled by `exclude-use-default: false`. To list all
# excluded by default patterns execute `golangci-lint run --help`
exclude:
# Independently from option `exclude` we use default exclude patterns,
# it can be disabled by this option. To list all
# excluded by default patterns execute `golangci-lint run --help`.
# Default value for this option is true.
exclude-use-default: true
# Maximum issues count per one linter. Set to 0 to disable. Default is 50.
max-per-linter: 50
# Maximum count of issues with the same text. Set to 0 to disable. Default is 3.
max-same: 3
# Show only new issues: if there are unstaged changes or untracked files,
# only those changes are analyzed, else only changes in HEAD~ are analyzed.
# It's a super-useful option for integration of golangci-lint into existing
# large codebase. It's not practical to fix all existing issues at the moment
# of integration: much better don't allow issues in new code.
# Default is false.
new: false
## Show only new issues created after git revision `REV`
#new-from-rev: REV
## Show only new issues created in git patch with set file path.
#new-from-patch: path/to/patch/file
================================================
FILE: .prettierrc
================================================
printWidth: 80
tabWidth: 2
semi: false
singleQuote: false
overrides: [{ files: "*.md", options: { proseWrap: always } }]
================================================
FILE: CHANGELOG.md
================================================
# v1.24.0 Release 2025-05-21
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.24.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.24.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.24.0-slim
```
Huge thank you for this release towards our contributors:
- Aaron Prindle
- Aswin A
- dependabot[bot]
- Michael Plump
- Mick van Gelderen
- Thomas L. Kjeldsen
# v1.23.2 Release 2024-07-09
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.23.2
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.23.2-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.23.2-slim
```
* deps: bump github.com/moby/buildkit and github.com/docker/docker [#3242](https://github.com/GoogleContainerTools/kaniko/pull/3242)
* chore(deps): bump docker/build-push-action from 6.1.0 to 6.3.0 [#3236](https://github.com/GoogleContainerTools/kaniko/pull/3236)
* chore(deps): bump docker/setup-qemu-action from 3.0.0 to 3.1.0 [#3235](https://github.com/GoogleContainerTools/kaniko/pull/3235)
* chore(deps): bump docker/setup-buildx-action from 3.3.0 to 3.4.0 [#3237](https://github.com/GoogleContainerTools/kaniko/pull/3237)
* chore(deps): bump google.golang.org/api from 0.185.0 to 0.187.0 [#3238](https://github.com/GoogleContainerTools/kaniko/pull/3238)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.17.1 to 1.17.5 [#3239](https://github.com/GoogleContainerTools/kaniko/pull/3239)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.16.24 to 1.17.1 [#3220](https://github.com/GoogleContainerTools/kaniko/pull/3220)
* chore(deps): bump docker/build-push-action from 6.0.0 to 6.1.0 [#3218](https://github.com/GoogleContainerTools/kaniko/pull/3218)
* chore(deps): bump google.golang.org/api from 0.183.0 to 0.185.0 [#3219](https://github.com/GoogleContainerTools/kaniko/pull/3219)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.55.1 to 1.56.1 [#3221](https://github.com/GoogleContainerTools/kaniko/pull/3221)
* chore(deps): bump docker/build-push-action from 5.3.0 to 6.0.0 [#3212](https://github.com/GoogleContainerTools/kaniko/pull/3212)
* chore(deps): bump cloud.google.com/go/storage from 1.41.0 to 1.42.0 [#3204](https://github.com/GoogleContainerTools/kaniko/pull/3204)
* chore(deps): bump github.com/spf13/cobra from 1.8.0 to 1.8.1 [#3205](https://github.com/GoogleContainerTools/kaniko/pull/3205)
* chore(deps): bump github.com/google/go-containerregistry from 0.19.1 to 0.19.2 [#3206](https://github.com/GoogleContainerTools/kaniko/pull/3206)
* chore(deps): bump imjasonh/setup-crane from 0.3 to 0.4 [#3210](https://github.com/GoogleContainerTools/kaniko/pull/3210)
* chore(deps): bump golang.org/x/net from 0.25.0 to 0.26.0 [#3190](https://github.com/GoogleContainerTools/kaniko/pull/3190)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.16.21 to 1.16.24 [#3191](https://github.com/GoogleContainerTools/kaniko/pull/3191)
* chore(deps): bump google.golang.org/api from 0.182.0 to 0.183.0 [#3192](https://github.com/GoogleContainerTools/kaniko/pull/3192)
* chore(deps): bump github.com/containerd/containerd from 1.7.17 to 1.7.18 [#3193](https://github.com/GoogleContainerTools/kaniko/pull/3193)
* chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.27.0 to 1.27.2 [#3194](https://github.com/GoogleContainerTools/kaniko/pull/3194)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
# v1.23.1 Release 2024-06-07
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.23.1
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.23.1-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.23.1-slim
```
* Enable pushing cache with --no-push [#3181](https://github.com/GoogleContainerTools/kaniko/pull/3181)
* docs: document --no-push-cache flag in README.md [#3188](https://github.com/GoogleContainerTools/kaniko/pull/3188)
* chore(deps): bump google.golang.org/api from 0.181.0 to 0.182.0 [#3187](https://github.com/GoogleContainerTools/kaniko/pull/3187)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.16.17 to 1.16.21 [#3179](https://github.com/GoogleContainerTools/kaniko/pull/3179)
* chore(deps): bump google.golang.org/api from 0.180.0 to 0.181.0 [#3170](https://github.com/GoogleContainerTools/kaniko/pull/3170)
* chore(deps): bump google-github-actions/auth from 2.1.2 to 2.1.3 [#3168](https://github.com/GoogleContainerTools/kaniko/pull/3168)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.53.2 to 1.54.2 [#3169](https://github.com/GoogleContainerTools/kaniko/pull/3169)
* chore(deps): bump cloud.google.com/go/storage from 1.40.0 to 1.41.0 [#3171](https://github.com/GoogleContainerTools/kaniko/pull/3171)
* chore(deps): bump github.com/containerd/containerd from 1.7.16 to 1.7.17 [#3172](https://github.com/GoogleContainerTools/kaniko/pull/3172)
* chore(deps): bump github.com/docker/docker from 26.1.2+incompatible to 26.1.3+incompatible [#3173](https://github.com/GoogleContainerTools/kaniko/pull/3173)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
- Leo Palmer Sunmo
# v1.23.0 Release 2024-05-14
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.23.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.23.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.23.0-slim
```
* give warn instead of error when wildcard not match any files [#3127](https://github.com/GoogleContainerTools/kaniko/pull/3127)
* warmer validate and copy registry mirror to registry map [#3140](https://github.com/GoogleContainerTools/kaniko/pull/3140)
* docs: update docs on mirrors and registry map. [#3153](https://github.com/GoogleContainerTools/kaniko/pull/3153)
* Fix: Make `--registry-map` compatible with namespaced images [#3138](https://github.com/GoogleContainerTools/kaniko/pull/3138)
* "Fixes #2752" [#3132](https://github.com/GoogleContainerTools/kaniko/pull/3132)
* chore(deps): bump github.com/docker/docker from 26.1.1+incompatible to 26.1.2+incompatible [#3161](https://github.com/GoogleContainerTools/kaniko/pull/3161)
* chore(deps): bump google.golang.org/api from 0.177.0 to 0.180.0 [#3160](https://github.com/GoogleContainerTools/kaniko/pull/3160)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.16.15 to 1.16.17 [#3158](https://github.com/GoogleContainerTools/kaniko/pull/3158)
* chore(deps): bump github.com/docker/docker from 26.1.0+incompatible to 26.1.1+incompatible [#3149](https://github.com/GoogleContainerTools/kaniko/pull/3149)
* chore(deps): bump actions/setup-go from 5.0.0 to 5.0.1 [#3152](https://github.com/GoogleContainerTools/kaniko/pull/3152)
* chore(deps): bump google.golang.org/api from 0.175.0 to 0.177.0 [#3151](https://github.com/GoogleContainerTools/kaniko/pull/3151)
* chore(deps): bump golang.org/x/oauth2 from 0.19.0 to 0.20.0 [#3150](https://github.com/GoogleContainerTools/kaniko/pull/3150)
* chore(deps): bump github.com/moby/buildkit from 0.13.1 to 0.13.2 [#3145](https://github.com/GoogleContainerTools/kaniko/pull/3145)
* chore(deps): bump github.com/containerd/containerd from 1.7.15 to 1.7.16 [#3144](https://github.com/GoogleContainerTools/kaniko/pull/3144)
* chore: bump cred helper libraries [#3133](https://github.com/GoogleContainerTools/kaniko/pull/3133)
* Added --chmod for ADD and COPY commands. Fixes #2850 and #1751 [#3119](https://github.com/GoogleContainerTools/kaniko/pull/3119)
* chore(deps): bump github.com/google/slowjam from 1.1.0 to 1.1.1 [#3129](https://github.com/GoogleContainerTools/kaniko/pull/3129)
* chore(deps): bump google.golang.org/api from 0.172.0 to 0.175.0 [#3128](https://github.com/GoogleContainerTools/kaniko/pull/3128)
* fix: integration: fail on error when build with docker [#3131](https://github.com/GoogleContainerTools/kaniko/pull/3131)
* fix(doc): wiki url [#3117](https://github.com/GoogleContainerTools/kaniko/pull/3117)
* chore(deps): bump golang.org/x/net from 0.22.0 to 0.24.0 [#3113](https://github.com/GoogleContainerTools/kaniko/pull/3113)
* chore(deps): bump github.com/Azure/azure-sdk-for-go/sdk/storage/azblob from 1.3.1 to 1.3.2 [#3114](https://github.com/GoogleContainerTools/kaniko/pull/3114)
* chore(deps): bump github.com/containerd/containerd from 1.7.14 to 1.7.15 [#3112](https://github.com/GoogleContainerTools/kaniko/pull/3112)
* chore(deps): bump docker/setup-buildx-action from 3.2.0 to 3.3.0 [#3111](https://github.com/GoogleContainerTools/kaniko/pull/3111)
* chore(deps): bump github.com/docker/docker from 26.0.0+incompatible to 26.0.2+incompatible [#3121](https://github.com/GoogleContainerTools/kaniko/pull/3121)
* chore(deps): bump AdityaGarg8/remove-unwanted-software from 2 to 3 [#3110](https://github.com/GoogleContainerTools/kaniko/pull/3110)
* chore(deps): bump sigstore/cosign-installer from 3.4.0 to 3.5.0 [#3109](https://github.com/GoogleContainerTools/kaniko/pull/3109)
* chore(deps): bump golang.org/x/sys from 0.18.0 to 0.19.0 [#3103](https://github.com/GoogleContainerTools/kaniko/pull/3103)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.16.9 to 1.16.15 [#3104](https://github.com/GoogleContainerTools/kaniko/pull/3104)
* chore(deps): bump golang.org/x/sync from 0.6.0 to 0.7.0 [#3105](https://github.com/GoogleContainerTools/kaniko/pull/3105)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.7 to 1.27.11 [#3106](https://github.com/GoogleContainerTools/kaniko/pull/3106)
* chore(deps): bump golang.org/x/oauth2 from 0.18.0 to 0.19.0 [#3107](https://github.com/GoogleContainerTools/kaniko/pull/3107)
* chore(deps): bump google.golang.org/api from 0.171.0 to 0.172.0 [#3094](https://github.com/GoogleContainerTools/kaniko/pull/3094)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.52.1 to 1.53.1 [#3096](https://github.com/GoogleContainerTools/kaniko/pull/3096)
* chore(deps): bump github.com/go-git/go-git/v5 from 5.11.0 to 5.12.0 [#3095](https://github.com/GoogleContainerTools/kaniko/pull/3095)
* chore(deps): bump github.com/moby/buildkit from 0.13.0 to 0.13.1 [#3093](https://github.com/GoogleContainerTools/kaniko/pull/3093)
* chore(deps): bump cloud.google.com/go/storage from 1.39.1 to 1.40.0 [#3097](https://github.com/GoogleContainerTools/kaniko/pull/3097)
* chore: update cred helper go libraries [#3087](https://github.com/GoogleContainerTools/kaniko/pull/3087)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
- Djabx
- Marc Lallaouret
- Matthias Schneider
- Prima Adi Pradana
- Samarth08
- Verlhac Gaëtan
# v1.22.0 Release 2024-03-26
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.22.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.22.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.22.0-slim
```
* chore(deps): bump github.com/docker/docker from 25.0.4+incompatible to 26.0.0+incompatible [#3085](https://github.com/GoogleContainerTools/kaniko/pull/3085)
* chore(deps): bump google.golang.org/api from 0.167.0 to 0.171.0 [#3082](https://github.com/GoogleContainerTools/kaniko/pull/3082)
* chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.25.3 to 1.26.0 [#3083](https://github.com/GoogleContainerTools/kaniko/pull/3083)
* chore(deps): bump github.com/containerd/containerd from 1.7.13 to 1.7.14 [#3084](https://github.com/GoogleContainerTools/kaniko/pull/3084)
* chore(deps): bump docker/build-push-action from 5.2.0 to 5.3.0 [#3070](https://github.com/GoogleContainerTools/kaniko/pull/3070)
* Fix #3032: Remove query parameters in ADD command when the destinatio… [#3053](https://github.com/GoogleContainerTools/kaniko/pull/3053)
* Kaniko/add path regmaps [possible in registry maps and/or mirror] [#3051](https://github.com/GoogleContainerTools/kaniko/pull/3051)
* chore(deps): bump docker/setup-buildx-action from 3.1.0 to 3.2.0 [#3071](https://github.com/GoogleContainerTools/kaniko/pull/3071)
* chore(deps): bump github.com/moby/buildkit from 0.12.5 to 0.13.0 [#3072](https://github.com/GoogleContainerTools/kaniko/pull/3072)
* chore(deps): bump github.com/google/go-containerregistry from 0.19.0 to 0.19.1 [#3073](https://github.com/GoogleContainerTools/kaniko/pull/3073)
* chore(deps): bump golang.org/x/oauth2 from 0.17.0 to 0.18.0 [#3074](https://github.com/GoogleContainerTools/kaniko/pull/3074)
* chore(deps): bump cloud.google.com/go/storage from 1.39.0 to 1.39.1 [#3075](https://github.com/GoogleContainerTools/kaniko/pull/3075)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.51.4 to 1.52.1 [#3076](https://github.com/GoogleContainerTools/kaniko/pull/3076)
* Fix COPY fails when multiple files are copied to path specified in ENV [#3034](https://github.com/GoogleContainerTools/kaniko/pull/3034)
* Add AWS ECR error message for tag Immutability [#3045](https://github.com/GoogleContainerTools/kaniko/pull/3045)
* chore: update google.golang.org/protobuff to resolve CVE-2024-24786 [#3068](https://github.com/GoogleContainerTools/kaniko/pull/3068)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.16.6 to 1.16.9 [#3058](https://github.com/GoogleContainerTools/kaniko/pull/3058)
* chore(deps): bump golang.org/x/net from 0.21.0 to 0.22.0 [#3056](https://github.com/GoogleContainerTools/kaniko/pull/3056)
* chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.25.2 to 1.25.3 [#3057](https://github.com/GoogleContainerTools/kaniko/pull/3057)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.51.1 to 1.51.4 [#3059](https://github.com/GoogleContainerTools/kaniko/pull/3059)
* chore(deps): bump github.com/docker/docker from 25.0.3+incompatible to 25.0.4+incompatible [#3060](https://github.com/GoogleContainerTools/kaniko/pull/3060)
* chore(deps): bump docker/build-push-action from 5.1.0 to 5.2.0 [#3061](https://github.com/GoogleContainerTools/kaniko/pull/3061)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- Alessandro Bitocchi
- dependabot[bot]
- Jérémie Augustin
- Prima Adi Pradana
# v1.21.1 Release 2024-03-06
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.21.1
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.21.1-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.21.1-slim
```
* chore(deps): bump cloud.google.com/go/storage from 1.38.0 to 1.39.0 [#3040](https://github.com/GoogleContainerTools/kaniko/pull/3040)
* chore(deps): bump github.com/containerd/containerd from 1.7.6 to 1.7.13 [#3038](https://github.com/GoogleContainerTools/kaniko/pull/3038)
* test: fix test breakage caused by external dependency update [#3049](https://github.com/GoogleContainerTools/kaniko/pull/3049)
* chore(deps): bump docker/setup-buildx-action from 3.0.0 to 3.1.0 [#3037](https://github.com/GoogleContainerTools/kaniko/pull/3037)
* chore(deps): bump github.com/Azure/azure-sdk-for-go/sdk/storage/azblob from 1.3.0 to 1.3.1 [#3039](https://github.com/GoogleContainerTools/kaniko/pull/3039)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
# v1.21.0 Release 2024-02-29
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.21.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.21.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.21.0-slim
```
* Add --push-ignore-immutable-tag-errors boolean CLI option [#2774](https://github.com/GoogleContainerTools/kaniko/pull/2774)
* docs: fix broken links and redirects [#3009](https://github.com/GoogleContainerTools/kaniko/pull/3009)
* feat: add skip tls flag for private git context [#2854](https://github.com/GoogleContainerTools/kaniko/pull/2854)
* Fix unpack tar.gz archive with ADD instruction, issue #2409 [#2991](https://github.com/GoogleContainerTools/kaniko/pull/2991)
* chore: update google github-action auth version [#3030](https://github.com/GoogleContainerTools/kaniko/pull/3030)
* refactor: remove artifact upload from nightly-vulnerabiliy-scan.yml [#3029](https://github.com/GoogleContainerTools/kaniko/pull/3029)
* feat: add nightly grype vuln scan to kaniko executor image [#2970](https://github.com/GoogleContainerTools/kaniko/pull/2970)
* chore: update docker-credential-gcr to use v2 [#3026](https://github.com/GoogleContainerTools/kaniko/pull/3026)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.16.1 to 1.16.6 [#3020](https://github.com/GoogleContainerTools/kaniko/pull/3020)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.50.0 to 1.51.1 [#3021](https://github.com/GoogleContainerTools/kaniko/pull/3021)
* chore(deps): bump google.golang.org/api from 0.165.0 to 0.167.0 [#3023](https://github.com/GoogleContainerTools/kaniko/pull/3023)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.27.0 to 1.27.4 [#3024](https://github.com/GoogleContainerTools/kaniko/pull/3024)
* chore(deps): bump google-github-actions/auth from 2.1.1 to 2.1.2 [#3025](https://github.com/GoogleContainerTools/kaniko/pull/3025)
* feat: add support for no push environment variable [#2983](https://github.com/GoogleContainerTools/kaniko/pull/2983)
* Add documentation for --chown support limitation [#3019](https://github.com/GoogleContainerTools/kaniko/pull/3019)
* chore(deps): bump github.com/Azure/azure-sdk-for-go/sdk/storage/azblob from 1.2.1 to 1.3.0 [#3013](https://github.com/GoogleContainerTools/kaniko/pull/3013)
* chore(deps): bump google.golang.org/api from 0.161.0 to 0.165.0 [#3016](https://github.com/GoogleContainerTools/kaniko/pull/3016)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.15.15 to 1.16.1 [#3014](https://github.com/GoogleContainerTools/kaniko/pull/3014)
* chore(deps): bump cloud.google.com/go/storage from 1.37.0 to 1.38.0 [#3015](https://github.com/GoogleContainerTools/kaniko/pull/3015)
* Add flag to remap registries for any registry mirror [#2935](https://github.com/GoogleContainerTools/kaniko/pull/2935)
* FIX: missing or partial support for pattern substition in variable when cache enabled [#2968](https://github.com/GoogleContainerTools/kaniko/pull/2968)
* docs: add ROADMAP.md to kaniko project [#3005](https://github.com/GoogleContainerTools/kaniko/pull/3005)
* chore: update MAINTAINERS file with up-to-date information [#3003](https://github.com/GoogleContainerTools/kaniko/pull/3003)
* chore(deps): bump golang.org/x/oauth2 from 0.16.0 to 0.17.0 [#3000](https://github.com/GoogleContainerTools/kaniko/pull/3000)
* chore(deps): bump golang.org/x/net from 0.20.0 to 0.21.0 [#2999](https://github.com/GoogleContainerTools/kaniko/pull/2999)
* chore(deps): bump golang from 1.21 to 1.22 in /deploy [#2997](https://github.com/GoogleContainerTools/kaniko/pull/2997)
* chore(deps): bump cloud.google.com/go/storage from 1.36.0 to 1.37.0 [#2998](https://github.com/GoogleContainerTools/kaniko/pull/2998)
* chore(deps): bump golang.org/x/sys from 0.16.0 to 0.17.0 [#3001](https://github.com/GoogleContainerTools/kaniko/pull/3001)
* chore(deps): bump google-github-actions/auth from 2.1.0 to 2.1.1 [#3002](https://github.com/GoogleContainerTools/kaniko/pull/3002)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- Alessandro Bitocchi
- Damien Degois
- dependabot[bot]
- JeromeJu
- Kraev Sergei
- Matheus Pimenta
- Oliver Radwell
- Sacha Smart
- schwannden
# v1.20.1 Release 2024-02-10
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.20.1
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.20.1-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.20.1-slim
```
* chore(deps): bump github.com/moby/buildkit from 0.11.6 to 0.12.5, github.com/docker/docker from 24.0.7+incompatible to 25.0.2+incompatible, and other deps [#2995](https://github.com/GoogleContainerTools/kaniko/pull/2995)
* chore(deps): bump google.golang.org/api from 0.157.0 to 0.161.0 [#2987](https://github.com/GoogleContainerTools/kaniko/pull/2987)
* chore(deps): bump github.com/google/go-containerregistry from 0.18.0 to 0.19.0 [#2988](https://github.com/GoogleContainerTools/kaniko/pull/2988)
* chore(deps): bump sigstore/cosign-installer from 3.3.0 to 3.4.0 [#2989](https://github.com/GoogleContainerTools/kaniko/pull/2989)
* chore(deps): bump github.com/opencontainers/runc from 1.1.5 to 1.1.12 [#2981](https://github.com/GoogleContainerTools/kaniko/pull/2981)
* README change only: Clarify why merging into another container is a bad idea [#2965](https://github.com/GoogleContainerTools/kaniko/pull/2965)
* chore(deps): bump google-github-actions/auth from 2.0.1 to 2.1.0 [#2972](https://github.com/GoogleContainerTools/kaniko/pull/2972)
* chore(deps): bump google-github-actions/setup-gcloud from 2.0.1 to 2.1.0 [#2973](https://github.com/GoogleContainerTools/kaniko/pull/2973)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.15.14 to 1.15.15 [#2975](https://github.com/GoogleContainerTools/kaniko/pull/2975)
* chore(deps): bump github.com/google/go-containerregistry from 0.17.0 to 0.18.0 [#2976](https://github.com/GoogleContainerTools/kaniko/pull/2976)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.15.11 to 1.15.14 [#2966](https://github.com/GoogleContainerTools/kaniko/pull/2966)
* chore(deps): bump google.golang.org/api from 0.155.0 to 0.157.0 [#2960](https://github.com/GoogleContainerTools/kaniko/pull/2960)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.26.3 to 1.26.5 [#2963](https://github.com/GoogleContainerTools/kaniko/pull/2963)
* chore(deps): update go-git/go-git, ProtonMail/go-cryto, and cloudflare/circl deps [#2959](https://github.com/GoogleContainerTools/kaniko/pull/2959)
* Update clarification for release.md [#2957](https://github.com/GoogleContainerTools/kaniko/pull/2957)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- Asher
- Bob Du
- dependabot[bot]
- JeromeJu
- Maximilian Hippler
- timbavtbc
# v1.20.0 Release 2024-01-17
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.20.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.20.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.20.0-slim
```
* chore(deps): bump golang.org/x/oauth2 from 0.15.0 to 0.16.0 [#2948](https://github.com/GoogleContainerTools/kaniko/pull/2948)
* chore(deps): bump google-github-actions/auth from 2.0.0 to 2.0.1 [#2947](https://github.com/GoogleContainerTools/kaniko/pull/2947)
* chore(deps): bump golang.org/x/sync from 0.5.0 to 0.6.0 [#2950](https://github.com/GoogleContainerTools/kaniko/pull/2950)
* chore(deps): bump github.com/containerd/containerd from 1.7.11 to 1.7.12 [#2951](https://github.com/GoogleContainerTools/kaniko/pull/2951)
* Prevent extra snapshot with --use-new-run [#2943](https://github.com/GoogleContainerTools/kaniko/pull/2943)
* replace github.com/Azure/azure-storage-blob-go => github.com/Azure/azure-sdk-for-go/sdk/storage/azblob [#2945](https://github.com/GoogleContainerTools/kaniko/pull/2945)
* Fixed wrong example in README.md [#2931](https://github.com/GoogleContainerTools/kaniko/pull/2931)
* chore(deps): bump golang.org/x/sys from 0.15.0 to 0.16.0 [#2936](https://github.com/GoogleContainerTools/kaniko/pull/2936)
* chore(deps): bump google.golang.org/api from 0.154.0 to 0.155.0 [#2937](https://github.com/GoogleContainerTools/kaniko/pull/2937)
* chore(deps): bump github.com/cloudflare/circl from 1.3.3 to 1.3.7 [#2942](https://github.com/GoogleContainerTools/kaniko/pull/2942)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.15.9 to 1.15.11 [#2939](https://github.com/GoogleContainerTools/kaniko/pull/2939)
* chore(deps): bump AdityaGarg8/remove-unwanted-software from 1 to 2 [#2940](https://github.com/GoogleContainerTools/kaniko/pull/2940)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.47.7 to 1.47.8 [#2932](https://github.com/GoogleContainerTools/kaniko/pull/2932)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.26.2 to 1.26.3 [#2933](https://github.com/GoogleContainerTools/kaniko/pull/2933)
* chore(deps): bump github.com/google/go-containerregistry from 0.15.2 to 0.17.0 [#2924](https://github.com/GoogleContainerTools/kaniko/pull/2924)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.15.7 to 1.15.9 [#2926](https://github.com/GoogleContainerTools/kaniko/pull/2926)
* chore(deps): bump google-github-actions/setup-gcloud from 2.0.0 to 2.0.1 [#2927](https://github.com/GoogleContainerTools/kaniko/pull/2927)
Huge thank you for this release towards our contributors:
- Asher
- Bob Du
- dependabot[bot]
- Maximilian Hippler
# v1.19.2 Release 2023-12-19
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.19.2
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.19.2-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.19.2-slim
```
* chore: update gcr and acr cred helpers [#2910](https://github.com/GoogleContainerTools/kaniko/pull/2910)
* chore(deps): bump sigstore/cosign-installer from 3.2.0 to 3.3.0 [#2911](https://github.com/GoogleContainerTools/kaniko/pull/2911)
* chore(deps): bump google.golang.org/api from 0.152.0 to 0.154.0 [#2912](https://github.com/GoogleContainerTools/kaniko/pull/2912)
* chore(deps): bump cloud.google.com/go/storage from 1.35.1 to 1.36.0 [#2913](https://github.com/GoogleContainerTools/kaniko/pull/2913)
* chore(deps): bump github.com/spf13/cobra from 1.7.0 to 1.8.0 [#2914](https://github.com/GoogleContainerTools/kaniko/pull/2914)
* chore(deps): bump golang.org/x/crypto from 0.16.0 to 0.17.0 [#2915](https://github.com/GoogleContainerTools/kaniko/pull/2915)
* fix: resolve integration test issue issue where container-diff cannot pull OCI images properly from registry [#2918](https://github.com/GoogleContainerTools/kaniko/pull/2918)
* fix: also update github.com/awslabs/amazon-ecr-credential-helper to resolve issues with AWS ECR authentication (resolves #2882) [#2908](https://github.com/GoogleContainerTools/kaniko/pull/2908)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
- Patrick Decat
# v1.19.1 Release 2023-12-15
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.19.1
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.19.1-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.19.1-slim
```
* Reproducing and Fixing #2892 [#2893](https://github.com/GoogleContainerTools/kaniko/pull/2893)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.15.3 to 1.15.7 [#2897](https://github.com/GoogleContainerTools/kaniko/pull/2897)
* chore(deps): bump google-github-actions/setup-gcloud from 1.1.1 to 2.0.0 [#2902](https://github.com/GoogleContainerTools/kaniko/pull/2902)
* chore(deps): bump actions/setup-go from 4.1.0 to 5.0.0 [#2901](https://github.com/GoogleContainerTools/kaniko/pull/2901)
* chore(deps): bump github.com/containerd/containerd from 1.7.10 to 1.7.11 [#2899](https://github.com/GoogleContainerTools/kaniko/pull/2899)
* chore(deps): bump github.com/go-git/go-git/v5 from 5.10.1 to 5.11.0 [#2898](https://github.com/GoogleContainerTools/kaniko/pull/2898)
* chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.23.5 to 1.24.0 [#2896](https://github.com/GoogleContainerTools/kaniko/pull/2896)
* chore(deps): bump github.com/containerd/containerd from 1.7.9 to 1.7.10 [#2888](https://github.com/GoogleContainerTools/kaniko/pull/2888)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.25.8 to 1.25.11 [#2889](https://github.com/GoogleContainerTools/kaniko/pull/2889)
* chore(deps): bump google-github-actions/auth from 1.2.0 to 2.0.0 [#2886](https://github.com/GoogleContainerTools/kaniko/pull/2886)
* chore(deps): bump github.com/go-git/go-git/v5 from 5.10.0 to 5.10.1 [#2890](https://github.com/GoogleContainerTools/kaniko/pull/2890)
* fix: resolve aws-sdk-go-v2 lib compat issues causing ECR failures [#2885](https://github.com/GoogleContainerTools/kaniko/pull/2885)
* chore(deps): bump github.com/spf13/afero from 1.10.0 to 1.11.0 [#2891](https://github.com/GoogleContainerTools/kaniko/pull/2891)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
- Maxime BOSSARD
# v1.19.0 Release 2023-11-29
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.19.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.19.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.19.0-slim
```
* fix: resolve issue with copy_multistage_test.go and broken ioutil import [#2879](https://github.com/GoogleContainerTools/kaniko/pull/2879)
* Fix warmer memory leak. [#2763](https://github.com/GoogleContainerTools/kaniko/pull/2763)
* Skip the /kaniko directory when copying root [#2863](https://github.com/GoogleContainerTools/kaniko/pull/2863)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.25.5 to 1.25.8 [#2875](https://github.com/GoogleContainerTools/kaniko/pull/2875)
* fix: Remove references to deprecated io/ioutil pkg [#2867](https://github.com/GoogleContainerTools/kaniko/pull/2867)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.14.0 to 1.14.3 [#2874](https://github.com/GoogleContainerTools/kaniko/pull/2874)
* Create intermediate directories in COPY with correct uid and gid [#2795](https://github.com/GoogleContainerTools/kaniko/pull/2795)
* chore(deps): bump google-github-actions/auth from 1.1.1 to 1.2.0 [#2868](https://github.com/GoogleContainerTools/kaniko/pull/2868)
* chore(deps): bump golang.org/x/oauth2 from 0.13.0 to 0.14.0 [#2871](https://github.com/GoogleContainerTools/kaniko/pull/2871)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.43.0 to 1.44.0 [#2872](https://github.com/GoogleContainerTools/kaniko/pull/2872)
* chore(deps): bump github.com/containerd/containerd from 1.7.8 to 1.7.9 [#2873](https://github.com/GoogleContainerTools/kaniko/pull/2873)
* impl: add a retry with result function (#2837) [#2853](https://github.com/GoogleContainerTools/kaniko/pull/2853)
* chore(deps): bump docker/build-push-action from 5.0.0 to 5.1.0 [#2857](https://github.com/GoogleContainerTools/kaniko/pull/2857)
* chore(deps): bump golang.org/x/net from 0.17.0 to 0.18.0 [#2859](https://github.com/GoogleContainerTools/kaniko/pull/2859)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.13.1 to 1.14.0 [#2861](https://github.com/GoogleContainerTools/kaniko/pull/2861)
* chore(deps): bump google.golang.org/api from 0.150.0 to 0.151.0 [#2862](https://github.com/GoogleContainerTools/kaniko/pull/2862)
* fix: makefile container-diff on darwin [#2842](https://github.com/GoogleContainerTools/kaniko/pull/2842)
* Print error to stderr instead of stdout before exiting [#2823](https://github.com/GoogleContainerTools/kaniko/pull/2823)
* refactor: rm bool param detectFilesystem in `InitIgnoreList` [#2843](https://github.com/GoogleContainerTools/kaniko/pull/2843)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.22.0 to 1.24.0 [#2851](https://github.com/GoogleContainerTools/kaniko/pull/2851)
* chore(deps): bump google.golang.org/api from 0.149.0 to 0.150.0 [#2845](https://github.com/GoogleContainerTools/kaniko/pull/2845)
* chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.22.1 to 1.22.2 [#2846](https://github.com/GoogleContainerTools/kaniko/pull/2846)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.42.0 to 1.42.1 [#2847](https://github.com/GoogleContainerTools/kaniko/pull/2847)
* chore(deps): bump golang.org/x/sys from 0.13.0 to 0.14.0 [#2848](https://github.com/GoogleContainerTools/kaniko/pull/2848)
* chore(deps): bump sigstore/cosign-installer from 3.1.2 to 3.2.0 [#2849](https://github.com/GoogleContainerTools/kaniko/pull/2849)
* feat: support https URLs for digest-file [#2811](https://github.com/GoogleContainerTools/kaniko/pull/2811)
* impl: add a retry with result function [#2837](https://github.com/GoogleContainerTools/kaniko/pull/2837)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- Adrià Garriga-Alonso
- Anna Levenberg
- Anoop S
- dependabot[bot]
- JeromeJu
- Lio李歐
- Manish Giri
- Maxime BOSSARD
- tal66
# v1.18.0 Release 2023-11-07
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.18.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.18.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.18.0-slim
```
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.92 to 1.13.1 [#2829](https://github.com/GoogleContainerTools/kaniko/pull/2829)
* chore(deps): bump google.golang.org/api from 0.148.0 to 0.149.0 [#2831](https://github.com/GoogleContainerTools/kaniko/pull/2831)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.40.2 to 1.42.0 [#2828](https://github.com/GoogleContainerTools/kaniko/pull/2828)
* chore(deps): bump golang.org/x/sync from 0.4.0 to 0.5.0 [#2827](https://github.com/GoogleContainerTools/kaniko/pull/2827)
* fix: fix COPY command error due to missing but ignored files [#2812](https://github.com/GoogleContainerTools/kaniko/pull/2812)
* snapshotter: use syncfs system call [#2816](https://github.com/GoogleContainerTools/kaniko/pull/2816)
* Fix missing slash [#2658](https://github.com/GoogleContainerTools/kaniko/pull/2658)
* chore(deps): bump github.com/containerd/containerd from 1.7.7 to 1.7.8 [#2819](https://github.com/GoogleContainerTools/kaniko/pull/2819)
* chore(deps): bump github.com/go-git/go-git/v5 from 5.9.0 to 5.10.0 [#2818](https://github.com/GoogleContainerTools/kaniko/pull/2818)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.91 to 1.11.92 [#2814](https://github.com/GoogleContainerTools/kaniko/pull/2814)
* chore(deps): bump google.golang.org/api from 0.145.0 to 0.148.0 [#2810](https://github.com/GoogleContainerTools/kaniko/pull/2810)
Huge thank you for this release towards our contributors:
- dependabot[bot]
- Paolo Di Tommaso
- Quan Zhang
- zhouhaibing089
# v1.17.0 Release 2023-10-18
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.17.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.17.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.17.0-slim
```
* docs: fix readme sample typo [#2792](https://github.com/GoogleContainerTools/kaniko/pull/2792)
* fix: remove log line from listpullreqs.go and additional release.sh fixes [#2790](https://github.com/GoogleContainerTools/kaniko/pull/2790)
* chore(deps): bump golang.org/x/sync from 0.3.0 to 0.4.0 [#2798](https://github.com/GoogleContainerTools/kaniko/pull/2798)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.87 to 1.11.91 [#2805](https://github.com/GoogleContainerTools/kaniko/pull/2805)
* chore(deps): bump github.com/containerd/containerd from 1.7.6 to 1.7.7 [#2797](https://github.com/GoogleContainerTools/kaniko/pull/2797)
* chore(deps): bump github.com/google/go-cmp from 0.5.9 to 0.6.0 [#2796](https://github.com/GoogleContainerTools/kaniko/pull/2796)
* chore(deps): bump golang.org/x/net from 0.16.0 to 0.17.0 [#2791](https://github.com/GoogleContainerTools/kaniko/pull/2791)
* fix: resolve issue with integration tests where lack of disk space caused k3s issues [#2804](https://github.com/GoogleContainerTools/kaniko/pull/2804)
* test: add test cases and docString for regex in COPY command [#2773](https://github.com/GoogleContainerTools/kaniko/pull/2773)
* feat: add automated way of cutting releases w/ generation of CHANGELOG.md {{PULL_REQUESTS}} Makefile changes [#2786](https://github.com/GoogleContainerTools/kaniko/pull/2786)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.40.0 to 1.40.1 [#2780](https://github.com/GoogleContainerTools/kaniko/pull/2780)
* docs: Update designdoc.md with correct link to skaffold repository [#2775](https://github.com/GoogleContainerTools/kaniko/pull/2775)
* chore(deps): bump google.golang.org/api from 0.143.0 to 0.145.0 [#2778](https://github.com/GoogleContainerTools/kaniko/pull/2778)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.18.42 to 1.18.44 [#2777](https://github.com/GoogleContainerTools/kaniko/pull/2777)
* chore(deps): bump golang.org/x/oauth2 from 0.12.0 to 0.13.0 [#2781](https://github.com/GoogleContainerTools/kaniko/pull/2781)
* refactor: Remove fallbackToUID bool option from Kaniko code [#2767](https://github.com/GoogleContainerTools/kaniko/pull/2767)
* chore(deps): bump github.com/otiai10/copy from 1.12.0 to 1.14.0 [#2772](https://github.com/GoogleContainerTools/kaniko/pull/2772)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.86 to 1.11.87 [#2770](https://github.com/GoogleContainerTools/kaniko/pull/2770)
* chore(deps): bump google.golang.org/api from 0.142.0 to 0.143.0 [#2769](https://github.com/GoogleContainerTools/kaniko/pull/2769)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.39.0 to 1.40.0 [#2771](https://github.com/GoogleContainerTools/kaniko/pull/2771)
* chore(deps): bump github.com/spf13/afero from 1.9.5 to 1.10.0 [#2758](https://github.com/GoogleContainerTools/kaniko/pull/2758)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.83 to 1.11.86 [#2757](https://github.com/GoogleContainerTools/kaniko/pull/2757)
* chore(deps): bump google.golang.org/api from 0.141.0 to 0.142.0 [#2756](https://github.com/GoogleContainerTools/kaniko/pull/2756)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
- JeromeJu
- Vishal Khot
- vivekkoya
- zhangzhiqiangcs
# v1.16.0 Release 2023-09-22
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.16.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.16.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.16.0-slim
```
* fix: make it so release.sh script doesn't output duplicate change PRs [#2735](https://github.com/GoogleContainerTools/kaniko/pull/2735)
* chore: update function names to be correct and representative of functionality [#2720](https://github.com/GoogleContainerTools/kaniko/pull/2720)
* chore(deps): bump github.com/go-git/go-git/v5 from 5.8.1 to 5.9.0 [#2749](https://github.com/GoogleContainerTools/kaniko/pull/2749)
* chore(deps): bump google.golang.org/api from 0.140.0 to 0.141.0 [#2748](https://github.com/GoogleContainerTools/kaniko/pull/2748)
* chore(deps): bump github.com/containerd/containerd from 1.7.5 to 1.7.6 [#2750](https://github.com/GoogleContainerTools/kaniko/pull/2750)
* fix: ensure images layers correspond with the image media type [#2719](https://github.com/GoogleContainerTools/kaniko/pull/2719)
* chore(deps): bump github.com/google/slowjam from 1.0.1 to 1.1.0 [#2745](https://github.com/GoogleContainerTools/kaniko/pull/2745)
* chore(deps): bump docker/setup-buildx-action from 2.10.0 to 3.0.0 [#2743](https://github.com/GoogleContainerTools/kaniko/pull/2743)
* chore(deps): bump github.com/go-git/go-billy/v5 from 5.4.1 to 5.5.0 [#2746](https://github.com/GoogleContainerTools/kaniko/pull/2746)
* chore(deps): bump google.golang.org/api from 0.138.0 to 0.140.0 [#2747](https://github.com/GoogleContainerTools/kaniko/pull/2747)
* chore(deps): bump docker/setup-qemu-action from 2.2.0 to 3.0.0 [#2744](https://github.com/GoogleContainerTools/kaniko/pull/2744)
* chore(deps): bump docker/build-push-action from 4.2.1 to 5.0.0 [#2742](https://github.com/GoogleContainerTools/kaniko/pull/2742)
* chore(deps): bump google.golang.org/api from 0.138.0 to 0.139.0 [#2741](https://github.com/GoogleContainerTools/kaniko/pull/2741)
* chore(deps): bump cloud.google.com/go/storage from 1.32.0 to 1.33.0 [#2740](https://github.com/GoogleContainerTools/kaniko/pull/2740)
* chore(deps): bump docker/build-push-action from 4.1.1 to 4.2.1 [#2739](https://github.com/GoogleContainerTools/kaniko/pull/2739)
* chore(deps): bump golang.org/x/oauth2 from 0.11.0 to 0.12.0 [#2732](https://github.com/GoogleContainerTools/kaniko/pull/2732)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.81 to 1.11.83 [#2733](https://github.com/GoogleContainerTools/kaniko/pull/2733)
* chore(deps): bump golang.org/x/net from 0.14.0 to 0.15.0 [#2734](https://github.com/GoogleContainerTools/kaniko/pull/2734)
* chore(deps): bump github.com/containerd/containerd from 1.7.3 to 1.7.5 [#2723](https://github.com/GoogleContainerTools/kaniko/pull/2723)
* chore(deps): bump sigstore/cosign-installer from 3.1.1 to 3.1.2 [#2727](https://github.com/GoogleContainerTools/kaniko/pull/2727)
* chore(deps): bump docker/setup-buildx-action from 2.9.1 to 2.10.0 [#2726](https://github.com/GoogleContainerTools/kaniko/pull/2726)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.18.37 to 1.18.38 [#2724](https://github.com/GoogleContainerTools/kaniko/pull/2724)
* chore(deps): bump golang.org/x/sys from 0.11.0 to 0.12.0 [#2722](https://github.com/GoogleContainerTools/kaniko/pull/2722)
* chore: unnecessary use of fmt.Sprintf [#2717](https://github.com/GoogleContainerTools/kaniko/pull/2717)
* fix function name on comment [#2707](https://github.com/GoogleContainerTools/kaniko/pull/2707)
* Avoid returning the UID when resolving the GIDs. [#2689](https://github.com/GoogleContainerTools/kaniko/pull/2689)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
- Diego Gonzalez
- geekvest
- guangwu
- Logan Price
# v1.15.0 Release 2023-08-29
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.15.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.15.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.15.0-slim
```
* Ensure New Layers Match Image Media Type [#2700](https://github.com/GoogleContainerTools/kaniko/pull/2700)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.79 to 1.11.81 [#2702](https://github.com/GoogleContainerTools/kaniko/pull/2702)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.38.4 to 1.38.5 [#2706](https://github.com/GoogleContainerTools/kaniko/pull/2706)
* chore(deps): bump google.golang.org/api from 0.136.0 to 0.138.0 [#2704](https://github.com/GoogleContainerTools/kaniko/pull/2704)
* chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.20.3 to 1.21.0 [#2703](https://github.com/GoogleContainerTools/kaniko/pull/2703)
* docs: fix --use-new-run typo [#2698](https://github.com/GoogleContainerTools/kaniko/pull/2698)
* docs: add more information regarding --use-new-run [#2687](https://github.com/GoogleContainerTools/kaniko/pull/2687)
* chore(deps): bump cloud.google.com/go/storage from 1.31.0 to 1.32.0 [#2692](https://github.com/GoogleContainerTools/kaniko/pull/2692)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.77 to 1.11.79 [#2690](https://github.com/GoogleContainerTools/kaniko/pull/2690)
* Fix: Change condition for the behaviour when --no-push=true without setting --destinations [#2676](https://github.com/GoogleContainerTools/kaniko/pull/2676)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- dependabot[bot]
- JeromeJu
- Logan Price
# v1.14.0 Release 2023-08-15
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.14.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.14.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.14.0-slim
```
* chore(deps): bump actions/setup-go from 4.0.1 to 4.1.0 [#2672](https://github.com/GoogleContainerTools/kaniko/pull/2672)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.18.29 to 1.18.31 [#2651](https://github.com/GoogleContainerTools/kaniko/pull/2651)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.18.31 to 1.18.33 [#2680](https://github.com/GoogleContainerTools/kaniko/pull/2680)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.73 to 1.11.75 [#2650](https://github.com/GoogleContainerTools/kaniko/pull/2650)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.75 to 1.11.77 [#2679](https://github.com/GoogleContainerTools/kaniko/pull/2679)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.37.0 to 1.37.1 [#2648](https://github.com/GoogleContainerTools/kaniko/pull/2648)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.38.0 to 1.38.2 [#2673](https://github.com/GoogleContainerTools/kaniko/pull/2673)
* chore(deps): bump github.com/containerd/containerd from 1.7.2 to 1.7.3 [#2644](https://github.com/GoogleContainerTools/kaniko/pull/2644)
* chore(deps): bump github.com/go-git/go-git/v5 from 5.8.0 to 5.8.1 [#2662](https://github.com/GoogleContainerTools/kaniko/pull/2662)
* chore(deps): bump golang from 1.20 to 1.21 in /deploy [#2682](https://github.com/GoogleContainerTools/kaniko/pull/2682)
* chore(deps): bump golang.org/x/net from 0.12.0 to 0.14.0 [#2663](https://github.com/GoogleContainerTools/kaniko/pull/2663)
* chore(deps): bump golang.org/x/oauth2 from 0.10.0 to 0.11.0 [#2661](https://github.com/GoogleContainerTools/kaniko/pull/2661)
* chore(deps): bump golang.org/x/sys from 0.10.0 to 0.11.0 [#2659](https://github.com/GoogleContainerTools/kaniko/pull/2659)
* chore(deps): bump google.golang.org/api from 0.133.0 to 0.134.0 [#2645](https://github.com/GoogleContainerTools/kaniko/pull/2645)
* chore(deps): bump google.golang.org/api from 0.134.0 to 0.136.0 [#2681](https://github.com/GoogleContainerTools/kaniko/pull/2681)
* docs: add enforcement section to code-of-conduct.md [#2654](https://github.com/GoogleContainerTools/kaniko/pull/2654)
* feat: added skip-push-permission flag [#2657](https://github.com/GoogleContainerTools/kaniko/pull/2657)
* fix: resolve issue where CI env was failing due to dependency change [#2668](https://github.com/GoogleContainerTools/kaniko/pull/2668)
* refactor: Avoid redundant calls to filepath.Clean [#2652](https://github.com/GoogleContainerTools/kaniko/pull/2652)
Huge thank you for this release towards our contributors:
- Aaron Lehmann
- Aaron Prindle
- dependabot[bot]
- Julian
# v1.13.0 Release 2023-07-26
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.13.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.13.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.13.0-slim
```
* chore(deps): bump cloud.google.com/go/storage from 1.30.1 to 1.31.0 [#2611](https://github.com/GoogleContainerTools/kaniko/pull/2611)
* chore(deps): bump docker/setup-buildx-action from 2.7.0 to 2.8.0 [#2606](https://github.com/GoogleContainerTools/kaniko/pull/2606)
* chore(deps): bump docker/setup-buildx-action from 2.8.0 to 2.9.1 [#2626](https://github.com/GoogleContainerTools/kaniko/pull/2626)
* chore(deps): bump github.com/aws/aws-sdk-go-v2 from 1.18.1 to 1.19.0 [#2623](https://github.com/GoogleContainerTools/kaniko/pull/2623)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.18.28 to 1.18.29 [#2638](https://github.com/GoogleContainerTools/kaniko/pull/2638)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.70 to 1.11.71 [#2610](https://github.com/GoogleContainerTools/kaniko/pull/2610)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.71 to 1.11.72 [#2624](https://github.com/GoogleContainerTools/kaniko/pull/2624)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.72 to 1.11.73 [#2639](https://github.com/GoogleContainerTools/kaniko/pull/2639)
* chore(deps): bump github.com/go-git/go-git/v5 from 5.7.0 to 5.8.0 [#2633](https://github.com/GoogleContainerTools/kaniko/pull/2633)
* chore(deps): bump golang.org/x/oauth2 from 0.9.0 to 0.10.0 [#2617](https://github.com/GoogleContainerTools/kaniko/pull/2617)
* chore(deps): bump golang.org/x/sys from 0.9.0 to 0.10.0 [#2613](https://github.com/GoogleContainerTools/kaniko/pull/2613)
* chore(deps): bump google.golang.org/api from 0.128.0 to 0.129.0 [#2609](https://github.com/GoogleContainerTools/kaniko/pull/2609)
* chore(deps): bump google.golang.org/api from 0.129.0 to 0.131.0 [#2625](https://github.com/GoogleContainerTools/kaniko/pull/2625)
* chore(deps): bump google.golang.org/api from 0.131.0 to 0.132.0 [#2634](https://github.com/GoogleContainerTools/kaniko/pull/2634)
* chore(deps): bump google.golang.org/api from 0.132.0 to 0.133.0 [#2636](https://github.com/GoogleContainerTools/kaniko/pull/2636)
* chore(deps): bump sigstore/cosign-installer from 3.1.0 to 3.1.1 [#2607](https://github.com/GoogleContainerTools/kaniko/pull/2607)
* feat: Allows to disable the fallback to the default registry on image pull [#2637](https://github.com/GoogleContainerTools/kaniko/pull/2637)
Huge thank you for this release towards our contributors:
- dependabot[bot]
- Fernando Giannetti
# v1.12.1 Release 2023-06-29
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.12.1
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.12.1-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.12.1-slim
```
The warmer images are available at:
```
gcr.io/kaniko-project/warmer:v1.12.1
gcr.io/kaniko-project/warmer:latest
```
Fixes:
* fix: resolve issue where warmer CLI always validated optional arg -> breakage for majority of users [#2603](https://github.com/GoogleContainerTools/kaniko/pull/2603)
# v1.12.0 Release 2023-06-28
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.12.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.12.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.12.0-slim
```
* chore: add debug line to RedoHasher [#2591](https://github.com/GoogleContainerTools/kaniko/pull/2591)
* chore(deps): bump docker/build-push-action from 4.0.0 to 4.1.0 [#2557](https://github.com/GoogleContainerTools/kaniko/pull/2557)
* chore(deps): bump docker/build-push-action from 4.1.0 to 4.1.1 [#2580](https://github.com/GoogleContainerTools/kaniko/pull/2580)
* chore(deps): bump docker/setup-buildx-action from 2.5.0 to 2.6.0 [#2555](https://github.com/GoogleContainerTools/kaniko/pull/2555)
* chore(deps): bump docker/setup-buildx-action from 2.6.0 to 2.7.0 [#2579](https://github.com/GoogleContainerTools/kaniko/pull/2579)
* chore(deps): bump docker/setup-qemu-action from 2.1.0 to 2.2.0 [#2556](https://github.com/GoogleContainerTools/kaniko/pull/2556)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/config from 1.18.25 to 1.18.27 [#2581](https://github.com/GoogleContainerTools/kaniko/pull/2581)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/feature/s3/manager from 1.11.67 to 1.11.70 [#2597](https://github.com/GoogleContainerTools/kaniko/pull/2597)
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.33.1 to 1.35.0 [#2582](https://github.com/GoogleContainerTools/kaniko/pull/2582)
* chore(deps): bump github.com/otiai10/copy from 1.11.0 to 1.12.0 [#2598](https://github.com/GoogleContainerTools/kaniko/pull/2598)
* chore(deps): bump golang.org/x/oauth2 from 0.8.0 to 0.9.0 [#2578](https://github.com/GoogleContainerTools/kaniko/pull/2578)
* chore(deps): bump golang.org/x/sync from 0.2.0 to 0.3.0 [#2573](https://github.com/GoogleContainerTools/kaniko/pull/2573)
* chore(deps): bump golang.org/x/sys from 0.8.0 to 0.9.0 [#2564](https://github.com/GoogleContainerTools/kaniko/pull/2564)
* chore(deps): bump google.golang.org/api from 0.125.0 to 0
* chore(deps): bump google.golang.org/api from 0.126.0 to 0.127.0 [#2565](https://github.com/GoogleContainerTools/kaniko/pull/2565)
* chore(deps): bump google.golang.org/api from 0.127.0 to 0.128.0 [#2596](https://github.com/GoogleContainerTools/kaniko/pull/2596)
* chore(deps): bump sigstore/cosign-installer from 3.0.5 to 3.1.0 [#2595](https://github.com/GoogleContainerTools/kaniko/pull/2595)
* Don't write whiteout files to directories that were replaced with files or links [#2590](https://github.com/GoogleContainerTools/kaniko/pull/2590)
* feat: cache dockerfile images through warmer [#2499](https://github.com/GoogleContainerTools/kaniko/pull/2499)
* Fix fs_util tests failing on systems with /tmp mountpoint [#2583](https://github.com/GoogleContainerTools/kaniko/pull/2583)
* Fix multistage caching with COPY --from [#2559](https://github.com/GoogleContainerTools/kaniko/pull/2559)
* fix: hack/boilerplate.sh: fix error handling and use python3 [#2587](https://github.com/GoogleContainerTools/kaniko/pull/2587)
* fix: hack/install_golint.sh: allow installation on linux/arm64 [#2585](https://github.com/GoogleContainerTools/kaniko/pull/2585)
* fix: install tools using go.mod for versioning [#2562](https://github.com/GoogleContainerTools/kaniko/pull/2562)
* fix: Refactors IsSrcRemoteFileURL to only validate the URL is valid [#2563](https://github.com/GoogleContainerTools/kaniko/pull/2563)
* fix: update cache-ttl help text to be correct regarding unit of duration [#2568](https://github.com/GoogleContainerTools/kaniko/pull/2568)
* fix: valdiateFlags typo fixed [#2554](https://github.com/GoogleContainerTools/kaniko/pull/2554)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- alexezio
- Andreas Fleig
- Angus Williams
- dependabot[bot]
- Kraev Sergei
- Liam Newman
- Zigelboim Misha
# v1.11.0 Release 2023-06-08
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.11.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.11.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.11.0-slim
```
* chore: run go mod tidy [#2532](https://github.com/GoogleContainerTools/kaniko/pull/2532)
* chore(deps): bump actions/setup-go from 3.2.0 to 4.0.1 [#2517](https://github.com/GoogleContainerTools/kaniko/pull/2517)
* chore(deps): bump cloud.google.com/go/storage from 1.29.0 to 1.30.1 [#2439](https://github.com/GoogleContainerTools/kaniko/pull/2439)
* chore(deps): bump docker/setup-buildx-action from 2.0.0 to 2.5.0 [#2519](https://github.com/GoogleContainerTools/kaniko/pull/2519)
* chore(deps): bump github.com/containerd/containerd from 1.7.0 to 1.7.1 [#2534](https://github.com/GoogleContainerTools/kaniko/pull/2534)
* chore(deps): bump github.com/containerd/containerd from 1.7.1 to 1.7.2 [#2542](https://github.com/GoogleContainerTools/kaniko/pull/2542)
* chore(deps): bump github.com/go-git/go-git/v5 from 5.4.2 to 5.7.0 [#2528](https://github.com/GoogleContainerTools/kaniko/pull/2528)
* chore(deps): bump github.com/google/go-containerregistry from 0.15.1 to 0.15.2 [#2546](https://github.com/GoogleContainerTools/kaniko/pull/2546)
* chore(deps): bump github.com/moby/buildkit from 0.11.4 to 0.11.6 [#2520](https://github.com/GoogleContainerTools/kaniko/pull/2520)
* chore(deps): bump github.com/sirupsen/logrus from 1.9.2 to 1.9.3 [#2545](https://github.com/GoogleContainerTools/kaniko/pull/2545)
* chore(deps): bump google.golang.org/api from 0.121.0 to 0.124.0 [#2535](https://github.com/GoogleContainerTools/kaniko/pull/2535)
* chore(deps): bump google.golang.org/api from 0.124.0 to 0.125.0 [#2544](https://github.com/GoogleContainerTools/kaniko/pull/2544)
* chore(deps): bump sigstore/cosign-installer from 3.0.3 to 3.0.5 [#2518](https://github.com/GoogleContainerTools/kaniko/pull/2518)
* chore(deps): update docker-credential-* binaries in kaniko images [#2531](https://github.com/GoogleContainerTools/kaniko/pull/2531)
* chore(deps): Update google-github-actions/setup-gcloud to v1.1.1 [#2548](https://github.com/GoogleContainerTools/kaniko/pull/2548)
* chore(deps): use aws-sdk-go-v2 [#2550](https://github.com/GoogleContainerTools/kaniko/pull/2550)
* docs: Add guide on creating multi-arch manifests [#2306](https://github.com/GoogleContainerTools/kaniko/pull/2306)
* docs: update changelog to correct old release tags [#2536](https://github.com/GoogleContainerTools/kaniko/pull/2536)
* fix: Deduplicate paths while saving files for later use [#2504](https://github.com/GoogleContainerTools/kaniko/pull/2504)
* fix: Download docker-credential-gcr from release artifacts [#2540](https://github.com/GoogleContainerTools/kaniko/pull/2540)
* refactor: Use a multistage image to remove all redundancies on Dockerfiles [#2547](https://github.com/GoogleContainerTools/kaniko/pull/2547)
* test: only build for linux/amd64 on PRs [#2460](https://github.com/GoogleContainerTools/kaniko/pull/2460)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- Bob Du
- dependabot[bot]
- Fedor V
- Ferran Vidal
- Jason Hall
- Jasper Ben Orschulko
# v1.10.0 Release 2023-05-24
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.10.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.10.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.10.0-slim
```
* chore(deps): bump github.com/sirupsen/logrus from 1.9.0 to 1.9.2 [#2522](https://github.com/GoogleContainerTools/kaniko/pull/2522)
* chore(deps): bump github.com/otiai10/copy from 1.7.0 to 1.11.0 [#2523](https://github.com/GoogleContainerTools/kaniko/pull/2523)
* Add mTLS (client cert) registry authentication [#2180](https://github.com/GoogleContainerTools/kaniko/pull/2180)
* chore: Revert "chore(deps): bump google-github-actions/setup-gcloud from 0.5.1 to 1.1.1 (#2502)" [#2524](https://github.com/GoogleContainerTools/kaniko/pull/2524)
* Light editing to scripts in hack/gofmt [#2236](https://github.com/GoogleContainerTools/kaniko/pull/2236)
* chore(deps): bump golang from 1.19 to 1.20 in /deploy [#2388](https://github.com/GoogleContainerTools/kaniko/pull/2388)
* chore(deps): bump imjasonh/setup-crane from 0.1 to 0.3 [#2401](https://github.com/GoogleContainerTools/kaniko/pull/2401)
* chore(deps): bump golang.org/x/sync from 0.1.0 to 0.2.0 [#2497](https://github.com/GoogleContainerTools/kaniko/pull/2497)
* fix: Correct deprecated flags in `README.md` [#2335](https://github.com/GoogleContainerTools/kaniko/pull/2335)
* chore(deps): bump docker/setup-qemu-action from 1.2.0 to 2.1.0 [#2287](https://github.com/GoogleContainerTools/kaniko/pull/2287)
* Delete scorecards-analysis.yml [#2510](https://github.com/GoogleContainerTools/kaniko/pull/2510)
* chore(deps): bump docker/build-push-action from 3.2.0 to 4.0.0 [#2505](https://github.com/GoogleContainerTools/kaniko/pull/2505)
* chore(deps): bump github.com/docker/distribution from 2.8.1+incompatible to 2.8.2+incompatible [#2503](https://github.com/GoogleContainerTools/kaniko/pull/2503)
* chore(deps): bump ossf/scorecard-action from 1.1.1 to 2.1.3 [#2506](https://github.com/GoogleContainerTools/kaniko/pull/2506)
* chore(deps): bump golang.org/x/sys from 0.7.0 to 0.8.0 [#2507](https://github.com/GoogleContainerTools/kaniko/pull/2507)
* chore(deps): bump github.com/google/go-containerregistry from 0.14.0 to 0.15.1 [#2508](https://github.com/GoogleContainerTools/kaniko/pull/2508)
* chore(deps): bump github.com/google/slowjam from 1.0.0 to 1.0.1 [#2498](https://github.com/GoogleContainerTools/kaniko/pull/2498)
* chore(deps): bump google-github-actions/setup-gcloud from 0.5.1 to 1.1.1 [#2502](https://github.com/GoogleContainerTools/kaniko/pull/2502)
* chore: add .vscode/ dir to .gitignore [#2501](https://github.com/GoogleContainerTools/kaniko/pull/2501)
* chore(deps): bump sigstore/cosign-installer from 3.0.1 to 3.0.3 [#2495](https://github.com/GoogleContainerTools/kaniko/pull/2495)
* chore(deps): bump google.golang.org/api from 0.120.0 to 0.121.0 [#2496](https://github.com/GoogleContainerTools/kaniko/pull/2496)
* chore(deps): bump github.com/spf13/afero from 1.9.2 to 1.9.5 [#2448](https://github.com/GoogleContainerTools/kaniko/pull/2448)
* chore(deps): bump google.golang.org/api from 0.110.0 to 0.120.0 [#2484](https://github.com/GoogleContainerTools/kaniko/pull/2484)
* chore(deps): bump github/codeql-action from 2.1.8 to 2.3.2 [#2487](https://github.com/GoogleContainerTools/kaniko/pull/2487)
* chore(deps): bump github.com/docker/docker from 23.0.1+incompatible to 23.0.5+incompatible [#2489](https://github.com/GoogleContainerTools/kaniko/pull/2489)
* chore(deps): bump github.com/aws/aws-sdk-go from 1.44.24 to 1.44.253 [#2490](https://github.com/GoogleContainerTools/kaniko/pull/2490)
* fix: use debian buster to fix tests using no longer supported stretch which had broken apt-get urls [#2485](https://github.com/GoogleContainerTools/kaniko/pull/2485)
* chore(deps): bump google.golang.org/protobuf from 1.29.0 to 1.29.1 [#2442](https://github.com/GoogleContainerTools/kaniko/pull/2442)
* Use correct media type for zstd layers [#2459](https://github.com/GoogleContainerTools/kaniko/pull/2459)
* Add support for zstd compression [#2313](https://github.com/GoogleContainerTools/kaniko/pull/2313)
* chore(deps): bump github.com/opencontainers/runc from 1.1.4 to 1.1.5 [#2453](https://github.com/GoogleContainerTools/kaniko/pull/2453)
Huge thank you for this release towards our contributors:
- Aaron Prindle
- Aaruni Aggarwal
- Abirdcfly
- Adrian Newby
- almg80
- Anbraten
- Andreas Fleig
- Andrei Kvapil
- ankitm123
- Aris Buzachis
- Benjamin Krenn
- Bernardo Marques
- Bryan A. S
- chenggui53
- Chuang Wang
- claudex
- Dávid Szakállas
- Dawei Ma
- dependabot[bot]
- Diego Gonzalez
- dmr
- ejose19
- Eng Zer Jun
- ePirat
- Eric
- Florian Apolloner
- François JACQUES
- Gabriel Nützi
- Gilbert Gilb's
- Guillaume Calmettes
- Herman
- Hingbong Lo
- Igor Scheller
- Ishant Mrinal Haloi
- Jack
- Jake Sanders
- Janosch Maier
- Jason D'Amour
- Jason Hall
- Jasper Ben Orschulko
- Jerry Jones
- jeunii
- Joe Kimmel
- Joël Pepper
- Jonas Gröger
- Jose Donizetti
- Junwon Kwon
- Kamal Nasser
- Konstantin Demin
- Kun Lu
- Lars Seipel
- Lavrenti Frobeen
- Liwen Guo
- Lukas
- Mark Moretto
- Matt Moore
- Max Walther
- Mikhail Vasin
- Natalie Arellano
- Naveen
- nihilo
- Oliver Gregorius
- Pat Litke
- Patrick Barker
- priyawadhwa
- Ramy
- Rhianna
- Sebastiaan Tammer
- Shude Li
- Sigurd Spieckermann
- Silvano Cirujano Cuesta
- Tejal Desai
- Tony De La Nuez
- Travis DePrato
- Viacheslav Artamonov
- Víctor
- Wolfgang Walther
- wwade
- Yahav Itzhak
- ygelfand
- Yonatan Koren
- zhouhaibing089
# v1.9.2 Release 2023-03-27
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.9.2
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.9.2-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.9.2-slim
```
* fix(executor): make pax tar builds reproducible again [#2384](https://github.com/GoogleContainerTools/kaniko/pull/2384)
* Upgrade docker [#2440](https://github.com/GoogleContainerTools/kaniko/pull/2440)
* Update ACR credential helper to enable Azure Workload Identity [#2431](https://github.com/GoogleContainerTools/kaniko/pull/2431)
* bump cosign version used to sign images [#2437](https://github.com/GoogleContainerTools/kaniko/pull/2437)
* Fix Integration tests [#2425](https://github.com/GoogleContainerTools/kaniko/pull/2425)
* chore(deps): bump golang from 1.17 to 1.19 in /deploy [#2328](https://github.com/GoogleContainerTools/kaniko/pull/2328)
* chore: fix typo [#2316](https://github.com/GoogleContainerTools/kaniko/pull/2316)
* ci: don't cache certs stage [#2296](https://github.com/GoogleContainerTools/kaniko/pull/2296)
* fix(executor): make pax tar builds reproducible again [#2384](https://github.com/GoogleContainerTools/kaniko/pull/2384)
* Upgrade docker [#2440](https://github.com/GoogleContainerTools/kaniko/pull/2440)
* Update ACR credential helper to enable Azure Workload Identity [#2431](https://github.com/GoogleContainerTools/kaniko/pull/2431)
* bump cosign version used to sign images [#2437](https://github.com/GoogleContainerTools/kaniko/pull/2437)
* Fix Integration tests [#2425](https://github.com/GoogleContainerTools/kaniko/pull/2425)
* chore(deps): bump golang from 1.17 to 1.19 in /deploy [#2328](https://github.com/GoogleContainerTools/kaniko/pull/2328)
* chore: fix typo [#2316](https://github.com/GoogleContainerTools/kaniko/pull/2316)
* ci: don't cache certs stage [#2296](https://github.com/GoogleContainerTools/kaniko/pull/2296)
* chore: fix typo [#2289](https://github.com/GoogleContainerTools/kaniko/pull/2289)
* fix(WORKDIR): use the config.User for the new dir permissions [#2269](https://github.com/GoogleContainerTools/kaniko/pull/2269)
* Provide `--cache-repo` as OCI image layout path [#2250](https://github.com/GoogleContainerTools/kaniko/pull/2250)
Huge thank you for this release towards our contributors:
- Aaruni Aggarwal
- Abirdcfly
- Adrian Newby
- almg80
- Anbraten
- Andreas Fleig
- Andrei Kvapil
- ankitm123
- Aris Buzachis
- Benjamin Krenn
- Bernardo Marques
- Bryan A. S
- chenggui53
- Chuang Wang
- claudex
- Dávid Szakállas
- Dawei Ma
- dependabot[bot]
- Diego Gonzalez
- dmr
- ejose19
- Eng Zer Jun
- ePirat
- Florian Apolloner
- François JACQUES
- Gabriel Nützi
- Gilbert Gilb's
- Guillaume Calmettes
- Herman
- Hingbong Lo
- Igor Scheller
- Ishant Mrinal Haloi
- Jack
- Jake Sanders
- Janosch Maier
- Jason D'Amour
- Jason Hall
- Jasper Ben Orschulko
- Jerry Jones
- jeunii
- Joe Kimmel
- Joël Pepper
- Jonas Gröger
- Jose Donizetti
- Junwon Kwon
- Kamal Nasser
- Konstantin Demin
- Kun Lu
- Lars Seipel
- Liwen Guo
- Lukas
- Matt Moore
- Max Walther
- Mikhail Vasin
- Natalie Arellano
- Naveen
- nihilo
- Oliver Gregorius
- Pat Litke
- Patrick Barker
- priyawadhwa
- Ramy
- Rhianna
- Sebastiaan Tammer
- Shude Li
- Sigurd Spieckermann
- Silvano Cirujano Cuesta
- Tejal Desai
- Tony De La Nuez
- Travis DePrato
- Viacheslav Artamonov
- Víctor
- Wolfgang Walther
- wwade
- Yahav Itzhak
- ygelfand
- Yonatan Koren
- zhouhaibing089
# v1.9.1 Release 2022-09-26
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.9.1
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.9.1-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.9.1-slim
```
* (fix):Pass full URI path to `bucket.GetNameAndFilepathFromURI` [#2221](https://github.com/GoogleContainerTools/kaniko/pull/2221)
* Add the ability to skip unpacking the initial file system [#2234](https://github.com/GoogleContainerTools/kaniko/pull/2234)
* chore: remove duplicate word in comments [#2232](https://github.com/GoogleContainerTools/kaniko/pull/2232)
* docs(CHANGELOG.md): fix link to issue #2040 [#2228](https://github.com/GoogleContainerTools/kaniko/pull/2228)
* feat: disable cache-copy-layers in multistage builds; closes 2065 [#2227](https://github.com/GoogleContainerTools/kaniko/pull/2227)
* bump cosign version so it can sign [#2224](https://github.com/GoogleContainerTools/kaniko/pull/2224)
* fix(README.md): remove duplicate caching section [#2223](https://github.com/GoogleContainerTools/kaniko/pull/2223)
* refactor: Make CLI argument names consistent [#2084](https://github.com/GoogleContainerTools/kaniko/pull/2084)
* fix(KanikoDir): update DOCKER_CONFIG env when use custom kanikoDir [#2202](https://github.com/GoogleContainerTools/kaniko/pull/2202)
* (fix):Pass full URI path to `bucket.GetNameAndFilepathFromURI` [#2221](https://github.com/GoogleContainerTools/kaniko/pull/2221)
* Add the ability to skip unpacking the initial file system [#2234](https://github.com/GoogleContainerTools/kaniko/pull/2234)
* chore: remove duplicate word in comments [#2232](https://github.com/GoogleContainerTools/kaniko/pull/2232)
* docs(CHANGELOG.md): fix link to issue #2040 [#2228](https://github.com/GoogleContainerTools/kaniko/pull/2228)
* feat: disable cache-copy-layers in multistage builds; closes 2065 [#2227](https://github.com/GoogleContainerTools/kaniko/pull/2227)
* bump cosign version so it can sign [#2224](https://github.com/GoogleContainerTools/kaniko/pull/2224)
* fix(README.md): remove duplicate caching section [#2223](https://github.com/GoogleContainerTools/kaniko/pull/2223)
* refactor: Make CLI argument names consistent [#2084](https://github.com/GoogleContainerTools/kaniko/pull/2084)
* fix(KanikoDir): update DOCKER_CONFIG env when use custom kanikoDir [#2202](https://github.com/GoogleContainerTools/kaniko/pull/2202)
Huge thank you for this release towards our contributors:
- Aaruni Aggarwal
- Abirdcfly
- Adrian Newby
- almg80
- Anbraten
- Andreas Fleig
- Andrei Kvapil
- ankitm123
- Benjamin Krenn
- Bernardo Marques
- Bryan A. S
- chenggui53
- Chuang Wang
- claudex
- Dávid Szakállas
- Dawei Ma
- dependabot[bot]
- Diego Gonzalez
- dmr
- ejose19
- Eng Zer Jun
- ePirat
- Florian Apolloner
- François JACQUES
- Gabriel Nützi
- Gilbert Gilb's
- Guillaume Calmettes
- Herman
- Hingbong Lo
- Igor Scheller
- Ishant Mrinal Haloi
- Jack
- Jake Sanders
- Janosch Maier
- Jason D'Amour
- Jason Hall
- Jasper Ben Orschulko
- jeunii
- Jonas Gröger
- Jose Donizetti
- Kamal Nasser
- Konstantin Demin
- Kun Lu
- Lars Seipel
- Liwen Guo
- Lukas
- Matt Moore
- Max Walther
- Mikhail Vasin
- Natalie Arellano
- Naveen
- nihilo
- Oliver Gregorius
- Pat Litke
- Patrick Barker
- priyawadhwa
- Ramy
- Rhianna
- Sebastiaan Tammer
- Sigurd Spieckermann
- Silvano Cirujano Cuesta
- Tejal Desai
- Tony De La Nuez
- Travis DePrato
- Víctor
- Wolfgang Walther
- wwade
- Yahav Itzhak
- ygelfand
- Yonatan Koren
- zhouhaibing089
# v1.9.0 Release 2022-08-09
## Highlights
- Installed binaries are missing from image [#2049](https://github.com/GoogleContainerTools/kaniko/issues/2049)
- proc: detect kubernetes runtime by mounts [#2054](https://github.com/GoogleContainerTools/kaniko/pull/2054)
- Fixes #2046: make target stage lookup case insensitive [#2047](https://github.com/GoogleContainerTools/kaniko/pull/2047)
- fix: Refactor LayersMap to correct old strange code behavior [#2066](https://github.com/GoogleContainerTools/kaniko/pull/2066)
- Fix missing setuid flags on COPY --from=build operation [#2089](https://github.com/GoogleContainerTools/kaniko/pull/2089)
- Fixes #2046: make target stage lookup case insensitive [#2047](https://github.com/GoogleContainerTools/kaniko/pull/2047)
- Add GitLab CI credentials helper [#2040](https://github.com/GoogleContainerTools/kaniko/pull/2040)
- and a number of dependency bumps
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.9.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.9.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.9.0-slim
```
* add cache option for run command [#2032](https://github.com/GoogleContainerTools/kaniko/pull/2032)
* fix: kaniko dir env unused [#2067](https://github.com/GoogleContainerTools/kaniko/pull/2067)
* fix: getUIDandGID is able to resolve non-existing users and groups [#2106](https://github.com/GoogleContainerTools/kaniko/pull/2106)
* fix(Dockerfile): use temporary busybox mount to create /kaniko directory [#2155](https://github.com/GoogleContainerTools/kaniko/pull/2155)
* Fix the /kaniko directory permissions in container [#2009](https://github.com/GoogleContainerTools/kaniko/pull/2009)
* ci(setup-minikube): use cri-dockerd [#2149](https://github.com/GoogleContainerTools/kaniko/pull/2149)
* CA certificates tasks in kaniko images [#2142](https://github.com/GoogleContainerTools/kaniko/pull/2142)
* refactor: simpler local integration tests [#2110](https://github.com/GoogleContainerTools/kaniko/pull/2110)
* fix: use refrence should after err handles [#2128](https://github.com/GoogleContainerTools/kaniko/pull/2128)
* fix: Add test for issue #2049 [#2114](https://github.com/GoogleContainerTools/kaniko/pull/2114)
* Bump ossf/scorecard-action from 1.0.4 to 1.1.1 [#2116](https://github.com/GoogleContainerTools/kaniko/pull/2116)
* Bump github.com/aws/aws-sdk-go from 1.43.36 to 1.44.24 [#2111](https://github.com/GoogleContainerTools/kaniko/pull/2111)
* Bump actions/setup-go from 3.0.0 to 3.2.0 [#2112](https://github.com/GoogleContainerTools/kaniko/pull/2112)
* Write parent directories to tar before whiteout files [#2113](https://github.com/GoogleContainerTools/kaniko/pull/2113)
* fix(ci): Docker build for issue 1837 [#2095](https://github.com/GoogleContainerTools/kaniko/pull/2095)
* Update Azure credHelpers docs [#2109](https://github.com/GoogleContainerTools/kaniko/pull/2109)
* Fix missing setuid flags on COPY --from=build operation [#2089](https://github.com/GoogleContainerTools/kaniko/pull/2089)
* fix: `COPY --chown` regression tests [#2097](https://github.com/GoogleContainerTools/kaniko/pull/2097)
* fix: Regression test for #2066 [#2096](https://github.com/GoogleContainerTools/kaniko/pull/2096)
* fix: Refactor `LayersMap` to correct old strange code behavior [#2066](https://github.com/GoogleContainerTools/kaniko/pull/2066)
* fix: Main [#2094](https://github.com/GoogleContainerTools/kaniko/pull/2094)
* feat: add flag to disable pushing cache [#2038](https://github.com/GoogleContainerTools/kaniko/pull/2038)
* hasher: hash security.capability attributes [#1994](https://github.com/GoogleContainerTools/kaniko/pull/1994)
* Documentation: Clarify README.md blurb on `--cache-copy-layers` [#2064](https://github.com/GoogleContainerTools/kaniko/pull/2064)
* Fix release tagging workflow [#2034](https://github.com/GoogleContainerTools/kaniko/pull/2034)
* Bump docker/setup-buildx-action from 1.6.0 to 2 [#2081](https://github.com/GoogleContainerTools/kaniko/pull/2081)
* Bump go-containerregistry dependency [#2076](https://github.com/GoogleContainerTools/kaniko/pull/2076)
* Fix: Flatten layer function needs to return existing files in the layer correctly [#2057](https://github.com/GoogleContainerTools/kaniko/pull/2057)
* fix: Remove hardcoded whiteout prefix [#2056](https://github.com/GoogleContainerTools/kaniko/pull/2056)
* proc: detect kubernetes runtime by mounts [#2054](https://github.com/GoogleContainerTools/kaniko/pull/2054)
* Fixes #2046: make target stage lookup case insensitive [#2047](https://github.com/GoogleContainerTools/kaniko/pull/2047)
* Add GitLab CI credentials helper [#2040](https://github.com/GoogleContainerTools/kaniko/pull/2040)
* Bump sigstore/cosign-installer from b4f55743d10d066fee1de1cf0fa26069700c0195 to 2.2.0 [#2044](https://github.com/GoogleContainerTools/kaniko/pull/2044)
* Bump github/codeql-action from 2.1.6 to 2.1.8 [#2043](https://github.com/GoogleContainerTools/kaniko/pull/2043)
* Bump github.com/aws/aws-sdk-go from 1.43.31 to 1.43.36 [#2042](https://github.com/GoogleContainerTools/kaniko/pull/2042)
* Bump cloud.google.com/go/storage from 1.21.0 to 1.22.0 [#2041](https://github.com/GoogleContainerTools/kaniko/pull/2041)
* add cache option for run command [#2032](https://github.com/GoogleContainerTools/kaniko/pull/2032)
* fix: kaniko dir env unused [#2067](https://github.com/GoogleContainerTools/kaniko/pull/2067)
* fix: getUIDandGID is able to resolve non-existing users and groups [#2106](https://github.com/GoogleContainerTools/kaniko/pull/2106)
* fix(Dockerfile): use temporary busybox mount to create /kaniko directory [#2155](https://github.com/GoogleContainerTools/kaniko/pull/2155)
* Fix the /kaniko directory permissions in container [#2009](https://github.com/GoogleContainerTools/kaniko/pull/2009)
* ci(setup-minikube): use cri-dockerd [#2149](https://github.com/GoogleContainerTools/kaniko/pull/2149)
* CA certificates tasks in kaniko images [#2142](https://github.com/GoogleContainerTools/kaniko/pull/2142)
* refactor: simpler local integration tests [#2110](https://github.com/GoogleContainerTools/kaniko/pull/2110)
* fix: use refrence should after err handles [#2128](https://github.com/GoogleContainerTools/kaniko/pull/2128)
* fix: Add test for issue #2049 [#2114](https://github.com/GoogleContainerTools/kaniko/pull/2114)
* Bump ossf/scorecard-action from 1.0.4 to 1.1.1 [#2116](https://github.com/GoogleContainerTools/kaniko/pull/2116)
* Bump github.com/aws/aws-sdk-go from 1.43.36 to 1.44.24 [#2111](https://github.com/GoogleContainerTools/kaniko/pull/2111)
* Bump actions/setup-go from 3.0.0 to 3.2.0 [#2112](https://github.com/GoogleContainerTools/kaniko/pull/2112)
* Write parent directories to tar before whiteout files [#2113](https://github.com/GoogleContainerTools/kaniko/pull/2113)
* fix(ci): Docker build for issue 1837 [#2095](https://github.com/GoogleContainerTools/kaniko/pull/2095)
* Update Azure credHelpers docs [#2109](https://github.com/GoogleContainerTools/kaniko/pull/2109)
* Fix missing setuid flags on COPY --from=build operation [#2089](https://github.com/GoogleContainerTools/kaniko/pull/2089)
* fix: `COPY --chown` regression tests [#2097](https://github.com/GoogleContainerTools/kaniko/pull/2097)
* fix: Regression test for #2066 [#2096](https://github.com/GoogleContainerTools/kaniko/pull/2096)
* fix: Refactor `LayersMap` to correct old strange code behavior [#2066](https://github.com/GoogleContainerTools/kaniko/pull/2066)
* fix: Main [#2094](https://github.com/GoogleContainerTools/kaniko/pull/2094)
* feat: add flag to disable pushing cache [#2038](https://github.com/GoogleContainerTools/kaniko/pull/2038)
* hasher: hash security.capability attributes [#1994](https://github.com/GoogleContainerTools/kaniko/pull/1994)
* Documentation: Clarify README.md blurb on `--cache-copy-layers` [#2064](https://github.com/GoogleContainerTools/kaniko/pull/2064)
* Fix release tagging workflow [#2034](https://github.com/GoogleContainerTools/kaniko/pull/2034)
* Bump docker/setup-buildx-action from 1.6.0 to 2 [#2081](https://github.com/GoogleContainerTools/kaniko/pull/2081)
* Bump go-containerregistry dependency [#2076](https://github.com/GoogleContainerTools/kaniko/pull/2076)
* Fix: Flatten layer function needs to return existing files in the layer correctly [#2057](https://github.com/GoogleContainerTools/kaniko/pull/2057)
* fix: Remove hardcoded whiteout prefix [#2056](https://github.com/GoogleContainerTools/kaniko/pull/2056)
* proc: detect kubernetes runtime by mounts [#2054](https://github.com/GoogleContainerTools/kaniko/pull/2054)
* Fixes #2046: make target stage lookup case insensitive [#2047](https://github.com/GoogleContainerTools/kaniko/pull/2047)
* Add GitLab CI credentials helper [#2040](https://github.com/GoogleContainerTools/kaniko/pull/2040)
* Bump sigstore/cosign-installer from b4f55743d10d066fee1de1cf0fa26069700c0195 to 2.2.0 [#2044](https://github.com/GoogleContainerTools/kaniko/pull/2044)
* Bump github/codeql-action from 2.1.6 to 2.1.8 [#2043](https://github.com/GoogleContainerTools/kaniko/pull/2043)
* Bump github.com/aws/aws-sdk-go from 1.43.31 to 1.43.36 [#2042](https://github.com/GoogleContainerTools/kaniko/pull/2042)
* Bump cloud.google.com/go/storage from 1.21.0 to 1.22.0 [#2041](https://github.com/GoogleContainerTools/kaniko/pull/2041)
Huge thank you for this release towards our contributors:
- Aaruni Aggarwal
- Adrian Newby
- Anbraten
- Andreas Fleig
- Andrei Kvapil
- ankitm123
- Benjamin Krenn
- Bernardo Marques
- Chuang Wang
- claudex
- Dávid Szakállas
- Dawei Ma
- dependabot[bot]
- Diego Gonzalez
- ejose19
- Eng Zer Jun
- ePirat
- Florian Apolloner
- François JACQUES
- Gabriel Nützi
- Gilbert Gilb's
- Guillaume Calmettes
- Herman
- Hingbong Lo
- Igor Scheller
- Ishant Mrinal Haloi
- Jack
- Jake Sanders
- Janosch Maier
- Jason D'Amour
- Jason Hall
- Jasper Ben Orschulko
- jeunii
- Jose Donizetti
- Kamal Nasser
- Konstantin Demin
- Kun Lu
- Lars Seipel
- Liwen Guo
- Lukas
- Matt Moore
- Max Walther
- Mikhail Vasin
- Naveen
- nihilo
- Oliver Gregorius
- Pat Litke
- Patrick Barker
- priyawadhwa
- Ramy
- Rhianna
- Sebastiaan Tammer
- Sigurd Spieckermann
- Silvano Cirujano Cuesta
- Tejal Desai
- Tony De La Nuez
- Travis DePrato
- Víctor
- Wolfgang Walther
- wwade
- Yahav Itzhak
- ygelfand
- Yonatan Koren
- zhouhaibing089
# v1.8.1 Release 2022-04-01
This is Apr's 2022 release.
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.8.1
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.8.1-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.8.1-slim
```
* Use canonical platform values. Fix 1995. [#2025](https://github.com/GoogleContainerTools/kaniko/pull/2025)
* feat: kaniko dir config option [#1997](https://github.com/GoogleContainerTools/kaniko/pull/1997)
* Bump github.com/aws/aws-sdk-go from 1.43.17 to 1.43.26 [#2018](https://github.com/GoogleContainerTools/kaniko/pull/2018)
* Bump github.com/containerd/containerd from 1.6.1 to 1.6.2 [#2017](https://github.com/GoogleContainerTools/kaniko/pull/2017)
* Bump github.com/docker/docker from 20.10.13+incompatible to 20.10.14+incompatible [#2016](https://github.com/GoogleContainerTools/kaniko/pull/2016)
* README.md: Update docs on building for AWS ECR [#2020](https://github.com/GoogleContainerTools/kaniko/pull/2020)
* Move and fix GetContainerRuntime check from bpfd proc [#1996](https://github.com/GoogleContainerTools/kaniko/pull/1996)
* Fix minor glitch in the SVG logos [#2004](https://github.com/GoogleContainerTools/kaniko/pull/2004)
* Add SVG logos [#2002](https://github.com/GoogleContainerTools/kaniko/pull/2002)
* Bump github/codeql-action from 1.1.3 to 1.1.5 [#2000](https://github.com/GoogleContainerTools/kaniko/pull/2000)
* Fix - Incomplete regular expression for hostnames [#1993](https://github.com/GoogleContainerTools/kaniko/pull/1993)
* Bump github.com/spf13/cobra from 1.3.0 to 1.4.0 [#1985](https://github.com/GoogleContainerTools/kaniko/pull/1985)
* Bump github.com/aws/aws-sdk-go from 1.43.12 to 1.43.17 [#1986](https://github.com/GoogleContainerTools/kaniko/pull/1986)
* Bump github.com/spf13/afero from 1.8.1 to 1.8.2 [#1987](https://github.com/GoogleContainerTools/kaniko/pull/1987)
* Bump github.com/docker/docker from 20.10.12+incompatible to 20.10.13+incompatible [#1988](https://github.com/GoogleContainerTools/kaniko/pull/1988)
* Fix image tags in release workflow [#1977](https://github.com/GoogleContainerTools/kaniko/pull/1977)
* Use canonical platform values. Fix 1995. [#2025](https://github.com/GoogleContainerTools/kaniko/pull/2025)
* feat: kaniko dir config option [#1997](https://github.com/GoogleContainerTools/kaniko/pull/1997)
* Bump github.com/aws/aws-sdk-go from 1.43.17 to 1.43.26 [#2018](https://github.com/GoogleContainerTools/kaniko/pull/2018)
* Bump github.com/containerd/containerd from 1.6.1 to 1.6.2 [#2017](https://github.com/GoogleContainerTools/kaniko/pull/2017)
* Bump github.com/docker/docker from 20.10.13+incompatible to 20.10.14+incompatible [#2016](https://github.com/GoogleContainerTools/kaniko/pull/2016)
* README.md: Update docs on building for AWS ECR [#2020](https://github.com/GoogleContainerTools/kaniko/pull/2020)
* Move and fix GetContainerRuntime check from bpfd proc [#1996](https://github.com/GoogleContainerTools/kaniko/pull/1996)
* Fix minor glitch in the SVG logos [#2004](https://github.com/GoogleContainerTools/kaniko/pull/2004)
* Add SVG logos [#2002](https://github.com/GoogleContainerTools/kaniko/pull/2002)
* Bump github/codeql-action from 1.1.3 to 1.1.5 [#2000](https://github.com/GoogleContainerTools/kaniko/pull/2000)
* Fix - Incomplete regular expression for hostnames [#1993](https://github.com/GoogleContainerTools/kaniko/pull/1993)
* Bump github.com/spf13/cobra from 1.3.0 to 1.4.0 [#1985](https://github.com/GoogleContainerTools/kaniko/pull/1985)
* Bump github.com/aws/aws-sdk-go from 1.43.12 to 1.43.17 [#1986](https://github.com/GoogleContainerTools/kaniko/pull/1986)
* Bump github.com/spf13/afero from 1.8.1 to 1.8.2 [#1987](https://github.com/GoogleContainerTools/kaniko/pull/1987)
* Bump github.com/docker/docker from 20.10.12+incompatible to 20.10.13+incompatible [#1988](https://github.com/GoogleContainerTools/kaniko/pull/1988)
* Fix image tags in release workflow [#1977](https://github.com/GoogleContainerTools/kaniko/pull/1977)
Huge thank you for this release towards our contributors:
- Aaruni Aggarwal
- Adrian Newby
- Anbraten
- Andrei Kvapil
- ankitm123
- Benjamin Krenn
- Bernardo Marques
- Chuang Wang
- Dávid Szakállas
- Dawei Ma
- dependabot[bot]
- Diego Gonzalez
- ejose19
- Eng Zer Jun
- Florian Apolloner
- François JACQUES
- Gabriel Nützi
- Gilbert Gilb's
- Guillaume Calmettes
- Herman
- Igor Scheller
- Jack
- Jake Sanders
- Janosch Maier
- Jason Hall
- Jasper Ben Orschulko
- jeunii
- Jose Donizetti
- Kamal Nasser
- Kun Lu
- Lars Seipel
- Liwen Guo
- Matt Moore
- Max Walther
- Mikhail Vasin
- Naveen
- nihilo
- Oliver Gregorius
- Pat Litke
- Patrick Barker
- priyawadhwa
- Rhianna
- Sebastiaan Tammer
- Sigurd Spieckermann
- Silvano Cirujano Cuesta
- Tejal Desai
- Travis DePrato
- Wolfgang Walther
- wwade
- Yahav Itzhak
- ygelfand
# v1.8.0 Release 2022-03-08
This is Mar's 2022 release.
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.8.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.8.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.8.0-slim
```
* Update dependabot settings to get updates for docker [#1969](https://github.com/GoogleContainerTools/kaniko/pull/1969)
* Bump actions/setup-go from 2.2.0 to 3 [#1970](https://github.com/GoogleContainerTools/kaniko/pull/1970)
* Bump google-github-actions/setup-gcloud from 0.5.0 to 0.5.1 [#1950](https://github.com/GoogleContainerTools/kaniko/pull/1950)
* Pinned GitHub actions by SHA [#1963](https://github.com/GoogleContainerTools/kaniko/pull/1963)
* Bump actions/upload-artifact from 2.3.1 to 3 [#1968](https://github.com/GoogleContainerTools/kaniko/pull/1968)
* Bump actions/checkout from 2 to 3 [#1967](https://github.com/GoogleContainerTools/kaniko/pull/1967)
* Bump github.com/aws/aws-sdk-go from 1.42.52 to 1.43.12 [#1966](https://github.com/GoogleContainerTools/kaniko/pull/1966)
* Bump github.com/containerd/containerd from 1.6.0 to 1.6.1 [#1961](https://github.com/GoogleContainerTools/kaniko/pull/1961)
* Fix bug with log disabling [#1959](https://github.com/GoogleContainerTools/kaniko/pull/1959)
* Bump github/codeql-action from 1.1.2 to 1.1.3 [#1958](https://github.com/GoogleContainerTools/kaniko/pull/1958)
* Bump github.com/aws/aws-sdk-go from 1.42.52 to 1.43.7 [#1957](https://github.com/GoogleContainerTools/kaniko/pull/1957)
* Removed --whitelist-var-run normalization as this breaks functionality [#1956](https://github.com/GoogleContainerTools/kaniko/pull/1956)
* Bump github.com/containerd/containerd from 1.5.9 to 1.6.0 [#1948](https://github.com/GoogleContainerTools/kaniko/pull/1948)
* Bump cloud.google.com/go/storage from 1.20.0 to 1.21.0 [#1947](https://github.com/GoogleContainerTools/kaniko/pull/1947)
* Bump github/codeql-action from 1.1.0 to 1.1.2 [#1951](https://github.com/GoogleContainerTools/kaniko/pull/1951)
* Bump ossf/scorecard-action from 1.0.3 to 1.0.4 [#1952](https://github.com/GoogleContainerTools/kaniko/pull/1952)
* Bump ecr-login dep to avoid some log spam [#1946](https://github.com/GoogleContainerTools/kaniko/pull/1946)
* readme: Fix formatting for `--image-fs-extract-retry` [#1942](https://github.com/GoogleContainerTools/kaniko/pull/1942)
* Pick up per-repository auth changes from go-containerregistry [#1939](https://github.com/GoogleContainerTools/kaniko/pull/1939)
* Bump github.com/aws/aws-sdk-go from 1.42.47 to 1.42.52 [#1937](https://github.com/GoogleContainerTools/kaniko/pull/1937)
* Bump github/codeql-action from 1.0.31 to 1.1.0 [#1938](https://github.com/GoogleContainerTools/kaniko/pull/1938)
* Set DOCKER_BUILDKIT=1 in make images [#1906](https://github.com/GoogleContainerTools/kaniko/pull/1906)
* Fix resolving arguments over multi-stage build [#1928](https://github.com/GoogleContainerTools/kaniko/pull/1928)
* Correctly handle platforms that include CPU variants [#1929](https://github.com/GoogleContainerTools/kaniko/pull/1929)
* Restore build args after optimize. Fixes #1910, #1912. [#1915](https://github.com/GoogleContainerTools/kaniko/pull/1915)
* test: use `T.TempDir` to create temporary test directory [#1918](https://github.com/GoogleContainerTools/kaniko/pull/1918)
* Bump github.com/spf13/afero from 1.8.0 to 1.8.1 [#1922](https://github.com/GoogleContainerTools/kaniko/pull/1922)
* Bump github.com/aws/aws-sdk-go from 1.42.44 to 1.42.47 [#1923](https://github.com/GoogleContainerTools/kaniko/pull/1923)
* Bump cloud.google.com/go/storage from 1.19.0 to 1.20.0 [#1924](https://github.com/GoogleContainerTools/kaniko/pull/1924)
* Bump ossf/scorecard-action from 1.0.2 to 1.0.3 [#1926](https://github.com/GoogleContainerTools/kaniko/pull/1926)
* Bump google-github-actions/setup-gcloud from 0.4.0 to 0.5.0 [#1925](https://github.com/GoogleContainerTools/kaniko/pull/1925)
* Bump github/codeql-action from 1.0.30 to 1.0.31 [#1927](https://github.com/GoogleContainerTools/kaniko/pull/1927)
* Vagrantfile should install and configure go (see #1913) [#1914](https://github.com/GoogleContainerTools/kaniko/pull/1914)
* adding ppc64le support for executor and warmer image [#1908](https://github.com/GoogleContainerTools/kaniko/pull/1908)
* Remove deploy/cloudbuild-*.yaml files [#1907](https://github.com/GoogleContainerTools/kaniko/pull/1907)
* Bump go-containerregistry to pick up ACR fix [#1898](https://github.com/GoogleContainerTools/kaniko/pull/1898)
* Bump cloud.google.com/go/storage from 1.18.2 to 1.19.0 [#1903](https://github.com/GoogleContainerTools/kaniko/pull/1903)
* Bump github.com/aws/aws-sdk-go from 1.42.38 to 1.42.44 [#1902](https://github.com/GoogleContainerTools/kaniko/pull/1902)
* Bump ossf/scorecard-action from 5da1b6b2680a229f2e66131f5c6a692bcd80b246 to 1.0.2 [#1899](https://github.com/GoogleContainerTools/kaniko/pull/1899)
* Bump google-github-actions/setup-gcloud from 0.3.0 to 0.4.0 [#1900](https://github.com/GoogleContainerTools/kaniko/pull/1900)
* Bump github/codeql-action from 1.0.26 to 1.0.30 [#1901](https://github.com/GoogleContainerTools/kaniko/pull/1901)
* Enable dependabot for Go and GitHub Actions dependencies [#1884](https://github.com/GoogleContainerTools/kaniko/pull/1884)
* Update readme [#1897](https://github.com/GoogleContainerTools/kaniko/pull/1897)
* Remove k8schain, directly depend on cred helpers [#1891](https://github.com/GoogleContainerTools/kaniko/pull/1891)
* Update golang.org/x/oauth2/google [#1890](https://github.com/GoogleContainerTools/kaniko/pull/1890)
* Bump dependencies [#1885](https://github.com/GoogleContainerTools/kaniko/pull/1885)
* Fix broken anchor link [#1804](https://github.com/GoogleContainerTools/kaniko/pull/1804)
* Bump github.com/docker/docker to latest release [#1866](https://github.com/GoogleContainerTools/kaniko/pull/1866)
* Run GitHub Actions on pushes and PRs to main, not master [#1883](https://github.com/GoogleContainerTools/kaniko/pull/1883)
* Add KANIKO_REGISTRY_MIRROR env var [#1875](https://github.com/GoogleContainerTools/kaniko/pull/1875)
* Bump AWS ecr-login cred helper to v0.5.0 [#1880](https://github.com/GoogleContainerTools/kaniko/pull/1880)
* Pin to more recent version of scorecard [#1878](https://github.com/GoogleContainerTools/kaniko/pull/1878)
* Add ossf/scorecard Github Action to kaniko [#1874](https://github.com/GoogleContainerTools/kaniko/pull/1874)
* Attempt to fix erroneous build cancellation [#1867](https://github.com/GoogleContainerTools/kaniko/pull/1867)
* Add s390x support to docker images [#1749](https://github.com/GoogleContainerTools/kaniko/pull/1749)
* fix: ARG/ENV used in script does not invalidate build cache (#1688) [#1693](https://github.com/GoogleContainerTools/kaniko/pull/1693)
* fix: change the name of the acr cred helper [#1865](https://github.com/GoogleContainerTools/kaniko/pull/1865)
* Fix implicit GCR auth [#1856](https://github.com/GoogleContainerTools/kaniko/pull/1856)
* Log full image ref by digest when pushing an image [#1857](https://github.com/GoogleContainerTools/kaniko/pull/1857)
* Remove GitHub Actions concurrency limits [#1858](https://github.com/GoogleContainerTools/kaniko/pull/1858)
* tar: read directly from stdin [#1728](https://github.com/GoogleContainerTools/kaniko/pull/1728)
* Fix regression: can fetch branches and tags references without specifying commit hashes for private git repository used as context [#1823](https://github.com/GoogleContainerTools/kaniko/pull/1823)
* Use pax tar format [#1809](https://github.com/GoogleContainerTools/kaniko/pull/1809)
* Fix calculating path for copying ownership [#1859](https://github.com/GoogleContainerTools/kaniko/pull/1859)
* Fix copying ownership [#1725](https://github.com/GoogleContainerTools/kaniko/pull/1725)
* Fix typo [#1825](https://github.com/GoogleContainerTools/kaniko/pull/1825)
* Fix possible nil pointer derefence in fs_util.go [#1813](https://github.com/GoogleContainerTools/kaniko/pull/1813)
* include auth for FetchOptions [#1796](https://github.com/GoogleContainerTools/kaniko/pull/1796)
* Update readme insecure flags [#1811](https://github.com/GoogleContainerTools/kaniko/pull/1811)
* Add documentation on pushing to ACR [#1831](https://github.com/GoogleContainerTools/kaniko/pull/1831)
* Fixes #1837 : keep file capabilities on archival [#1838](https://github.com/GoogleContainerTools/kaniko/pull/1838)
* Use setup-gcloud@v0.3.0 instead of @master [#1854](https://github.com/GoogleContainerTools/kaniko/pull/1854)
* Collapse integration test workflows into one config [#1855](https://github.com/GoogleContainerTools/kaniko/pull/1855)
* Share the Go build cache when building in Dockerfiles [#1853](https://github.com/GoogleContainerTools/kaniko/pull/1853)
* Call cosign sign --key [#1849](https://github.com/GoogleContainerTools/kaniko/pull/1849)
* Consolidate PR and real release workflows [#1845](https://github.com/GoogleContainerTools/kaniko/pull/1845)
* Use golang:1.17 and build from reproducible source [#1848](https://github.com/GoogleContainerTools/kaniko/pull/1848)
* Start keyless signing kaniko releases [#1841](https://github.com/GoogleContainerTools/kaniko/pull/1841)
* Attempt to speed up PR image builds by sharing a cache [#1844](https://github.com/GoogleContainerTools/kaniko/pull/1844)
* Sign digests not tags. [#1840](https://github.com/GoogleContainerTools/kaniko/pull/1840)
* Fix the e2e K8s test [#1842](https://github.com/GoogleContainerTools/kaniko/pull/1842)
* Bump the cosign version (a lot) [#1839](https://github.com/GoogleContainerTools/kaniko/pull/1839)
* Revert "Support mirror registries with path component (#1707)" [#1794](https://github.com/GoogleContainerTools/kaniko/pull/1794)
* Fix syntax error in release.yaml [#1800](https://github.com/GoogleContainerTools/kaniko/pull/1800)
* Update dependabot settings to get updates for docker [#1969](https://github.com/GoogleContainerTools/kaniko/pull/1969)
* Bump actions/setup-go from 2.2.0 to 3 [#1970](https://github.com/GoogleContainerTools/kaniko/pull/1970)
* Bump google-github-actions/setup-gcloud from 0.5.0 to 0.5.1 [#1950](https://github.com/GoogleContainerTools/kaniko/pull/1950)
* Pinned GitHub actions by SHA [#1963](https://github.com/GoogleContainerTools/kaniko/pull/1963)
* Bump actions/upload-artifact from 2.3.1 to 3 [#1968](https://github.com/GoogleContainerTools/kaniko/pull/1968)
* Bump actions/checkout from 2 to 3 [#1967](https://github.com/GoogleContainerTools/kaniko/pull/1967)
* Bump github.com/aws/aws-sdk-go from 1.42.52 to 1.43.12 [#1966](https://github.com/GoogleContainerTools/kaniko/pull/1966)
* Bump github.com/containerd/containerd from 1.6.0 to 1.6.1 [#1961](https://github.com/GoogleContainerTools/kaniko/pull/1961)
* Fix bug with log disabling [#1959](https://github.com/GoogleContainerTools/kaniko/pull/1959)
* Bump github/codeql-action from 1.1.2 to 1.1.3 [#1958](https://github.com/GoogleContainerTools/kaniko/pull/1958)
* Bump github.com/aws/aws-sdk-go from 1.42.52 to 1.43.7 [#1957](https://github.com/GoogleContainerTools/kaniko/pull/1957)
* Removed --whitelist-var-run normalization as this breaks functionality [#1956](https://github.com/GoogleContainerTools/kaniko/pull/1956)
* Bump github.com/containerd/containerd from 1.5.9 to 1.6.0 [#1948](https://github.com/GoogleContainerTools/kaniko/pull/1948)
* Bump cloud.google.com/go/storage from 1.20.0 to 1.21.0 [#1947](https://github.com/GoogleContainerTools/kaniko/pull/1947)
* Bump github/codeql-action from 1.1.0 to 1.1.2 [#1951](https://github.com/GoogleContainerTools/kaniko/pull/1951)
* Bump ossf/scorecard-action from 1.0.3 to 1.0.4 [#1952](https://github.com/GoogleContainerTools/kaniko/pull/1952)
* Bump ecr-login dep to avoid some log spam [#1946](https://github.com/GoogleContainerTools/kaniko/pull/1946)
* readme: Fix formatting for `--image-fs-extract-retry` [#1942](https://github.com/GoogleContainerTools/kaniko/pull/1942)
* Pick up per-repository auth changes from go-containerregistry [#1939](https://github.com/GoogleContainerTools/kaniko/pull/1939)
* Bump github.com/aws/aws-sdk-go from 1.42.47 to 1.42.52 [#1937](https://github.com/GoogleContainerTools/kaniko/pull/1937)
* Bump github/codeql-action from 1.0.31 to 1.1.0 [#1938](https://github.com/GoogleContainerTools/kaniko/pull/1938)
* Set DOCKER_BUILDKIT=1 in make images [#1906](https://github.com/GoogleContainerTools/kaniko/pull/1906)
* Fix resolving arguments over multi-stage build [#1928](https://github.com/GoogleContainerTools/kaniko/pull/1928)
* Correctly handle platforms that include CPU variants [#1929](https://github.com/GoogleContainerTools/kaniko/pull/1929)
* Restore build args after optimize. Fixes #1910, #1912. [#1915](https://github.com/GoogleContainerTools/kaniko/pull/1915)
* test: use `T.TempDir` to create temporary test directory [#1918](https://github.com/GoogleContainerTools/kaniko/pull/1918)
* Bump github.com/spf13/afero from 1.8.0 to 1.8.1 [#1922](https://github.com/GoogleContainerTools/kaniko/pull/1922)
* Bump github.com/aws/aws-sdk-go from 1.42.44 to 1.42.47 [#1923](https://github.com/GoogleContainerTools/kaniko/pull/1923)
* Bump cloud.google.com/go/storage from 1.19.0 to 1.20.0 [#1924](https://github.com/GoogleContainerTools/kaniko/pull/1924)
* Bump ossf/scorecard-action from 1.0.2 to 1.0.3 [#1926](https://github.com/GoogleContainerTools/kaniko/pull/1926)
* Bump google-github-actions/setup-gcloud from 0.4.0 to 0.5.0 [#1925](https://github.com/GoogleContainerTools/kaniko/pull/1925)
* Bump github/codeql-action from 1.0.30 to 1.0.31 [#1927](https://github.com/GoogleContainerTools/kaniko/pull/1927)
* Vagrantfile should install and configure go (see #1913) [#1914](https://github.com/GoogleContainerTools/kaniko/pull/1914)
* adding ppc64le support for executor and warmer image [#1908](https://github.com/GoogleContainerTools/kaniko/pull/1908)
* Remove deploy/cloudbuild-*.yaml files [#1907](https://github.com/GoogleContainerTools/kaniko/pull/1907)
* Bump go-containerregistry to pick up ACR fix [#1898](https://github.com/GoogleContainerTools/kaniko/pull/1898)
* Bump cloud.google.com/go/storage from 1.18.2 to 1.19.0 [#1903](https://github.com/GoogleContainerTools/kaniko/pull/1903)
* Bump github.com/aws/aws-sdk-go from 1.42.38 to 1.42.44 [#1902](https://github.com/GoogleContainerTools/kaniko/pull/1902)
* Bump ossf/scorecard-action from 5da1b6b2680a229f2e66131f5c6a692bcd80b246 to 1.0.2 [#1899](https://github.com/GoogleContainerTools/kaniko/pull/1899)
* Bump google-github-actions/setup-gcloud from 0.3.0 to 0.4.0 [#1900](https://github.com/GoogleContainerTools/kaniko/pull/1900)
* Bump github/codeql-action from 1.0.26 to 1.0.30 [#1901](https://github.com/GoogleContainerTools/kaniko/pull/1901)
* Enable dependabot for Go and GitHub Actions dependencies [#1884](https://github.com/GoogleContainerTools/kaniko/pull/1884)
* Update readme [#1897](https://github.com/GoogleContainerTools/kaniko/pull/1897)
* Remove k8schain, directly depend on cred helpers [#1891](https://github.com/GoogleContainerTools/kaniko/pull/1891)
* Update golang.org/x/oauth2/google [#1890](https://github.com/GoogleContainerTools/kaniko/pull/1890)
* Bump dependencies [#1885](https://github.com/GoogleContainerTools/kaniko/pull/1885)
* Fix broken anchor link [#1804](https://github.com/GoogleContainerTools/kaniko/pull/1804)
* Bump github.com/docker/docker to latest release [#1866](https://github.com/GoogleContainerTools/kaniko/pull/1866)
* Run GitHub Actions on pushes and PRs to main, not master [#1883](https://github.com/GoogleContainerTools/kaniko/pull/1883)
* Add KANIKO_REGISTRY_MIRROR env var [#1875](https://github.com/GoogleContainerTools/kaniko/pull/1875)
* Bump AWS ecr-login cred helper to v0.5.0 [#1880](https://github.com/GoogleContainerTools/kaniko/pull/1880)
* Pin to more recent version of scorecard [#1878](https://github.com/GoogleContainerTools/kaniko/pull/1878)
* Add ossf/scorecard Github Action to kaniko [#1874](https://github.com/GoogleContainerTools/kaniko/pull/1874)
* Attempt to fix erroneous build cancellation [#1867](https://github.com/GoogleContainerTools/kaniko/pull/1867)
* Add s390x support to docker images [#1749](https://github.com/GoogleContainerTools/kaniko/pull/1749)
* fix: ARG/ENV used in script does not invalidate build cache (#1688) [#1693](https://github.com/GoogleContainerTools/kaniko/pull/1693)
* fix: change the name of the acr cred helper [#1865](https://github.com/GoogleContainerTools/kaniko/pull/1865)
* Fix implicit GCR auth [#1856](https://github.com/GoogleContainerTools/kaniko/pull/1856)
* Log full image ref by digest when pushing an image [#1857](https://github.com/GoogleContainerTools/kaniko/pull/1857)
* Remove GitHub Actions concurrency limits [#1858](https://github.com/GoogleContainerTools/kaniko/pull/1858)
* tar: read directly from stdin [#1728](https://github.com/GoogleContainerTools/kaniko/pull/1728)
* Fix regression: can fetch branches and tags references without specifying commit hashes for private git repository used as context [#1823](https://github.com/GoogleContainerTools/kaniko/pull/1823)
* Use pax tar format [#1809](https://github.com/GoogleContainerTools/kaniko/pull/1809)
* Fix calculating path for copying ownership [#1859](https://github.com/GoogleContainerTools/kaniko/pull/1859)
* Fix copying ownership [#1725](https://github.com/GoogleContainerTools/kaniko/pull/1725)
* Fix typo [#1825](https://github.com/GoogleContainerTools/kaniko/pull/1825)
* Fix possible nil pointer derefence in fs_util.go [#1813](https://github.com/GoogleContainerTools/kaniko/pull/1813)
* include auth for FetchOptions [#1796](https://github.com/GoogleContainerTools/kaniko/pull/1796)
* Update readme insecure flags [#1811](https://github.com/GoogleContainerTools/kaniko/pull/1811)
* Add documentation on pushing to ACR [#1831](https://github.com/GoogleContainerTools/kaniko/pull/1831)
* Fixes #1837 : keep file capabilities on archival [#1838](https://github.com/GoogleContainerTools/kaniko/pull/1838)
* Use setup-gcloud@v0.3.0 instead of @master [#1854](https://github.com/GoogleContainerTools/kaniko/pull/1854)
* Collapse integration test workflows into one config [#1855](https://github.com/GoogleContainerTools/kaniko/pull/1855)
* Share the Go build cache when building in Dockerfiles [#1853](https://github.com/GoogleContainerTools/kaniko/pull/1853)
* Call cosign sign --key [#1849](https://github.com/GoogleContainerTools/kaniko/pull/1849)
* Consolidate PR and real release workflows [#1845](https://github.com/GoogleContainerTools/kaniko/pull/1845)
* Use golang:1.17 and build from reproducible source [#1848](https://github.com/GoogleContainerTools/kaniko/pull/1848)
* Start keyless signing kaniko releases [#1841](https://github.com/GoogleContainerTools/kaniko/pull/1841)
* Attempt to speed up PR image builds by sharing a cache [#1844](https://github.com/GoogleContainerTools/kaniko/pull/1844)
* Sign digests not tags. [#1840](https://github.com/GoogleContainerTools/kaniko/pull/1840)
* Fix the e2e K8s test [#1842](https://github.com/GoogleContainerTools/kaniko/pull/1842)
* Bump the cosign version (a lot) [#1839](https://github.com/GoogleContainerTools/kaniko/pull/1839)
* Revert "Support mirror registries with path component (#1707)" [#1794](https://github.com/GoogleContainerTools/kaniko/pull/1794)
* Fix syntax error in release.yaml [#1800](https://github.com/GoogleContainerTools/kaniko/pull/1800)
Huge thank you for this release towards our contributors:
- Aaruni Aggarwal
- Adrian Newby
- Anbraten
- Andrei Kvapil
- ankitm123
- Benjamin Krenn
- Bernardo Marques
- Dávid Szakállas
- Dawei Ma
- dependabot[bot]
- ejose19
- Eng Zer Jun
- Florian Apolloner
- François JACQUES
- Gabriel Nützi
- Gilbert Gilb's
- Guillaume Calmettes
- Herman
- Jake Sanders
- Janosch Maier
- Jason Hall
- jeunii
- Jose Donizetti
- Kamal Nasser
- Kun Lu
- Lars Seipel
- Liwen Guo
- Matt Moore
- Max Walther
- Mikhail Vasin
- Naveen
- nihilo
- Oliver Gregorius
- Pat Litke
- Patrick Barker
- priyawadhwa
- Rhianna
- Sebastiaan Tammer
- Silvano Cirujano Cuesta
- Tejal Desai
- Travis DePrato
- Wolfgang Walther
- wwade
- Yahav Itzhak
- ygelfand
# v1.7.0 Release 2021-10-19
This is Oct's 2021 release.
## Highights
* In this release, we have kaniko **s390x** platform support for multi-arch image.
* Kaniko **Self Serve** documentation is up to enableuser to build and push kaniko images themselves [here](https://github.com/GoogleContainerTools/kaniko/blob/master/RELEASE.md)
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.7.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.7.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.7.0-slim
```
* git: accept explicit commit hash for git context [#1765](https://github.com/GoogleContainerTools/kaniko/pull/1765)
* Remove tarball.WithCompressedCaching flag to resolve OOM Killed error [#1722](https://github.com/GoogleContainerTools/kaniko/pull/1722)
* disable github action workflow on push to master [#1770](https://github.com/GoogleContainerTools/kaniko/pull/1770)
* Add s390x support to docker images [copy] [#1769](https://github.com/GoogleContainerTools/kaniko/pull/1769)
* Fix typo [#1719](https://github.com/GoogleContainerTools/kaniko/pull/1719)
* Fix composite cache key for multi-stage copy command [#1735](https://github.com/GoogleContainerTools/kaniko/pull/1735)
* chore: add workflows for pr tests [#1766](https://github.com/GoogleContainerTools/kaniko/pull/1766)
* Make /bin/sh available to debug image [#1748](https://github.com/GoogleContainerTools/kaniko/pull/1748)
* Fix executor Dockerfile, which wasn't building [#1741](https://github.com/GoogleContainerTools/kaniko/pull/1741)
* Support force-building metadata layers into snapshot [#1731](https://github.com/GoogleContainerTools/kaniko/pull/1731)
* Add support for CPU variants [#1676](https://github.com/GoogleContainerTools/kaniko/pull/1676)
* refactor: adjust bpfd container runtime detection [#1686](https://github.com/GoogleContainerTools/kaniko/pull/1686)
* Fix snapshotter ignore list; do not attempt to delete whiteouts of ignored paths [#1652](https://github.com/GoogleContainerTools/kaniko/pull/1652)
* Add instructions for using JFrog Artifactory [#1715](https://github.com/GoogleContainerTools/kaniko/pull/1715)
* add SECURITY.md [#1710](https://github.com/GoogleContainerTools/kaniko/pull/1710)
* Support mirror registries with path component [#1707](https://github.com/GoogleContainerTools/kaniko/pull/1707)
* Retry extracting filesystem from image [#1685](https://github.com/GoogleContainerTools/kaniko/pull/1685)
* Bugfix/trailing path separator [#1683](https://github.com/GoogleContainerTools/kaniko/pull/1683)
* docs: add missing cache-copy-layers arg in README [#1672](https://github.com/GoogleContainerTools/kaniko/pull/1672)
* save snaphots to tmp dir [#1662](https://github.com/GoogleContainerTools/kaniko/pull/1662)
* Revert "save snaphots to tmp dir" [#1670](https://github.com/GoogleContainerTools/kaniko/pull/1670)
* Try to warm all images and warn about errors [#1653](https://github.com/GoogleContainerTools/kaniko/pull/1653)
* Exit Code Propagation [#1655](https://github.com/GoogleContainerTools/kaniko/pull/1655)
* Fix changelog headings [#1643](https://github.com/GoogleContainerTools/kaniko/pull/1643)
Huge thank you for this release towards our contributors:
- Anbraten
- Benjamin Krenn
- Gilbert Gilb's
- Jake Sanders
- Janosch Maier
- Jason Hall
- Jose Donizetti
- Kamal Nasser
- Liwen Guo
- Max Walther
- Mikhail Vasin
- Patrick Barker
- Rhianna
- Silvano Cirujano Cuesta
- Tejal Desai
- Yahav Itzhak
- ankitm123
- ejose19
- nihilo
- priyawadhwa
- wwade
# v1.6.0 Release 2021-04-23
This is April's 2021 release.
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.6.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.6.0-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.6.0-slim
```
* Support warming images by digest [#1629](https://github.com/GoogleContainerTools/kaniko/pull/1629)
* Fix resolution of Dockerfile relative dockerignore [#1607](https://github.com/GoogleContainerTools/kaniko/pull/1607)
* create parent directory before writing digest files [#1612](https://github.com/GoogleContainerTools/kaniko/pull/1612)
* adds ignore-path command arguments to executor [#1622](https://github.com/GoogleContainerTools/kaniko/pull/1622)
* Specifying a tarPath will push the image as well [#1597](https://github.com/GoogleContainerTools/kaniko/pull/1597)
Huge thank you for this release towards our contributors:
- Chris Hoffman
- Colin
- Jon Friesen
- Lars Gröber
- Sascha Schwarze
- Tejal Desai
- Viktor Farcic
- Vivek Kumar
- priyawadhwa
# v1.5.2 Release 2021-03-30
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.5.2
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.5.2-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.5.2-slim
```
This release is the first to be signed by [cosign](https://github.com/sigstore/cosign)!
The PEM-encoded public key to validate against the released kaniko images is:
```
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9aAfAcgAxIFMTstJUv8l/AMqnSKw
P+vLu3NnnBDHCfREQpV/AJuiZ1UtgGpFpHlJLCNPmFkzQTnfyN5idzNl6Q==
-----END PUBLIC KEY-----
```
# v1.5.1 Release 2021-02-22
This release is a minor release with following a fix to version number for v1.5.0
The kaniko images now report the right version number.
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.5.1
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.5.1-debug
```
The slim executor images which don't contain any authentication binaries are available at:
```
gcr.io/kaniko-project/executor:slim
gcr.io/kaniko-project/executor:v1.5.1-slim
```
In this release, we have 1 new feature:
* Improve retry behavior for push operation [#1578](https://github.com/GoogleContainerTools/kaniko/pull/1578)
And followinf refactors/updates to documentation
* Added a video introduction to Kaniko [#1517](https://github.com/GoogleContainerTools/kaniko/pull/1517)
* Use up-to-date ca-certificates during build [#1580](https://github.com/GoogleContainerTools/kaniko/pull/1580)
Huge thank you for this release towards our contributors:
- Sascha Schwarze
- Tejal Desai
- Viktor Farcic
# v1.5.0 Release 2021-01-25
This releases publishes multi-arch image kaniko images for following platforms
1. linux/amd64
2. linux/arm64
3. linux/ppc64le
If you want to add other platforms, please talk to @tejal29.
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.5.0
gcr.io/kaniko-project/executor:latest
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:debug
gcr.io/kaniko-project/executor:v1.5.0-debug
```
In this release, we have 2 slim executor images which don't contain any authentication binaries.
1. `gcr.io/kaniko-project/executor:slim` &
2. `gcr.io/kaniko-project/executor:v1.5.0-slim`
## New Features
* Mutli-arch support [#1531](https://github.com/GoogleContainerTools/kaniko/pull/1531), [#1474](https://github.com/GoogleContainerTools/kaniko/pull/1474)
* Add support to fetch a github pull request [#1543](https://github.com/GoogleContainerTools/kaniko/pull/1543)
* Add --image-name-tag-with-digest flag [#1541](https://github.com/GoogleContainerTools/kaniko/pull/1541)
* add caching copy layers back [#1518](https://github.com/GoogleContainerTools/kaniko/pull/1518)
* Profiling for Snapshotting errors. [#1530](https://github.com/GoogleContainerTools/kaniko/pull/1530)
* feat(warmer): Warmer now supports all registry-related flags [#1499](https://github.com/GoogleContainerTools/kaniko/pull/1499)
* feat: Add https tar.gz remote source for context [#1519](https://github.com/GoogleContainerTools/kaniko/pull/1519)
* Add option customPlatform [#1500](https://github.com/GoogleContainerTools/kaniko/pull/1500)
* feat: support multiple registry mirrors with fallback [#1498](https://github.com/GoogleContainerTools/kaniko/pull/1498)
* Add s390x kaniko build to multi-arch list [#1475](https://github.com/GoogleContainerTools/kaniko/pull/1475)
## Bug Fixes
* reject tarball writes with no destinations [#1534](https://github.com/GoogleContainerTools/kaniko/pull/1534)
* Fix travis-ci link [#1535](https://github.com/GoogleContainerTools/kaniko/pull/1535)
* fix: extract file as same user for warmer docker image [#1538](https://github.com/GoogleContainerTools/kaniko/pull/1538)
* fix: update busybox version to fix CVE-2018-1000500 [#1532](https://github.com/GoogleContainerTools/kaniko/pull/1532)
* Fix typo in error message [#1494](https://github.com/GoogleContainerTools/kaniko/pull/1494)
* Fix COPY with --chown command [#1477](https://github.com/GoogleContainerTools/kaniko/pull/1477)
* Remove unused code [#1495](https://github.com/GoogleContainerTools/kaniko/pull/1495)
* Fixes #1469 : Remove file that matches with the directory path [#1478](https://github.com/GoogleContainerTools/kaniko/pull/1478)
* fix: CheckPushPermissions not being called when using --no-push and --cache-repo [#1471](https://github.com/GoogleContainerTools/kaniko/pull/1471)
## Refactors
* Switch to runtime detection via bpfd/proc [#1502](https://github.com/GoogleContainerTools/kaniko/pull/1502)
* Update ggcr to pick up estargz and caching option [#1527](https://github.com/GoogleContainerTools/kaniko/pull/1527)
## Documentation
* Document flags for tarball build only [#1503](https://github.com/GoogleContainerTools/kaniko/pull/1503)
* doc: clarify the format of --registry-mirror [#1504](https://github.com/GoogleContainerTools/kaniko/pull/1504)
* add section to run lints [#1480](https://github.com/GoogleContainerTools/kaniko/pull/1480)
* Add docs for GKE workload identity. [#1476](https://github.com/GoogleContainerTools/kaniko/pull/1476)
Huge thank you for this release towards our contributors:
- Alec Rajeev
- Fabrice
- Josh Chorlton
- Lars
- Lars Toenning
- Matt Moore
- Or Geva
- Severin Strobl
- Shashank
- Sladyn
- Tejal Desai
- Theofilos Papapanagiotou
- Vincent Behar
- Yulia Gaponenko
- ankitm123
- bahetiamit
- ejose19
- mickkael
- zhouhaibing089
# v1.3.0 Release 2020-10-22
This release publishes, multi-arch image kaniko executor images.
Note: The muti-arch images are **only** available for executor images. Contributions Welcome!!
The executor images in this release are:
```
gcr.io/kaniko-project/executor:v1.3.0
gcr.io/kaniko-project/executor:latest
gcr.io/kaniko-project/executor:arm64
gcr.io/kaniko-project/executor:arm64-v1.3.0
gcr.io/kaniko-project/executor:amd64
gcr.io/kaniko-project/executor:amd64-v1.3.0
gcr.io/kaniko-project/executor:multi-arch
gcr.io/kaniko-project/executor:multi-arch-v1.3.0
```
The debug images are available at:
```
gcr.io/kaniko-project/executor:v1.3.0-debug
gcr.io/kaniko-project/executor:debug-v1.3.0 and
gcr.io/kaniko-project/executor:debug
```
## New Features
* Added in docker cred helper for Azure Container Registry sourcing auth tokens directly from environment to debug image [#1458](https://github.com/GoogleContainerTools/kaniko/pull/1458)
* Add multi-arch image via Bazel [#1452](https://github.com/GoogleContainerTools/kaniko/pull/1452)
## Bug Fixes
* Fix docker build tag [#1460](https://github.com/GoogleContainerTools/kaniko/pull/1460)
* Fix .dockerignore for build context copies in later stages [#1447](https://github.com/GoogleContainerTools/kaniko/pull/1447)
* Fix permissions on cache when --no-push is set [#1445](https://github.com/GoogleContainerTools/kaniko/pull/1445)
Huge thank you for this release towards our contributors:
- Akram Ben Aissi
- Alex Szakaly
- Alexander Sharov
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Mellard
- Chris Sng
- Christopher Hlubek
- Cole Wippern
- Dani Raznikov
- Daniel Marks
- David Dooling
- Didier Durand
- DracoBlue
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- Gábor Lipták
- Harmen Stoppels
- Ian Kerins
- James Ravn
- Joe Kutner
- Jon Henrik Bjørnstad
- Jon Johnson
- Jordan GOASDOUE
- Jordan Goasdoue
- Jordan Goasdoué
- Josh Chorlton
- Josh Soref
- Keisuke Umegaki
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Martin Treusch von Buttlar
- Matt Moore
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- Or Sela
- PhoenixMage
- Pierre-Louis Bonicoli
- Renato Suero
- Sam Stoelinga
- Shihab Hasan
- Sladyn
- Takumasa Sakao
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Tinjo Schöni
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- aca
- cvgw
- ejose19
- ohchang-kwon
- priyawadhwa
- tinkerborg
- tsufeki
- xanonid
- yw-liu
- 好风
# v1.2.0 Release 2020-09-30
This is 27th release of Kaniko!
In this release, Copy layers are not cached there by making builds faster!!
* Stop caching COPY layers [#1408](https://github.com/GoogleContainerTools/kaniko/pull/1408)
Huge thank you for this release towards our contributors:
- Ian Kerins
# v1.1.0 Release 2020-09-30
This is the 26th release of Kaniko!
## New Features
* Add support for Vagrant [#1428](https://github.com/GoogleContainerTools/kaniko/pull/1428)
* Allow DOCKER_CONFIG to be a filename [#1409](https://github.com/GoogleContainerTools/kaniko/pull/1409)
## Bug Fixes
* Fix docker-credential-gcr helper being called for multiple registries [#1439](https://github.com/GoogleContainerTools/kaniko/pull/1439)
* Fix docker-credential-gcr not configured across regions[#1417](https://github.com/GoogleContainerTools/kaniko/pull/1417)
## Updates and Refactors
* add tests for configuring docker credentials across regions. [#1426](https://github.com/GoogleContainerTools/kaniko/pull/1426)
## Documentation
* Update README.md [#1437](https://github.com/GoogleContainerTools/kaniko/pull/1437)
* spelling: storage [#1425](https://github.com/GoogleContainerTools/kaniko/pull/1425)
* Readme.md : Kaniko -> kaniko [#1435](https://github.com/GoogleContainerTools/kaniko/pull/1435)
* initial release instructions [#1419](https://github.com/GoogleContainerTools/kaniko/pull/1419)
* Improve --use-new-run help text, update README with missing flags [#1405](https://github.com/GoogleContainerTools/kaniko/pull/1405)
* Add func to append to ignorelist [#1397](https://github.com/GoogleContainerTools/kaniko/pull/1397)
* Update README.md re: layer cache behavior [#1394](https://github.com/GoogleContainerTools/kaniko/pull/1394)
* Fix links on README [#1398](https://github.com/GoogleContainerTools/kaniko/pull/1398)
Huge thank you for this release towards our contributors:
- aca
- Akram Ben Aissi
- Alexander Sharov
- Alex Szakaly
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Sng
- Christopher Hlubek
- Cole Wippern
- cvgw
- Daniel Marks
- Dani Raznikov
- David Dooling
- Didier Durand
- DracoBlue
- Gábor Lipták
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- Harmen Stoppels
- Ian Kerins
- James Ravn
- Joe Kutner
- Jon Henrik Bjørnstad
- Jon Johnson
- Jordan Goasdoue
- Jordan GOASDOUE
- Jordan Goasdoué
- Josh Chorlton
- Josh Soref
- Keisuke Umegaki
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Martin Treusch von Buttlar
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- ohchang-kwon
- Or Sela
- PhoenixMage
- Pierre-Louis Bonicoli
- priyawadhwa
- Renato Suero
- Sam Stoelinga
- Shihab Hasan
- Takumasa Sakao
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- tinkerborg
- Tom Prince
- tsufeki
- Vincent Latombe
- Wietse Muizelaar
- xanonid
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- yw-liu
- 好风
# v1.0.0 Release 2020-08-17
This is the 25th release of Kaniko!
## New Features
* Specify advance options for git checkout branch. [#1322](https://github.com/GoogleContainerTools/kaniko/pull/1322)
* To specify a branch, use `--git=branch=branchName`
* To specify an option to checkout a single branch, use `--git=single-branch=true`
* To change submodule recursions behavior while cloning, use `--git=recurse-submodules=true`
* Checkout a specific git commit [#1153](https://github.com/GoogleContainerTools/kaniko/pull/1153)
* Add ability to specify GIT_TOKEN for git source repository. [#1318](https://github.com/GoogleContainerTools/kaniko/pull/1318)
* The experimental `--use-new-run` flag avoid relying on timestamp. [#1383](https://github.com/GoogleContainerTools/kaniko/pull/1383)
## Bug Fixes
* Set correct PATH for exec form [#1342](https://github.com/GoogleContainerTools/kaniko/pull/1342)
* executor image: fix USER environment variable [#1364](https://github.com/GoogleContainerTools/kaniko/pull/1364)
* fix use new run marker [#1379](https://github.com/GoogleContainerTools/kaniko/pull/1379)
* Use current platform when fetching image in warmer [#1374](https://github.com/GoogleContainerTools/kaniko/pull/1374)
* Bump version number mismatch [#1338](https://github.com/GoogleContainerTools/kaniko/pull/1338)
* Bugfix: Reproducible layers with whiteout [#1350](https://github.com/GoogleContainerTools/kaniko/pull/1350)
* prepend image name when using `registry-mirror` so `library/` is inferred [#1264](https://github.com/GoogleContainerTools/kaniko/pull/1264)
* Add command should fail on 40x when fetching remote file [#1326](https://github.com/GoogleContainerTools/kaniko/pull/1326)
## Refactors & Updates
* bump go-containerregistry dep [#1371](https://github.com/GoogleContainerTools/kaniko/pull/1371)
* feat: upgrade go-git [#1319](https://github.com/GoogleContainerTools/kaniko/pull/1319)
* Move snapshotPathPrefix into a method [#1359](https://github.com/GoogleContainerTools/kaniko/pull/1359)
## Documentation
* Added instructions to use gcr without kubernetes [#1385](https://github.com/GoogleContainerTools/kaniko/pull/1385)
* Format json & yaml in README [#1358](https://github.com/GoogleContainerTools/kaniko/pull/1358)
Huge thank you for this release towards our contributors:
- Alex Szakaly
- Alexander Sharov
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Sng
- Christopher Hlubek
- Cole Wippern
- Dani Raznikov
- Daniel Marks
- David Dooling
- DracoBlue
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- Gábor Lipták
- Harmen Stoppels
- James Ravn
- Joe Kutner
- Jon Henrik Bjørnstad
- Jon Johnson
- Jordan GOASDOUE
- Jordan Goasdoue
- Jordan Goasdoué
- Josh Chorlton
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- Or Sela
- PhoenixMage
- Pierre-Louis Bonicoli
- Renato Suero
- Sam Stoelinga
- Shihab Hasan
- Takumasa Sakao
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- aca
- cvgw
- ohchang-kwon
- priyawadhwa
- tinkerborg
- tsufeki
- xanonid
- yw-liu
# v0.24.0 Release 2020-07-01
This is the 24th release of Kaniko!
## New Features
* Add a new run command along with a new flag [#1300](https://github.com/GoogleContainerTools/kaniko/pull/1300)
* Add redo snapshotter. [#1301](https://github.com/GoogleContainerTools/kaniko/pull/1301)
* Add pkg.dev to automagic config file population [#1328](https://github.com/GoogleContainerTools/kaniko/pull/1328)
* kaniko now clone git repositories recursing submodules by default [#1320](https://github.com/GoogleContainerTools/kaniko/pull/1320)
## Bug Fixes
* Fix README.md [#1323](https://github.com/GoogleContainerTools/kaniko/pull/1323)
* Fix docker-credential-gcr owner and group id [#1307](https://github.com/GoogleContainerTools/kaniko/pull/1307)
## Refactors
* check file changed in loop [#1302](https://github.com/GoogleContainerTools/kaniko/pull/1302)
* ADD GCB benchmark code [#1299](https://github.com/GoogleContainerTools/kaniko/pull/1299)
* benchmark FileSystem snapshot project added [#1288](https://github.com/GoogleContainerTools/kaniko/pull/1288)
* [Perf] Reduce loops over files when taking FS snapshot. [#1283](https://github.com/GoogleContainerTools/kaniko/pull/1283)
* Fix README.md [#1323](https://github.com/GoogleContainerTools/kaniko/pull/1323)
* Fix docker-credential-gcr owner and group id [#1307](https://github.com/GoogleContainerTools/kaniko/pull/1307)
* benchmark FileSystem snapshot project added [#1288](https://github.com/GoogleContainerTools/kaniko/pull/1288)
* [Perf] Reduce loops over files when taking FS snapshot. [#1283](https://github.com/GoogleContainerTools/kaniko/pull/1283)
Huge thank you for this release towards our contributors:
- Alexander Sharov
- Alex Szakaly
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Sng
- Cole Wippern
- cvgw
- Daniel Marks
- Dani Raznikov
- David Dooling
- DracoBlue
- Gábor Lipták
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- James Ravn
- Jon Henrik Bjørnstad
- Jon Johnson
- Jordan Goasdoué
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- ohchang-kwon
- Or Sela
- PhoenixMage
- priyawadhwa
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- tinkerborg
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- xanonid
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- yw-liu
# v0.23.0 Release 2020-06-04
This is the 23rd release of Kaniko!
## Bug Fixes
* Resolving nested meta ARGs [#1260](https://github.com/GoogleContainerTools/kaniko/pull/1260)
* add 64 busybox [#1254](https://github.com/GoogleContainerTools/kaniko/pull/1254)
* Apply dockefile exclude only for first stage [#1234](https://github.com/GoogleContainerTools/kaniko/pull/1234)
## New Features
* Add /etc/nsswitch.conf for /etc/hosts name resolution [#1251](https://github.com/GoogleContainerTools/kaniko/pull/1251)
* Add ability to set git auth token using environment variables [#1263](https://github.com/GoogleContainerTools/kaniko/pull/1263)
* Add retries to image push. [#1258](https://github.com/GoogleContainerTools/kaniko/pull/1258)
* Update docker-credential-gcr to support auth with GCP Artifact Registry [#1255](https://github.com/GoogleContainerTools/kaniko/pull/1255)
## Updates and Refactors
* Added integration test for multi level argument [#1285](https://github.com/GoogleContainerTools/kaniko/pull/1285)
* rename whitelist to ignorelist [#1295](https://github.com/GoogleContainerTools/kaniko/pull/1295)
* Remove direct use of DefaultTransport [#1221](https://github.com/GoogleContainerTools/kaniko/pull/1221)
* fix switching to non existent workdir [#1253](https://github.com/GoogleContainerTools/kaniko/pull/1253)
* remove duplicates save for the same dir [#1252](https://github.com/GoogleContainerTools/kaniko/pull/1252)
* add timings for resolving paths [#1284](https://github.com/GoogleContainerTools/kaniko/pull/1284)
## Documentation
* Instructions for using stdin with kubectl [#1289](https://github.com/GoogleContainerTools/kaniko/pull/1289)
* Add GoReportCard badge to README [#1249](https://github.com/GoogleContainerTools/kaniko/pull/1249)
* Make support clause more bold. [#1273](https://github.com/GoogleContainerTools/kaniko/pull/1273)
* Correct typo [#1250](https://github.com/GoogleContainerTools/kaniko/pull/1250)
* docs: add registry-certificate flag to readme [#1276](https://github.com/GoogleContainerTools/kaniko/pull/1276)
Huge thank you for this release towards our contributors:
- Anthony Davies
- Art Begolli
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Chris Sng
- Cole Wippern
- Dani Raznikov
- Daniel Marks
- David Dooling
- DracoBlue
- Gabriel Virga
- Gilbert Gilb's
- Giovan Isa Musthofa
- Gábor Lipták
- James Ravn
- Jon Henrik Bjørnstad
- Jordan GOASDOUE
- Liubov Grinkevich
- Logan.Price
- Lukasz Jakimczuk
- Mehdi Abaakouk
- Michel Hollands
- Mitchell Friedman
- Moritz Wanzenböck
- Or Sela
- PhoenixMage
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- Yoan Blanc
- Yoriyasu Yano
- Yuheng Zhang
- cvgw
- ohchang-kwon
- tinkerborg
- xanonid
- yw-liu
# v0.22.0 Release 2020-05-07
This is a minor release of kaniko fixing:
- GCB Authentication issue
[1242](https://github.com/GoogleContainerTools/kaniko/issues/1242)
- Re-added files if removed from base imaged [1236](https://github.com/GoogleContainerTools/kaniko/issues/1236)
Big thanks to
- David Dooling
# v0.21.0 Release - 2020-05-04
This is the 21th release of Kaniko! Thank you for patience.
This is minor release which fixes the `/kaniko/.docker` being removed in executor image
* Fixes #1227 - Readded the `/kaniko/.docker` directory [#1230](https://github.com/GoogleContainerTools/kaniko/pull/1230)
# v0.20.0 Release - 2020-05-04
This is the 20th release of Kaniko! Thank you for patience.
Please give us feedback on how we are doing by taking a short [5 question survey](https://forms.gle/HhZGEM33x4FUz9Qa6)
In this release, the highlights are:
1. Fix doubling cache layers size and error due to duplicate files in cached layers
1. Kaniko now supports reading a tar context from a stdin using `--context=tar:/.
1. Kaniko adds a new flag `--context-sub-path` to represent a subpath within the given context
1. Skip buiklding unused stages using `--skip-unused-stages` flags.
## Bug Fixes
* Snapshot FS on first cache miss. [#1214](https://github.com/GoogleContainerTools/kaniko/pull/1214)
* Add secondary group impersonation w/ !cgo support [#1164](https://github.com/GoogleContainerTools/kaniko/pull/1164)
* kaniko generates images that docker supports in the presence of dangling symlinks [#1193](https://github.com/GoogleContainerTools/kaniko/pull/1193)
* Handle `MAINTAINERS` when passing `--single-snapshot`. [#1192](https://github.com/GoogleContainerTools/kaniko/pull/1192)
* Multistage ONBUILD COPY Support [#1190](https://github.com/GoogleContainerTools/kaniko/pull/1190)
* fix previous name checking in 'executor.build.fetchExtraStages' [#1167](https://github.com/GoogleContainerTools/kaniko/pull/1167)
* Always add parent directories of files to snapshots. [#1166](https://github.com/GoogleContainerTools/kaniko/pull/1166)
* Fix `workdir` command pointing to relative dir in first command.
* fix stages are now resolved correctly when `--skip-unused-stages` is used
## New Features
* Add ability to use public GCR repos without being authenticated [#1140](https://github.com/GoogleContainerTools/kaniko/pull/1140)
* Add timestamp to logs [#1211](https://github.com/GoogleContainerTools/kaniko/pull/1211)
* Add http support for git repository context [#1196](https://github.com/GoogleContainerTools/kaniko/pull/1196)
* Kaniko now resolves args from all stages [#1160](https://github.com/GoogleContainerTools/kaniko/pull/1160)
* kaniko adds a new flag `--context-sub-path` to represent a subpath within the given context
* feat: allow injecting through stdin tar.gz on kaniko [#1139](https://github.com/GoogleContainerTools/kaniko/pull/1139)
* Set image platform for any build [#1130](https://github.com/GoogleContainerTools/kaniko/pull/1130)
* Add --log-format parameter to README.md [#1216](https://github.com/GoogleContainerTools/kaniko/pull/1216)
* feat: multistages now respect dependencies without building unnecessary stages [#1165](https://github.com/GoogleContainerTools/kaniko/pull/1165)
## Refactors and Updates
* Refactor Kaniko to test across multistages [#1155](https://github.com/GoogleContainerTools/kaniko/pull/1155)
* upgrade go container registry to latest master [#1146](https://github.com/GoogleContainerTools/kaniko/pull/1146)
* small perf optimizing. Only remove whiteout path if it needs to be included in base image [#1147](https://github.com/GoogleContainerTools/kaniko/pull/1147)
* Don't generate cache key, if not caching builds. [#1194](https://github.com/GoogleContainerTools/kaniko/pull/1194)
* Set very large logs to Trace level [#1203](https://github.com/GoogleContainerTools/kaniko/pull/1203)
* optimize: don't parse Dockerfile twice, reusing stages [#1174](https://github.com/GoogleContainerTools/kaniko/pull/1174)
* 32bit overflow fix [#1168](https://github.com/GoogleContainerTools/kaniko/pull/1168)
## Documentation
* Update Pushing to Docker Hub to use v2 api [#1204](https://github.com/GoogleContainerTools/kaniko/pull/1204)
* Fix line endings in shell script [#1199](https://github.com/GoogleContainerTools/kaniko/pull/1199)
Huge thank you for this release towards our contributors:
- Anthony Davies
- Batuhan Apaydın
- Ben Einaudi
- Carlos Alexandro Becker
- Carlos Sanchez
- Cole Wippern
- cvgw
- Dani Raznikov
- DracoBlue
- Gilbert Gilb's
- Giovan Isa Musthofa
- James Ravn
- Jon Henrik Bjørnstad
- Jordan GOASDOUE
- Jordan Goasdoué
- Liubov Grinkevich
- Logan.Price
- Michel Hollands
- Moritz Wanzenböck
- ohchang-kwon
- Or Sela
- PhoenixMage
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Thomas Stromberg
- Thomas Strömberg
- tinkerborg
- Tom Prince
- Vincent Latombe
- Wietse Muizelaar
- xanonid
- Yoan Blanc
- Yuheng Zhang
- yw-liu
# v0.19.0 Release - 2020-03-18
This is the 19th release of Kaniko!
In this release, the highlights are:
1. Cache layer size duplication regression in v0.18.0 is fixed. [#1138](https://github.com/GoogleContainerTools/kaniko/issues/1138)
1. Cache performance when using build-args. `build-args` are only part of cache key for a layer if it is used.
1. Kaniko can support a `tar.gz` context with `tar://` prefix.
1. Users can provide registry certificates for private registries.
## Bug Fixes
* Use the correct name for acr helper [#1121](https://github.com/GoogleContainerTools/kaniko/pull/1121)
* remove build args from composite key and replace all build args [#1085](https://github.com/GoogleContainerTools/kaniko/pull/1085)
* fix resolve link for dirs with trailing / [#1113](https://github.com/GoogleContainerTools/kaniko/pull/1113)
## New Features
* feat: add support of local '.tar.gz' file inside the kaniko container [#1115](https://github.com/GoogleContainerTools/kaniko/pull/1115)
* Add support to `--chown` flag to ADD command (Issue #57) [#1134](https://github.com/GoogleContainerTools/kaniko/pull/1134)
* executor: add --label flag [#1075](https://github.com/GoogleContainerTools/kaniko/pull/1075)
* Allow user to provide registry certificate [#1037](https://github.com/GoogleContainerTools/kaniko/pull/1037)
## Refactors And Updates
* Migrate to golang 1.14 [#1098](https://github.com/GoogleContainerTools/kaniko/pull/1098)
* Make cloudbuild.yaml re-usable for anyone [#1135](https://github.com/GoogleContainerTools/kaniko/pull/1135)
* fix: credential typo [#1128](https://github.com/GoogleContainerTools/kaniko/pull/1128)
* Travis k8s integration test [#1124](https://github.com/GoogleContainerTools/kaniko/pull/1124)
* Add more tests for Copy and some fixes. [#1114](https://github.com/GoogleContainerTools/kaniko/pull/1114)
## Documentation
* Update README on running in Docker [#1141](https://github.com/GoogleContainerTools/kaniko/pull/1141)
Huge thank you for this release towards our contributors:
- Anthony Davies
- Batuhan Apaydın
- Ben Einaudi
- Carlos Sanchez
- Cole Wippern
- cvgw
- Dani Raznikov
- DracoBlue
- James Ravn
- Jordan GOASDOUE
- Logan.Price
- Moritz Wanzenböck
- ohchang-kwon
- Or Sela
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Thomas Strömberg
- tinkerborg
- Wietse Muizelaar
- xanonid
- Yoan Blanc
- Yuheng Zhang
# v0.18.0 Release -2020-03-05
This release fixes all the regression bugs associated with v0.17.0 and v0.17.1.
This release, the team did a lot of work improving our test infrastructure, more tests cases
and refactored filesystem walking.
Thank you all for your patience and supporting us throughout!
## Bug Fixes
* fix home being reset to root [#1072](https://github.com/GoogleContainerTools/kaniko/pull/1072)
* fix user metadata set to USER:GROUP if group string is not set [#1105](https://github.com/GoogleContainerTools/kaniko/pull/1105)
* check for filepath.Walk error everywhere [#1086](https://github.com/GoogleContainerTools/kaniko/pull/1086)
* fix #1092 TestRelativePaths [#1093](https://github.com/GoogleContainerTools/kaniko/pull/1093)
* Resolve filepaths before scanning for changes [#1069](https://github.com/GoogleContainerTools/kaniko/pull/1069)
* Fix #1020 os.Chtimes invalid arg [#1074](https://github.com/GoogleContainerTools/kaniko/pull/1074)
* Fix #1067 - image no longer available [#1068](https://github.com/GoogleContainerTools/kaniko/pull/1068)
* Ensure image SHA stays consistent when layer contents haven't changed [#1032](https://github.com/GoogleContainerTools/kaniko/pull/1032)
* fix flake TestRun/Dockerfile_test_copy_symlink [#1030](https://github.com/GoogleContainerTools/kaniko/pull/1030)
## New Features
* root: add --registry-mirror flag [#836](https://github.com/GoogleContainerTools/kaniko/pull/836)
* set log format using a flag [#1031](https://github.com/GoogleContainerTools/kaniko/pull/1031)
* Do not recompute layers retrieved from cache [#882](https://github.com/GoogleContainerTools/kaniko/pull/882)
* More idiomatic logging config [#1040](https://github.com/GoogleContainerTools/kaniko/pull/1040)
## Test Refactors and Updates
* Split travis integration tests [#1090](https://github.com/GoogleContainerTools/kaniko/pull/1090)
* Add integration tests from Issues [#1054](https://github.com/GoogleContainerTools/kaniko/pull/1054)
* add integration tests with their own context [#1088](https://github.com/GoogleContainerTools/kaniko/pull/1088)
* Fixed typo in README.md [#1060](https://github.com/GoogleContainerTools/kaniko/pull/1060)
* test: refactor container-diff call [#1077](https://github.com/GoogleContainerTools/kaniko/pull/1077)
* Refactor integration image built [#1049](https://github.com/GoogleContainerTools/kaniko/pull/1049)
* separate travis into multiple jobs for parallelization [#1055](https://github.com/GoogleContainerTools/kaniko/pull/1055)
* refactor copy.chown code and add more tests [#1027](https://github.com/GoogleContainerTools/kaniko/pull/1027)
* Allow contributors to launch integration tests against local registry [#1014](https://github.com/GoogleContainerTools/kaniko/pull/1014)
## Documentation
* add design proposal template [#1046](https://github.com/GoogleContainerTools/kaniko/pull/1046)
* Update filesystem proposal status to Reviewed [#1066](https://github.com/GoogleContainerTools/kaniko/pull/1066)
* update instructions for running integration tests [#1034](https://github.com/GoogleContainerTools/kaniko/pull/1034)
* design proposal 01: filesystem resolution [#1048](https://github.com/GoogleContainerTools/kaniko/pull/1048)
* Document that this tool is not officially supported by Google [#1044](https://github.com/GoogleContainerTools/kaniko/pull/1044)
* Fix example pod.yml to not mount to root [#1043](https://github.com/GoogleContainerTools/kaniko/pull/1043)
* fixing docker run command in README.md [#1103](https://github.com/GoogleContainerTools/kaniko/pull/1103)
Huge thank you for this release towards our contributors:
- Anthony Davies
- Batuhan Apaydın
- Ben Einaudi
- Cole Wippern
- cvgw
- DracoBlue
- James Ravn
- Logan.Price
- Moritz Wanzenböck
- ohchang-kwon
- Or Sela
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Thomas Strömberg
- tinkerborg
- Wietse Muizelaar
- xanonid
- Yoan Blanc
# v0.17.1 Release - 2020-02-04
This is minor patch release to fix [#1002](https://github.com/GoogleContainerTools/kaniko/issues/1002)
# v0.17.0 Release - 2020-02-03
## New Features
* Expand build argument from environment when no value specified [#993](https://github.com/GoogleContainerTools/kaniko/pull/993)
* whitelist /tmp/apt-key-gpghome.* directory [#1000](https://github.com/GoogleContainerTools/kaniko/pull/1000)
* Add flag to `--whitelist-var-run` set to true to preserver default kani… [#1011](https://github.com/GoogleContainerTools/kaniko/pull/1011)
* Prefer platform that is currently running for pulling remote images and kaniko binary Makefile target [#980](https://github.com/GoogleContainerTools/kaniko/pull/980)
## Bug Fixes
* Fix caching to respect .dockerignore [#854](https://github.com/GoogleContainerTools/kaniko/pull/854)
* Fixes #988 run_in_docker.sh only works with gcr.io [#990](https://github.com/GoogleContainerTools/kaniko/pull/990)
* Fix Symlinks not being copied across stages [#971](https://github.com/GoogleContainerTools/kaniko/pull/971)
* Fix home and group set for user command [#995](https://github.com/GoogleContainerTools/kaniko/pull/995)
* Fix COPY or ADD to symlink destination breaks image [#943](https://github.com/GoogleContainerTools/kaniko/pull/943)
* [Caching] Fix bug with deleted files and cached run and copy commands
* [Mutistage Build] Fix bug with capital letter in stage names [#983](https://github.com/GoogleContainerTools/kaniko/pull/983)
* Fix #940 set modtime when extracting [#981](https://github.com/GoogleContainerTools/kaniko/pull/981)
* Fix Ability for ADD to unTar a file [#792](https://github.com/GoogleContainerTools/kaniko/pull/792)
## Updates and Refactors
* fix test flake [#1016](https://github.com/GoogleContainerTools/kaniko/pull/1016)
* Upgrade go-containerregistry third-party library [#957](https://github.com/GoogleContainerTools/kaniko/pull/957)
* Remove debug tag being built for every push to master [#1004](https://github.com/GoogleContainerTools/kaniko/pull/1004)
* Run integration tests in Travis CI [#979](https://github.com/GoogleContainerTools/kaniko/pull/979)
Huge thank you for this release towards our contributors:
- Anthony Davies
- Ben Einaudi
- Cole Wippern
- cvgw
- Logan.Price
- Moritz Wanzenböck
- ohchang-kwon
- Sam Stoelinga
- Tejal Desai
- Thomas Bonfort
- Wietse Muizelaar
# v0.16.0 Release - 2020-01-17
Happy New Year 2020!
## Bug Fixes
* Support for private registries in the cache warmer [#941](https://github.com/GoogleContainerTools/kaniko/pull/941)
* Fix bug with docker compatibility ArgsEscaped [#964](https://github.com/GoogleContainerTools/kaniko/pull/964)
* Clean code (Condition is always 'false' because 'err' is always 'nil' ). [#967](https://github.com/GoogleContainerTools/kaniko/pull/967)
* Fix #647 Copy dir permissions [#961](https://github.com/GoogleContainerTools/kaniko/pull/961)
* Allow setting serviceAccount in integration test [#965](https://github.com/GoogleContainerTools/kaniko/pull/965)
* Fix #926 cache warmer and method signature [#927](https://github.com/GoogleContainerTools/kaniko/pull/927)
* Fix #948 update valid license years [#949](https://github.com/GoogleContainerTools/kaniko/pull/949)
* Move hash bang to first line. [#954](https://github.com/GoogleContainerTools/kaniko/pull/954)
* Fix #944 include docker-credential-acr-linux [#945](https://github.com/GoogleContainerTools/kaniko/pull/945)
* Fix #925 broken insecure pull [#932](https://github.com/GoogleContainerTools/kaniko/pull/932)
* Push to ECR using instance roles [#930](https://github.com/GoogleContainerTools/kaniko/pull/930)
* Upgrade aws go sdk for supporting eks oidc credential chain [#832](https://github.com/GoogleContainerTools/kaniko/pull/832)
* Push image [#866](https://github.com/GoogleContainerTools/kaniko/pull/866)
## Updates and Refactors
* Fixes #950 integration test failing on go 1.13 [#955](https://github.com/GoogleContainerTools/kaniko/pull/955)
* Tidy dependencies [#939](https://github.com/GoogleContainerTools/kaniko/pull/939)
* changing to modules from dependencies [#869](https://github.com/GoogleContainerTools/kaniko/pull/869)
* Changing Log to trace [#920](https://github.com/GoogleContainerTools/kaniko/pull/920)
## Documentation
* docs: fix document on DoBuild [#668](https://github.com/GoogleContainerTools/kaniko/pull/668)
* Update outdated toc in README.md [#867](https://github.com/GoogleContainerTools/kaniko/pull/867)
Huge thank you for this release towards our contributors:
- Adrian Mouat
- Balint Pato
- Ben Einaudi
- Benjamin EINAUDI
- Carlos Sanchez
- Cole Wippern
- Daniel Strobusch
- Eduard Laur
- Fahri Yardımcı
- Josh Soref
- lou-lan
- Nao YONASHIRO
- poy
- Prashant Arya
- priyawadhwa
- Pweetoo
- Remko van Hunen
- Sam Stoelinga
- Stijn De Haes
- Tejal Desai
- tommaso.doninelli
- Will Ripley
# v0.15.0 Release - 2019-12-20
## Bug fixes
* Fix #899 cached copy results in inconsistent key [#914](https://github.com/GoogleContainerTools/kaniko/pull/914)
* Fix contribution issue sentence [#912](https://github.com/GoogleContainerTools/kaniko/pull/912)
* Include source stage cache key in cache key for COPY commands using --from [#883](https://github.com/GoogleContainerTools/kaniko/pull/883)
* Fix failure when using capital letters in image alias in 'FROM ... AS…' instruction [#839](https://github.com/GoogleContainerTools/kaniko/pull/839)
* Add golangci.yaml file matching current config [#893](https://github.com/GoogleContainerTools/kaniko/pull/893)
* when copying, skip files with the same name [#905](https://github.com/GoogleContainerTools/kaniko/pull/905)
* Modified error message for writing image with digest file [#849](https://github.com/GoogleContainerTools/kaniko/pull/849)
* Don't exit optimize early; record last cachekey [#892](https://github.com/GoogleContainerTools/kaniko/pull/892)
* Final cachekey for stage [#891](https://github.com/GoogleContainerTools/kaniko/pull/891)
* Update error handling and logging for cache [#879](https://github.com/GoogleContainerTools/kaniko/pull/879)
* Resolve symlink targets to abs path before copying [#857](https://github.com/GoogleContainerTools/kaniko/pull/857)
* Fix quote strip behavior for ARG values [#850](https://github.com/GoogleContainerTools/kaniko/pull/850)
## Updates and Refactors
* add unit tests for caching run and copy [#888](https://github.com/GoogleContainerTools/kaniko/pull/888)
* Only build required docker images for integration tests [#898](https://github.com/GoogleContainerTools/kaniko/pull/898)
* Add integration test for add url with arg [#863](https://github.com/GoogleContainerTools/kaniko/pull/863)
* Add unit tests for compositecache and stagebuilder [#890](https://github.com/GoogleContainerTools/kaniko/pull/890)
## Documentation
* updated readme [#906](https://github.com/GoogleContainerTools/kaniko/pull/906)
* nits in README [#861](https://github.com/GoogleContainerTools/kaniko/pull/861)
* Invalid link to missing file config.json [#876](https://github.com/GoogleContainerTools/kaniko/pull/876)
* Fix README.md anchor links [#872](https://github.com/GoogleContainerTools/kaniko/pull/872)
* Update readme known issues [#874](https://github.com/GoogleContainerTools/kaniko/pull/874)
Huge thank you for this release towards our contributors:
- Balint Pato
- Ben Einaudi
- Cole Wippern
- Eduard Laur
- Josh Soref
- Pweetoo
- Tejal Desai
- Will Ripley
- poy
- priyawadhwa
- tommaso.doninelli
# v0.14.0 Release - 2019-11-08
## New Features
* Added --image-name-with-digest flag [#841](https://github.com/GoogleContainerTools/kaniko/pull/841)
* Add support to download context file from Azure Blob Storage [#816](https://github.com/GoogleContainerTools/kaniko/pull/816)
* Add BUILD_ARGs to ease use of proxy [#810](https://github.com/GoogleContainerTools/kaniko/pull/810)
## Bug Fixes
* fix tests for default home [#824](https://github.com/GoogleContainerTools/kaniko/pull/824)
* Issue #439 Strip out double quotes in ARG value [#834](https://github.com/GoogleContainerTools/kaniko/pull/834)
* Fixes caching with COPY command [#773](https://github.com/GoogleContainerTools/kaniko/pull/773)
* 828: clean up docker doc, fix context var in run cmd [#829](https://github.com/GoogleContainerTools/kaniko/pull/829)
* fix build_args in MakeFile, have Travis run make images to preven issue in future [#821](https://github.com/GoogleContainerTools/kaniko/pull/821)
## Updates and Refactors
* changing debug to trace [#825](https://github.com/GoogleContainerTools/kaniko/pull/825)
## Documentation
* Details about --tarPath usage improved [#811](https://github.com/GoogleContainerTools/kaniko/pull/811)
# v0.13.0 Release - 2019-10-04
## New Features
* Add `kaniko version` command [#796](https://github.com/GoogleContainerTools/kaniko/pull/796)
* Write data about pushed images for GCB kaniko build step if env var `BUILDER_OUTPUT` is set [#602](https://github.com/GoogleContainerTools/kaniko/pull/602)
* Support `Dockerfile.dockerignore` relative to `Dockerfile` [#801](https://github.com/GoogleContainerTools/kaniko/pull/801)
## Bug Fixes
* fix creating abs path for urls [#804](https://github.com/GoogleContainerTools/kaniko/pull/804)
* Fix #691 - ADD does not understand ENV variables [#768](https://github.com/GoogleContainerTools/kaniko/pull/768)
* Resolve relative paths to absolute paths in command line arguments [#736](https://github.com/GoogleContainerTools/kaniko/pull/736)
* insecure flag is now honored with `--cache` flag. [#685](https://github.com/GoogleContainerTools/kaniko/pull/685)
* Reduce log level for adding file message [#624](https://github.com/GoogleContainerTools/kaniko/pull/624)
* Fix SIGSEGV on file system deletion while building [#765](https://github.com/GoogleContainerTools/kaniko/pull/765)
## Updates and Refactors
* add debug level info what is the layer type [#805](https://github.com/GoogleContainerTools/kaniko/pull/805)
* Update base image to golang:1.12 [#648](https://github.com/GoogleContainerTools/kaniko/pull/648)
* Add some triage notes to issue template. [#794](https://github.com/GoogleContainerTools/kaniko/pull/794)
* double help text about skip-verify-tls [#782](https://github.com/GoogleContainerTools/kaniko/pull/782)
* Add a pull request template [#795](https://github.com/GoogleContainerTools/kaniko/pull/795)
* Correct CheckPushPermission comment. [#671](https://github.com/GoogleContainerTools/kaniko/pull/671)
## Documentation
* Use kaniko with docker config.json password [#129](https://github.com/GoogleContainerTools/kaniko/pull/129)
* Add getting started tutorial [#790](https://github.com/GoogleContainerTools/kaniko/pull/790)
## Performance
* feat: optimize build [#694](https://github.com/GoogleContainerTools/kaniko/pull/694)
Huge thank you for this release towards our contributors:
- alexa
- Andreas Bergmeier
- Carlos Alexandro Becker
- Carlos Sanchez
- chhsia0
- debuggy
- Deniz Zoeteman
- Don McCasland
- Fred Cox
- Herrmann Hinz
- Hugues Alary
- Jason Hall
- Johannes 'fish' Ziemke
- jonjohnsonjr
- Luke Wood
- Matthew Dawson
- Mingliang Tao
- Monard Vong
- Nao YONASHIRO
- Niels Denissen
- Prashant
- priyawadhwa
- Priya Wadhwa
- Sascha Askani
- sharifelgamal
- Sharif Elgamal
- Takeaki Matsumoto
- Taylor Barrella
- Tejal Desai
- Thao-Nguyen Do
- tralexa
- Victor Noel
- v.rul
- Warren Seymour
- xanonid
- Xueshan Feng
- Антон Костенко
- Роман Небалуев
# v0.12.0 Release - 2019-09/13
## New Features
* Added `--oci-layout-path` flag to save image in OCI layout. [#744](https://github.com/GoogleContainerTools/kaniko/pull/744)
* Add support for S3 custom endpoint [#698](https://github.com/GoogleContainerTools/kaniko/pull/698)
## Bug Fixes
* Setting PATH [#760](https://github.com/GoogleContainerTools/kaniko/pull/760)
* Remove leading slash in layer tarball paths (Closes: #726) [#729](https://github.com/GoogleContainerTools/kaniko/pull/729)
## Updates and Refactors
* Remove cruft [#635](https://github.com/GoogleContainerTools/kaniko/pull/635)
* Add desc for `--skip-tls-verify-pull` to README [#493](https://github.com/GoogleContainerTools/kaniko/pull/493)
Huge thank you for this release towards our contributors:
- Carlos Alexandro Becker
- Carlos Sanchez
- chhsia0
- Deniz Zoeteman
- Luke Wood
- Matthew Dawson
- Niels Denissen
- Priya Wadhwa
- Sharif Elgamal
- Takeaki Matsumoto
- Taylor Barrella
- Tejal Desai
- v.rul
- Warren Seymour
- xanonid
- Xueshan Feng
- Роман Небалуев
# v0.11.0 Release - 2019-08-23
## Bug Fixes
* fix unpacking archives via ADD [#717](https://github.com/GoogleContainerTools/kaniko/pull/717)
* Reverted not including build args in cache key [#739](https://github.com/GoogleContainerTools/kaniko/pull/739)
* Create cache directory if it doesn't already exist [#452](https://github.com/GoogleContainerTools/kaniko/pull/452)
## New Features
* add multiple user agents to kaniko if upstream_client_type value is set [#750](https://github.com/GoogleContainerTools/kaniko/pull/750)
* Make container layers captured using FS snapshots reproducible [#714](https://github.com/GoogleContainerTools/kaniko/pull/714)
* Include warmer in debug image [#497](https://github.com/GoogleContainerTools/kaniko/pull/497)
* Bailout when there is not enough input arguments [#735](https://github.com/GoogleContainerTools/kaniko/pull/735)
* Add checking image presence in cache prior to downloading it [#723](https://github.com/GoogleContainerTools/kaniko/pull/723)
## Additonal PRs
* Document how to build from git reference [#730](https://github.com/GoogleContainerTools/kaniko/pull/730)
* Misc. small changes/refactoring [#712](https://github.com/GoogleContainerTools/kaniko/pull/712)
* Update go-containerregistry [#680](https://github.com/GoogleContainerTools/kaniko/pull/680)
* Update version of go-containerregistry [#724](https://github.com/GoogleContainerTools/kaniko/pull/724)
* feat: support specifying branch for cloning [#703](https://github.com/GoogleContainerTools/kaniko/pull/703)
Huge thank you for this release towards our contributors:
- Carlos Alexandro Becker
- Carlos Sanchez
- Deniz Zoeteman
- Luke Wood
- Matthew Dawson
- priyawadhwa
- sharifelgamal
- Sharif Elgamal
- Taylor Barrella
- Tejal Desai
- v.rul
- Warren Seymour
- Xueshan Feng
- Роман Небалуе
# v0.10.0 Release - 2019-06-19
## Bug Fixes
* Fix kaniko caching [#639](https://github.com/GoogleContainerTools/kaniko/pull/639)
* chore: fix typo [#665](https://github.com/GoogleContainerTools/kaniko/pull/665)
* Fix file mode bug [#618](https://github.com/GoogleContainerTools/kaniko/pull/618)
* Fix arg handling for multi-stage images in COPY instructions. [#621](https://github.com/GoogleContainerTools/kaniko/pull/621)
* Fix parent directory permissions [#619](https://github.com/GoogleContainerTools/kaniko/pull/619)
* Environment variables should be replaced in URLs in ADD commands. [#580](https://github.com/GoogleContainerTools/kaniko/pull/580)
* Update the cache warmer to also save manifests. [#576](https://github.com/GoogleContainerTools/kaniko/pull/576)
* Fix typo in error message [#569](https://github.com/GoogleContainerTools/kaniko/pull/569)
## New Features
* Add SkipVerify support to CheckPushPermissions. [#663](https://github.com/GoogleContainerTools/kaniko/pull/663)
* Creating github Build Context [#672](https://github.com/GoogleContainerTools/kaniko/pull/672)
* Add `--digest-file` flag to output built digest to file. [#655](https://github.com/GoogleContainerTools/kaniko/pull/655)
* README.md: update BuildKit/img comparison [#642](https://github.com/GoogleContainerTools/kaniko/pull/642)
* Add documentation for --verbosity flag [#634](https://github.com/GoogleContainerTools/kaniko/pull/634)
* Optimize file copying and stage saving between stages. [#605](https://github.com/GoogleContainerTools/kaniko/pull/605)
* Add an integration test for USER unpacking. [#600](https://github.com/GoogleContainerTools/kaniko/pull/600)
* Added missing documentation for --skip-tls-verify-pull arg [#593](https://github.com/GoogleContainerTools/kaniko/pull/593)
* README.me: update Buildah description [#586](https://github.com/GoogleContainerTools/kaniko/pull/586)
* Add missing tests for bucket util [#565](https://github.com/GoogleContainerTools/kaniko/pull/565)
* Look for manifests in the local cache next to the full images. [#570](https://github.com/GoogleContainerTools/kaniko/pull/570)
* Make the run_in_docker script support caching. [#564](https://github.com/GoogleContainerTools/kaniko/pull/564)
* Refactor snapshotting [#561](https://github.com/GoogleContainerTools/kaniko/pull/561)
* Stop storing a separate cache hash. [#560](https://github.com/GoogleContainerTools/kaniko/pull/560)
* Speed up workdir by always returning an empty filelist (rather than a… [#557](https://github.com/GoogleContainerTools/kaniko/pull/557)
* Refactor whitelist handling. [#559](https://github.com/GoogleContainerTools/kaniko/pull/559)
* Refactor the build loop to fetch stagebuilders earlier. [#558](https://github.com/GoogleContainerTools/kaniko/pull/558)
## Additonal PRs
* Improve changelog dates [#657](https://github.com/GoogleContainerTools/kaniko/pull/657)
* Change verbose output from info to debug [#640](https://github.com/GoogleContainerTools/kaniko/pull/640)
* Check push permissions before building images [#622](https://github.com/GoogleContainerTools/kaniko/pull/622)
* Bump go-containerregistry to 8c1640add99804503b4126abc718931a4d93c31a [#609](https://github.com/GoogleContainerTools/kaniko/pull/609)
* Update go-containerregistry [#599](https://github.com/GoogleContainerTools/kaniko/pull/599)
* Log "Skipping paths under..." to debug [#571](https://github.com/GoogleContainerTools/kaniko/pull/571)
Huge thank you for this release towards our contributors:
- Achilleas Pipinellis
- Adrian Duong
- Akihiro Suda
- Andreas Bergmeier
- Andrew Rynhard
- Anthony Weston
- Anurag Goel
- Balint Pato
- Christie Wilson
- Daisuke Taniwaki
- Dan Cecile
- Dirk Gustke
- dlorenc
- Fredrik Lönnegren
- Gijs
- Jake Shadle
- James Rawlings
- Jason Hall
- Johan Hernandez
- Johannes 'fish' Ziemke
- Kartik Verma
- linuxshokunin
- MMeent
- Myers Carpenter
- Nándor István Krácser
- Nao YONASHIRO
- Priya Wadhwa
- Sharif Elgamal
- Shuhei Kitagawa
- Valentin Rothberg
- Vincent Demeester
# v0.9.0 Release - 2019-02-08
## Bug Fixes
* Bug fix with volumes declared in base images during multi-stage builds
* Bug fix during snapshotting multi-stage builds.
* Bug fix for caching with tar output.
# v0.8.0 Release - 2019-01-29
## New Features
* Even faster snapshotting with godirwalk
* Added TTL for caching
## Updates
* Change cache key calculation to be more reproducible.
* Make the Digest calculation faster for locally-cached images.
* Simplify snapshotting.
## Bug Fixes
* Fix bug with USER command and unpacking base images.
* Added COPY --from=previous stage name/number validation
# v0.7.0 Release - 2018-12-10
## New Features
* Add support for COPY --from an unrelated image
## Updates
* Speed up snapshotting by using filepath.SkipDir
* Improve layer cache upload performance
* Skip unpacking the base image in certain cases
## Bug Fixes
* Fix bug with call loop
* Fix caching for multi-step builds
# v0.6.0 Release - 2018-11-06
## New Features
* parse arg commands at the top of dockerfiles [#404](https://github.com/GoogleContainerTools/kaniko/pull/404)
* Add buffering for large layers. [#428](https://github.com/GoogleContainerTools/kaniko/pull/428)
* Separate Insecure Pull Options [#409](https://github.com/GoogleContainerTools/kaniko/pull/409)
* Add support for .dockerignore file [#394](https://github.com/GoogleContainerTools/kaniko/pull/394)
* Support insecure pull [#401](https://github.com/GoogleContainerTools/kaniko/pull/401)
## Updates
* Preserve options when doing a cache push [#423](https://github.com/GoogleContainerTools/kaniko/pull/423)
* More cache cleanups: [#397](https://github.com/GoogleContainerTools/kaniko/pull/397)
* adding documentation for base image caching [#421](https://github.com/GoogleContainerTools/kaniko/pull/421)
* Update go-containerregistry [#420](https://github.com/GoogleContainerTools/kaniko/pull/420)
* Update README [#419](https://github.com/GoogleContainerTools/kaniko/pull/419)
* Use remoteImage function when getting digest for cache [#413](https://github.com/GoogleContainerTools/kaniko/pull/413)
* adding exit 1 when there are not enough command line vars passed to `… [#415](https://github.com/GoogleContainerTools/kaniko/pull/415)
* "Container Builder" - > "Cloud Build" [#414](https://github.com/GoogleContainerTools/kaniko/pull/414)
* adding the cache warmer to the release process [#412](https://github.com/GoogleContainerTools/kaniko/pull/412)
## Bug Fixes
* Fix bugs with .dockerignore and improve integration test [#424](https://github.com/GoogleContainerTools/kaniko/pull/424)
* fix releasing the cache warmer [#418](https://github.com/GoogleContainerTools/kaniko/pull/418)
# v0.5.0 Release - 2018-10-16
## New Features
* Persistent volume caching for base images [#383](https://github.com/GoogleContainerTools/kaniko/pull/383)
## Updates
* Use only the necessary files in the cache keys. [#387](https://github.com/GoogleContainerTools/kaniko/pull/387)
* Change loglevel for copying files to debug (#303) [#393](https://github.com/GoogleContainerTools/kaniko/pull/393)
* Improve IsDestDir functionality with filesystem info [#390](https://github.com/GoogleContainerTools/kaniko/pull/390)
* Refactor the build loop. [#385](https://github.com/GoogleContainerTools/kaniko/pull/385)
* Rework cache key generation a bit. [#375](https://github.com/GoogleContainerTools/kaniko/pull/375)
## Bug Fixes
* fix mispell [#396](https://github.com/GoogleContainerTools/kaniko/pull/396)
* Update go-containerregistry dependency [#388](https://github.com/GoogleContainerTools/kaniko/pull/388)
* chore: fix broken markdown (CHANGELOG.md) [#382](https://github.com/GoogleContainerTools/kaniko/pull/382)
* Don't cut everything after an equals sign [#381](https://github.com/GoogleContainerTools/kaniko/pull/381)
# v0.4.0 Release - 2018-10-01
## New Features
* Add a benchmark package to store and monitor timings. [#367](https://github.com/GoogleContainerTools/kaniko/pull/367)
* Add layer caching to kaniko [#353](https://github.com/GoogleContainerTools/kaniko/pull/353)
* Update issue templates [#340](https://github.com/GoogleContainerTools/kaniko/pull/340)
* Separate --insecure-skip-tls-verify flag into two separate flags [#311](https://github.com/GoogleContainerTools/kaniko/pull/311)
* Updated created by time for built image [#328](https://github.com/GoogleContainerTools/kaniko/pull/328)
* Add Flag to Disable Push to Container Registry [#292](https://github.com/GoogleContainerTools/kaniko/pull/292)
* Add a new flag to cleanup the filesystem at the end [#370](https://github.com/GoogleContainerTools/kaniko/pull/370)
## Updates
* Update README to add information about layer caching [#364](https://github.com/GoogleContainerTools/kaniko/pull/364)
* Suppress usage upon Run error [#356](https://github.com/GoogleContainerTools/kaniko/pull/356)
* Refactor build into stageBuilder type [#343](https://github.com/GoogleContainerTools/kaniko/pull/343)
* Replace gometalinter with GolangCI-Lint [#349](https://github.com/GoogleContainerTools/kaniko/pull/349)
* Add Key() to LayeredMap and Snapshotter [#337](https://github.com/GoogleContainerTools/kaniko/pull/337)
* Add CacheCommand to DockerCommand interface [#336](https://github.com/GoogleContainerTools/kaniko/pull/336)
* Extract filesystem in order rather than in reverse [#326](https://github.com/GoogleContainerTools/kaniko/pull/326)
* Configure logs to show colors [#327](https://github.com/GoogleContainerTools/kaniko/pull/327)
* Enable shared config for s3 [#321](https://github.com/GoogleContainerTools/kaniko/pull/321)
* Update go-containerregistry. [#305](https://github.com/GoogleContainerTools/kaniko/pull/305)
* Tag latest in cloudbuild.yaml [#287](https://github.com/GoogleContainerTools/kaniko/pull/287)
* Set default home value [#281](https://github.com/GoogleContainerTools/kaniko/pull/281)
* Update deps [#265](https://github.com/GoogleContainerTools/kaniko/pull/265)
* Update go-containerregistry dep and remove unnecessary Options [#376](https://github.com/GoogleContainerTools/kaniko/pull/376)
* Add a bit more context to layer offset failures [#264](https://github.com/GoogleContainerTools/kaniko/pull/264)
## Bug Fixes
* Whitelist /busybox in the debug image [#369](https://github.com/GoogleContainerTools/kaniko/pull/369)
* Check --cache-repo is provided with --cache and --no-push [#374](https://github.com/GoogleContainerTools/kaniko/pull/374)
* Fixes a whitelist issue when untarring files in ADD commands. [#371](https://github.com/GoogleContainerTools/kaniko/pull/371)
* set default HOME env properly [#341](https://github.com/GoogleContainerTools/kaniko/pull/341)
* Review config for cmd/entrypoint after building a stage [#348](https://github.com/GoogleContainerTools/kaniko/pull/348)
* Enable overwriting of links (solves #351) [#360](https://github.com/GoogleContainerTools/kaniko/pull/360)
* Only return stdout when running commands for integration tests [#363](https://github.com/GoogleContainerTools/kaniko/pull/363)
* Whitelist /etc/mtab [#347](https://github.com/GoogleContainerTools/kaniko/pull/347)
* Added a KanikoStage type for each stage of a Dockerfile [#320](https://github.com/GoogleContainerTools/kaniko/pull/320)
* Make sure paths are absolute before matching files to wildcard sources [#330](https://github.com/GoogleContainerTools/kaniko/pull/330)
* Build each kaniko image separately [#324](https://github.com/GoogleContainerTools/kaniko/pull/324)
* support multiple tags when writing to a tarfile [#323](https://github.com/GoogleContainerTools/kaniko/pull/323)
* Snapshot only specific files for COPY [#319](https://github.com/GoogleContainerTools/kaniko/pull/319)
* Remove some constraints from our Gopkg.toml. [#318](https://github.com/GoogleContainerTools/kaniko/pull/318)
* Always snapshot files in COPY and RUN commands [#289](https://github.com/GoogleContainerTools/kaniko/pull/289)
* Refactor command line arguments and the executor [#306](https://github.com/GoogleContainerTools/kaniko/pull/306)
* Fix bug in SaveStage function for multistage builds [#295](https://github.com/GoogleContainerTools/kaniko/pull/295)
* Get absolute path of file before checking whitelist [#293](https://github.com/GoogleContainerTools/kaniko/pull/293)
* Fix support for insecure registry [#169](https://github.com/GoogleContainerTools/kaniko/pull/169)
* ignore sockets when adding to tar [#288](https://github.com/GoogleContainerTools/kaniko/pull/288)
* fix add command bug when adding remote URLs [#277](https://github.com/GoogleContainerTools/kaniko/pull/277)
* Environment variables with multiple '=' are not parsed correctly [#278](https://github.com/GoogleContainerTools/kaniko/pull/278)
* Ensure cmd.SysProcAttr is set before modifying it [#275](https://github.com/GoogleContainerTools/kaniko/pull/275)
* Don't copy same files twice in copy integration tests [#273](https://github.com/GoogleContainerTools/kaniko/pull/273)
* Extract intermediate stages to filesystem [#266](https://github.com/GoogleContainerTools/kaniko/pull/266)
* Fix process group handling. [#271](https://github.com/GoogleContainerTools/kaniko/pull/271)
* Only add whiteout files once [#270](https://github.com/GoogleContainerTools/kaniko/pull/270)
* Fix handling of the volume directive [#334](https://github.com/GoogleContainerTools/kaniko/pull/334)
# v0.3.0 Release - 2018-07-31
## New Features
* Local integration testing [#256](https://github.com/GoogleContainerTools/kaniko/pull/256)
* Add --target flag for multistage builds [#255](https://github.com/GoogleContainerTools/kaniko/pull/255)
* Look for on cluster credentials using k8s chain [#243](https://github.com/GoogleContainerTools/kaniko/pull/243)
## Bug Fixes
* Kill grandchildren spun up by child processes [#247](https://github.com/GoogleContainerTools/kaniko/issues/247)
* Fix bug in copy command [#221](https://github.com/GoogleContainerTools/kaniko/issues/221)
* Multi-stage errors when referencing earlier stages [#233](https://github.com/GoogleContainerTools/kaniko/issues/233)
# v0.2.0 Release - 2018-07-09
## New Features
* Support for adding different source contexts, including Amazon S3 [#195](https://github.com/GoogleContainerTools/kaniko/issues/195)
* Added --reproducible [#205](https://github.com/GoogleContainerTools/kaniko/pull/205) and --single-snapshot [#204](https://github.com/GoogleContainerTools/kaniko/pull/204) flags
* Documented running kaniko in gVisor [#194](https://github.com/GoogleContainerTools/kaniko/pull/194)
* Update go-containerregistry so kaniko works better with Harbor and Gitlab[#227](https://github.com/GoogleContainerTools/kaniko/pull/227)
* Push image to multiple destinations [#184](https://github.com/GoogleContainerTools/kaniko/pull/184)
# v0.1.0 Release - 2018-05-17
## New Features
* The majority of Dockerfile commands are feature complete [#1](https://github.com/GoogleContainerTools/kaniko/issues/1)
* Support for multi-stage Dockerfile builds [#141](https://github.com/GoogleContainerTools/kaniko/pull/141)
* Refactored integration tests [#126](https://github.com/GoogleContainerTools/kaniko/pull/126)
* Added debug image with a busybox shell [#171](https://github.com/GoogleContainerTools/kaniko/pull/1710)
* Added credential helper for Amazon ECR [#167](https://github.com/GoogleContainerTools/kaniko/pull/167)
================================================
FILE: CONTRIBUTING.md
================================================
# Contributing to Kaniko
We'd love to accept your patches and contributions to this project!!
To get started developing, see our [DEVELOPMENT.md](./DEVELOPMENT.md).
In this file you'll find info on:
- [Contributing to Kaniko](#contributing-to-kaniko)
- [Contributor License Agreement](#contributor-license-agreement)
- [Code reviews](#code-reviews)
- [Standards](#standards)
- [Commit Messages](#commit-messages)
- [Coding standards](#coding-standards)
- [Finding something to work on](#finding-something-to-work-on)
[code](#coding-standards)
- [Finding something to work on](#finding-something-to-work-on)
## Contributor License Agreement
Contributions to this project must be accompanied by a Contributor License
Agreement. You (or your employer) retain the copyright to your contribution;
this simply gives us permission to use and redistribute your contributions as
part of the project. Head over to <https://cla.developers.google.com/> to see
your current agreements on file or to sign a new one.
You generally only need to submit a CLA once, so if you've already submitted one
(even if it was for a different project), you probably don't need to do it
again.
## Code reviews
All submissions, including submissions by project members, require review. We
use GitHub pull requests for this purpose. Consult
[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more
information on using pull requests.
## Standards
This section describes the standards we will try to maintain in this repo.
### Commit Messages
All commit messages should follow
[these best practices](https://chris.beams.io/posts/git-commit/), specifically:
- Start with a subject line
- Contain a body that explains _why_ you're making the change you're making
- Reference an issue number if one exists, closing it if applicable (with text
such as
["Fixes #245" or "Closes #111"](https://help.github.com/articles/closing-issues-using-keywords/))
Aim for [2 paragraphs in the body](https://www.youtube.com/watch?v=PJjmw9TRB7s).
Not sure what to put? Include:
- What is the problem being solved?
- Why is this the best approach?
- What other approaches did you consider?
- What side effects will this approach have?
- What future work remains to be done?
### Coding standards
The code in this repo should follow best practices, specifically:
- [Go code review comments](https://go.dev/wiki/CodeReviewComments)
## Finding something to work on
Thanks so much for considering contributing to our project!! We hope very much
you can find something interesting to work on:
- To find issues that we particularly would like contributors to tackle, look
for
[issues with the "help wanted" label](https://github.com/GoogleContainerTools/kaniko/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22).
- Issues that are good for new folks will additionally be marked with
["good first issue"](https://github.com/GoogleContainerTools/kaniko/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).
================================================
FILE: DEVELOPMENT.md
================================================
# Development
This doc explains the development workflow so you can get started
[contributing](CONTRIBUTING.md) to Kaniko!
## Getting started
First you will need to setup your GitHub account and create a fork:
1. Create [a GitHub account](https://github.com/join)
1. Setup [GitHub access via
SSH](https://help.github.com/articles/connecting-to-github-with-ssh/)
1. [Create and checkout a repo fork](#checkout-your-fork)
Once you have those, you can iterate on kaniko:
1. [Run your instance of kaniko](README.md#running-kaniko)
1. [Verifying kaniko builds](#verifying-kaniko-builds)
1. [Run kaniko tests](#testing-kaniko)
When you're ready, you can [create a PR](#creating-a-pr)!
## Checkout your fork
The Go tools require that you clone the repository to the `src/github.com/GoogleContainerTools/kaniko` directory
in your [`GOPATH`](https://go.dev/wiki/SettingGOPATH).
To check out this repository:
1. Create your own [fork of this
repo](https://help.github.com/articles/fork-a-repo/)
2. Clone it to your machine:
```shell
mkdir -p ${GOPATH}/src/github.com/GoogleContainerTools
cd ${GOPATH}/src/github.com/GoogleContainerTools
git clone git@github.com:${YOUR_GITHUB_USERNAME}/kaniko.git
cd kaniko
git remote add upstream git@github.com:GoogleContainerTools/kaniko.git
git remote set-url --push upstream no_push
```
_Adding the `upstream` remote sets you up nicely for regularly [syncing your
fork](https://help.github.com/articles/syncing-a-fo
Showing preview only (325K chars total). Download the full file or copy to clipboard to get everything.
gitextract_j9trgfvp/
├── .dockerignore
├── .github/
│ ├── ISSUE_TEMPLATE/
│ │ └── bug_report.md
│ ├── dependabot.yml
│ ├── pull_request_template.md
│ └── workflows/
│ ├── images.yaml
│ ├── integration-tests.yaml
│ ├── nightly-vulnerability-scan.yml
│ └── unit-tests.yaml
├── .gitignore
├── .golangci.yaml
├── .prettierrc
├── CHANGELOG.md
├── CONTRIBUTING.md
├── DEVELOPMENT.md
├── LICENSE
├── MAINTAINERS
├── Makefile
├── README.md
├── RELEASE.md
├── ROADMAP.md
├── SECURITY.md
├── Vagrantfile
├── benchmark.sh
├── cmd/
│ ├── executor/
│ │ ├── cmd/
│ │ │ ├── root.go
│ │ │ ├── root_test.go
│ │ │ └── version.go
│ │ └── main.go
│ └── warmer/
│ ├── cmd/
│ │ └── root.go
│ └── main.go
├── code-of-conduct.md
├── cosign.pub
├── deploy/
│ └── Dockerfile
├── docs/
│ ├── design_proposals/
│ │ ├── design-proposal-template.md
│ │ └── filesystem-resolution-proposal-01.md
│ ├── designdoc.md
│ ├── testplan.md
│ └── tutorial.md
├── examples/
│ ├── kaniko-cache-claim.yaml
│ ├── kaniko-cache-volume.yaml
│ ├── kaniko-test.yaml
│ ├── kaniko-warmer.yaml
│ ├── pod-blobstorage.yaml
│ ├── pod-build-profile.yaml
│ ├── pod.yaml
│ ├── volume-claim.yaml
│ └── volume.yaml
├── files/
│ └── nsswitch.conf
├── go.mod
├── go.sum
├── hack/
│ ├── .gitignore
│ ├── boilerplate/
│ │ ├── boilerplate.Dockerfile.txt
│ │ ├── boilerplate.Makefile.txt
│ │ ├── boilerplate.go.txt
│ │ ├── boilerplate.py
│ │ ├── boilerplate.py.txt
│ │ └── boilerplate.sh.txt
│ ├── boilerplate.sh
│ ├── gofmt.sh
│ ├── install_golint.sh
│ ├── linter.sh
│ ├── release.sh
│ └── release_notes/
│ ├── changelog_template.txt
│ └── listpullreqs.go
├── integration/
│ ├── .dockerignore
│ ├── .gitignore
│ ├── BUILD
│ ├── benchmark_fs/
│ │ ├── Dockerfile
│ │ ├── cloudbuild.yaml
│ │ ├── context.txt
│ │ └── make.sh
│ ├── benchmark_test.go
│ ├── cleanup.go
│ ├── cmd.go
│ ├── config.go
│ ├── context/
│ │ ├── arr[0].txt
│ │ ├── bar/
│ │ │ ├── bam/
│ │ │ │ └── bat
│ │ │ ├── bat
│ │ │ └── baz
│ │ ├── empty/
│ │ │ └── .gitignore
│ │ ├── foo
│ │ ├── qux/
│ │ │ ├── qup
│ │ │ ├── quw/
│ │ │ │ └── que
│ │ │ └── quz
│ │ ├── tars/
│ │ │ ├── file
│ │ │ └── file.bz2
│ │ └── workspace/
│ │ └── test
│ ├── dockerfiles/
│ │ ├── 1097
│ │ ├── Dockerfile_dockerignore_relative
│ │ ├── Dockerfile_dockerignore_relative.dockerignore
│ │ ├── Dockerfile_git_buildcontext
│ │ ├── Dockerfile_hardlink_base
│ │ ├── Dockerfile_onbuild_base
│ │ ├── Dockerfile_registry_mirror
│ │ ├── Dockerfile_relative_copy
│ │ ├── Dockerfile_test_add
│ │ ├── Dockerfile_test_add_404
│ │ ├── Dockerfile_test_add_chown_intermediate_dirs
│ │ ├── Dockerfile_test_add_dest_symlink_dir
│ │ ├── Dockerfile_test_add_url_with_arg
│ │ ├── Dockerfile_test_arg_blank_with_quotes
│ │ ├── Dockerfile_test_arg_from_quotes
│ │ ├── Dockerfile_test_arg_from_single_quotes
│ │ ├── Dockerfile_test_arg_multi
│ │ ├── Dockerfile_test_arg_multi_empty_val
│ │ ├── Dockerfile_test_arg_multi_with_quotes
│ │ ├── Dockerfile_test_arg_secret
│ │ ├── Dockerfile_test_arg_two_level
│ │ ├── Dockerfile_test_cache
│ │ ├── Dockerfile_test_cache_copy
│ │ ├── Dockerfile_test_cache_copy_oci
│ │ ├── Dockerfile_test_cache_install
│ │ ├── Dockerfile_test_cache_install_oci
│ │ ├── Dockerfile_test_cache_oci
│ │ ├── Dockerfile_test_cache_perm
│ │ ├── Dockerfile_test_cache_perm_oci
│ │ ├── Dockerfile_test_cmd
│ │ ├── Dockerfile_test_complex_substitution
│ │ ├── Dockerfile_test_copy
│ │ ├── Dockerfile_test_copy_bucket
│ │ ├── Dockerfile_test_copy_chown_intermediate_dirs
│ │ ├── Dockerfile_test_copy_chown_nonexisting_user
│ │ ├── Dockerfile_test_copy_reproducible
│ │ ├── Dockerfile_test_copy_root_multistage
│ │ ├── Dockerfile_test_copy_same_file_many_times
│ │ ├── Dockerfile_test_copy_symlink
│ │ ├── Dockerfile_test_copyadd_chmod
│ │ ├── Dockerfile_test_daemons
│ │ ├── Dockerfile_test_dangling_symlink
│ │ ├── Dockerfile_test_deleted_file_cached
│ │ ├── Dockerfile_test_dockerignore
│ │ ├── Dockerfile_test_env
│ │ ├── Dockerfile_test_expose
│ │ ├── Dockerfile_test_extract_fs
│ │ ├── Dockerfile_test_extraction
│ │ ├── Dockerfile_test_from_multistage_capital
│ │ ├── Dockerfile_test_hardlink
│ │ ├── Dockerfile_test_ignore
│ │ ├── Dockerfile_test_issue_1039
│ │ ├── Dockerfile_test_issue_1837
│ │ ├── Dockerfile_test_issue_2049
│ │ ├── Dockerfile_test_issue_2066
│ │ ├── Dockerfile_test_issue_519
│ │ ├── Dockerfile_test_issue_647
│ │ ├── Dockerfile_test_issue_684
│ │ ├── Dockerfile_test_issue_704
│ │ ├── Dockerfile_test_label
│ │ ├── Dockerfile_test_maintainer
│ │ ├── Dockerfile_test_meta_arg
│ │ ├── Dockerfile_test_metadata
│ │ ├── Dockerfile_test_multistage
│ │ ├── Dockerfile_test_multistage_args_issue_1911
│ │ ├── Dockerfile_test_mv_add
│ │ ├── Dockerfile_test_onbuild
│ │ ├── Dockerfile_test_parent_dir_perms
│ │ ├── Dockerfile_test_registry
│ │ ├── Dockerfile_test_replaced_hardlinks
│ │ ├── Dockerfile_test_replaced_symlinks
│ │ ├── Dockerfile_test_run
│ │ ├── Dockerfile_test_run_2
│ │ ├── Dockerfile_test_run_new
│ │ ├── Dockerfile_test_run_redo
│ │ ├── Dockerfile_test_scratch
│ │ ├── Dockerfile_test_snapshotter_ignorelist
│ │ ├── Dockerfile_test_target
│ │ ├── Dockerfile_test_user
│ │ ├── Dockerfile_test_user_home
│ │ ├── Dockerfile_test_user_nonexisting
│ │ ├── Dockerfile_test_user_run
│ │ ├── Dockerfile_test_volume
│ │ ├── Dockerfile_test_volume_2
│ │ ├── Dockerfile_test_volume_3
│ │ ├── Dockerfile_test_volume_4
│ │ ├── Dockerfile_test_whitelist
│ │ ├── Dockerfile_test_workdir
│ │ ├── Dockerfile_test_workdir_with_user
│ │ ├── TestReplaceFolderWithFile
│ │ └── TestReplaceFolderWithLink
│ ├── dockerfiles-with-context/
│ │ ├── issue-1020/
│ │ │ ├── Dockerfile
│ │ │ └── package.json
│ │ ├── issue-1315/
│ │ │ └── Dockerfile
│ │ ├── issue-2075/
│ │ │ ├── Dockerfile
│ │ │ └── top1
│ │ ├── issue-57/
│ │ │ ├── Dockerfile
│ │ │ ├── a.txt
│ │ │ └── b.txt
│ │ ├── issue-721/
│ │ │ ├── Dockerfile
│ │ │ └── test.txt
│ │ └── issue-774/
│ │ ├── Dockerfile
│ │ └── test-file
│ ├── ignore/
│ │ ├── bar
│ │ ├── baz
│ │ └── foo
│ ├── ignore_relative/
│ │ ├── bar
│ │ ├── baz
│ │ └── foo
│ ├── images.go
│ ├── integration_test.go
│ ├── integration_with_context_test.go
│ ├── integration_with_stdin_test.go
│ ├── k8s-job.yaml
│ ├── k8s_test.go
│ ├── tar.go
│ └── testdata/
│ ├── Dockerfile.trivial
│ ├── build.yaml
│ ├── exec.yaml
│ ├── exit-code-propagation/
│ │ └── Dockerfile_exit_code_propagation
│ ├── files.yaml
│ └── testfiles.yaml
├── logo/
│ └── README.md
├── pkg/
│ ├── buildcontext/
│ │ ├── azureblob.go
│ │ ├── buildcontext.go
│ │ ├── dir.go
│ │ ├── gcs.go
│ │ ├── git.go
│ │ ├── git_test.go
│ │ ├── https.go
│ │ ├── https_test.go
│ │ ├── s3.go
│ │ ├── tar.go
│ │ └── tar_test.go
│ ├── cache/
│ │ ├── cache.go
│ │ ├── doc_test.go
│ │ ├── errors.go
│ │ ├── warm.go
│ │ └── warm_test.go
│ ├── commands/
│ │ ├── add.go
│ │ ├── add_test.go
│ │ ├── arg.go
│ │ ├── base_command.go
│ │ ├── cache.go
│ │ ├── cache_test.go
│ │ ├── cmd.go
│ │ ├── cmd_test.go
│ │ ├── commands.go
│ │ ├── copy.go
│ │ ├── copy_test.go
│ │ ├── entrypoint.go
│ │ ├── entrypoint_test.go
│ │ ├── env.go
│ │ ├── env_test.go
│ │ ├── expose.go
│ │ ├── expose_test.go
│ │ ├── fake_commands.go
│ │ ├── healthcheck.go
│ │ ├── label.go
│ │ ├── label_test.go
│ │ ├── onbuild.go
│ │ ├── onbuild_test.go
│ │ ├── run.go
│ │ ├── run_marker.go
│ │ ├── run_test.go
│ │ ├── shell.go
│ │ ├── shell_test.go
│ │ ├── stopsignal.go
│ │ ├── stopsignal_test.go
│ │ ├── user.go
│ │ ├── user_test.go
│ │ ├── volume.go
│ │ ├── volume_test.go
│ │ ├── workdir.go
│ │ └── workdir_test.go
│ ├── config/
│ │ ├── args.go
│ │ ├── args_test.go
│ │ ├── init.go
│ │ ├── options.go
│ │ ├── options_test.go
│ │ └── stage.go
│ ├── constants/
│ │ └── constants.go
│ ├── creds/
│ │ └── creds.go
│ ├── dockerfile/
│ │ ├── buildargs.go
│ │ ├── dockerfile.go
│ │ └── dockerfile_test.go
│ ├── executor/
│ │ ├── build.go
│ │ ├── build_test.go
│ │ ├── composite_cache.go
│ │ ├── composite_cache_test.go
│ │ ├── copy_multistage_test.go
│ │ ├── fakes.go
│ │ ├── push.go
│ │ └── push_test.go
│ ├── fakes/
│ │ └── image.go
│ ├── filesystem/
│ │ ├── resolve.go
│ │ └── resolve_test.go
│ ├── image/
│ │ ├── image_util.go
│ │ ├── image_util_test.go
│ │ └── remote/
│ │ ├── remote.go
│ │ └── remote_test.go
│ ├── logging/
│ │ └── logging.go
│ ├── mocks/
│ │ └── go-containerregistry/
│ │ └── mockv1/
│ │ └── mocks.go
│ ├── snapshot/
│ │ ├── layered_map.go
│ │ ├── layered_map_test.go
│ │ ├── snapshot.go
│ │ └── snapshot_test.go
│ ├── timing/
│ │ ├── timing.go
│ │ └── timing_test.go
│ ├── util/
│ │ ├── .editorconfig
│ │ ├── azureblob_util.go
│ │ ├── azureblob_util_test.go
│ │ ├── bucket/
│ │ │ ├── bucket_util.go
│ │ │ └── bucket_util_test.go
│ │ ├── command_util.go
│ │ ├── command_util_test.go
│ │ ├── fs_util.go
│ │ ├── fs_util_test.go
│ │ ├── gcr_util.go
│ │ ├── gcr_util_test.go
│ │ ├── groupids_cgo.go
│ │ ├── groupids_fallback.go
│ │ ├── proc/
│ │ │ ├── proc.go
│ │ │ └── proc_test.go
│ │ ├── syscall_credentials.go
│ │ ├── syscall_credentials_test.go
│ │ ├── tar_util.go
│ │ ├── tar_util_test.go
│ │ ├── transport_util.go
│ │ ├── transport_util_test.go
│ │ ├── util.go
│ │ └── util_test.go
│ └── version/
│ └── version.go
├── run_in_docker.sh
├── scripts/
│ ├── boxed_warm_in_docker.sh
│ ├── integration-test.sh
│ ├── k3s-setup.sh
│ ├── local-registry-helm.yaml
│ ├── misc-integration-test.sh
│ └── test.sh
├── testutil/
│ ├── constants.go
│ └── util.go
├── tools/
│ └── tools.go
└── vendor/
├── cel.dev/
│ └── expr/
│ ├── .bazelversion
│ ├── .gitattributes
│ ├── .gitignore
│ ├── CODE_OF_CONDUCT.md
│ ├── CONTRIBUTING.md
│ ├── GOVERNANCE.md
│ ├── LICENSE
│ ├── MAINTAINERS.md
│ ├── MODULE.bazel
│ ├── README.md
│ ├── WORKSPACE
│ ├── WORKSPACE.bzlmod
│ ├── checked.pb.go
│ ├── cloudbuild.yaml
│ ├── eval.pb.go
│ ├── explain.pb.go
│ ├── regen_go_proto.sh
│ ├── regen_go_proto_canonical_protos.sh
│ ├── syntax.pb.go
│ └── value.pb.go
├── cloud.google.com/
│ └── go/
│ ├── LICENSE
│ ├── auth/
│ │ ├── CHANGES.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── auth.go
│ │ ├── credentials/
│ │ │ ├── compute.go
│ │ │ ├── detect.go
│ │ │ ├── doc.go
│ │ │ ├── filetypes.go
│ │ │ ├── internal/
│ │ │ │ ├── externalaccount/
│ │ │ │ │ ├── aws_provider.go
│ │ │ │ │ ├── executable_provider.go
│ │ │ │ │ ├── externalaccount.go
│ │ │ │ │ ├── file_provider.go
│ │ │ │ │ ├── info.go
│ │ │ │ │ ├── programmatic_provider.go
│ │ │ │ │ ├── url_provider.go
│ │ │ │ │ └── x509_provider.go
│ │ │ │ ├── externalaccountuser/
│ │ │ │ │ └── externalaccountuser.go
│ │ │ │ ├── gdch/
│ │ │ │ │ └── gdch.go
│ │ │ │ ├── impersonate/
│ │ │ │ │ ├── idtoken.go
│ │ │ │ │ └── impersonate.go
│ │ │ │ └── stsexchange/
│ │ │ │ └── sts_exchange.go
│ │ │ └── selfsignedjwt.go
│ │ ├── grpctransport/
│ │ │ ├── dial_socketopt.go
│ │ │ ├── directpath.go
│ │ │ ├── grpctransport.go
│ │ │ └── pool.go
│ │ ├── httptransport/
│ │ │ ├── httptransport.go
│ │ │ └── transport.go
│ │ ├── internal/
│ │ │ ├── compute/
│ │ │ │ ├── compute.go
│ │ │ │ ├── manufacturer.go
│ │ │ │ ├── manufacturer_linux.go
│ │ │ │ └── manufacturer_windows.go
│ │ │ ├── credsfile/
│ │ │ │ ├── credsfile.go
│ │ │ │ ├── filetype.go
│ │ │ │ └── parse.go
│ │ │ ├── internal.go
│ │ │ ├── jwt/
│ │ │ │ └── jwt.go
│ │ │ └── transport/
│ │ │ ├── cba.go
│ │ │ ├── cert/
│ │ │ │ ├── default_cert.go
│ │ │ │ ├── enterprise_cert.go
│ │ │ │ ├── secureconnect_cert.go
│ │ │ │ └── workload_cert.go
│ │ │ ├── s2a.go
│ │ │ └── transport.go
│ │ ├── oauth2adapt/
│ │ │ ├── CHANGES.md
│ │ │ ├── LICENSE
│ │ │ └── oauth2adapt.go
│ │ └── threelegged.go
│ ├── compute/
│ │ └── metadata/
│ │ ├── CHANGES.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── log.go
│ │ ├── metadata.go
│ │ ├── retry.go
│ │ ├── retry_linux.go
│ │ ├── syscheck.go
│ │ ├── syscheck_linux.go
│ │ └── syscheck_windows.go
│ ├── iam/
│ │ ├── CHANGES.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── apiv1/
│ │ │ └── iampb/
│ │ │ ├── iam_policy.pb.go
│ │ │ ├── options.pb.go
│ │ │ ├── policy.pb.go
│ │ │ └── resource_policy_member.pb.go
│ │ └── iam.go
│ ├── internal/
│ │ ├── .repo-metadata-full.json
│ │ ├── README.md
│ │ ├── annotate.go
│ │ ├── gen_info.sh
│ │ ├── optional/
│ │ │ └── optional.go
│ │ ├── retry.go
│ │ ├── trace/
│ │ │ └── trace.go
│ │ └── version/
│ │ ├── update_version.sh
│ │ └── version.go
│ ├── monitoring/
│ │ ├── LICENSE
│ │ ├── apiv3/
│ │ │ └── v2/
│ │ │ ├── alert_policy_client.go
│ │ │ ├── auxiliary.go
│ │ │ ├── auxiliary_go123.go
│ │ │ ├── doc.go
│ │ │ ├── gapic_metadata.json
│ │ │ ├── group_client.go
│ │ │ ├── helpers.go
│ │ │ ├── metric_client.go
│ │ │ ├── monitoringpb/
│ │ │ │ ├── alert.pb.go
│ │ │ │ ├── alert_service.pb.go
│ │ │ │ ├── common.pb.go
│ │ │ │ ├── dropped_labels.pb.go
│ │ │ │ ├── group.pb.go
│ │ │ │ ├── group_service.pb.go
│ │ │ │ ├── metric.pb.go
│ │ │ │ ├── metric_service.pb.go
│ │ │ │ ├── mutation_record.pb.go
│ │ │ │ ├── notification.pb.go
│ │ │ │ ├── notification_service.pb.go
│ │ │ │ ├── query_service.pb.go
│ │ │ │ ├── service.pb.go
│ │ │ │ ├── service_service.pb.go
│ │ │ │ ├── snooze.pb.go
│ │ │ │ ├── snooze_service.pb.go
│ │ │ │ ├── span_context.pb.go
│ │ │ │ ├── uptime.pb.go
│ │ │ │ └── uptime_service.pb.go
│ │ │ ├── notification_channel_client.go
│ │ │ ├── query_client.go
│ │ │ ├── service_monitoring_client.go
│ │ │ ├── snooze_client.go
│ │ │ ├── uptime_check_client.go
│ │ │ └── version.go
│ │ └── internal/
│ │ └── version.go
│ └── storage/
│ ├── CHANGES.md
│ ├── LICENSE
│ ├── README.md
│ ├── acl.go
│ ├── bucket.go
│ ├── client.go
│ ├── copy.go
│ ├── doc.go
│ ├── dynamic_delay.go
│ ├── emulator_test.sh
│ ├── experimental/
│ │ └── experimental.go
│ ├── grpc_client.go
│ ├── grpc_dp.go
│ ├── grpc_metrics.go
│ ├── grpc_reader.go
│ ├── grpc_reader_multi_range.go
│ ├── grpc_writer.go
│ ├── hmac.go
│ ├── http_client.go
│ ├── iam.go
│ ├── internal/
│ │ ├── apiv2/
│ │ │ ├── auxiliary.go
│ │ │ ├── auxiliary_go123.go
│ │ │ ├── doc.go
│ │ │ ├── gapic_metadata.json
│ │ │ ├── helpers.go
│ │ │ ├── storage_client.go
│ │ │ ├── storagepb/
│ │ │ │ └── storage.pb.go
│ │ │ └── version.go
│ │ ├── experimental.go
│ │ └── version.go
│ ├── invoke.go
│ ├── notifications.go
│ ├── option.go
│ ├── post_policy_v4.go
│ ├── reader.go
│ ├── storage.go
│ ├── storage.replay
│ ├── trace.go
│ └── writer.go
├── dario.cat/
│ └── mergo/
│ ├── .deepsource.toml
│ ├── .gitignore
│ ├── .travis.yml
│ ├── CODE_OF_CONDUCT.md
│ ├── CONTRIBUTING.md
│ ├── FUNDING.json
│ ├── LICENSE
│ ├── README.md
│ ├── SECURITY.md
│ ├── doc.go
│ ├── map.go
│ ├── merge.go
│ └── mergo.go
├── github.com/
│ ├── Azure/
│ │ ├── azure-sdk-for-go/
│ │ │ ├── LICENSE.txt
│ │ │ ├── NOTICE.txt
│ │ │ ├── sdk/
│ │ │ │ ├── azcore/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── ci.yml
│ │ │ │ │ ├── cloud/
│ │ │ │ │ │ ├── cloud.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── core.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── etag.go
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ ├── exported/
│ │ │ │ │ │ │ ├── exported.go
│ │ │ │ │ │ │ ├── pipeline.go
│ │ │ │ │ │ │ ├── request.go
│ │ │ │ │ │ │ └── response_error.go
│ │ │ │ │ │ ├── log/
│ │ │ │ │ │ │ └── log.go
│ │ │ │ │ │ ├── pollers/
│ │ │ │ │ │ │ ├── async/
│ │ │ │ │ │ │ │ └── async.go
│ │ │ │ │ │ │ ├── body/
│ │ │ │ │ │ │ │ └── body.go
│ │ │ │ │ │ │ ├── fake/
│ │ │ │ │ │ │ │ └── fake.go
│ │ │ │ │ │ │ ├── loc/
│ │ │ │ │ │ │ │ └── loc.go
│ │ │ │ │ │ │ ├── op/
│ │ │ │ │ │ │ │ └── op.go
│ │ │ │ │ │ │ ├── poller.go
│ │ │ │ │ │ │ └── util.go
│ │ │ │ │ │ └── shared/
│ │ │ │ │ │ ├── constants.go
│ │ │ │ │ │ └── shared.go
│ │ │ │ │ ├── log/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── log.go
│ │ │ │ │ ├── policy/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── policy.go
│ │ │ │ │ ├── runtime/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── errors.go
│ │ │ │ │ │ ├── pager.go
│ │ │ │ │ │ ├── pipeline.go
│ │ │ │ │ │ ├── policy_api_version.go
│ │ │ │ │ │ ├── policy_bearer_token.go
│ │ │ │ │ │ ├── policy_body_download.go
│ │ │ │ │ │ ├── policy_http_header.go
│ │ │ │ │ │ ├── policy_http_trace.go
│ │ │ │ │ │ ├── policy_include_response.go
│ │ │ │ │ │ ├── policy_key_credential.go
│ │ │ │ │ │ ├── policy_logging.go
│ │ │ │ │ │ ├── policy_request_id.go
│ │ │ │ │ │ ├── policy_retry.go
│ │ │ │ │ │ ├── policy_sas_credential.go
│ │ │ │ │ │ ├── policy_telemetry.go
│ │ │ │ │ │ ├── poller.go
│ │ │ │ │ │ ├── request.go
│ │ │ │ │ │ ├── response.go
│ │ │ │ │ │ ├── transport_default_dialer_other.go
│ │ │ │ │ │ ├── transport_default_dialer_wasm.go
│ │ │ │ │ │ └── transport_default_http_client.go
│ │ │ │ │ ├── streaming/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── progress.go
│ │ │ │ │ ├── to/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── to.go
│ │ │ │ │ └── tracing/
│ │ │ │ │ ├── constants.go
│ │ │ │ │ └── tracing.go
│ │ │ │ ├── internal/
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── diag/
│ │ │ │ │ │ ├── diag.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── errorinfo/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── errorinfo.go
│ │ │ │ │ ├── exported/
│ │ │ │ │ │ └── exported.go
│ │ │ │ │ ├── log/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ └── log.go
│ │ │ │ │ ├── poller/
│ │ │ │ │ │ └── util.go
│ │ │ │ │ ├── temporal/
│ │ │ │ │ │ └── resource.go
│ │ │ │ │ └── uuid/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── uuid.go
│ │ │ │ └── storage/
│ │ │ │ └── azblob/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── README.md
│ │ │ │ ├── appendblob/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ ├── assets.json
│ │ │ │ ├── blob/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ ├── responses.go
│ │ │ │ │ ├── retry_reader.go
│ │ │ │ │ └── utils.go
│ │ │ │ ├── bloberror/
│ │ │ │ │ └── error_codes.go
│ │ │ │ ├── blockblob/
│ │ │ │ │ ├── chunkwriting.go
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ ├── ci.yml
│ │ │ │ ├── client.go
│ │ │ │ ├── common.go
│ │ │ │ ├── constants.go
│ │ │ │ ├── container/
│ │ │ │ │ ├── batch_builder.go
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── internal/
│ │ │ │ │ ├── base/
│ │ │ │ │ │ └── clients.go
│ │ │ │ │ ├── exported/
│ │ │ │ │ │ ├── access_conditions.go
│ │ │ │ │ │ ├── access_policy.go
│ │ │ │ │ │ ├── blob_batch.go
│ │ │ │ │ │ ├── exported.go
│ │ │ │ │ │ ├── log_events.go
│ │ │ │ │ │ ├── set_expiry.go
│ │ │ │ │ │ ├── shared_key_credential.go
│ │ │ │ │ │ ├── transfer_validation_option.go
│ │ │ │ │ │ ├── user_delegation_credential.go
│ │ │ │ │ │ └── version.go
│ │ │ │ │ ├── generated/
│ │ │ │ │ │ ├── appendblob_client.go
│ │ │ │ │ │ ├── autorest.md
│ │ │ │ │ │ ├── blob_client.go
│ │ │ │ │ │ ├── block_blob_client.go
│ │ │ │ │ │ ├── build.go
│ │ │ │ │ │ ├── constants.go
│ │ │ │ │ │ ├── container_client.go
│ │ │ │ │ │ ├── models.go
│ │ │ │ │ │ ├── pageblob_client.go
│ │ │ │ │ │ ├── service_client.go
│ │ │ │ │ │ ├── zz_appendblob_client.go
│ │ │ │ │ │ ├── zz_blob_client.go
│ │ │ │ │ │ ├── zz_blockblob_client.go
│ │ │ │ │ │ ├── zz_constants.go
│ │ │ │ │ │ ├── zz_container_client.go
│ │ │ │ │ │ ├── zz_models.go
│ │ │ │ │ │ ├── zz_models_serde.go
│ │ │ │ │ │ ├── zz_options.go
│ │ │ │ │ │ ├── zz_pageblob_client.go
│ │ │ │ │ │ ├── zz_responses.go
│ │ │ │ │ │ ├── zz_service_client.go
│ │ │ │ │ │ ├── zz_time_rfc1123.go
│ │ │ │ │ │ ├── zz_time_rfc3339.go
│ │ │ │ │ │ └── zz_xml_helper.go
│ │ │ │ │ └── shared/
│ │ │ │ │ ├── batch_transfer.go
│ │ │ │ │ ├── buffer_manager.go
│ │ │ │ │ ├── bytes_writer.go
│ │ │ │ │ ├── challenge_policy.go
│ │ │ │ │ ├── mmf_unix.go
│ │ │ │ │ ├── mmf_windows.go
│ │ │ │ │ ├── section_writer.go
│ │ │ │ │ └── shared.go
│ │ │ │ ├── log.go
│ │ │ │ ├── migrationguide.md
│ │ │ │ ├── models.go
│ │ │ │ ├── pageblob/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ ├── responses.go
│ │ │ │ ├── sas/
│ │ │ │ │ ├── account.go
│ │ │ │ │ ├── query_params.go
│ │ │ │ │ ├── service.go
│ │ │ │ │ └── url_parts.go
│ │ │ │ ├── service/
│ │ │ │ │ ├── batch_builder.go
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── constants.go
│ │ │ │ │ ├── models.go
│ │ │ │ │ └── responses.go
│ │ │ │ └── test-resources.json
│ │ │ ├── services/
│ │ │ │ └── preview/
│ │ │ │ └── containerregistry/
│ │ │ │ └── runtime/
│ │ │ │ └── 2019-08-15-preview/
│ │ │ │ └── containerregistry/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── accesstokens.go
│ │ │ │ ├── blob.go
│ │ │ │ ├── client.go
│ │ │ │ ├── dataplane_meta.json
│ │ │ │ ├── manifests.go
│ │ │ │ ├── models.go
│ │ │ │ ├── refreshtokens.go
│ │ │ │ ├── repository.go
│ │ │ │ ├── tag.go
│ │ │ │ ├── v2support.go
│ │ │ │ └── version.go
│ │ │ └── version/
│ │ │ └── version.go
│ │ └── go-ansiterm/
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── constants.go
│ │ ├── context.go
│ │ ├── csi_entry_state.go
│ │ ├── csi_param_state.go
│ │ ├── escape_intermediate_state.go
│ │ ├── escape_state.go
│ │ ├── event_handler.go
│ │ ├── ground_state.go
│ │ ├── osc_string_state.go
│ │ ├── parser.go
│ │ ├── parser_action_helpers.go
│ │ ├── parser_actions.go
│ │ ├── states.go
│ │ ├── utilities.go
│ │ └── winterm/
│ │ ├── ansi.go
│ │ ├── api.go
│ │ ├── attr_translation.go
│ │ ├── cursor_helpers.go
│ │ ├── erase_helpers.go
│ │ ├── scroll_helper.go
│ │ ├── utilities.go
│ │ └── win_event_handler.go
│ ├── GoogleCloudPlatform/
│ │ └── opentelemetry-operations-go/
│ │ ├── detectors/
│ │ │ └── gcp/
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── app_engine.go
│ │ │ ├── bms.go
│ │ │ ├── detector.go
│ │ │ ├── faas.go
│ │ │ ├── gce.go
│ │ │ └── gke.go
│ │ ├── exporter/
│ │ │ └── metric/
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── cloudmonitoring.go
│ │ │ ├── constants.go
│ │ │ ├── error.go
│ │ │ ├── metric.go
│ │ │ ├── option.go
│ │ │ └── version.go
│ │ └── internal/
│ │ └── resourcemapping/
│ │ ├── LICENSE
│ │ └── resourcemapping.go
│ ├── Microsoft/
│ │ ├── go-winio/
│ │ │ ├── .gitattributes
│ │ │ ├── .gitignore
│ │ │ ├── .golangci.yml
│ │ │ ├── CODEOWNERS
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── SECURITY.md
│ │ │ ├── backup.go
│ │ │ ├── backuptar/
│ │ │ │ ├── doc.go
│ │ │ │ ├── strconv.go
│ │ │ │ └── tar.go
│ │ │ ├── doc.go
│ │ │ ├── ea.go
│ │ │ ├── file.go
│ │ │ ├── fileinfo.go
│ │ │ ├── hvsock.go
│ │ │ ├── internal/
│ │ │ │ ├── fs/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── fs.go
│ │ │ │ │ ├── security.go
│ │ │ │ │ └── zsyscall_windows.go
│ │ │ │ ├── socket/
│ │ │ │ │ ├── rawaddr.go
│ │ │ │ │ ├── socket.go
│ │ │ │ │ └── zsyscall_windows.go
│ │ │ │ └── stringbuffer/
│ │ │ │ └── wstring.go
│ │ │ ├── pipe.go
│ │ │ ├── pkg/
│ │ │ │ ├── bindfilter/
│ │ │ │ │ ├── bind_filter.go
│ │ │ │ │ └── zsyscall_windows.go
│ │ │ │ └── guid/
│ │ │ │ ├── guid.go
│ │ │ │ ├── guid_nonwindows.go
│ │ │ │ ├── guid_windows.go
│ │ │ │ └── variant_string.go
│ │ │ ├── privilege.go
│ │ │ ├── reparse.go
│ │ │ ├── sd.go
│ │ │ ├── syscall.go
│ │ │ ├── vhd/
│ │ │ │ ├── vhd.go
│ │ │ │ └── zvhd_windows.go
│ │ │ └── zsyscall_windows.go
│ │ └── hcsshim/
│ │ ├── .clang-format
│ │ ├── .gitattributes
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── CODEOWNERS
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── Makefile.bootfiles
│ │ ├── Protobuild.toml
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── cmd/
│ │ │ └── containerd-shim-runhcs-v1/
│ │ │ └── options/
│ │ │ ├── doc.go
│ │ │ ├── runhcs.pb.go
│ │ │ └── runhcs.proto
│ │ ├── computestorage/
│ │ │ ├── attach.go
│ │ │ ├── destroy.go
│ │ │ ├── detach.go
│ │ │ ├── export.go
│ │ │ ├── format.go
│ │ │ ├── helpers.go
│ │ │ ├── import.go
│ │ │ ├── initialize.go
│ │ │ ├── mount.go
│ │ │ ├── setup.go
│ │ │ ├── storage.go
│ │ │ └── zsyscall_windows.go
│ │ ├── container.go
│ │ ├── errors.go
│ │ ├── hcsshim.go
│ │ ├── hnsaccelnet.go
│ │ ├── hnsendpoint.go
│ │ ├── hnsglobals.go
│ │ ├── hnsnetwork.go
│ │ ├── hnspolicy.go
│ │ ├── hnspolicylist.go
│ │ ├── hnssupport.go
│ │ ├── interface.go
│ │ ├── internal/
│ │ │ ├── cow/
│ │ │ │ └── cow.go
│ │ │ ├── hcs/
│ │ │ │ ├── callback.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── errors.go
│ │ │ │ ├── process.go
│ │ │ │ ├── schema1/
│ │ │ │ │ └── schema1.go
│ │ │ │ ├── schema2/
│ │ │ │ │ ├── attachment.go
│ │ │ │ │ ├── battery.go
│ │ │ │ │ ├── cache_query_stats_response.go
│ │ │ │ │ ├── chipset.go
│ │ │ │ │ ├── cimfs.go
│ │ │ │ │ ├── close_handle.go
│ │ │ │ │ ├── com_port.go
│ │ │ │ │ ├── compute_system.go
│ │ │ │ │ ├── configuration.go
│ │ │ │ │ ├── console_size.go
│ │ │ │ │ ├── container.go
│ │ │ │ │ ├── container_credential_guard_add_instance_request.go
│ │ │ │ │ ├── container_credential_guard_hv_socket_service_config.go
│ │ │ │ │ ├── container_credential_guard_instance.go
│ │ │ │ │ ├── container_credential_guard_modify_operation.go
│ │ │ │ │ ├── container_credential_guard_operation_request.go
│ │ │ │ │ ├── container_credential_guard_remove_instance_request.go
│ │ │ │ │ ├── container_credential_guard_state.go
│ │ │ │ │ ├── container_credential_guard_system_info.go
│ │ │ │ │ ├── container_memory_information.go
│ │ │ │ │ ├── cpu_group.go
│ │ │ │ │ ├── cpu_group_affinity.go
│ │ │ │ │ ├── cpu_group_config.go
│ │ │ │ │ ├── cpu_group_configurations.go
│ │ │ │ │ ├── cpu_group_operations.go
│ │ │ │ │ ├── cpu_group_property.go
│ │ │ │ │ ├── create_group_operation.go
│ │ │ │ │ ├── debug_options.go
│ │ │ │ │ ├── delete_group_operation.go
│ │ │ │ │ ├── device.go
│ │ │ │ │ ├── devices.go
│ │ │ │ │ ├── enhanced_mode_video.go
│ │ │ │ │ ├── firmware.go
│ │ │ │ │ ├── flexible_io_device.go
│ │ │ │ │ ├── guest_connection.go
│ │ │ │ │ ├── guest_connection_info.go
│ │ │ │ │ ├── guest_crash_reporting.go
│ │ │ │ │ ├── guest_os.go
│ │ │ │ │ ├── guest_state.go
│ │ │ │ │ ├── host_processor_modify_request.go
│ │ │ │ │ ├── hosted_system.go
│ │ │ │ │ ├── hv_socket.go
│ │ │ │ │ ├── hv_socket_2.go
│ │ │ │ │ ├── hv_socket_address.go
│ │ │ │ │ ├── hv_socket_service_config.go
│ │ │ │ │ ├── hv_socket_system_config.go
│ │ │ │ │ ├── interrupt_moderation_mode.go
│ │ │ │ │ ├── iov_settings.go
│ │ │ │ │ ├── isolation_settings.go
│ │ │ │ │ ├── keyboard.go
│ │ │ │ │ ├── layer.go
│ │ │ │ │ ├── linux_kernel_direct.go
│ │ │ │ │ ├── logical_processor.go
│ │ │ │ │ ├── mapped_directory.go
│ │ │ │ │ ├── mapped_pipe.go
│ │ │ │ │ ├── memory.go
│ │ │ │ │ ├── memory_backing_type.go
│ │ │ │ │ ├── memory_information_for_vm.go
│ │ │ │ │ ├── memory_stats.go
│ │ │ │ │ ├── model_container_definition_device.go
│ │ │ │ │ ├── model_device_category.go
│ │ │ │ │ ├── model_device_extension.go
│ │ │ │ │ ├── model_device_instance.go
│ │ │ │ │ ├── model_device_namespace.go
│ │ │ │ │ ├── model_interface_class.go
│ │ │ │ │ ├── model_namespace.go
│ │ │ │ │ ├── model_object_directory.go
│ │ │ │ │ ├── model_object_namespace.go
│ │ │ │ │ ├── model_object_symlink.go
│ │ │ │ │ ├── modification_request.go
│ │ │ │ │ ├── modify_setting_request.go
│ │ │ │ │ ├── mouse.go
│ │ │ │ │ ├── network_adapter.go
│ │ │ │ │ ├── networking.go
│ │ │ │ │ ├── numa.go
│ │ │ │ │ ├── numa_node.go
│ │ │ │ │ ├── numa_node_memory.go
│ │ │ │ │ ├── numa_node_processor.go
│ │ │ │ │ ├── numa_processors.go
│ │ │ │ │ ├── numa_setting.go
│ │ │ │ │ ├── pause_notification.go
│ │ │ │ │ ├── pause_options.go
│ │ │ │ │ ├── plan9.go
│ │ │ │ │ ├── plan9_share.go
│ │ │ │ │ ├── process_details.go
│ │ │ │ │ ├── process_modify_request.go
│ │ │ │ │ ├── process_parameters.go
│ │ │ │ │ ├── process_status.go
│ │ │ │ │ ├── processor.go
│ │ │ │ │ ├── processor_stats.go
│ │ │ │ │ ├── processor_topology.go
│ │ │ │ │ ├── properties.go
│ │ │ │ │ ├── property_query.go
│ │ │ │ │ ├── property_type.go
│ │ │ │ │ ├── rdp_connection_options.go
│ │ │ │ │ ├── registry_changes.go
│ │ │ │ │ ├── registry_hive.go
│ │ │ │ │ ├── registry_key.go
│ │ │ │ │ ├── registry_value.go
│ │ │ │ │ ├── registry_value_type.go
│ │ │ │ │ ├── restore_state.go
│ │ │ │ │ ├── save_options.go
│ │ │ │ │ ├── scsi.go
│ │ │ │ │ ├── security_settings.go
│ │ │ │ │ ├── service_properties.go
│ │ │ │ │ ├── shared_memory_configuration.go
│ │ │ │ │ ├── shared_memory_region.go
│ │ │ │ │ ├── shared_memory_region_info.go
│ │ │ │ │ ├── silo_properties.go
│ │ │ │ │ ├── statistics.go
│ │ │ │ │ ├── storage.go
│ │ │ │ │ ├── storage_qo_s.go
│ │ │ │ │ ├── storage_stats.go
│ │ │ │ │ ├── system_time.go
│ │ │ │ │ ├── time_zone_information.go
│ │ │ │ │ ├── topology.go
│ │ │ │ │ ├── uefi.go
│ │ │ │ │ ├── uefi_boot_entry.go
│ │ │ │ │ ├── version.go
│ │ │ │ │ ├── video_monitor.go
│ │ │ │ │ ├── virtual_machine.go
│ │ │ │ │ ├── virtual_machine_memory.go
│ │ │ │ │ ├── virtual_machine_processor.go
│ │ │ │ │ ├── virtual_node_info.go
│ │ │ │ │ ├── virtual_p_mem_controller.go
│ │ │ │ │ ├── virtual_p_mem_device.go
│ │ │ │ │ ├── virtual_p_mem_mapping.go
│ │ │ │ │ ├── virtual_pci_device.go
│ │ │ │ │ ├── virtual_pci_function.go
│ │ │ │ │ ├── virtual_slit_type.go
│ │ │ │ │ ├── virtual_smb.go
│ │ │ │ │ ├── virtual_smb_share.go
│ │ │ │ │ ├── virtual_smb_share_options.go
│ │ │ │ │ ├── vm_memory.go
│ │ │ │ │ ├── vm_processor_limits.go
│ │ │ │ │ └── windows_crash_reporting.go
│ │ │ │ ├── service.go
│ │ │ │ ├── system.go
│ │ │ │ ├── utils.go
│ │ │ │ └── waithelper.go
│ │ │ ├── hcserror/
│ │ │ │ ├── doc.go
│ │ │ │ └── hcserror.go
│ │ │ ├── hns/
│ │ │ │ ├── doc.go
│ │ │ │ ├── hns.go
│ │ │ │ ├── hnsaccelnet.go
│ │ │ │ ├── hnsendpoint.go
│ │ │ │ ├── hnsfuncs.go
│ │ │ │ ├── hnsglobals.go
│ │ │ │ ├── hnsnetwork.go
│ │ │ │ ├── hnspolicy.go
│ │ │ │ ├── hnspolicylist.go
│ │ │ │ ├── hnssupport.go
│ │ │ │ ├── namespace.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ ├── interop/
│ │ │ │ ├── doc.go
│ │ │ │ ├── interop.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ ├── jobobject/
│ │ │ │ ├── doc.go
│ │ │ │ ├── iocp.go
│ │ │ │ ├── jobobject.go
│ │ │ │ └── limits.go
│ │ │ ├── log/
│ │ │ │ ├── context.go
│ │ │ │ ├── format.go
│ │ │ │ ├── hook.go
│ │ │ │ ├── nopformatter.go
│ │ │ │ └── scrub.go
│ │ │ ├── logfields/
│ │ │ │ └── fields.go
│ │ │ ├── longpath/
│ │ │ │ └── longpath.go
│ │ │ ├── memory/
│ │ │ │ ├── pool.go
│ │ │ │ └── types.go
│ │ │ ├── mergemaps/
│ │ │ │ └── merge.go
│ │ │ ├── oc/
│ │ │ │ ├── errors.go
│ │ │ │ ├── exporter.go
│ │ │ │ └── span.go
│ │ │ ├── protocol/
│ │ │ │ └── guestrequest/
│ │ │ │ └── types.go
│ │ │ ├── queue/
│ │ │ │ └── mq.go
│ │ │ ├── safefile/
│ │ │ │ ├── do.go
│ │ │ │ └── safeopen.go
│ │ │ ├── security/
│ │ │ │ ├── grantvmgroupaccess.go
│ │ │ │ ├── syscall_windows.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ ├── timeout/
│ │ │ │ └── timeout.go
│ │ │ ├── vmcompute/
│ │ │ │ ├── doc.go
│ │ │ │ ├── vmcompute.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ ├── wclayer/
│ │ │ │ ├── activatelayer.go
│ │ │ │ ├── baselayerreader.go
│ │ │ │ ├── baselayerwriter.go
│ │ │ │ ├── converttobaselayer.go
│ │ │ │ ├── createlayer.go
│ │ │ │ ├── createscratchlayer.go
│ │ │ │ ├── deactivatelayer.go
│ │ │ │ ├── destroylayer.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── expandscratchsize.go
│ │ │ │ ├── exportlayer.go
│ │ │ │ ├── getlayermountpath.go
│ │ │ │ ├── getsharedbaseimages.go
│ │ │ │ ├── grantvmaccess.go
│ │ │ │ ├── importlayer.go
│ │ │ │ ├── layerexists.go
│ │ │ │ ├── layerid.go
│ │ │ │ ├── layerutils.go
│ │ │ │ ├── legacy.go
│ │ │ │ ├── nametoguid.go
│ │ │ │ ├── preparelayer.go
│ │ │ │ ├── processimage.go
│ │ │ │ ├── unpreparelayer.go
│ │ │ │ ├── wclayer.go
│ │ │ │ └── zsyscall_windows.go
│ │ │ └── winapi/
│ │ │ ├── bindflt.go
│ │ │ ├── cimfs.go
│ │ │ ├── console.go
│ │ │ ├── devices.go
│ │ │ ├── doc.go
│ │ │ ├── elevation.go
│ │ │ ├── errors.go
│ │ │ ├── filesystem.go
│ │ │ ├── jobobject.go
│ │ │ ├── logon.go
│ │ │ ├── memory.go
│ │ │ ├── net.go
│ │ │ ├── offlinereg.go
│ │ │ ├── path.go
│ │ │ ├── process.go
│ │ │ ├── processor.go
│ │ │ ├── system.go
│ │ │ ├── thread.go
│ │ │ ├── user.go
│ │ │ ├── utils.go
│ │ │ ├── winapi.go
│ │ │ └── zsyscall_windows.go
│ │ ├── layer.go
│ │ ├── osversion/
│ │ │ ├── osversion_windows.go
│ │ │ ├── platform_compat_windows.go
│ │ │ └── windowsbuilds.go
│ │ ├── pkg/
│ │ │ └── ociwclayer/
│ │ │ ├── doc.go
│ │ │ ├── export.go
│ │ │ └── import.go
│ │ ├── process.go
│ │ └── zsyscall_windows.go
│ ├── ProtonMail/
│ │ └── go-crypto/
│ │ ├── AUTHORS
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ ├── PATENTS
│ │ ├── bitcurves/
│ │ │ └── bitcurve.go
│ │ ├── brainpool/
│ │ │ ├── brainpool.go
│ │ │ └── rcurve.go
│ │ ├── eax/
│ │ │ ├── eax.go
│ │ │ ├── eax_test_vectors.go
│ │ │ └── random_vectors.go
│ │ ├── internal/
│ │ │ └── byteutil/
│ │ │ └── byteutil.go
│ │ ├── ocb/
│ │ │ ├── ocb.go
│ │ │ ├── random_vectors.go
│ │ │ ├── rfc7253_test_vectors_suite_a.go
│ │ │ └── rfc7253_test_vectors_suite_b.go
│ │ └── openpgp/
│ │ ├── aes/
│ │ │ └── keywrap/
│ │ │ └── keywrap.go
│ │ ├── armor/
│ │ │ ├── armor.go
│ │ │ └── encode.go
│ │ ├── canonical_text.go
│ │ ├── ecdh/
│ │ │ └── ecdh.go
│ │ ├── ecdsa/
│ │ │ └── ecdsa.go
│ │ ├── ed25519/
│ │ │ └── ed25519.go
│ │ ├── ed448/
│ │ │ └── ed448.go
│ │ ├── eddsa/
│ │ │ └── eddsa.go
│ │ ├── elgamal/
│ │ │ └── elgamal.go
│ │ ├── errors/
│ │ │ └── errors.go
│ │ ├── hash.go
│ │ ├── internal/
│ │ │ ├── algorithm/
│ │ │ │ ├── aead.go
│ │ │ │ ├── cipher.go
│ │ │ │ └── hash.go
│ │ │ ├── ecc/
│ │ │ │ ├── curve25519.go
│ │ │ │ ├── curve_info.go
│ │ │ │ ├── curves.go
│ │ │ │ ├── ed25519.go
│ │ │ │ ├── ed448.go
│ │ │ │ ├── generic.go
│ │ │ │ └── x448.go
│ │ │ └── encoding/
│ │ │ ├── encoding.go
│ │ │ ├── mpi.go
│ │ │ └── oid.go
│ │ ├── key_generation.go
│ │ ├── keys.go
│ │ ├── keys_test_data.go
│ │ ├── packet/
│ │ │ ├── aead_config.go
│ │ │ ├── aead_crypter.go
│ │ │ ├── aead_encrypted.go
│ │ │ ├── compressed.go
│ │ │ ├── config.go
│ │ │ ├── config_v5.go
│ │ │ ├── encrypted_key.go
│ │ │ ├── literal.go
│ │ │ ├── marker.go
│ │ │ ├── notation.go
│ │ │ ├── ocfb.go
│ │ │ ├── one_pass_signature.go
│ │ │ ├── opaque.go
│ │ │ ├── packet.go
│ │ │ ├── packet_sequence.go
│ │ │ ├── packet_unsupported.go
│ │ │ ├── padding.go
│ │ │ ├── private_key.go
│ │ │ ├── private_key_test_data.go
│ │ │ ├── public_key.go
│ │ │ ├── public_key_test_data.go
│ │ │ ├── reader.go
│ │ │ ├── recipient.go
│ │ │ ├── signature.go
│ │ │ ├── symmetric_key_encrypted.go
│ │ │ ├── symmetrically_encrypted.go
│ │ │ ├── symmetrically_encrypted_aead.go
│ │ │ ├── symmetrically_encrypted_mdc.go
│ │ │ ├── userattribute.go
│ │ │ └── userid.go
│ │ ├── read.go
│ │ ├── read_write_test_data.go
│ │ ├── s2k/
│ │ │ ├── s2k.go
│ │ │ ├── s2k_cache.go
│ │ │ └── s2k_config.go
│ │ ├── write.go
│ │ ├── x25519/
│ │ │ └── x25519.go
│ │ └── x448/
│ │ └── x448.go
│ ├── agext/
│ │ └── levenshtein/
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── DCO
│ │ ├── LICENSE
│ │ ├── MAINTAINERS
│ │ ├── NOTICE
│ │ ├── README.md
│ │ ├── levenshtein.go
│ │ ├── params.go
│ │ └── test.sh
│ ├── aws/
│ │ ├── aws-sdk-go-v2/
│ │ │ ├── LICENSE.txt
│ │ │ ├── NOTICE.txt
│ │ │ ├── aws/
│ │ │ │ ├── accountid_endpoint_mode.go
│ │ │ │ ├── arn/
│ │ │ │ │ └── arn.go
│ │ │ │ ├── checksum.go
│ │ │ │ ├── config.go
│ │ │ │ ├── context.go
│ │ │ │ ├── credential_cache.go
│ │ │ │ ├── credentials.go
│ │ │ │ ├── defaults/
│ │ │ │ │ ├── auto.go
│ │ │ │ │ ├── configuration.go
│ │ │ │ │ ├── defaults.go
│ │ │ │ │ └── doc.go
│ │ │ │ ├── defaultsmode.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── errors.go
│ │ │ │ ├── from_ptr.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── logging.go
│ │ │ │ ├── logging_generate.go
│ │ │ │ ├── middleware/
│ │ │ │ │ ├── metadata.go
│ │ │ │ │ ├── middleware.go
│ │ │ │ │ ├── osname.go
│ │ │ │ │ ├── osname_go115.go
│ │ │ │ │ ├── recursion_detection.go
│ │ │ │ │ ├── request_id.go
│ │ │ │ │ ├── request_id_retriever.go
│ │ │ │ │ └── user_agent.go
│ │ │ │ ├── protocol/
│ │ │ │ │ ├── eventstream/
│ │ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ │ ├── debug.go
│ │ │ │ │ │ ├── decode.go
│ │ │ │ │ │ ├── encode.go
│ │ │ │ │ │ ├── error.go
│ │ │ │ │ │ ├── eventstreamapi/
│ │ │ │ │ │ │ ├── headers.go
│ │ │ │ │ │ │ ├── middleware.go
│ │ │ │ │ │ │ ├── transport.go
│ │ │ │ │ │ │ └── transport_go117.go
│ │ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ │ ├── header.go
│ │ │ │ │ │ ├── header_value.go
│ │ │ │ │ │ └── message.go
│ │ │ │ │ ├── query/
│ │ │ │ │ │ ├── array.go
│ │ │ │ │ │ ├── encoder.go
│ │ │ │ │ │ ├── map.go
│ │ │ │ │ │ ├── middleware.go
│ │ │ │ │ │ ├── object.go
│ │ │ │ │ │ └── value.go
│ │ │ │ │ ├── restjson/
│ │ │ │ │ │ └── decoder_util.go
│ │ │ │ │ └── xml/
│ │ │ │ │ └── error_utils.go
│ │ │ │ ├── ratelimit/
│ │ │ │ │ ├── none.go
│ │ │ │ │ ├── token_bucket.go
│ │ │ │ │ └── token_rate_limit.go
│ │ │ │ ├── request.go
│ │ │ │ ├── retry/
│ │ │ │ │ ├── adaptive.go
│ │ │ │ │ ├── adaptive_ratelimit.go
│ │ │ │ │ ├── adaptive_token_bucket.go
│ │ │ │ │ ├── attempt_metrics.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── jitter_backoff.go
│ │ │ │ │ ├── metadata.go
│ │ │ │ │ ├── middleware.go
│ │ │ │ │ ├── retry.go
│ │ │ │ │ ├── retryable_error.go
│ │ │ │ │ ├── standard.go
│ │ │ │ │ ├── throttle_error.go
│ │ │ │ │ └── timeout_error.go
│ │ │ │ ├── retryer.go
│ │ │ │ ├── runtime.go
│ │ │ │ ├── signer/
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ └── v4/
│ │ │ │ │ │ ├── cache.go
│ │ │ │ │ │ ├── const.go
│ │ │ │ │ │ ├── header_rules.go
│ │ │ │ │ │ ├── headers.go
│ │ │ │ │ │ ├── hmac.go
│ │ │ │ │ │ ├── host.go
│ │ │ │ │ │ ├── scope.go
│ │ │ │ │ │ ├── time.go
│ │ │ │ │ │ └── util.go
│ │ │ │ │ └── v4/
│ │ │ │ │ ├── middleware.go
│ │ │ │ │ ├── presign_middleware.go
│ │ │ │ │ ├── stream.go
│ │ │ │ │ └── v4.go
│ │ │ │ ├── to_ptr.go
│ │ │ │ ├── transport/
│ │ │ │ │ └── http/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── content_type.go
│ │ │ │ │ ├── response_error.go
│ │ │ │ │ ├── response_error_middleware.go
│ │ │ │ │ └── timeout_read_closer.go
│ │ │ │ ├── types.go
│ │ │ │ └── version.go
│ │ │ ├── config/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── config.go
│ │ │ │ ├── defaultsmode.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── env_config.go
│ │ │ │ ├── generate.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── load_options.go
│ │ │ │ ├── local.go
│ │ │ │ ├── provider.go
│ │ │ │ ├── resolve.go
│ │ │ │ ├── resolve_bearer_token.go
│ │ │ │ ├── resolve_credentials.go
│ │ │ │ └── shared_config.go
│ │ │ ├── credentials/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── doc.go
│ │ │ │ ├── ec2rolecreds/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── provider.go
│ │ │ │ ├── endpointcreds/
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ └── client/
│ │ │ │ │ │ ├── auth.go
│ │ │ │ │ │ ├── client.go
│ │ │ │ │ │ ├── endpoints.go
│ │ │ │ │ │ └── middleware.go
│ │ │ │ │ └── provider.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── processcreds/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── provider.go
│ │ │ │ ├── ssocreds/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── sso_cached_token.go
│ │ │ │ │ ├── sso_credentials_provider.go
│ │ │ │ │ └── sso_token_provider.go
│ │ │ │ ├── static_provider.go
│ │ │ │ └── stscreds/
│ │ │ │ ├── assume_role_provider.go
│ │ │ │ └── web_identity_provider.go
│ │ │ ├── feature/
│ │ │ │ ├── ec2/
│ │ │ │ │ └── imds/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── api_client.go
│ │ │ │ │ ├── api_op_GetDynamicData.go
│ │ │ │ │ ├── api_op_GetIAMInfo.go
│ │ │ │ │ ├── api_op_GetInstanceIdentityDocument.go
│ │ │ │ │ ├── api_op_GetMetadata.go
│ │ │ │ │ ├── api_op_GetRegion.go
│ │ │ │ │ ├── api_op_GetToken.go
│ │ │ │ │ ├── api_op_GetUserData.go
│ │ │ │ │ ├── auth.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── endpoints.go
│ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ ├── internal/
│ │ │ │ │ │ └── config/
│ │ │ │ │ │ └── resolvers.go
│ │ │ │ │ ├── request_middleware.go
│ │ │ │ │ └── token_provider.go
│ │ │ │ └── s3/
│ │ │ │ └── manager/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api.go
│ │ │ │ ├── arn.go
│ │ │ │ ├── bucket_region.go
│ │ │ │ ├── buffered_read_seeker.go
│ │ │ │ ├── default_read_seeker_write_to.go
│ │ │ │ ├── default_read_seeker_write_to_windows.go
│ │ │ │ ├── default_writer_read_from.go
│ │ │ │ ├── default_writer_read_from_windows.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── download.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── pool.go
│ │ │ │ ├── read_seeker_write_to.go
│ │ │ │ ├── types.go
│ │ │ │ ├── upload.go
│ │ │ │ └── writer_read_from.go
│ │ │ ├── internal/
│ │ │ │ ├── auth/
│ │ │ │ │ ├── auth.go
│ │ │ │ │ ├── scheme.go
│ │ │ │ │ └── smithy/
│ │ │ │ │ ├── bearer_token_adapter.go
│ │ │ │ │ ├── bearer_token_signer_adapter.go
│ │ │ │ │ ├── credentials_adapter.go
│ │ │ │ │ ├── smithy.go
│ │ │ │ │ └── v4signer_adapter.go
│ │ │ │ ├── awsutil/
│ │ │ │ │ ├── copy.go
│ │ │ │ │ ├── equal.go
│ │ │ │ │ ├── prettify.go
│ │ │ │ │ └── string_value.go
│ │ │ │ ├── configsources/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── config.go
│ │ │ │ │ ├── endpoints.go
│ │ │ │ │ └── go_module_metadata.go
│ │ │ │ ├── context/
│ │ │ │ │ └── context.go
│ │ │ │ ├── endpoints/
│ │ │ │ │ ├── awsrulesfn/
│ │ │ │ │ │ ├── arn.go
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── generate.go
│ │ │ │ │ │ ├── host.go
│ │ │ │ │ │ ├── partition.go
│ │ │ │ │ │ ├── partitions.go
│ │ │ │ │ │ └── partitions.json
│ │ │ │ │ ├── endpoints.go
│ │ │ │ │ └── v2/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── endpoints.go
│ │ │ │ │ └── go_module_metadata.go
│ │ │ │ ├── ini/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ ├── ini.go
│ │ │ │ │ ├── parse.go
│ │ │ │ │ ├── sections.go
│ │ │ │ │ ├── strings.go
│ │ │ │ │ ├── token.go
│ │ │ │ │ ├── tokenize.go
│ │ │ │ │ └── value.go
│ │ │ │ ├── middleware/
│ │ │ │ │ └── middleware.go
│ │ │ │ ├── rand/
│ │ │ │ │ └── rand.go
│ │ │ │ ├── sdk/
│ │ │ │ │ ├── interfaces.go
│ │ │ │ │ └── time.go
│ │ │ │ ├── sdkio/
│ │ │ │ │ └── byte.go
│ │ │ │ ├── shareddefaults/
│ │ │ │ │ └── shared_config.go
│ │ │ │ ├── strings/
│ │ │ │ │ └── strings.go
│ │ │ │ ├── sync/
│ │ │ │ │ └── singleflight/
│ │ │ │ │ ├── LICENSE
│ │ │ │ │ ├── docs.go
│ │ │ │ │ └── singleflight.go
│ │ │ │ ├── timeconv/
│ │ │ │ │ └── duration.go
│ │ │ │ └── v4a/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── credentials.go
│ │ │ │ ├── error.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ ├── crypto/
│ │ │ │ │ │ ├── compare.go
│ │ │ │ │ │ └── ecc.go
│ │ │ │ │ └── v4/
│ │ │ │ │ ├── const.go
│ │ │ │ │ ├── header_rules.go
│ │ │ │ │ ├── headers.go
│ │ │ │ │ ├── hmac.go
│ │ │ │ │ ├── host.go
│ │ │ │ │ ├── time.go
│ │ │ │ │ └── util.go
│ │ │ │ ├── middleware.go
│ │ │ │ ├── presign_middleware.go
│ │ │ │ ├── smithy.go
│ │ │ │ └── v4a.go
│ │ │ └── service/
│ │ │ ├── ecr/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_BatchCheckLayerAvailability.go
│ │ │ │ ├── api_op_BatchDeleteImage.go
│ │ │ │ ├── api_op_BatchGetImage.go
│ │ │ │ ├── api_op_BatchGetRepositoryScanningConfiguration.go
│ │ │ │ ├── api_op_CompleteLayerUpload.go
│ │ │ │ ├── api_op_CreatePullThroughCacheRule.go
│ │ │ │ ├── api_op_CreateRepository.go
│ │ │ │ ├── api_op_CreateRepositoryCreationTemplate.go
│ │ │ │ ├── api_op_DeleteLifecyclePolicy.go
│ │ │ │ ├── api_op_DeletePullThroughCacheRule.go
│ │ │ │ ├── api_op_DeleteRegistryPolicy.go
│ │ │ │ ├── api_op_DeleteRepository.go
│ │ │ │ ├── api_op_DeleteRepositoryCreationTemplate.go
│ │ │ │ ├── api_op_DeleteRepositoryPolicy.go
│ │ │ │ ├── api_op_DescribeImageReplicationStatus.go
│ │ │ │ ├── api_op_DescribeImageScanFindings.go
│ │ │ │ ├── api_op_DescribeImages.go
│ │ │ │ ├── api_op_DescribePullThroughCacheRules.go
│ │ │ │ ├── api_op_DescribeRegistry.go
│ │ │ │ ├── api_op_DescribeRepositories.go
│ │ │ │ ├── api_op_DescribeRepositoryCreationTemplates.go
│ │ │ │ ├── api_op_GetAccountSetting.go
│ │ │ │ ├── api_op_GetAuthorizationToken.go
│ │ │ │ ├── api_op_GetDownloadUrlForLayer.go
│ │ │ │ ├── api_op_GetLifecyclePolicy.go
│ │ │ │ ├── api_op_GetLifecyclePolicyPreview.go
│ │ │ │ ├── api_op_GetRegistryPolicy.go
│ │ │ │ ├── api_op_GetRegistryScanningConfiguration.go
│ │ │ │ ├── api_op_GetRepositoryPolicy.go
│ │ │ │ ├── api_op_InitiateLayerUpload.go
│ │ │ │ ├── api_op_ListImages.go
│ │ │ │ ├── api_op_ListTagsForResource.go
│ │ │ │ ├── api_op_PutAccountSetting.go
│ │ │ │ ├── api_op_PutImage.go
│ │ │ │ ├── api_op_PutImageScanningConfiguration.go
│ │ │ │ ├── api_op_PutImageTagMutability.go
│ │ │ │ ├── api_op_PutLifecyclePolicy.go
│ │ │ │ ├── api_op_PutRegistryPolicy.go
│ │ │ │ ├── api_op_PutRegistryScanningConfiguration.go
│ │ │ │ ├── api_op_PutReplicationConfiguration.go
│ │ │ │ ├── api_op_SetRepositoryPolicy.go
│ │ │ │ ├── api_op_StartImageScan.go
│ │ │ │ ├── api_op_StartLifecyclePolicyPreview.go
│ │ │ │ ├── api_op_TagResource.go
│ │ │ │ ├── api_op_UntagResource.go
│ │ │ │ ├── api_op_UpdatePullThroughCacheRule.go
│ │ │ │ ├── api_op_UpdateRepositoryCreationTemplate.go
│ │ │ │ ├── api_op_UploadLayerPart.go
│ │ │ │ ├── api_op_ValidatePullThroughCacheRule.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── enums.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ └── validators.go
│ │ │ ├── ecrpublic/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_BatchCheckLayerAvailability.go
│ │ │ │ ├── api_op_BatchDeleteImage.go
│ │ │ │ ├── api_op_CompleteLayerUpload.go
│ │ │ │ ├── api_op_CreateRepository.go
│ │ │ │ ├── api_op_DeleteRepository.go
│ │ │ │ ├── api_op_DeleteRepositoryPolicy.go
│ │ │ │ ├── api_op_DescribeImageTags.go
│ │ │ │ ├── api_op_DescribeImages.go
│ │ │ │ ├── api_op_DescribeRegistries.go
│ │ │ │ ├── api_op_DescribeRepositories.go
│ │ │ │ ├── api_op_GetAuthorizationToken.go
│ │ │ │ ├── api_op_GetRegistryCatalogData.go
│ │ │ │ ├── api_op_GetRepositoryCatalogData.go
│ │ │ │ ├── api_op_GetRepositoryPolicy.go
│ │ │ │ ├── api_op_InitiateLayerUpload.go
│ │ │ │ ├── api_op_ListTagsForResource.go
│ │ │ │ ├── api_op_PutImage.go
│ │ │ │ ├── api_op_PutRegistryCatalogData.go
│ │ │ │ ├── api_op_PutRepositoryCatalogData.go
│ │ │ │ ├── api_op_SetRepositoryPolicy.go
│ │ │ │ ├── api_op_TagResource.go
│ │ │ │ ├── api_op_UntagResource.go
│ │ │ │ ├── api_op_UploadLayerPart.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── enums.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ └── validators.go
│ │ │ ├── internal/
│ │ │ │ ├── accept-encoding/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── accept_encoding_gzip.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── go_module_metadata.go
│ │ │ │ ├── checksum/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── algorithms.go
│ │ │ │ │ ├── aws_chunked_encoding.go
│ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ ├── middleware_add.go
│ │ │ │ │ ├── middleware_checksum_metrics_tracking.go
│ │ │ │ │ ├── middleware_compute_input_checksum.go
│ │ │ │ │ ├── middleware_setup_context.go
│ │ │ │ │ └── middleware_validate_output.go
│ │ │ │ ├── presigned-url/
│ │ │ │ │ ├── CHANGELOG.md
│ │ │ │ │ ├── LICENSE.txt
│ │ │ │ │ ├── context.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── go_module_metadata.go
│ │ │ │ │ └── middleware.go
│ │ │ │ └── s3shared/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── arn/
│ │ │ │ │ ├── accesspoint_arn.go
│ │ │ │ │ ├── arn.go
│ │ │ │ │ ├── arn_member.go
│ │ │ │ │ ├── outpost_arn.go
│ │ │ │ │ └── s3_object_lambda_arn.go
│ │ │ │ ├── arn_lookup.go
│ │ │ │ ├── config/
│ │ │ │ │ └── config.go
│ │ │ │ ├── endpoint_error.go
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── host_id.go
│ │ │ │ ├── metadata.go
│ │ │ │ ├── metadata_retriever.go
│ │ │ │ ├── resource_request.go
│ │ │ │ ├── response_error.go
│ │ │ │ ├── response_error_middleware.go
│ │ │ │ ├── s3100continue.go
│ │ │ │ ├── update_endpoint.go
│ │ │ │ └── xml_utils.go
│ │ │ ├── s3/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_AbortMultipartUpload.go
│ │ │ │ ├── api_op_CompleteMultipartUpload.go
│ │ │ │ ├── api_op_CopyObject.go
│ │ │ │ ├── api_op_CreateBucket.go
│ │ │ │ ├── api_op_CreateBucketMetadataTableConfiguration.go
│ │ │ │ ├── api_op_CreateMultipartUpload.go
│ │ │ │ ├── api_op_CreateSession.go
│ │ │ │ ├── api_op_DeleteBucket.go
│ │ │ │ ├── api_op_DeleteBucketAnalyticsConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketCors.go
│ │ │ │ ├── api_op_DeleteBucketEncryption.go
│ │ │ │ ├── api_op_DeleteBucketIntelligentTieringConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketInventoryConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketLifecycle.go
│ │ │ │ ├── api_op_DeleteBucketMetadataTableConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketMetricsConfiguration.go
│ │ │ │ ├── api_op_DeleteBucketOwnershipControls.go
│ │ │ │ ├── api_op_DeleteBucketPolicy.go
│ │ │ │ ├── api_op_DeleteBucketReplication.go
│ │ │ │ ├── api_op_DeleteBucketTagging.go
│ │ │ │ ├── api_op_DeleteBucketWebsite.go
│ │ │ │ ├── api_op_DeleteObject.go
│ │ │ │ ├── api_op_DeleteObjectTagging.go
│ │ │ │ ├── api_op_DeleteObjects.go
│ │ │ │ ├── api_op_DeletePublicAccessBlock.go
│ │ │ │ ├── api_op_GetBucketAccelerateConfiguration.go
│ │ │ │ ├── api_op_GetBucketAcl.go
│ │ │ │ ├── api_op_GetBucketAnalyticsConfiguration.go
│ │ │ │ ├── api_op_GetBucketCors.go
│ │ │ │ ├── api_op_GetBucketEncryption.go
│ │ │ │ ├── api_op_GetBucketIntelligentTieringConfiguration.go
│ │ │ │ ├── api_op_GetBucketInventoryConfiguration.go
│ │ │ │ ├── api_op_GetBucketLifecycleConfiguration.go
│ │ │ │ ├── api_op_GetBucketLocation.go
│ │ │ │ ├── api_op_GetBucketLogging.go
│ │ │ │ ├── api_op_GetBucketMetadataTableConfiguration.go
│ │ │ │ ├── api_op_GetBucketMetricsConfiguration.go
│ │ │ │ ├── api_op_GetBucketNotificationConfiguration.go
│ │ │ │ ├── api_op_GetBucketOwnershipControls.go
│ │ │ │ ├── api_op_GetBucketPolicy.go
│ │ │ │ ├── api_op_GetBucketPolicyStatus.go
│ │ │ │ ├── api_op_GetBucketReplication.go
│ │ │ │ ├── api_op_GetBucketRequestPayment.go
│ │ │ │ ├── api_op_GetBucketTagging.go
│ │ │ │ ├── api_op_GetBucketVersioning.go
│ │ │ │ ├── api_op_GetBucketWebsite.go
│ │ │ │ ├── api_op_GetObject.go
│ │ │ │ ├── api_op_GetObjectAcl.go
│ │ │ │ ├── api_op_GetObjectAttributes.go
│ │ │ │ ├── api_op_GetObjectLegalHold.go
│ │ │ │ ├── api_op_GetObjectLockConfiguration.go
│ │ │ │ ├── api_op_GetObjectRetention.go
│ │ │ │ ├── api_op_GetObjectTagging.go
│ │ │ │ ├── api_op_GetObjectTorrent.go
│ │ │ │ ├── api_op_GetPublicAccessBlock.go
│ │ │ │ ├── api_op_HeadBucket.go
│ │ │ │ ├── api_op_HeadObject.go
│ │ │ │ ├── api_op_ListBucketAnalyticsConfigurations.go
│ │ │ │ ├── api_op_ListBucketIntelligentTieringConfigurations.go
│ │ │ │ ├── api_op_ListBucketInventoryConfigurations.go
│ │ │ │ ├── api_op_ListBucketMetricsConfigurations.go
│ │ │ │ ├── api_op_ListBuckets.go
│ │ │ │ ├── api_op_ListDirectoryBuckets.go
│ │ │ │ ├── api_op_ListMultipartUploads.go
│ │ │ │ ├── api_op_ListObjectVersions.go
│ │ │ │ ├── api_op_ListObjects.go
│ │ │ │ ├── api_op_ListObjectsV2.go
│ │ │ │ ├── api_op_ListParts.go
│ │ │ │ ├── api_op_PutBucketAccelerateConfiguration.go
│ │ │ │ ├── api_op_PutBucketAcl.go
│ │ │ │ ├── api_op_PutBucketAnalyticsConfiguration.go
│ │ │ │ ├── api_op_PutBucketCors.go
│ │ │ │ ├── api_op_PutBucketEncryption.go
│ │ │ │ ├── api_op_PutBucketIntelligentTieringConfiguration.go
│ │ │ │ ├── api_op_PutBucketInventoryConfiguration.go
│ │ │ │ ├── api_op_PutBucketLifecycleConfiguration.go
│ │ │ │ ├── api_op_PutBucketLogging.go
│ │ │ │ ├── api_op_PutBucketMetricsConfiguration.go
│ │ │ │ ├── api_op_PutBucketNotificationConfiguration.go
│ │ │ │ ├── api_op_PutBucketOwnershipControls.go
│ │ │ │ ├── api_op_PutBucketPolicy.go
│ │ │ │ ├── api_op_PutBucketReplication.go
│ │ │ │ ├── api_op_PutBucketRequestPayment.go
│ │ │ │ ├── api_op_PutBucketTagging.go
│ │ │ │ ├── api_op_PutBucketVersioning.go
│ │ │ │ ├── api_op_PutBucketWebsite.go
│ │ │ │ ├── api_op_PutObject.go
│ │ │ │ ├── api_op_PutObjectAcl.go
│ │ │ │ ├── api_op_PutObjectLegalHold.go
│ │ │ │ ├── api_op_PutObjectLockConfiguration.go
│ │ │ │ ├── api_op_PutObjectRetention.go
│ │ │ │ ├── api_op_PutObjectTagging.go
│ │ │ │ ├── api_op_PutPublicAccessBlock.go
│ │ │ │ ├── api_op_RestoreObject.go
│ │ │ │ ├── api_op_SelectObjectContent.go
│ │ │ │ ├── api_op_UploadPart.go
│ │ │ │ ├── api_op_UploadPartCopy.go
│ │ │ │ ├── api_op_WriteGetObjectResponse.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── bucket_context.go
│ │ │ │ ├── bucketer.go
│ │ │ │ ├── create_mpu_checksum.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoint_auth_resolver.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── eventstream.go
│ │ │ │ ├── express.go
│ │ │ │ ├── express_default.go
│ │ │ │ ├── express_resolve.go
│ │ │ │ ├── express_user_agent.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── handwritten_paginators.go
│ │ │ │ ├── internal/
│ │ │ │ │ ├── arn/
│ │ │ │ │ │ └── arn_parser.go
│ │ │ │ │ ├── customizations/
│ │ │ │ │ │ ├── context.go
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── express.go
│ │ │ │ │ │ ├── express_config.go
│ │ │ │ │ │ ├── express_default_checksum.go
│ │ │ │ │ │ ├── express_properties.go
│ │ │ │ │ │ ├── express_signer.go
│ │ │ │ │ │ ├── express_signer_smithy.go
│ │ │ │ │ │ ├── handle_200_error.go
│ │ │ │ │ │ ├── host.go
│ │ │ │ │ │ ├── presigned_expires.go
│ │ │ │ │ │ ├── process_arn_resource.go
│ │ │ │ │ │ ├── remove_bucket_middleware.go
│ │ │ │ │ │ ├── s3_object_lambda.go
│ │ │ │ │ │ ├── signer_wrapper.go
│ │ │ │ │ │ └── update_endpoint.go
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── presign_post.go
│ │ │ │ ├── serialize_immutable_hostname_bucket.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── enums.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ ├── uri_context.go
│ │ │ │ └── validators.go
│ │ │ ├── sso/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_GetRoleCredentials.go
│ │ │ │ ├── api_op_ListAccountRoles.go
│ │ │ │ ├── api_op_ListAccounts.go
│ │ │ │ ├── api_op_Logout.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ └── validators.go
│ │ │ ├── ssooidc/
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── api_client.go
│ │ │ │ ├── api_op_CreateToken.go
│ │ │ │ ├── api_op_CreateTokenWithIAM.go
│ │ │ │ ├── api_op_RegisterClient.go
│ │ │ │ ├── api_op_StartDeviceAuthorization.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── deserializers.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── endpoints.go
│ │ │ │ ├── generated.json
│ │ │ │ ├── go_module_metadata.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── endpoints/
│ │ │ │ │ └── endpoints.go
│ │ │ │ ├── options.go
│ │ │ │ ├── serializers.go
│ │ │ │ ├── types/
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── types.go
│ │ │ │ └── validators.go
│ │ │ └── sts/
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE.txt
│ │ │ ├── api_client.go
│ │ │ ├── api_op_AssumeRole.go
│ │ │ ├── api_op_AssumeRoleWithSAML.go
│ │ │ ├── api_op_AssumeRoleWithWebIdentity.go
│ │ │ ├── api_op_AssumeRoot.go
│ │ │ ├── api_op_DecodeAuthorizationMessage.go
│ │ │ ├── api_op_GetAccessKeyInfo.go
│ │ │ ├── api_op_GetCallerIdentity.go
│ │ │ ├── api_op_GetFederationToken.go
│ │ │ ├── api_op_GetSessionToken.go
│ │ │ ├── auth.go
│ │ │ ├── deserializers.go
│ │ │ ├── doc.go
│ │ │ ├── endpoints.go
│ │ │ ├── generated.json
│ │ │ ├── go_module_metadata.go
│ │ │ ├── internal/
│ │ │ │ └── endpoints/
│ │ │ │ └── endpoints.go
│ │ │ ├── options.go
│ │ │ ├── serializers.go
│ │ │ ├── types/
│ │ │ │ ├── errors.go
│ │ │ │ └── types.go
│ │ │ └── validators.go
│ │ └── smithy-go/
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── CHANGELOG.md
│ │ ├── CODE_OF_CONDUCT.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── NOTICE
│ │ ├── README.md
│ │ ├── auth/
│ │ │ ├── auth.go
│ │ │ ├── bearer/
│ │ │ │ ├── docs.go
│ │ │ │ ├── middleware.go
│ │ │ │ ├── token.go
│ │ │ │ └── token_cache.go
│ │ │ ├── identity.go
│ │ │ ├── option.go
│ │ │ └── scheme_id.go
│ │ ├── changelog-template.json
│ │ ├── container/
│ │ │ └── private/
│ │ │ └── cache/
│ │ │ ├── cache.go
│ │ │ └── lru/
│ │ │ └── lru.go
│ │ ├── context/
│ │ │ └── suppress_expired.go
│ │ ├── doc.go
│ │ ├── document/
│ │ │ ├── doc.go
│ │ │ ├── document.go
│ │ │ └── errors.go
│ │ ├── document.go
│ │ ├── encoding/
│ │ │ ├── doc.go
│ │ │ ├── encoding.go
│ │ │ ├── httpbinding/
│ │ │ │ ├── encode.go
│ │ │ │ ├── header.go
│ │ │ │ ├── path_replace.go
│ │ │ │ ├── query.go
│ │ │ │ └── uri.go
│ │ │ ├── json/
│ │ │ │ ├── array.go
│ │ │ │ ├── constants.go
│ │ │ │ ├── decoder_util.go
│ │ │ │ ├── encoder.go
│ │ │ │ ├── escape.go
│ │ │ │ ├── object.go
│ │ │ │ └── value.go
│ │ │ └── xml/
│ │ │ ├── array.go
│ │ │ ├── constants.go
│ │ │ ├── doc.go
│ │ │ ├── element.go
│ │ │ ├── encoder.go
│ │ │ ├── error_utils.go
│ │ │ ├── escape.go
│ │ │ ├── map.go
│ │ │ ├── value.go
│ │ │ └── xml_decoder.go
│ │ ├── endpoints/
│ │ │ ├── endpoint.go
│ │ │ └── private/
│ │ │ └── rulesfn/
│ │ │ ├── doc.go
│ │ │ ├── strings.go
│ │ │ └── uri.go
│ │ ├── errors.go
│ │ ├── go_module_metadata.go
│ │ ├── internal/
│ │ │ └── sync/
│ │ │ └── singleflight/
│ │ │ ├── LICENSE
│ │ │ ├── docs.go
│ │ │ └── singleflight.go
│ │ ├── io/
│ │ │ ├── byte.go
│ │ │ ├── doc.go
│ │ │ ├── reader.go
│ │ │ └── ringbuffer.go
│ │ ├── local-mod-replace.sh
│ │ ├── logging/
│ │ │ └── logger.go
│ │ ├── metrics/
│ │ │ ├── metrics.go
│ │ │ └── nop.go
│ │ ├── middleware/
│ │ │ ├── context.go
│ │ │ ├── doc.go
│ │ │ ├── logging.go
│ │ │ ├── metadata.go
│ │ │ ├── middleware.go
│ │ │ ├── ordered_group.go
│ │ │ ├── stack.go
│ │ │ ├── stack_values.go
│ │ │ ├── step_build.go
│ │ │ ├── step_deserialize.go
│ │ │ ├── step_finalize.go
│ │ │ ├── step_initialize.go
│ │ │ └── step_serialize.go
│ │ ├── modman.toml
│ │ ├── private/
│ │ │ └── requestcompression/
│ │ │ ├── gzip.go
│ │ │ ├── middleware_capture_request_compression.go
│ │ │ └── request_compression.go
│ │ ├── properties.go
│ │ ├── ptr/
│ │ │ ├── doc.go
│ │ │ ├── from_ptr.go
│ │ │ ├── gen_scalars.go
│ │ │ └── to_ptr.go
│ │ ├── rand/
│ │ │ ├── doc.go
│ │ │ ├── rand.go
│ │ │ └── uuid.go
│ │ ├── sync/
│ │ │ └── error.go
│ │ ├── time/
│ │ │ └── time.go
│ │ ├── tracing/
│ │ │ ├── context.go
│ │ │ ├── nop.go
│ │ │ └── tracing.go
│ │ ├── transport/
│ │ │ └── http/
│ │ │ ├── auth.go
│ │ │ ├── auth_schemes.go
│ │ │ ├── checksum_middleware.go
│ │ │ ├── client.go
│ │ │ ├── doc.go
│ │ │ ├── headerlist.go
│ │ │ ├── host.go
│ │ │ ├── internal/
│ │ │ │ └── io/
│ │ │ │ └── safe.go
│ │ │ ├── md5_checksum.go
│ │ │ ├── metrics.go
│ │ │ ├── middleware_close_response_body.go
│ │ │ ├── middleware_content_length.go
│ │ │ ├── middleware_header_comment.go
│ │ │ ├── middleware_headers.go
│ │ │ ├── middleware_http_logging.go
│ │ │ ├── middleware_metadata.go
│ │ │ ├── middleware_min_proto.go
│ │ │ ├── properties.go
│ │ │ ├── request.go
│ │ │ ├── response.go
│ │ │ ├── time.go
│ │ │ ├── url.go
│ │ │ └── user_agent.go
│ │ ├── validation.go
│ │ └── waiter/
│ │ ├── logger.go
│ │ └── waiter.go
│ ├── awslabs/
│ │ └── amazon-ecr-credential-helper/
│ │ └── ecr-login/
│ │ ├── LICENSE
│ │ ├── api/
│ │ │ ├── client.go
│ │ │ └── factory.go
│ │ ├── cache/
│ │ │ ├── build.go
│ │ │ ├── credentials.go
│ │ │ ├── file.go
│ │ │ └── null.go
│ │ ├── cli/
│ │ │ └── docker-credential-ecr-login/
│ │ │ └── main.go
│ │ ├── config/
│ │ │ ├── cache_dir.go
│ │ │ └── log.go
│ │ ├── ecr.go
│ │ └── version/
│ │ └── version.go
│ ├── beorn7/
│ │ └── perks/
│ │ ├── LICENSE
│ │ └── quantile/
│ │ ├── exampledata.txt
│ │ └── stream.go
│ ├── cespare/
│ │ └── xxhash/
│ │ └── v2/
│ │ ├── LICENSE.txt
│ │ ├── README.md
│ │ ├── testall.sh
│ │ ├── xxhash.go
│ │ ├── xxhash_amd64.s
│ │ ├── xxhash_arm64.s
│ │ ├── xxhash_asm.go
│ │ ├── xxhash_other.go
│ │ ├── xxhash_safe.go
│ │ └── xxhash_unsafe.go
│ ├── chrismellard/
│ │ └── docker-credential-acr-env/
│ │ ├── .gitignore
│ │ ├── .goreleaser.yml
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── cmd/
│ │ │ ├── get.go
│ │ │ └── root.go
│ │ ├── main.go
│ │ └── pkg/
│ │ ├── credhelper/
│ │ │ └── helper.go
│ │ ├── registry/
│ │ │ ├── const.go
│ │ │ └── registry.go
│ │ └── token/
│ │ └── token.go
│ ├── cloudflare/
│ │ └── circl/
│ │ ├── LICENSE
│ │ ├── dh/
│ │ │ ├── x25519/
│ │ │ │ ├── curve.go
│ │ │ │ ├── curve_amd64.go
│ │ │ │ ├── curve_amd64.h
│ │ │ │ ├── curve_amd64.s
│ │ │ │ ├── curve_generic.go
│ │ │ │ ├── curve_noasm.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── key.go
│ │ │ │ └── table.go
│ │ │ └── x448/
│ │ │ ├── curve.go
│ │ │ ├── curve_amd64.go
│ │ │ ├── curve_amd64.h
│ │ │ ├── curve_amd64.s
│ │ │ ├── curve_generic.go
│ │ │ ├── curve_noasm.go
│ │ │ ├── doc.go
│ │ │ ├── key.go
│ │ │ └── table.go
│ │ ├── ecc/
│ │ │ └── goldilocks/
│ │ │ ├── constants.go
│ │ │ ├── curve.go
│ │ │ ├── isogeny.go
│ │ │ ├── point.go
│ │ │ ├── scalar.go
│ │ │ ├── twist.go
│ │ │ ├── twistPoint.go
│ │ │ ├── twistTables.go
│ │ │ └── twist_basemult.go
│ │ ├── internal/
│ │ │ ├── conv/
│ │ │ │ └── conv.go
│ │ │ └── sha3/
│ │ │ ├── doc.go
│ │ │ ├── hashes.go
│ │ │ ├── keccakf.go
│ │ │ ├── rc.go
│ │ │ ├── sha3.go
│ │ │ ├── sha3_s390x.s
│ │ │ ├── shake.go
│ │ │ ├── xor.go
│ │ │ ├── xor_generic.go
│ │ │ └── xor_unaligned.go
│ │ ├── math/
│ │ │ ├── fp25519/
│ │ │ │ ├── fp.go
│ │ │ │ ├── fp_amd64.go
│ │ │ │ ├── fp_amd64.h
│ │ │ │ ├── fp_amd64.s
│ │ │ │ ├── fp_generic.go
│ │ │ │ └── fp_noasm.go
│ │ │ ├── fp448/
│ │ │ │ ├── fp.go
│ │ │ │ ├── fp_amd64.go
│ │ │ │ ├── fp_amd64.h
│ │ │ │ ├── fp_amd64.s
│ │ │ │ ├── fp_generic.go
│ │ │ │ ├── fp_noasm.go
│ │ │ │ └── fuzzer.go
│ │ │ ├── integer.go
│ │ │ ├── mlsbset/
│ │ │ │ ├── mlsbset.go
│ │ │ │ └── power.go
│ │ │ ├── primes.go
│ │ │ └── wnaf.go
│ │ └── sign/
│ │ ├── ed25519/
│ │ │ ├── ed25519.go
│ │ │ ├── modular.go
│ │ │ ├── mult.go
│ │ │ ├── point.go
│ │ │ ├── pubkey.go
│ │ │ ├── pubkey112.go
│ │ │ ├── signapi.go
│ │ │ └── tables.go
│ │ ├── ed448/
│ │ │ ├── ed448.go
│ │ │ └── signapi.go
│ │ └── sign.go
│ ├── cncf/
│ │ └── xds/
│ │ └── go/
│ │ ├── LICENSE
│ │ ├── udpa/
│ │ │ ├── annotations/
│ │ │ │ ├── migrate.pb.go
│ │ │ │ ├── migrate.pb.validate.go
│ │ │ │ ├── security.pb.go
│ │ │ │ ├── security.pb.validate.go
│ │ │ │ ├── sensitive.pb.go
│ │ │ │ ├── sensitive.pb.validate.go
│ │ │ │ ├── status.pb.go
│ │ │ │ ├── status.pb.validate.go
│ │ │ │ ├── versioning.pb.go
│ │ │ │ └── versioning.pb.validate.go
│ │ │ └── type/
│ │ │ └── v1/
│ │ │ ├── typed_struct.pb.go
│ │ │ └── typed_struct.pb.validate.go
│ │ └── xds/
│ │ ├── annotations/
│ │ │ └── v3/
│ │ │ ├── migrate.pb.go
│ │ │ ├── migrate.pb.validate.go
│ │ │ ├── security.pb.go
│ │ │ ├── security.pb.validate.go
│ │ │ ├── sensitive.pb.go
│ │ │ ├── sensitive.pb.validate.go
│ │ │ ├── status.pb.go
│ │ │ ├── status.pb.validate.go
│ │ │ ├── versioning.pb.go
│ │ │ └── versioning.pb.validate.go
│ │ ├── core/
│ │ │ └── v3/
│ │ │ ├── authority.pb.go
│ │ │ ├── authority.pb.validate.go
│ │ │ ├── cidr.pb.go
│ │ │ ├── cidr.pb.validate.go
│ │ │ ├── collection_entry.pb.go
│ │ │ ├── collection_entry.pb.validate.go
│ │ │ ├── context_params.pb.go
│ │ │ ├── context_params.pb.validate.go
│ │ │ ├── extension.pb.go
│ │ │ ├── extension.pb.validate.go
│ │ │ ├── resource.pb.go
│ │ │ ├── resource.pb.validate.go
│ │ │ ├── resource_locator.pb.go
│ │ │ ├── resource_locator.pb.validate.go
│ │ │ ├── resource_name.pb.go
│ │ │ └── resource_name.pb.validate.go
│ │ ├── data/
│ │ │ └── orca/
│ │ │ └── v3/
│ │ │ ├── orca_load_report.pb.go
│ │ │ └── orca_load_report.pb.validate.go
│ │ ├── service/
│ │ │ └── orca/
│ │ │ └── v3/
│ │ │ ├── orca.pb.go
│ │ │ ├── orca.pb.validate.go
│ │ │ └── orca_grpc.pb.go
│ │ └── type/
│ │ ├── matcher/
│ │ │ └── v3/
│ │ │ ├── cel.pb.go
│ │ │ ├── cel.pb.validate.go
│ │ │ ├── domain.pb.go
│ │ │ ├── domain.pb.validate.go
│ │ │ ├── http_inputs.pb.go
│ │ │ ├── http_inputs.pb.validate.go
│ │ │ ├── ip.pb.go
│ │ │ ├── ip.pb.validate.go
│ │ │ ├── matcher.pb.go
│ │ │ ├── matcher.pb.validate.go
│ │ │ ├── range.pb.go
│ │ │ ├── range.pb.validate.go
│ │ │ ├── regex.pb.go
│ │ │ ├── regex.pb.validate.go
│ │ │ ├── string.pb.go
│ │ │ └── string.pb.validate.go
│ │ └── v3/
│ │ ├── cel.pb.go
│ │ ├── cel.pb.validate.go
│ │ ├── range.pb.go
│ │ ├── range.pb.validate.go
│ │ ├── typed_struct.pb.go
│ │ └── typed_struct.pb.validate.go
│ ├── containerd/
│ │ ├── cgroups/
│ │ │ └── v3/
│ │ │ ├── LICENSE
│ │ │ └── cgroup1/
│ │ │ └── stats/
│ │ │ ├── doc.go
│ │ │ ├── metrics.pb.go
│ │ │ ├── metrics.pb.txt
│ │ │ └── metrics.proto
│ │ ├── containerd/
│ │ │ ├── LICENSE
│ │ │ ├── NOTICE
│ │ │ ├── api/
│ │ │ │ ├── LICENSE
│ │ │ │ ├── runtime/
│ │ │ │ │ └── sandbox/
│ │ │ │ │ └── v1/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── sandbox.pb.go
│ │ │ │ │ ├── sandbox.proto
│ │ │ │ │ ├── sandbox_grpc.pb.go
│ │ │ │ │ └── sandbox_ttrpc.pb.go
│ │ │ │ ├── services/
│ │ │ │ │ ├── containers/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── containers.pb.go
│ │ │ │ │ │ ├── containers.proto
│ │ │ │ │ │ ├── containers_grpc.pb.go
│ │ │ │ │ │ ├── containers_ttrpc.pb.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── content/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── content.pb.go
│ │ │ │ │ │ ├── content.proto
│ │ │ │ │ │ ├── content_grpc.pb.go
│ │ │ │ │ │ ├── content_ttrpc.pb.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── diff/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── diff.pb.go
│ │ │ │ │ │ ├── diff.proto
│ │ │ │ │ │ ├── diff_grpc.pb.go
│ │ │ │ │ │ ├── diff_ttrpc.pb.go
│ │ │ │ │ │ └── doc.go
│ │ │ │ │ ├── events/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── events.pb.go
│ │ │ │ │ │ ├── events.proto
│ │ │ │ │ │ ├── events_grpc.pb.go
│ │ │ │ │ │ └── events_ttrpc.pb.go
│ │ │ │ │ ├── images/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── docs.go
│ │ │ │ │ │ ├── images.pb.go
│ │ │ │ │ │ ├── images.proto
│ │ │ │ │ │ ├── images_grpc.pb.go
│ │ │ │ │ │ └── images_ttrpc.pb.go
│ │ │ │ │ ├── introspection/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── introspection.pb.go
│ │ │ │ │ │ ├── introspection.proto
│ │ │ │ │ │ ├── introspection_grpc.pb.go
│ │ │ │ │ │ └── introspection_ttrpc.pb.go
│ │ │ │ │ ├── leases/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── leases.pb.go
│ │ │ │ │ │ ├── leases.proto
│ │ │ │ │ │ ├── leases_grpc.pb.go
│ │ │ │ │ │ └── leases_ttrpc.pb.go
│ │ │ │ │ ├── namespaces/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── namespace.pb.go
│ │ │ │ │ │ ├── namespace.proto
│ │ │ │ │ │ ├── namespace_grpc.pb.go
│ │ │ │ │ │ └── namespace_ttrpc.pb.go
│ │ │ │ │ ├── sandbox/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── sandbox.pb.go
│ │ │ │ │ │ ├── sandbox.proto
│ │ │ │ │ │ ├── sandbox_grpc.pb.go
│ │ │ │ │ │ └── sandbox_ttrpc.pb.go
│ │ │ │ │ ├── snapshots/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── snapshots.pb.go
│ │ │ │ │ │ ├── snapshots.proto
│ │ │ │ │ │ ├── snapshots_grpc.pb.go
│ │ │ │ │ │ └── snapshots_ttrpc.pb.go
│ │ │ │ │ ├── streaming/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── streaming.pb.go
│ │ │ │ │ │ ├── streaming.proto
│ │ │ │ │ │ ├── streaming_grpc.pb.go
│ │ │ │ │ │ └── streaming_ttrpc.pb.go
│ │ │ │ │ ├── tasks/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── tasks.pb.go
│ │ │ │ │ │ ├── tasks.proto
│ │ │ │ │ │ ├── tasks_grpc.pb.go
│ │ │ │ │ │ └── tasks_ttrpc.pb.go
│ │ │ │ │ ├── transfer/
│ │ │ │ │ │ └── v1/
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── transfer.pb.go
│ │ │ │ │ │ ├── transfer.proto
│ │ │ │ │ │ ├── transfer_grpc.pb.go
│ │ │ │ │ │ └── transfer_ttrpc.pb.go
│ │ │ │ │ └── version/
│ │ │ │ │ └── v1/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── version.pb.go
│ │ │ │ │ ├── version.proto
│ │ │ │ │ ├── version_grpc.pb.go
│ │ │ │ │ └── version_ttrpc.pb.go
│ │ │ │ └── types/
│ │ │ │ ├── descriptor.pb.go
│ │ │ │ ├── descriptor.proto
│ │ │ │ ├── doc.go
│ │ │ │ ├── event.pb.go
│ │ │ │ ├── event.proto
│ │ │ │ ├── fieldpath.pb.go
│ │ │ │ ├── fieldpath.proto
│ │ │ │ ├── introspection.pb.go
│ │ │ │ ├── introspection.proto
│ │ │ │ ├── metrics.pb.go
│ │ │ │ ├── metrics.proto
│ │ │ │ ├── mount.pb.go
│ │ │ │ ├── mount.proto
│ │ │ │ ├── platform.pb.go
│ │ │ │ ├── platform.proto
│ │ │ │ ├── platform_helpers.go
│ │ │ │ ├── runc/
│ │ │ │ │ └── options/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── next.pb.txt
│ │ │ │ │ ├── oci.pb.go
│ │ │ │ │ └── oci.proto
│ │ │ │ ├── sandbox.pb.go
│ │ │ │ ├── sandbox.proto
│ │ │ │ ├── task/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── task.pb.go
│ │ │ │ │ └── task.proto
│ │ │ │ └── transfer/
│ │ │ │ ├── doc.go
│ │ │ │ ├── imagestore.pb.go
│ │ │ │ ├── imagestore.proto
│ │ │ │ ├── importexport.pb.go
│ │ │ │ ├── importexport.proto
│ │ │ │ ├── progress.pb.go
│ │ │ │ ├── progress.proto
│ │ │ │ ├── registry.pb.go
│ │ │ │ ├── registry.proto
│ │ │ │ ├── streaming.pb.go
│ │ │ │ └── streaming.proto
│ │ │ ├── platforms/
│ │ │ │ ├── platforms_deprecated.go
│ │ │ │ ├── platforms_deprecated_other.go
│ │ │ │ └── platforms_deprecated_windows.go
│ │ │ └── v2/
│ │ │ ├── LICENSE
│ │ │ ├── NOTICE
│ │ │ ├── client/
│ │ │ │ ├── client.go
│ │ │ │ ├── client_opts.go
│ │ │ │ ├── container.go
│ │ │ │ ├── container_checkpoint_opts.go
│ │ │ │ ├── container_opts.go
│ │ │ │ ├── container_opts_unix.go
│ │ │ │ ├── container_restore_opts.go
│ │ │ │ ├── containerstore.go
│ │ │ │ ├── diff.go
│ │ │ │ ├── events.go
│ │ │ │ ├── export.go
│ │ │ │ ├── grpc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── image_store.go
│ │ │ │ ├── import.go
│ │ │ │ ├── install.go
│ │ │ │ ├── install_opts.go
│ │ │ │ ├── lease.go
│ │ │ │ ├── namespaces.go
│ │ │ │ ├── process.go
│ │ │ │ ├── pull.go
│ │ │ │ ├── sandbox.go
│ │ │ │ ├── services.go
│ │ │ │ ├── signals.go
│ │ │ │ ├── snapshotter_opts_unix.go
│ │ │ │ ├── snapshotter_opts_windows.go
│ │ │ │ ├── task.go
│ │ │ │ ├── task_opts.go
│ │ │ │ ├── task_opts_unix.go
│ │ │ │ └── transfer.go
│ │ │ ├── core/
│ │ │ │ ├── containers/
│ │ │ │ │ └── containers.go
│ │ │ │ ├── content/
│ │ │ │ │ ├── adaptor.go
│ │ │ │ │ ├── content.go
│ │ │ │ │ ├── helpers.go
│ │ │ │ │ └── proxy/
│ │ │ │ │ ├── content_reader.go
│ │ │ │ │ ├── content_store.go
│ │ │ │ │ └── content_writer.go
│ │ │ │ ├── diff/
│ │ │ │ │ ├── diff.go
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ └── differ.go
│ │ │ │ │ ├── stream.go
│ │ │ │ │ ├── stream_unix.go
│ │ │ │ │ └── stream_windows.go
│ │ │ │ ├── events/
│ │ │ │ │ ├── events.go
│ │ │ │ │ └── proxy/
│ │ │ │ │ └── remote_events.go
│ │ │ │ ├── images/
│ │ │ │ │ ├── annotations.go
│ │ │ │ │ ├── archive/
│ │ │ │ │ │ ├── exporter.go
│ │ │ │ │ │ ├── importer.go
│ │ │ │ │ │ └── reference.go
│ │ │ │ │ ├── diffid.go
│ │ │ │ │ ├── handlers.go
│ │ │ │ │ ├── image.go
│ │ │ │ │ ├── importexport.go
│ │ │ │ │ ├── mediatypes.go
│ │ │ │ │ └── usage/
│ │ │ │ │ └── calculator.go
│ │ │ │ ├── introspection/
│ │ │ │ │ ├── introspection.go
│ │ │ │ │ └── proxy/
│ │ │ │ │ └── remote.go
│ │ │ │ ├── leases/
│ │ │ │ │ ├── context.go
│ │ │ │ │ ├── grpc.go
│ │ │ │ │ ├── id.go
│ │ │ │ │ ├── lease.go
│ │ │ │ │ └── proxy/
│ │ │ │ │ └── manager.go
│ │ │ │ ├── mount/
│ │ │ │ │ ├── fuse_linux.go
│ │ │ │ │ ├── fuse_unsupported.go
│ │ │ │ │ ├── lookup_unix.go
│ │ │ │ │ ├── lookup_unsupported.go
│ │ │ │ │ ├── losetup_linux.go
│ │ │ │ │ ├── mount.go
│ │ │ │ │ ├── mount_darwin.go
│ │ │ │ │ ├── mount_freebsd.go
│ │ │ │ │ ├── mount_idmapped_linux.go
│ │ │ │ │ ├── mount_idmapped_utils_linux.go
│ │ │ │ │ ├── mount_idmapped_utils_linux_go122.go
│ │ │ │ │ ├── mount_linux.go
│ │ │ │ │ ├── mount_unix.go
│ │ │ │ │ ├── mount_unsupported.go
│ │ │ │ │ ├── mount_windows.go
│ │ │ │ │ ├── mountinfo.go
│ │ │ │ │ ├── temp.go
│ │ │ │ │ ├── temp_unix.go
│ │ │ │ │ └── temp_unsupported.go
│ │ │ │ ├── remotes/
│ │ │ │ │ ├── docker/
│ │ │ │ │ │ ├── auth/
│ │ │ │ │ │ │ ├── fetch.go
│ │ │ │ │ │ │ └── parse.go
│ │ │ │ │ │ ├── authorizer.go
│ │ │ │ │ │ ├── converter.go
│ │ │ │ │ │ ├── errcode.go
│ │ │ │ │ │ ├── errdesc.go
│ │ │ │ │ │ ├── fetcher.go
│ │ │ │ │ │ ├── handler.go
│ │ │ │ │ │ ├── httpreadseeker.go
│ │ │ │ │ │ ├── pusher.go
│ │ │ │ │ │ ├── registry.go
│ │ │ │ │ │ ├── resolver.go
│ │ │ │ │ │ ├── resolver_unix.go
│ │ │ │ │ │ ├── resolver_windows.go
│ │ │ │ │ │ ├── scope.go
│ │ │ │ │ │ └── status.go
│ │ │ │ │ ├── errors/
│ │ │ │ │ │ └── errors.go
│ │ │ │ │ ├── handlers.go
│ │ │ │ │ └── resolver.go
│ │ │ │ ├── sandbox/
│ │ │ │ │ ├── bridge.go
│ │ │ │ │ ├── controller.go
│ │ │ │ │ ├── helpers.go
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ ├── controller.go
│ │ │ │ │ │ └── store.go
│ │ │ │ │ └── store.go
│ │ │ │ ├── snapshots/
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ ├── convert.go
│ │ │ │ │ │ └── proxy.go
│ │ │ │ │ └── snapshotter.go
│ │ │ │ ├── streaming/
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ └── streaming.go
│ │ │ │ │ └── streaming.go
│ │ │ │ ├── transfer/
│ │ │ │ │ ├── proxy/
│ │ │ │ │ │ └── transfer.go
│ │ │ │ │ ├── streaming/
│ │ │ │ │ │ ├── reader.go
│ │ │ │ │ │ ├── stream.go
│ │ │ │ │ │ └── writer.go
│ │ │ │ │ └── transfer.go
│ │ │ │ └── unpack/
│ │ │ │ └── unpacker.go
│ │ │ ├── defaults/
│ │ │ │ ├── defaults.go
│ │ │ │ ├── defaults_darwin.go
│ │ │ │ ├── defaults_freebsd.go
│ │ │ │ ├── defaults_linux.go
│ │ │ │ ├── defaults_unix.go
│ │ │ │ ├── defaults_unix_nolinux.go
│ │ │ │ ├── defaults_windows.go
│ │ │ │ └── doc.go
│ │ │ ├── internal/
│ │ │ │ ├── cleanup/
│ │ │ │ │ └── context.go
│ │ │ │ ├── kmutex/
│ │ │ │ │ ├── kmutex.go
│ │ │ │ │ └── noop.go
│ │ │ │ ├── lazyregexp/
│ │ │ │ │ └── lazyregexp.go
│ │ │ │ ├── randutil/
│ │ │ │ │ └── randutil.go
│ │ │ │ └── userns/
│ │ │ │ └── idmap.go
│ │ │ ├── pkg/
│ │ │ │ ├── archive/
│ │ │ │ │ ├── compression/
│ │ │ │ │ │ └── compression.go
│ │ │ │ │ ├── link_default.go
│ │ │ │ │ ├── link_freebsd.go
│ │ │ │ │ ├── tar.go
│ │ │ │ │ ├── tar_freebsd.go
│ │ │ │ │ ├── tar_mostunix.go
│ │ │ │ │ ├── tar_opts.go
│ │ │ │ │ ├── tar_opts_linux.go
│ │ │ │ │ ├── tar_opts_windows.go
│ │ │ │ │ ├── tar_unix.go
│ │ │ │ │ ├── tar_windows.go
│ │ │ │ │ ├── tarheader/
│ │ │ │ │ │ ├── tarheader.go
│ │ │ │ │ │ └── tarheader_unix.go
│ │ │ │ │ ├── time.go
│ │ │ │ │ ├── time_unix.go
│ │ │ │ │ └── time_windows.go
│ │ │ │ ├── cap/
│ │ │ │ │ └── cap_linux.go
│ │ │ │ ├── cio/
│ │ │ │ │ ├── io.go
│ │ │ │ │ ├── io_unix.go
│ │ │ │ │ └── io_windows.go
│ │ │ │ ├── dialer/
│ │ │ │ │ ├── dialer.go
│ │ │ │ │ ├── dialer_unix.go
│ │ │ │ │ └── dialer_windows.go
│ │ │ │ ├── epoch/
│ │ │ │ │ ├── context.go
│ │ │ │ │ └── epoch.go
│ │ │ │ ├── filters/
│ │ │ │ │ ├── adaptor.go
│ │ │ │ │ ├── filter.go
│ │ │ │ │ ├── parser.go
│ │ │ │ │ ├── quote.go
│ │ │ │ │ └── scanner.go
│ │ │ │ ├── identifiers/
│ │ │ │ │ └── validate.go
│ │ │ │ ├── kernelversion/
│ │ │ │ │ └── kernel_linux.go
│ │ │ │ ├── labels/
│ │ │ │ │ ├── labels.go
│ │ │ │ │ └── validate.go
│ │ │ │ ├── namespaces/
│ │ │ │ │ ├── context.go
│ │ │ │ │ ├── grpc.go
│ │ │ │ │ ├── store.go
│ │ │ │ │ └── ttrpc.go
│ │ │ │ ├── oci/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── mounts.go
│ │ │ │ │ ├── mounts_freebsd.go
│ │ │ │ │ ├── spec.go
│ │ │ │ │ ├── spec_opts.go
│ │ │ │ │ ├── spec_opts_linux.go
│ │ │ │ │ ├── spec_opts_nonlinux.go
│ │ │ │ │ ├── spec_opts_nonwindows.go
│ │ │ │ │ ├── spec_opts_unix.go
│ │ │ │ │ ├── spec_opts_windows.go
│ │ │ │ │ └── utils_unix.go
│ │ │ │ ├── protobuf/
│ │ │ │ │ ├── compare.go
│ │ │ │ │ ├── proto/
│ │ │ │ │ │ └── proto.go
│ │ │ │ │ ├── timestamp.go
│ │ │ │ │ └── types/
│ │ │ │ │ └── types.go
│ │ │ │ ├── reference/
│ │ │ │ │ └── reference.go
│ │ │ │ ├── rootfs/
│ │ │ │ │ ├── apply.go
│ │ │ │ │ ├── diff.go
│ │ │ │ │ ├── init.go
│ │ │ │ │ ├── init_linux.go
│ │ │ │ │ └── init_other.go
│ │ │ │ ├── sys/
│ │ │ │ │ ├── eintr_unix.go
│ │ │ │ │ ├── filesys_unix.go
│ │ │ │ │ ├── filesys_windows.go
│ │ │ │ │ ├── namespace_linux.go
│ │ │ │ │ ├── oom_linux.go
│ │ │ │ │ ├── oom_unsupported.go
│ │ │ │ │ ├── pidfd_linux.go
│ │ │ │ │ ├── socket_unix.go
│ │ │ │ │ ├── socket_windows.go
│ │ │ │ │ └── unshare_linux.go
│ │ │ │ └── tracing/
│ │ │ │ ├── helpers.go
│ │ │ │ ├── log.go
│ │ │ │ └── tracing.go
│ │ │ ├── plugins/
│ │ │ │ ├── services/
│ │ │ │ │ └── services.go
│ │ │ │ └── types.go
│ │ │ └── version/
│ │ │ └── version.go
│ │ ├── continuity/
│ │ │ ├── AUTHORS
│ │ │ ├── LICENSE
│ │ │ ├── devices/
│ │ │ │ ├── devices.go
│ │ │ │ ├── devices_unix.go
│ │ │ │ ├── devices_windows.go
│ │ │ │ ├── mknod_freebsd.go
│ │ │ │ └── mknod_unix.go
│ │ │ ├── driver/
│ │ │ │ ├── driver.go
│ │ │ │ ├── driver_unix.go
│ │ │ │ ├── driver_windows.go
│ │ │ │ ├── lchmod_linux.go
│ │ │ │ ├── lchmod_unix.go
│ │ │ │ └── utils.go
│ │ │ ├── fs/
│ │ │ │ ├── copy.go
│ │ │ │ ├── copy_darwin.go
│ │ │ │ ├── copy_irregular_freebsd.go
│ │ │ │ ├── copy_irregular_unix.go
│ │ │ │ ├── copy_linux.go
│ │ │ │ ├── copy_nondarwin.go
│ │ │ │ ├── copy_unix.go
│ │ │ │ ├── copy_windows.go
│ │ │ │ ├── diff.go
│ │ │ │ ├── diff_linux.go
│ │ │ │ ├── diff_nonlinux.go
│ │ │ │ ├── diff_unix.go
│ │ │ │ ├── diff_windows.go
│ │ │ │ ├── dir.go
│ │ │ │ ├── dtype_linux.go
│ │ │ │ ├── du.go
│ │ │ │ ├── du_unix.go
│ │ │ │ ├── du_windows.go
│ │ │ │ ├── hardlink.go
│ │ │ │ ├── hardlink_unix.go
│ │ │ │ ├── hardlink_windows.go
│ │ │ │ ├── magic_linux.go
│ │ │ │ ├── path.go
│ │ │ │ ├── stat_darwinbsd.go
│ │ │ │ ├── stat_unix.go
│ │ │ │ ├── stat_windows.go
│ │ │ │ ├── time.go
│ │ │ │ └── utimesnanoat.go
│ │ │ └── sysx/
│ │ │ ├── README.md
│ │ │ ├── nodata_linux.go
│ │ │ ├── nodata_solaris.go
│ │ │ ├── nodata_unix.go
│ │ │ ├── xattr.go
│ │ │ └── xattr_unsupported.go
│ │ ├── errdefs/
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── errors.go
│ │ │ ├── pkg/
│ │ │ │ ├── LICENSE
│ │ │ │ ├── errgrpc/
│ │ │ │ │ └── grpc.go
│ │ │ │ └── internal/
│ │ │ │ ├── cause/
│ │ │ │ │ └── cause.go
│ │ │ │ └── types/
│ │ │ │ └── collapsible.go
│ │ │ └── resolve.go
│ │ ├── log/
│ │ │ ├── .golangci.yml
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ └── context.go
│ │ ├── platforms/
│ │ │ ├── .gitattributes
│ │ │ ├── .golangci.yml
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── compare.go
│ │ │ ├── cpuinfo.go
│ │ │ ├── cpuinfo_linux.go
│ │ │ ├── cpuinfo_other.go
│ │ │ ├── database.go
│ │ │ ├── defaults.go
│ │ │ ├── defaults_darwin.go
│ │ │ ├── defaults_freebsd.go
│ │ │ ├── defaults_unix.go
│ │ │ ├── defaults_windows.go
│ │ │ ├── errors.go
│ │ │ ├── platform_windows_compat.go
│ │ │ └── platforms.go
│ │ ├── plugin/
│ │ │ ├── .golangci.yml
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── context.go
│ │ │ └── plugin.go
│ │ ├── stargz-snapshotter/
│ │ │ └── estargz/
│ │ │ ├── LICENSE
│ │ │ ├── build.go
│ │ │ ├── errorutil/
│ │ │ │ └── errors.go
│ │ │ ├── estargz.go
│ │ │ ├── gzip.go
│ │ │ ├── testutil.go
│ │ │ └── types.go
│ │ ├── ttrpc/
│ │ │ ├── .gitattributes
│ │ │ ├── .gitignore
│ │ │ ├── .golangci.yml
│ │ │ ├── LICENSE
│ │ │ ├── Makefile
│ │ │ ├── PROTOCOL.md
│ │ │ ├── Protobuild.toml
│ │ │ ├── README.md
│ │ │ ├── channel.go
│ │ │ ├── client.go
│ │ │ ├── codec.go
│ │ │ ├── config.go
│ │ │ ├── doc.go
│ │ │ ├── errors.go
│ │ │ ├── handshake.go
│ │ │ ├── interceptor.go
│ │ │ ├── metadata.go
│ │ │ ├── request.pb.go
│ │ │ ├── request.proto
│ │ │ ├── server.go
│ │ │ ├── services.go
│ │ │ ├── stream.go
│ │ │ ├── stream_server.go
│ │ │ ├── test.proto
│ │ │ └── unixcreds_linux.go
│ │ └── typeurl/
│ │ └── v2/
│ │ ├── .gitignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── doc.go
│ │ ├── types.go
│ │ └── types_gogo.go
│ ├── cyphar/
│ │ └── filepath-securejoin/
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── VERSION
│ │ ├── doc.go
│ │ ├── gocompat_errors_go120.go
│ │ ├── gocompat_errors_unsupported.go
│ │ ├── gocompat_generics_go121.go
│ │ ├── gocompat_generics_unsupported.go
│ │ ├── join.go
│ │ ├── lookup_linux.go
│ │ ├── mkdir_linux.go
│ │ ├── open_linux.go
│ │ ├── openat2_linux.go
│ │ ├── openat_linux.go
│ │ ├── procfs_linux.go
│ │ └── vfs.go
│ ├── dimchansky/
│ │ └── utfbom/
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ └── utfbom.go
│ ├── distribution/
│ │ └── reference/
│ │ ├── .gitattributes
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── CODE-OF-CONDUCT.md
│ │ ├── CONTRIBUTING.md
│ │ ├── GOVERNANCE.md
│ │ ├── LICENSE
│ │ ├── MAINTAINERS
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── helpers.go
│ │ ├── normalize.go
│ │ ├── reference.go
│ │ ├── regexp.go
│ │ └── sort.go
│ ├── docker/
│ │ ├── cli/
│ │ │ ├── AUTHORS
│ │ │ ├── LICENSE
│ │ │ ├── NOTICE
│ │ │ └── cli/
│ │ │ └── config/
│ │ │ ├── config.go
│ │ │ ├── configfile/
│ │ │ │ ├── file.go
│ │ │ │ ├── file_unix.go
│ │ │ │ └── file_windows.go
│ │ │ ├── credentials/
│ │ │ │ ├── credentials.go
│ │ │ │ ├── default_store.go
│ │ │ │ ├── default_store_darwin.go
│ │ │ │ ├── default_store_linux.go
│ │ │ │ ├── default_store_unsupported.go
│ │ │ │ ├── default_store_windows.go
│ │ │ │ ├── file_store.go
│ │ │ │ └── native_store.go
│ │ │ └── types/
│ │ │ └── authconfig.go
│ │ ├── distribution/
│ │ │ ├── .dockerignore
│ │ │ ├── .gitignore
│ │ │ ├── .golangci.yml
│ │ │ ├── .mailmap
│ │ │ ├── BUILDING.md
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── Dockerfile
│ │ │ ├── LICENSE
│ │ │ ├── MAINTAINERS
│ │ │ ├── Makefile
│ │ │ ├── README.md
│ │ │ ├── ROADMAP.md
│ │ │ ├── blobs.go
│ │ │ ├── doc.go
│ │ │ ├── docker-bake.hcl
│ │ │ ├── errors.go
│ │ │ ├── manifests.go
│ │ │ ├── registry/
│ │ │ │ └── client/
│ │ │ │ └── auth/
│ │ │ │ └── challenge/
│ │ │ │ ├── addr.go
│ │ │ │ └── authchallenge.go
│ │ │ ├── registry.go
│ │ │ ├── tags.go
│ │ │ └── vendor.conf
│ │ ├── docker/
│ │ │ ├── AUTHORS
│ │ │ ├── LICENSE
│ │ │ ├── NOTICE
│ │ │ ├── api/
│ │ │ │ ├── README.md
│ │ │ │ ├── common.go
│ │ │ │ ├── swagger-gen.yaml
│ │ │ │ ├── swagger.yaml
│ │ │ │ └── types/
│ │ │ │ ├── backend/
│ │ │ │ │ ├── backend.go
│ │ │ │ │ └── build.go
│ │ │ │ ├── blkiodev/
│ │ │ │ │ └── blkio.go
│ │ │ │ ├── checkpoint/
│ │ │ │ │ ├── list.go
│ │ │ │ │ └── options.go
│ │ │ │ ├── client.go
│ │ │ │ ├── common/
│ │ │ │ │ └── id_response.go
│ │ │ │ ├── container/
│ │ │ │ │ ├── change_type.go
│ │ │ │ │ ├── change_types.go
│ │ │ │ │ ├── commit.go
│ │ │ │ │ ├── config.go
│ │ │ │ │ ├── container.go
│ │ │ │ │ ├── create_request.go
│ │ │ │ │ ├── create_response.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── exec.go
│ │ │ │ │ ├── filesystem_change.go
│ │ │ │ │ ├── health.go
│ │ │ │ │ ├── hostconfig.go
│ │ │ │ │ ├── hostconfig_unix.go
│ │ │ │ │ ├── hostconfig_windows.go
│ │ │ │ │ ├── network_settings.go
│ │ │ │ │ ├── options.go
│ │ │ │ │ ├── port.go
│ │ │ │ │ ├── stats.go
│ │ │ │ │ ├── top_response.go
│ │ │ │ │ ├── update_response.go
│ │ │ │ │ ├── wait_exit_error.go
│ │ │ │ │ ├── wait_response.go
│ │ │ │ │ └── waitcondition.go
│ │ │ │ ├── error_response.go
│ │ │ │ ├── error_response_ext.go
│ │ │ │ ├── events/
│ │ │ │ │ └── events.go
│ │ │ │ ├── filters/
│ │ │ │ │ ├── errors.go
│ │ │ │ │ └── parse.go
│ │ │ │ ├── image/
│ │ │ │ │ ├── delete_response.go
│ │ │ │ │ ├── image.go
│ │ │ │ │ ├── image_history.go
│ │ │ │ │ ├── image_inspect.go
│ │ │ │ │ ├── manifest.go
│ │ │ │ │ ├── opts.go
│ │ │ │ │ └── summary.go
│ │ │ │ ├── mount/
│ │ │ │ │ └── mount.go
│ │ │ │ ├── network/
│ │ │ │ │ ├── create_response.go
│ │ │ │ │ ├── endpoint.go
│ │ │ │ │ ├── ipam.go
│ │ │ │ │ └── network.go
│ │ │ │ ├── plugin.go
│ │ │ │ ├── plugin_device.go
│ │ │ │ ├── plugin_env.go
│ │ │ │ ├── plugin_interface_type.go
│ │ │ │ ├── plugin_mount.go
│ │ │ │ ├── plugin_responses.go
│ │ │ │ ├── plugins/
│ │ │ │ │ └── logdriver/
│ │ │ │ │ ├── entry.pb.go
│ │ │ │ │ ├── entry.proto
│ │ │ │ │ ├── gen.go
│ │ │ │ │ └── io.go
│ │ │ │ ├── registry/
│ │ │ │ │ ├── authconfig.go
│ │ │ │ │ ├── authenticate.go
│ │ │ │ │ ├── registry.go
│ │ │ │ │ └── search.go
│ │ │ │ ├── storage/
│ │ │ │ │ └── driver_data.go
│ │ │ │ ├── strslice/
│ │ │ │ │ └── strslice.go
│ │ │ │ ├── swarm/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── config.go
│ │ │ │ │ ├── container.go
│ │ │ │ │ ├── network.go
│ │ │ │ │ ├── node.go
│ │ │ │ │ ├── runtime/
│ │ │ │ │ │ ├── gen.go
│ │ │ │ │ │ ├── plugin.pb.go
│ │ │ │ │ │ └── plugin.proto
│ │ │ │ │ ├── runtime.go
│ │ │ │ │ ├── secret.go
│ │ │ │ │ ├── service.go
│ │ │ │ │ ├── service_create_response.go
│ │ │ │ │ ├── service_update_response.go
│ │ │ │ │ ├── swarm.go
│ │ │ │ │ └── task.go
│ │ │ │ ├── system/
│ │ │ │ │ ├── info.go
│ │ │ │ │ ├── runtime.go
│ │ │ │ │ └── security_opts.go
│ │ │ │ ├── time/
│ │ │ │ │ └── timestamp.go
│ │ │ │ ├── types.go
│ │ │ │ ├── types_deprecated.go
│ │ │ │ ├── versions/
│ │ │ │ │ └── compare.go
│ │ │ │ └── volume/
│ │ │ │ ├── cluster_volume.go
│ │ │ │ ├── create_options.go
│ │ │ │ ├── list_response.go
│ │ │ │ ├── options.go
│ │ │ │ ├── volume.go
│ │ │ │ └── volume_update.go
│ │ │ ├── builder/
│ │ │ │ ├── builder.go
│ │ │ │ ├── dockerfile/
│ │ │ │ │ ├── buildargs.go
│ │ │ │ │ ├── builder.go
│ │ │ │ │ ├── builder_unix.go
│ │ │ │ │ ├── builder_windows.go
│ │ │ │ │ ├── containerbackend.go
│ │ │ │ │ ├── copy.go
│ │ │ │ │ ├── copy_unix.go
│ │ │ │ │ ├── copy_windows.go
│ │ │ │ │ ├── dispatchers.go
│ │ │ │ │ ├── dispatchers_unix.go
│ │ │ │ │ ├── dispatchers_windows.go
│ │ │ │ │ ├── evaluator.go
│ │ │ │ │ ├── imagecontext.go
│ │ │ │ │ ├── imageprobe.go
│ │ │ │ │ ├── internals.go
│ │ │ │ │ ├── internals_linux.go
│ │ │ │ │ ├── internals_windows.go
│ │ │ │ │ └── metrics.go
│ │ │ │ └── remotecontext/
│ │ │ │ ├── archive.go
│ │ │ │ ├── detect.go
│ │ │ │ ├── filehash.go
│ │ │ │ ├── git/
│ │ │ │ │ └── gitutils.go
│ │ │ │ ├── git.go
│ │ │ │ ├── lazycontext.go
│ │ │ │ ├── mimetype.go
│ │ │ │ ├── remote.go
│ │ │ │ └── urlutil/
│ │ │ │ └── urlutil.go
│ │ │ ├── client/
│ │ │ │ ├── README.md
│ │ │ │ ├── build_cancel.go
│ │ │ │ ├── build_prune.go
│ │ │ │ ├── checkpoint.go
│ │ │ │ ├── checkpoint_create.go
│ │ │ │ ├── checkpoint_delete.go
│ │ │ │ ├── checkpoint_list.go
│ │ │ │ ├── client.go
│ │ │ │ ├── client_deprecated.go
│ │ │ │ ├── client_interfaces.go
│ │ │ │ ├── client_unix.go
│ │ │ │ ├── client_windows.go
│ │ │ │ ├── config_create.go
│ │ │ │ ├── config_inspect.go
│ │ │ │ ├── config_list.go
│ │ │ │ ├── config_remove.go
│ │ │ │ ├── config_update.go
│ │ │ │ ├── container_attach.go
│ │ │ │ ├── container_commit.go
│ │ │ │ ├── container_copy.go
│ │ │ │ ├── container_create.go
│ │ │ │ ├── container_diff.go
│ │ │ │ ├── container_exec.go
│ │ │ │ ├── container_export.go
│ │ │ │ ├── container_inspect.go
│ │ │ │ ├── container_kill.go
│ │ │ │ ├── container_list.go
│ │ │ │ ├── container_logs.go
│ │ │ │ ├── container_pause.go
│ │ │ │ ├── container_prune.go
│ │ │ │ ├── container_remove.go
│ │ │ │ ├── container_rename.go
│ │ │ │ ├── container_resize.go
│ │ │ │ ├── container_restart.go
│ │ │ │ ├── container_start.go
│ │ │ │ ├── container_stats.go
│ │ │ │ ├── container_stop.go
│ │ │ │ ├── container_top.go
│ │ │ │ ├── container_unpause.go
│ │ │ │ ├── container_update.go
│ │ │ │ ├── container_wait.go
│ │ │ │ ├── disk_usage.go
│ │ │ │ ├── distribution_inspect.go
│ │ │ │ ├── envvars.go
│ │ │ │ ├── errors.go
│ │ │ │ ├── events.go
│ │ │ │ ├── hijack.go
│ │ │ │ ├── image_build.go
│ │ │ │ ├── image_create.go
│ │ │ │ ├── image_history.go
│ │ │ │ ├── image_history_opts.go
│ │ │ │ ├── image_import.go
│ │ │ │ ├── image_inspect.go
│ │ │ │ ├── image_inspect_opts.go
│ │ │ │ ├── image_list.go
│ │ │ │ ├── image_load.go
│ │ │ │ ├── image_load_opts.go
│ │ │ │ ├── image_prune.go
│ │ │ │ ├── image_pull.go
│ │ │ │ ├── image_push.go
│ │ │ │ ├── image_remove.go
│ │ │ │ ├── image_save.go
│ │ │ │ ├── image_save_opts.go
│ │ │ │ ├── image_search.go
│ │ │ │ ├── image_tag.go
│ │ │ │ ├── info.go
│ │ │ │ ├── login.go
│ │ │ │ ├── network_connect.go
│ │ │ │ ├── network_create.go
│ │ │ │ ├── network_disconnect.go
│ │ │ │ ├── network_inspect.go
│ │ │ │ ├── network_list.go
│ │ │ │ ├── network_prune.go
│ │ │ │ ├── network_remove.go
│ │ │ │ ├── node_inspect.go
│ │ │ │ ├── node_list.go
│ │ │ │ ├── node_remove.go
│ │ │ │ ├── node_update.go
│ │ │ │ ├── options.go
│ │ │ │ ├── ping.go
│ │ │ │ ├── plugin_create.go
│ │ │ │ ├── plugin_disable.go
│ │ │ │ ├── plugin_enable.go
│ │ │ │ ├── plugin_inspect.go
│ │ │ │ ├── plugin_install.go
│ │ │ │ ├── plugin_list.go
│ │ │ │ ├── plugin_push.go
│ │ │ │ ├── plugin_remove.go
│ │ │ │ ├── plugin_set.go
│ │ │ │ ├── plugin_upgrade.go
│ │ │ │ ├── request.go
│ │ │ │ ├── secret_create.go
│ │ │ │ ├── secret_inspect.go
│ │ │ │ ├── secret_list.go
│ │ │ │ ├── secret_remove.go
│ │ │ │ ├── secret_update.go
│ │ │ │ ├── service_create.go
│ │ │ │ ├── service_inspect.go
│ │ │ │ ├── service_list.go
│ │ │ │ ├── service_logs.go
│ │ │ │ ├── service_remove.go
│ │ │ │ ├── service_update.go
│ │ │ │ ├── swarm_get_unlock_key.go
│ │ │ │ ├── swarm_init.go
│ │ │ │ ├── swarm_inspect.go
│ │ │ │ ├── swarm_join.go
│ │ │ │ ├── swarm_leave.go
│ │ │ │ ├── swarm_unlock.go
│ │ │ │ ├── swarm_update.go
│ │ │ │ ├── task_inspect.go
│ │ │ │ ├── task_list.go
│ │ │ │ ├── task_logs.go
│ │ │ │ ├── utils.go
│ │ │ │ ├── version.go
│ │ │ │ ├── volume_create.go
│ │ │ │ ├── volume_inspect.go
│ │ │ │ ├── volume_list.go
│ │ │ │ ├── volume_prune.go
│ │ │ │ ├── volume_remove.go
│ │ │ │ └── volume_update.go
│ │ │ ├── container/
│ │ │ │ ├── archive_windows.go
│ │ │ │ ├── attach_context.go
│ │ │ │ ├── container.go
│ │ │ │ ├── container_unix.go
│ │ │ │ ├── container_windows.go
│ │ │ │ ├── env.go
│ │ │ │ ├── exec.go
│ │ │ │ ├── health.go
│ │ │ │ ├── history.go
│ │ │ │ ├── memory_store.go
│ │ │ │ ├── monitor.go
│ │ │ │ ├── mounts_unix.go
│ │ │ │ ├── mounts_windows.go
│ │ │ │ ├── rwlayer.go
│ │ │ │ ├── state.go
│ │ │ │ ├── store.go
│ │ │ │ ├── stream/
│ │ │ │ │ ├── attach.go
│ │ │ │ │ ├── bytespipe/
│ │ │ │ │ │ ├── buffer.go
│ │ │ │ │ │ └── bytespipe.go
│ │ │ │ │ ├── streams.go
│ │ │ │ │ └── unbuffered.go
│ │ │ │ └── view.go
│ │ │ ├── daemon/
│ │ │ │ ├── cluster/
│ │ │ │ │ └── provider/
│ │ │ │ │ └── network.go
│ │ │ │ ├── graphdriver/
│ │ │ │ │ ├── driver.go
│ │ │ │ │ ├── driver_freebsd.go
│ │ │ │ │ ├── driver_linux.go
│ │ │ │ │ ├── driver_unsupported.go
│ │ │ │ │ ├── driver_windows.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── fsdiff.go
│ │ │ │ │ └── utils.go
│ │ │ │ ├── logger/
│ │ │ │ │ ├── adapter.go
│ │ │ │ │ ├── copier.go
│ │ │ │ │ ├── factory.go
│ │ │ │ │ ├── jsonfilelog/
│ │ │ │ │ │ ├── jsonfilelog.go
│ │ │ │ │ │ ├── jsonlog/
│ │ │ │ │ │ │ ├── jsonlog.go
│ │ │ │ │ │ │ ├── jsonlogbytes.go
│ │ │ │ │ │ │ └── time_marshalling.go
│ │ │ │ │ │ └── read.go
│ │ │ │ │ ├── local/
│ │ │ │ │ │ ├── config.go
│ │ │ │ │ │ ├── doc.go
│ │ │ │ │ │ ├── local.go
│ │ │ │ │ │ └── read.go
│ │ │ │ │ ├── log_cache_opts.go
│ │ │ │ │ ├── logger.go
│ │ │ │ │ ├── logger_error.go
│ │ │ │ │ ├── loggerutils/
│ │ │ │ │ │ ├── cache/
│ │ │ │ │ │ │ ├── local_cache.go
│ │ │ │ │ │ │ └── validate.go
│ │ │ │ │ │ ├── file_unix.go
│ │ │ │ │ │ ├── file_windows.go
│ │ │ │ │ │ ├── follow.go
│ │ │ │ │ │ ├── log_tag.go
│ │ │ │ │ │ ├── logfile.go
│ │ │ │ │ │ ├── queue.go
│ │ │ │ │ │ └── sharedtemp.go
│ │ │ │ │ ├── loginfo.go
│ │ │ │ │ ├── metrics.go
│ │ │ │ │ ├── plugin.go
│ │ │ │ │ ├── plugin_unix.go
│ │ │ │ │ ├── plugin_unsupported.go
│ │ │ │ │ ├── proxy.go
│ │ │ │ │ ├── ring.go
│ │ │ │ │ └── templates/
│ │ │ │ │ └── templates.go
│ │ │ │ └── network/
│ │ │ │ ├── filter.go
│ │ │ │ ├── network_mode.go
│ │ │ │ ├── network_mode_unix.go
│ │ │ │ ├── network_mode_windows.go
│ │ │ │ └── settings.go
│ │ │ ├── dockerversion/
│ │ │ │ ├── useragent.go
│ │ │ │ └── version_lib.go
│ │ │ ├── errdefs/
│ │ │ │ ├── defs.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── helpers.go
│ │ │ │ ├── http_helpers.go
│ │ │ │ └── is.go
│ │ │ ├── image/
│ │ │ │ ├── fs.go
│ │ │ │ ├── image.go
│ │ │ │ ├── image_os.go
│ │ │ │ ├── rootfs.go
│ │ │ │ └── store.go
│ │ │ ├── internal/
│ │ │ │ ├── cleanups/
│ │ │ │ │ └── composite.go
│ │ │ │ ├── lazyregexp/
│ │ │ │ │ └── lazyregexp.go
│ │ │ │ ├── multierror/
│ │ │ │ │ └── multierror.go
│ │ │ │ ├── platform/
│ │ │ │ │ ├── platform.go
│ │ │ │ │ ├── platform_linux.go
│ │ │ │ │ ├── platform_unix.go
│ │ │ │ │ └── platform_windows.go
│ │ │ │ ├── safepath/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── join_linux.go
│ │ │ │ │ ├── join_windows.go
│ │ │ │ │ ├── k8s_safeopen_linux.go
│ │ │ │ │ └── safepath.go
│ │ │ │ ├── unix_noeintr/
│ │ │ │ │ ├── epoll_linux.go
│ │ │ │ │ └── fs_unix.go
│ │ │ │ └── usergroup/
│ │ │ │ ├── add_linux.go
│ │ │ │ ├── add_unsupported.go
│ │ │ │ ├── const_windows.go
│ │ │ │ ├── lookup_unix.go
│ │ │ │ ├── parser.go
│ │ │ │ └── utils_unix.go
│ │ │ ├── layer/
│ │ │ │ ├── empty.go
│ │ │ │ ├── filestore.go
│ │ │ │ ├── layer.go
│ │ │ │ ├── layer_store.go
│ │ │ │ ├── layer_store_windows.go
│ │ │ │ ├── layer_unix.go
│ │ │ │ ├── layer_windows.go
│ │ │ │ ├── migration.go
│ │ │ │ ├── mounted_layer.go
│ │ │ │ ├── ro_layer.go
│ │ │ │ └── ro_layer_windows.go
│ │ │ ├── libcontainerd/
│ │ │ │ └── types/
│ │ │ │ ├── types.go
│ │ │ │ ├── types_linux.go
│ │ │ │ └── types_windows.go
│ │ │ ├── oci/
│ │ │ │ ├── caps/
│ │ │ │ │ ├── defaults.go
│ │ │ │ │ ├── utils.go
│ │ │ │ │ ├── utils_linux.go
│ │ │ │ │ └── utils_other.go
│ │ │ │ ├── defaults.go
│ │ │ │ ├── devices_linux.go
│ │ │ │ ├── namespaces.go
│ │ │ │ └── oci.go
│ │ │ ├── pkg/
│ │ │ │ ├── archive/
│ │ │ │ │ ├── archive_deprecated.go
│ │ │ │ │ ├── changes_deprecated.go
│ │ │ │ │ ├── copy_deprecated.go
│ │ │ │ │ ├── diff_deprecated.go
│ │ │ │ │ ├── path_deprecated.go
│ │ │ │ │ ├── utils.go
│ │ │ │ │ ├── whiteouts_deprecated.go
│ │ │ │ │ └── wrap_deprecated.go
│ │ │ │ ├── homedir/
│ │ │ │ │ ├── homedir.go
│ │ │ │ │ ├── homedir_linux.go
│ │ │ │ │ └── homedir_others.go
│ │ │ │ ├── idtools/
│ │ │ │ │ ├── idtools.go
│ │ │ │ │ └── idtools_windows.go
│ │ │ │ ├── ioutils/
│ │ │ │ │ ├── fswriters_deprecated.go
│ │ │ │ │ ├── readers.go
│ │ │ │ │ ├── writeflusher.go
│ │ │ │ │ └── writers.go
│ │ │ │ ├── jsonmessage/
│ │ │ │ │ └── jsonmessage.go
│ │ │ │ ├── longpath/
│ │ │ │ │ └── longpath.go
│ │ │ │ ├── parsers/
│ │ │ │ │ └── kernel/
│ │ │ │ │ ├── kernel.go
│ │ │ │ │ ├── kernel_darwin.go
│ │ │ │ │ ├── kernel_unix.go
│ │ │ │ │ ├── kernel_windows.go
│ │ │ │ │ ├── uname_linux.go
│ │ │ │ │ └── uname_unsupported.go
│ │ │ │ ├── plugingetter/
│ │ │ │ │ └── getter.go
│ │ │ │ ├── plugins/
│ │ │ │ │ ├── client.go
│ │ │ │ │ ├── discovery.go
│ │ │ │ │ ├── discovery_unix.go
│ │ │ │ │ ├── discovery_windows.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── plugins.go
│ │ │ │ │ └── transport/
│ │ │ │ │ ├── http.go
│ │ │ │ │ └── mimetype.go
│ │ │ │ ├── pools/
│ │ │ │ │ └── pools.go
│ │ │ │ ├── progress/
│ │ │ │ │ ├── progress.go
│ │ │ │ │ └── progressreader.go
│ │ │ │ ├── rootless/
│ │ │ │ │ └── rootless.go
│ │ │ │ ├── streamformatter/
│ │ │ │ │ ├── streamformatter.go
│ │ │ │ │ └── streamwriter.go
│ │ │ │ ├── stringid/
│ │ │ │ │ └── stringid.go
│ │ │ │ ├── system/
│ │ │ │ │ ├── args_windows.go
│ │ │ │ │ ├── chtimes.go
│ │ │ │ │ ├── chtimes_nowindows.go
│ │ │ │ │ ├── chtimes_windows.go
│ │ │ │ │ ├── errors.go
│ │ │ │ │ ├── filesys.go
│ │ │ │ │ ├── filesys_unix.go
│ │ │ │ │ ├── filesys_windows.go
│ │ │ │ │ ├── init_windows.go
│ │ │ │ │ ├── utimes_unix.go
│ │ │ │ │ ├── utimes_unsupported.go
│ │ │ │ │ ├── xattrs.go
│ │ │ │ │ ├── xattrs_linux.go
│ │ │ │ │ └── xattrs_unsupported.go
│ │ │ │ ├── tailfile/
│ │ │ │ │ └── tailfile.go
│ │ │ │ ├── tarsum/
│ │ │ │ │ ├── builder_context.go
│ │ │ │ │ ├── fileinfosums.go
│ │ │ │ │ ├── tarsum.go
│ │ │ │ │ ├── tarsum_spec.md
│ │ │ │ │ ├── versioning.go
│ │ │ │ │ └── writercloser.go
│ │ │ │ └── useragent/
│ │ │ │ ├── README.md
│ │ │ │ └── useragent.go
│ │ │ ├── restartmanager/
│ │ │ │ └── restartmanager.go
│ │ │ └── volume/
│ │ │ ├── mounts/
│ │ │ │ ├── lcow_parser.go
│ │ │ │ ├── linux_parser.go
│ │ │ │ ├── mounts.go
│ │ │ │ ├── parser.go
│ │ │ │ ├── validate.go
│ │ │ │ ├── volume_copy.go
│ │ │ │ ├── volume_unix.go
│ │ │ │ ├── volume_windows.go
│ │ │ │ └── windows_parser.go
│ │ │ └── volume.go
│ │ ├── docker-credential-helpers/
│ │ │ ├── LICENSE
│ │ │ ├── client/
│ │ │ │ ├── client.go
│ │ │ │ └── command.go
│ │ │ └── credentials/
│ │ │ ├── credentials.go
│ │ │ ├── error.go
│ │ │ ├── helper.go
│ │ │ └── version.go
│ │ ├── go-connections/
│ │ │ ├── LICENSE
│ │ │ ├── nat/
│ │ │ │ ├── nat.go
│ │ │ │ ├── parse.go
│ │ │ │ └── sort.go
│ │ │ ├── sockets/
│ │ │ │ ├── README.md
│ │ │ │ ├── inmem_socket.go
│ │ │ │ ├── proxy.go
│ │ │ │ ├── sockets.go
│ │ │ │ ├── sockets_unix.go
│ │ │ │ ├── sockets_windows.go
│ │ │ │ ├── tcp_socket.go
│ │ │ │ └── unix_socket.go
│ │ │ └── tlsconfig/
│ │ │ ├── certpool.go
│ │ │ ├── config.go
│ │ │ └── config_client_ciphers.go
│ │ ├── go-events/
│ │ │ ├── .gitignore
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── LICENSE
│ │ │ ├── MAINTAINERS
│ │ │ ├── README.md
│ │ │ ├── SECURITY.md
│ │ │ ├── broadcast.go
│ │ │ ├── channel.go
│ │ │ ├── errors.go
│ │ │ ├── event.go
│ │ │ ├── filter.go
│ │ │ ├── queue.go
│ │ │ ├── retry.go
│ │ │ ├── vendor.mod
│ │ │ └── vendor.sum
│ │ ├── go-metrics/
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── LICENSE
│ │ │ ├── LICENSE.docs
│ │ │ ├── NOTICE
│ │ │ ├── README.md
│ │ │ ├── counter.go
│ │ │ ├── docs.go
│ │ │ ├── gauge.go
│ │ │ ├── handler.go
│ │ │ ├── helpers.go
│ │ │ ├── namespace.go
│ │ │ ├── register.go
│ │ │ ├── timer.go
│ │ │ └── unit.go
│ │ └── go-units/
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── MAINTAINERS
│ │ ├── README.md
│ │ ├── circle.yml
│ │ ├── duration.go
│ │ ├── size.go
│ │ └── ulimit.go
│ ├── ePirat/
│ │ └── docker-credential-gitlabci/
│ │ ├── LICENSE
│ │ └── pkg/
│ │ └── credhelper/
│ │ └── credhelper.go
│ ├── emirpasic/
│ │ └── gods/
│ │ ├── LICENSE
│ │ ├── containers/
│ │ │ ├── containers.go
│ │ │ ├── enumerable.go
│ │ │ ├── iterator.go
│ │ │ └── serialization.go
│ │ ├── lists/
│ │ │ ├── arraylist/
│ │ │ │ ├── arraylist.go
│ │ │ │ ├── enumerable.go
│ │ │ │ ├── iterator.go
│ │ │ │ └── serialization.go
│ │ │ └── lists.go
│ │ ├── trees/
│ │ │ ├── binaryheap/
│ │ │ │ ├── binaryheap.go
│ │ │ │ ├── iterator.go
│ │ │ │ └── serialization.go
│ │ │ └── trees.go
│ │ └── utils/
│ │ ├── comparator.go
│ │ ├── sort.go
│ │ └── utils.go
│ ├── envoyproxy/
│ │ ├── go-control-plane/
│ │ │ └── envoy/
│ │ │ ├── LICENSE
│ │ │ ├── admin/
│ │ │ │ └── v3/
│ │ │ │ ├── certs.pb.go
│ │ │ │ ├── certs.pb.validate.go
│ │ │ │ ├── certs_vtproto.pb.go
│ │ │ │ ├── clusters.pb.go
│ │ │ │ ├── clusters.pb.validate.go
│ │ │ │ ├── clusters_vtproto.pb.go
│ │ │ │ ├── config_dump.pb.go
│ │ │ │ ├── config_dump.pb.validate.go
│ │ │ │ ├── config_dump_shared.pb.go
│ │ │ │ ├── config_dump_shared.pb.validate.go
│ │ │ │ ├── config_dump_shared_vtproto.pb.go
│ │ │ │ ├── config_dump_vtproto.pb.go
│ │ │ │ ├── init_dump.pb.go
│ │ │ │ ├── init_dump.pb.validate.go
│ │ │ │ ├── init_dump_vtproto.pb.go
│ │ │ │ ├── listeners.pb.go
│ │ │ │ ├── listeners.pb.validate.go
│ │ │ │ ├── listeners_vtproto.pb.go
│ │ │ │ ├── memory.pb.go
│ │ │ │ ├── memory.pb.validate.go
│ │ │ │ ├── memory_vtproto.pb.go
│ │ │ │ ├── metrics.pb.go
│ │ │ │ ├── metrics.pb.validate.go
│ │ │ │ ├── metrics_vtproto.pb.go
│ │ │ │ ├── mutex_stats.pb.go
│ │ │ │ ├── mutex_stats.pb.validate.go
│ │ │ │ ├── mutex_stats_vtproto.pb.go
│ │ │ │ ├── server_info.pb.go
│ │ │ │ ├── server_info.pb.validate.go
│ │ │ │ ├── server_info_vtproto.pb.go
│ │ │ │ ├── tap.pb.go
│ │ │ │ ├── tap.pb.validate.go
│ │ │ │ └── tap_vtproto.pb.go
│ │ │ ├── annotations/
│ │ │ │ ├── deprecation.pb.go
│ │ │ │ ├── deprecation.pb.validate.go
│ │ │ │ ├── resource.pb.go
│ │ │ │ ├── resource.pb.validate.go
│ │ │ │ └── resource_vtproto.pb.go
│ │ │ ├── config/
│ │ │ │ ├── accesslog/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── accesslog.pb.go
│ │ │ │ │ ├── accesslog.pb.validate.go
│ │ │ │ │ └── accesslog_vtproto.pb.go
│ │ │ │ ├── bootstrap/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── bootstrap.pb.go
│ │ │ │ │ ├── bootstrap.pb.validate.go
│ │ │ │ │ └── bootstrap_vtproto.pb.go
│ │ │ │ ├── cluster/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── circuit_breaker.pb.go
│ │ │ │ │ ├── circuit_breaker.pb.validate.go
│ │ │ │ │ ├── circuit_breaker_vtproto.pb.go
│ │ │ │ │ ├── cluster.pb.go
│ │ │ │ │ ├── cluster.pb.validate.go
│ │ │ │ │ ├── cluster_vtproto.pb.go
│ │ │ │ │ ├── filter.pb.go
│ │ │ │ │ ├── filter.pb.validate.go
│ │ │ │ │ ├── filter_vtproto.pb.go
│ │ │ │ │ ├── outlier_detection.pb.go
│ │ │ │ │ ├── outlier_detection.pb.validate.go
│ │ │ │ │ └── outlier_detection_vtproto.pb.go
│ │ │ │ ├── common/
│ │ │ │ │ └── matcher/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── matcher.pb.go
│ │ │ │ │ ├── matcher.pb.validate.go
│ │ │ │ │ └── matcher_vtproto.pb.go
│ │ │ │ ├── core/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── address.pb.go
│ │ │ │ │ ├── address.pb.validate.go
│ │ │ │ │ ├── address_vtproto.pb.go
│ │ │ │ │ ├── backoff.pb.go
│ │ │ │ │ ├── backoff.pb.validate.go
│ │ │ │ │ ├── backoff_vtproto.pb.go
│ │ │ │ │ ├── base.pb.go
│ │ │ │ │ ├── base.pb.validate.go
│ │ │ │ │ ├── base_vtproto.pb.go
│ │ │ │ │ ├── config_source.pb.go
│ │ │ │ │ ├── config_source.pb.validate.go
│ │ │ │ │ ├── config_source_vtproto.pb.go
│ │ │ │ │ ├── event_service_config.pb.go
│ │ │ │ │ ├── event_service_config.pb.validate.go
│ │ │ │ │ ├── event_service_config_vtproto.pb.go
│ │ │ │ │ ├── extension.pb.go
│ │ │ │ │ ├── extension.pb.validate.go
│ │ │ │ │ ├── extension_vtproto.pb.go
│ │ │ │ │ ├── grpc_method_list.pb.go
│ │ │ │ │ ├── grpc_method_list.pb.validate.go
│ │ │ │ │ ├── grpc_method_list_vtproto.pb.go
│ │ │ │ │ ├── grpc_service.pb.go
│ │ │ │ │ ├── grpc_service.pb.validate.go
│ │ │ │ │ ├── grpc_service_vtproto.pb.go
│ │ │ │ │ ├── health_check.pb.go
│ │ │ │ │ ├── health_check.pb.validate.go
│ │ │ │ │ ├── health_check_vtproto.pb.go
│ │ │ │ │ ├── http_service.pb.go
│ │ │ │ │ ├── http_service.pb.validate.go
│ │ │ │ │ ├── http_service_vtproto.pb.go
│ │ │ │ │ ├── http_uri.pb.go
│ │ │ │ │ ├── http_uri.pb.validate.go
│ │ │ │ │ ├── http_uri_vtproto.pb.go
│ │ │ │ │ ├── protocol.pb.go
│ │ │ │ │ ├── protocol.pb.validate.go
│ │ │ │ │ ├── protocol_vtproto.pb.go
│ │ │ │ │ ├── proxy_protocol.pb.go
│ │ │ │ │ ├── proxy_protocol.pb.validate.go
│ │ │ │ │ ├── proxy_protocol_vtproto.pb.go
│ │ │ │ │ ├── resolver.pb.go
│ │ │ │ │ ├── resolver.pb.validate.go
│ │ │ │ │ ├── resolver_vtproto.pb.go
│ │ │ │ │ ├── socket_cmsg_headers.pb.go
│ │ │ │ │ ├── socket_cmsg_headers.pb.validate.go
│ │ │ │ │ ├── socket_cmsg_headers_vtproto.pb.go
│ │ │ │ │ ├── socket_option.pb.go
│ │ │ │ │ ├── socket_option.pb.validate.go
│ │ │ │ │ ├── socket_option_vtproto.pb.go
│ │ │ │ │ ├── substitution_format_string.pb.go
│ │ │ │ │ ├── substitution_format_string.pb.validate.go
│ │ │ │ │ ├── substitution_format_string_vtproto.pb.go
│ │ │ │ │ ├── udp_socket_config.pb.go
│ │ │ │ │ ├── udp_socket_config.pb.validate.go
│ │ │ │ │ └── udp_socket_config_vtproto.pb.go
│ │ │ │ ├── endpoint/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── endpoint.pb.go
│ │ │ │ │ ├── endpoint.pb.validate.go
│ │ │ │ │ ├── endpoint_components.pb.go
│ │ │ │ │ ├── endpoint_components.pb.validate.go
│ │ │ │ │ ├── endpoint_components_vtproto.pb.go
│ │ │ │ │ ├── endpoint_vtproto.pb.go
│ │ │ │ │ ├── load_report.pb.go
│ │ │ │ │ ├── load_report.pb.validate.go
│ │ │ │ │ └── load_report_vtproto.pb.go
│ │ │ │ ├── listener/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── api_listener.pb.go
│ │ │ │ │ ├── api_listener.pb.validate.go
│ │ │ │ │ ├── api_listener_vtproto.pb.go
│ │ │ │ │ ├── listener.pb.go
│ │ │ │ │ ├── listener.pb.validate.go
│ │ │ │ │ ├── listener_components.pb.go
│ │ │ │ │ ├── listener_components.pb.validate.go
│ │ │ │ │ ├── listener_components_vtproto.pb.go
│ │ │ │ │ ├── listener_vtproto.pb.go
│ │ │ │ │ ├── quic_config.pb.go
│ │ │ │ │ ├── quic_config.pb.validate.go
│ │ │ │ │ ├── quic_config_vtproto.pb.go
│ │ │ │ │ ├── udp_listener_config.pb.go
│ │ │ │ │ ├── udp_listener_config.pb.validate.go
│ │ │ │ │ └── udp_listener_config_vtproto.pb.go
│ │ │ │ ├── metrics/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── metrics_service.pb.go
│ │ │ │ │ ├── metrics_service.pb.validate.go
│ │ │ │ │ ├── metrics_service_vtproto.pb.go
│ │ │ │ │ ├── stats.pb.go
│ │ │ │ │ ├── stats.pb.validate.go
│ │ │ │ │ └── stats_vtproto.pb.go
│ │ │ │ ├── overload/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── overload.pb.go
│ │ │ │ │ ├── overload.pb.validate.go
│ │ │ │ │ └── overload_vtproto.pb.go
│ │ │ │ ├── rbac/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── rbac.pb.go
│ │ │ │ │ ├── rbac.pb.validate.go
│ │ │ │ │ └── rbac_vtproto.pb.go
│ │ │ │ ├── route/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── route.pb.go
│ │ │ │ │ ├── route.pb.validate.go
│ │ │ │ │ ├── route_components.pb.go
│ │ │ │ │ ├── route_components.pb.validate.go
│ │ │ │ │ ├── route_components_vtproto.pb.go
│ │ │ │ │ ├── route_vtproto.pb.go
│ │ │ │ │ ├── scoped_route.pb.go
│ │ │ │ │ ├── scoped_route.pb.validate.go
│ │ │ │ │ └── scoped_route_vtproto.pb.go
│ │ │ │ ├── tap/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── common.pb.go
│ │ │ │ │ ├── common.pb.validate.go
│ │ │ │ │ └── common_vtproto.pb.go
│ │ │ │ └── trace/
│ │ │ │ └── v3/
│ │ │ │ ├── datadog.pb.go
│ │ │ │ ├── datadog.pb.validate.go
│ │ │ │ ├── datadog_vtproto.pb.go
│ │ │ │ ├── dynamic_ot.pb.go
│ │ │ │ ├── dynamic_ot.pb.validate.go
│ │ │ │ ├── dynamic_ot_vtproto.pb.go
│ │ │ │ ├── http_tracer.pb.go
│ │ │ │ ├── http_tracer.pb.validate.go
│ │ │ │ ├── http_tracer_vtproto.pb.go
│ │ │ │ ├── lightstep.pb.go
│ │ │ │ ├── lightstep.pb.validate.go
│ │ │ │ ├── lightstep_vtproto.pb.go
│ │ │ │ ├── opentelemetry.pb.go
│ │ │ │ ├── opentelemetry.pb.validate.go
│ │ │ │ ├── opentelemetry_vtproto.pb.go
│ │ │ │ ├── service.pb.go
│ │ │ │ ├── service.pb.validate.go
│ │ │ │ ├── service_vtproto.pb.go
│ │ │ │ ├── skywalking.pb.go
│ │ │ │ ├── skywalking.pb.validate.go
│ │ │ │ ├── skywalking_vtproto.pb.go
│ │ │ │ ├── trace.pb.go
│ │ │ │ ├── trace.pb.validate.go
│ │ │ │ ├── xray.pb.go
│ │ │ │ ├── xray.pb.validate.go
│ │ │ │ ├── xray_vtproto.pb.go
│ │ │ │ ├── zipkin.pb.go
│ │ │ │ ├── zipkin.pb.validate.go
│ │ │ │ └── zipkin_vtproto.pb.go
│ │ │ ├── data/
│ │ │ │ └── accesslog/
│ │ │ │ └── v3/
│ │ │ │ ├── accesslog.pb.go
│ │ │ │ ├── accesslog.pb.validate.go
│ │ │ │ └── accesslog_vtproto.pb.go
│ │ │ ├── extensions/
│ │ │ │ ├── clusters/
│ │ │ │ │ └── aggregate/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── cluster.pb.go
│ │ │ │ │ ├── cluster.pb.validate.go
│ │ │ │ │ └── cluster_vtproto.pb.go
│ │ │ │ ├── filters/
│ │ │ │ │ ├── common/
│ │ │ │ │ │ └── fault/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── fault.pb.go
│ │ │ │ │ │ ├── fault.pb.validate.go
│ │ │ │ │ │ └── fault_vtproto.pb.go
│ │ │ │ │ ├── http/
│ │ │ │ │ │ ├── fault/
│ │ │ │ │ │ │ └── v3/
│ │ │ │ │ │ │ ├── fault.pb.go
│ │ │ │ │ │ │ ├── fault.pb.validate.go
│ │ │ │ │ │ │ └── fault_vtproto.pb.go
│ │ │ │ │ │ ├── rbac/
│ │ │ │ │ │ │ └── v3/
│ │ │ │ │ │ │ ├── rbac.pb.go
│ │ │ │ │ │ │ ├── rbac.pb.validate.go
│ │ │ │ │ │ │ └── rbac_vtproto.pb.go
│ │ │ │ │ │ └── router/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── router.pb.go
│ │ │ │ │ │ ├── router.pb.validate.go
│ │ │ │ │ │ └── router_vtproto.pb.go
│ │ │ │ │ └── network/
│ │ │ │ │ └── http_connection_manager/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── http_connection_manager.pb.go
│ │ │ │ │ ├── http_connection_manager.pb.validate.go
│ │ │ │ │ └── http_connection_manager_vtproto.pb.go
│ │ │ │ ├── load_balancing_policies/
│ │ │ │ │ ├── client_side_weighted_round_robin/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── client_side_weighted_round_robin.pb.go
│ │ │ │ │ │ ├── client_side_weighted_round_robin.pb.validate.go
│ │ │ │ │ │ └── client_side_weighted_round_robin_vtproto.pb.go
│ │ │ │ │ ├── common/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── common.pb.go
│ │ │ │ │ │ ├── common.pb.validate.go
│ │ │ │ │ │ └── common_vtproto.pb.go
│ │ │ │ │ ├── least_request/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── least_request.pb.go
│ │ │ │ │ │ ├── least_request.pb.validate.go
│ │ │ │ │ │ └── least_request_vtproto.pb.go
│ │ │ │ │ ├── pick_first/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── pick_first.pb.go
│ │ │ │ │ │ ├── pick_first.pb.validate.go
│ │ │ │ │ │ └── pick_first_vtproto.pb.go
│ │ │ │ │ ├── ring_hash/
│ │ │ │ │ │ └── v3/
│ │ │ │ │ │ ├── ring_hash.pb.go
│ │ │ │ │ │ ├── ring_hash.pb.validate.go
│ │ │ │ │ │ └── ring_hash_vtproto.pb.go
│ │ │ │ │ └── wrr_locality/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── wrr_locality.pb.go
│ │ │ │ │ ├── wrr_locality.pb.validate.go
│ │ │ │ │ └── wrr_locality_vtproto.pb.go
│ │ │ │ ├── rbac/
│ │ │ │ │ └── audit_loggers/
│ │ │ │ │ └── stream/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── stream.pb.go
│ │ │ │ │ ├── stream.pb.validate.go
│ │ │ │ │ └── stream_vtproto.pb.go
│ │ │ │ └── transport_sockets/
│ │ │ │ └── tls/
│ │ │ │ └── v3/
│ │ │ │ ├── cert.pb.go
│ │ │ │ ├── cert.pb.validate.go
│ │ │ │ ├── common.pb.go
│ │ │ │ ├── common.pb.validate.go
│ │ │ │ ├── common_vtproto.pb.go
│ │ │ │ ├── secret.pb.go
│ │ │ │ ├── secret.pb.validate.go
│ │ │ │ ├── secret_vtproto.pb.go
│ │ │ │ ├── tls.pb.go
│ │ │ │ ├── tls.pb.validate.go
│ │ │ │ ├── tls_spiffe_validator_config.pb.go
│ │ │ │ ├── tls_spiffe_validator_config.pb.validate.go
│ │ │ │ ├── tls_spiffe_validator_config_vtproto.pb.go
│ │ │ │ └── tls_vtproto.pb.go
│ │ │ ├── service/
│ │ │ │ ├── discovery/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── ads.pb.go
│ │ │ │ │ ├── ads.pb.validate.go
│ │ │ │ │ ├── ads_grpc.pb.go
│ │ │ │ │ ├── ads_vtproto.pb.go
│ │ │ │ │ ├── discovery.pb.go
│ │ │ │ │ ├── discovery.pb.validate.go
│ │ │ │ │ └── discovery_vtproto.pb.go
│ │ │ │ ├── load_stats/
│ │ │ │ │ └── v3/
│ │ │ │ │ ├── lrs.pb.go
│ │ │ │ │ ├── lrs.pb.validate.go
│ │ │ │ │ ├── lrs_grpc.pb.go
│ │ │ │ │ └── lrs_vtproto.pb.go
│ │ │ │ └── status/
│ │ │ │ └── v3/
│ │ │ │ ├── csds.pb.go
│ │ │ │ ├── csds.pb.validate.go
│ │ │ │ ├── csds_grpc.pb.go
│ │ │ │ └── csds_vtproto.pb.go
│ │ │ └── type/
│ │ │ ├── http/
│ │ │ │ └── v3/
│ │ │ │ ├── cookie.pb.go
│ │ │ │ ├── cookie.pb.validate.go
│ │ │ │ ├── cookie_vtproto.pb.go
│ │ │ │ ├── path_transformation.pb.go
│ │ │ │ ├── path_transformation.pb.validate.go
│ │ │ │ └── path_transformation_vtproto.pb.go
│ │ │ ├── matcher/
│ │ │ │ └── v3/
│ │ │ │ ├── address.pb.go
│ │ │ │ ├── address.pb.validate.go
│ │ │ │ ├── address_vtproto.pb.go
│ │ │ │ ├── filter_state.pb.go
│ │ │ │ ├── filter_state.pb.validate.go
│ │ │ │ ├── filter_state_vtproto.pb.go
│ │ │ │ ├── http_inputs.pb.go
│ │ │ │ ├── http_inputs.pb.validate.go
│ │ │ │ ├── http_inputs_vtproto.pb.go
│ │ │ │ ├── metadata.pb.go
│ │ │ │ ├── metadata.pb.validate.go
│ │ │ │ ├── metadata_vtproto.pb.go
│ │ │ │ ├── node.pb.go
│ │ │ │ ├── node.pb.validate.go
│ │ │ │ ├── node_vtproto.pb.go
│ │ │ │ ├── number.pb.go
│ │ │ │ ├── number.pb.validate.go
│ │ │ │ ├── number_vtproto.pb.go
│ │ │ │ ├── path.pb.go
│ │ │ │ ├── path.pb.validate.go
│ │ │ │ ├── path_vtproto.pb.go
│ │ │ │ ├── regex.pb.go
│ │ │ │ ├── regex.pb.validate.go
│ │ │ │ ├── regex_vtproto.pb.go
│ │ │ │ ├── status_code_input.pb.go
│ │ │ │ ├── status_code_input.pb.validate.go
│ │ │ │ ├── status_code_input_vtproto.pb.go
│ │ │ │ ├── string.pb.go
│ │ │ │ ├── string.pb.validate.go
│ │ │ │ ├── string_vtproto.pb.go
│ │ │ │ ├── struct.pb.go
│ │ │ │ ├── struct.pb.validate.go
│ │ │ │ ├── struct_vtproto.pb.go
│ │ │ │ ├── value.pb.go
│ │ │ │ ├── value.pb.validate.go
│ │ │ │ └── value_vtproto.pb.go
│ │ │ ├── metadata/
│ │ │ │ └── v3/
│ │ │ │ ├── metadata.pb.go
│ │ │ │ ├── metadata.pb.validate.go
│ │ │ │ └── metadata_vtproto.pb.go
│ │ │ ├── tracing/
│ │ │ │ └── v3/
│ │ │ │ ├── custom_tag.pb.go
│ │ │ │ ├── custom_tag.pb.validate.go
│ │ │ │ └── custom_tag_vtproto.pb.go
│ │ │ └── v3/
│ │ │ ├── hash_policy.pb.go
│ │ │ ├── hash_policy.pb.validate.go
│ │ │ ├── hash_policy_vtproto.pb.go
│ │ │ ├── http.pb.go
│ │ │ ├── http.pb.validate.go
│ │ │ ├── http_status.pb.go
│ │ │ ├── http_status.pb.validate.go
│ │ │ ├── http_status_vtproto.pb.go
│ │ │ ├── percent.pb.go
│ │ │ ├── percent.pb.validate.go
│ │ │ ├── percent_vtproto.pb.go
│ │ │ ├── range.pb.go
│ │ │ ├── range.pb.validate.go
│ │ │ ├── range_vtproto.pb.go
│ │ │ ├── ratelimit_strategy.pb.go
│ │ │ ├── ratelimit_strategy.pb.validate.go
│ │ │ ├── ratelimit_strategy_vtproto.pb.go
│ │ │ ├── ratelimit_unit.pb.go
│ │ │ ├── ratelimit_unit.pb.validate.go
│ │ │ ├── semantic_version.pb.go
│ │ │ ├── semantic_version.pb.validate.go
│ │ │ ├── semantic_version_vtproto.pb.go
│ │ │ ├── token_bucket.pb.go
│ │ │ ├── token_bucket.pb.validate.go
│ │ │ └── token_bucket_vtproto.pb.go
│ │ └── protoc-gen-validate/
│ │ ├── LICENSE
│ │ └── validate/
│ │ ├── BUILD
│ │ ├── validate.h
│ │ ├── validate.pb.go
│ │ └── validate.proto
│ ├── felixge/
│ │ └── httpsnoop/
│ │ ├── .gitignore
│ │ ├── LICENSE.txt
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── capture_metrics.go
│ │ ├── docs.go
│ │ ├── wrap_generated_gteq_1.8.go
│ │ └── wrap_generated_lt_1.8.go
│ ├── fsnotify/
│ │ └── fsnotify/
│ │ ├── .cirrus.yml
│ │ ├── .gitignore
│ │ ├── .mailmap
│ │ ├── CHANGELOG.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── backend_fen.go
│ │ ├── backend_inotify.go
│ │ ├── backend_kqueue.go
│ │ ├── backend_other.go
│ │ ├── backend_windows.go
│ │ ├── fsnotify.go
│ │ ├── internal/
│ │ │ ├── darwin.go
│ │ │ ├── debug_darwin.go
│ │ │ ├── debug_dragonfly.go
│ │ │ ├── debug_freebsd.go
│ │ │ ├── debug_kqueue.go
│ │ │ ├── debug_linux.go
│ │ │ ├── debug_netbsd.go
│ │ │ ├── debug_openbsd.go
│ │ │ ├── debug_solaris.go
│ │ │ ├── debug_windows.go
│ │ │ ├── freebsd.go
│ │ │ ├── internal.go
│ │ │ ├── unix.go
│ │ │ ├── unix2.go
│ │ │ └── windows.go
│ │ ├── shared.go
│ │ ├── staticcheck.conf
│ │ ├── system_bsd.go
│ │ └── system_darwin.go
│ ├── go-git/
│ │ ├── gcfg/
│ │ │ ├── .gitignore
│ │ │ ├── LICENSE
│ │ │ ├── Makefile
│ │ │ ├── README
│ │ │ ├── doc.go
│ │ │ ├── errors.go
│ │ │ ├── read.go
│ │ │ ├── scanner/
│ │ │ │ ├── errors.go
│ │ │ │ └── scanner.go
│ │ │ ├── set.go
│ │ │ ├── token/
│ │ │ │ ├── position.go
│ │ │ │ ├── serialize.go
│ │ │ │ └── token.go
│ │ │ └── types/
│ │ │ ├── bool.go
│ │ │ ├── doc.go
│ │ │ ├── enum.go
│ │ │ ├── int.go
│ │ │ └── scan.go
│ │ └── go-git/
│ │ └── v5/
│ │ ├── .gitignore
│ │ ├── CODE_OF_CONDUCT.md
│ │ ├── COMPATIBILITY.md
│ │ ├── CONTRIBUTING.md
│ │ ├── EXTENDING.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── blame.go
│ │ ├── common.go
│ │ ├── config/
│ │ │ ├── branch.go
│ │ │ ├── config.go
│ │ │ ├── modules.go
│ │ │ ├── refspec.go
│ │ │ └── url.go
│ │ ├── doc.go
│ │ ├── internal/
│ │ │ ├── path_util/
│ │ │ │ └── path_util.go
│ │ │ ├── revision/
│ │ │ │ ├── parser.go
│ │ │ │ ├── scanner.go
│ │ │ │ └── token.go
│ │ │ └── url/
│ │ │ └── url.go
│ │ ├── object_walker.go
│ │ ├── options.go
│ │ ├── oss-fuzz.sh
│ │ ├── plumbing/
│ │ │ ├── cache/
│ │ │ │ ├── buffer_lru.go
│ │ │ │ ├── common.go
│ │ │ │ └── object_lru.go
│ │ │ ├── color/
│ │ │ │ └── color.go
│ │ │ ├── error.go
│ │ │ ├── filemode/
│ │ │ │ └── filemode.go
│ │ │ ├── format/
│ │ │ │ ├── config/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── decoder.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── encoder.go
│ │ │ │ │ ├── format.go
│ │ │ │ │ ├── option.go
│ │ │ │ │ └── section.go
│ │ │ │ ├── diff/
│ │ │ │ │ ├── colorconfig.go
│ │ │ │ │ ├── patch.go
│ │ │ │ │ └── unified_encoder.go
│ │ │ │ ├── gitignore/
│ │ │ │ │ ├── dir.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── matcher.go
│ │ │ │ │ └── pattern.go
│ │ │ │ ├── idxfile/
│ │ │ │ │ ├── decoder.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── encoder.go
│ │ │ │ │ ├── idxfile.go
│ │ │ │ │ └── writer.go
│ │ │ │ ├── index/
│ │ │ │ │ ├── decoder.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── encoder.go
│ │ │ │ │ ├── index.go
│ │ │ │ │ └── match.go
│ │ │ │ ├── objfile/
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── reader.go
│ │ │ │ │ └── writer.go
│ │ │ │ ├── packfile/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── delta_index.go
│ │ │ │ │ ├── delta_selector.go
│ │ │ │ │ ├── diff_delta.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ ├── encoder.go
│ │ │ │ │ ├── error.go
│ │ │ │ │ ├── fsobject.go
│ │ │ │ │ ├── object_pack.go
│ │ │ │ │ ├── packfile.go
│ │ │ │ │ ├── parser.go
│ │ │ │ │ ├── patch_delta.go
│ │ │ │ │ └── scanner.go
│ │ │ │ └── pktline/
│ │ │ │ ├── encoder.go
│ │ │ │ ├── error.go
│ │ │ │ └── scanner.go
│ │ │ ├── hash/
│ │ │ │ ├── hash.go
│ │ │ │ ├── hash_sha1.go
│ │ │ │ └── hash_sha256.go
│ │ │ ├── hash.go
│ │ │ ├── memory.go
│ │ │ ├── object/
│ │ │ │ ├── blob.go
│ │ │ │ ├── change.go
│ │ │ │ ├── change_adaptor.go
│ │ │ │ ├── commit.go
│ │ │ │ ├── commit_walker.go
│ │ │ │ ├── commit_walker_bfs.go
│ │ │ │ ├── commit_walker_bfs_filtered.go
│ │ │ │ ├── commit_walker_ctime.go
│ │ │ │ ├── commit_walker_limit.go
│ │ │ │ ├── commit_walker_path.go
│ │ │ │ ├── difftree.go
│ │ │ │ ├── file.go
│ │ │ │ ├── merge_base.go
│ │ │ │ ├── object.go
│ │ │ │ ├── patch.go
│ │ │ │ ├── rename.go
│ │ │ │ ├── signature.go
│ │ │ │ ├── tag.go
│ │ │ │ ├── tree.go
│ │ │ │ └── treenoder.go
│ │ │ ├── object.go
│ │ │ ├── protocol/
│ │ │ │ └── packp/
│ │ │ │ ├── advrefs.go
│ │ │ │ ├── advrefs_decode.go
│ │ │ │ ├── advrefs_encode.go
│ │ │ │ ├── capability/
│ │ │ │ │ ├── capability.go
│ │ │ │ │ └── list.go
│ │ │ │ ├── common.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── filter.go
│ │ │ │ ├── gitproto.go
│ │ │ │ ├── report_status.go
│ │ │ │ ├── shallowupd.go
│ │ │ │ ├── sideband/
│ │ │ │ │ ├── common.go
│ │ │ │ │ ├── demux.go
│ │ │ │ │ ├── doc.go
│ │ │ │ │ └── muxer.go
│ │ │ │ ├── srvresp.go
│ │ │ │ ├── ulreq.go
│ │ │ │ ├── ulreq_decode.go
│ │ │ │ ├── ulreq_encode.go
│ │ │ │ ├── updreq.go
│ │ │ │ ├── updreq_decode.go
│ │ │ │ ├── updreq_encode.go
│ │ │ │ ├── uppackreq.go
│ │ │ │ └── uppackresp.go
│ │ │ ├── reference.go
│ │ │ ├── revision.go
│ │ │ ├── revlist/
│ │ │ │ └── revlist.go
│ │ │ ├── storer/
│ │ │ │ ├── doc.go
│ │ │ │ ├── index.go
│ │ │ │ ├── object.go
│ │ │ │ ├── reference.go
│ │ │ │ ├── shallow.go
│ │ │ │ └── storer.go
│ │ │ └── transport/
│ │ │ ├── client/
│ │ │ │ └── client.go
│ │ │ ├── common.go
│ │ │ ├── file/
│ │ │ │ ├── client.go
│ │ │ │ └── server.go
│ │ │ ├── git/
│ │ │ │ └── common.go
│ │ │ ├── http/
│ │ │ │ ├── common.go
│ │ │ │ ├── receive_pack.go
│ │ │ │ ├── transport.go
│ │ │ │ └── upload_pack.go
│ │ │ ├── internal/
│ │ │ │ └── common/
│ │ │ │ ├── common.go
│ │ │ │ ├── mocks.go
│ │ │ │ └── server.go
│ │ │ ├── server/
│ │ │ │ ├── loader.go
│ │ │ │ └── server.go
│ │ │ └── ssh/
│ │ │ ├── auth_method.go
│ │ │ └── common.go
│ │ ├── prune.go
│ │ ├── remote.go
│ │ ├── repository.go
│ │ ├── signer.go
│ │ ├── status.go
│ │ ├── storage/
│ │ │ ├── filesystem/
│ │ │ │ ├── config.go
│ │ │ │ ├── deltaobject.go
│ │ │ │ ├── dotgit/
│ │ │ │ │ ├── dotgit.go
│ │ │ │ │ ├── dotgit_rewrite_packed_refs.go
│ │ │ │ │ ├── dotgit_setref.go
│ │ │ │ │ ├── reader.go
│ │ │ │ │ ├── repository_filesystem.go
│ │ │ │ │ └── writers.go
│ │ │ │ ├── index.go
│ │ │ │ ├── module.go
│ │ │ │ ├── object.go
│ │ │ │ ├── reference.go
│ │ │ │ ├── shallow.go
│ │ │ │ └── storage.go
│ │ │ ├── memory/
│ │ │ │ └── storage.go
│ │ │ └── storer.go
│ │ ├── submodule.go
│ │ ├── utils/
│ │ │ ├── binary/
│ │ │ │ ├── read.go
│ │ │ │ └── write.go
│ │ │ ├── diff/
│ │ │ │ └── diff.go
│ │ │ ├── ioutil/
│ │ │ │ └── common.go
│ │ │ ├── merkletrie/
│ │ │ │ ├── change.go
│ │ │ │ ├── difftree.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── doubleiter.go
│ │ │ │ ├── filesystem/
│ │ │ │ │ └── node.go
│ │ │ │ ├── index/
│ │ │ │ │ └── node.go
│ │ │ │ ├── internal/
│ │ │ │ │ └── frame/
│ │ │ │ │ └── frame.go
│ │ │ │ ├── iter.go
│ │ │ │ └── noder/
│ │ │ │ ├── noder.go
│ │ │ │ └── path.go
│ │ │ ├── sync/
│ │ │ │ ├── bufio.go
│ │ │ │ ├── bytes.go
│ │ │ │ └── zlib.go
│ │ │ └── trace/
│ │ │ └── trace.go
│ │ ├── worktree.go
│ │ ├── worktree_bsd.go
│ │ ├── worktree_commit.go
│ │ ├── worktree_js.go
│ │ ├── worktree_linux.go
│ │ ├── worktree_plan9.go
│ │ ├── worktree_status.go
│ │ ├── worktree_unix_other.go
│ │ └── worktree_windows.go
│ ├── go-jose/
│ │ └── go-jose/
│ │ └── v4/
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── .travis.yml
│ │ ├── CHANGELOG.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── asymmetric.go
│ │ ├── cipher/
│ │ │ ├── cbc_hmac.go
│ │ │ ├── concat_kdf.go
│ │ │ ├── ecdh_es.go
│ │ │ └── key_wrap.go
│ │ ├── crypter.go
│ │ ├── doc.go
│ │ ├── encoding.go
│ │ ├── json/
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── decode.go
│ │ │ ├── encode.go
│ │ │ ├── indent.go
│ │ │ ├── scanner.go
│ │ │ ├── stream.go
│ │ │ └── tags.go
│ │ ├── jwe.go
│ │ ├── jwk.go
│ │ ├── jws.go
│ │ ├── opaque.go
│ │ ├── shared.go
│ │ ├── signing.go
│ │ └── symmetric.go
│ ├── go-logr/
│ │ ├── logr/
│ │ │ ├── .golangci.yaml
│ │ │ ├── CHANGELOG.md
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── SECURITY.md
│ │ │ ├── context.go
│ │ │ ├── context_noslog.go
│ │ │ ├── context_slog.go
│ │ │ ├── discard.go
│ │ │ ├── funcr/
│ │ │ │ ├── funcr.go
│ │ │ │ └── slogsink.go
│ │ │ ├── logr.go
│ │ │ ├── sloghandler.go
│ │ │ ├── slogr.go
│ │ │ └── slogsink.go
│ │ └── stdr/
│ │ ├── LICENSE
│ │ ├── README.md
│ │ └── stdr.go
│ ├── gogo/
│ │ └── protobuf/
│ │ ├── AUTHORS
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ ├── gogoproto/
│ │ │ ├── Makefile
│ │ │ ├── doc.go
│ │ │ ├── gogo.pb.go
│ │ │ ├── gogo.pb.golden
│ │ │ ├── gogo.proto
│ │ │ └── helper.go
│ │ ├── proto/
│ │ │ ├── Makefile
│ │ │ ├── clone.go
│ │ │ ├── custom_gogo.go
│ │ │ ├── decode.go
│ │ │ ├── deprecated.go
│ │ │ ├── discard.go
│ │ │ ├── duration.go
│ │ │ ├── duration_gogo.go
│ │ │ ├── encode.go
│ │ │ ├── encode_gogo.go
│ │ │ ├── equal.go
│ │ │ ├── extensions.go
│ │ │ ├── extensions_gogo.go
│ │ │ ├── lib.go
│ │ │ ├── lib_gogo.go
│ │ │ ├── message_set.go
│ │ │ ├── pointer_reflect.go
│ │ │ ├── pointer_reflect_gogo.go
│ │ │ ├── pointer_unsafe.go
│ │ │ ├── pointer_unsafe_gogo.go
│ │ │ ├── properties.go
│ │ │ ├── properties_gogo.go
│ │ │ ├── skip_gogo.go
│ │ │ ├── table_marshal.go
│ │ │ ├── table_marshal_gogo.go
│ │ │ ├── table_merge.go
│ │ │ ├── table_unmarshal.go
│ │ │ ├── table_unmarshal_gogo.go
│ │ │ ├── text.go
│ │ │ ├── text_gogo.go
│ │ │ ├── text_parser.go
│ │ │ ├── timestamp.go
│ │ │ ├── timestamp_gogo.go
│ │ │ ├── wrappers.go
│ │ │ └── wrappers_gogo.go
│ │ ├── protoc-gen-gogo/
│ │ │ └── descriptor/
│ │ │ ├── Makefile
│ │ │ ├── descriptor.go
│ │ │ ├── descriptor.pb.go
│ │ │ ├── descriptor_gostring.gen.go
│ │ │ └── helper.go
│ │ ├── sortkeys/
│ │ │ └── sortkeys.go
│ │ └── types/
│ │ ├── any.go
│ │ ├── any.pb.go
│ │ ├── api.pb.go
│ │ ├── doc.go
│ │ ├── duration.go
│ │ ├── duration.pb.go
│ │ ├── duration_gogo.go
│ │ ├── empty.pb.go
│ │ ├── field_mask.pb.go
│ │ ├── protosize.go
│ │ ├── source_context.pb.go
│ │ ├── struct.pb.go
│ │ ├── timestamp.go
│ │ ├── timestamp.pb.go
│ │ ├── timestamp_gogo.go
│ │ ├── type.pb.go
│ │ ├── wrappers.pb.go
│ │ └── wrappers_gogo.go
│ ├── golang/
│ │ ├── groupcache/
│ │ │ ├── LICENSE
│ │ │ └── lru/
│ │ │ └── lru.go
│ │ ├── mock/
│ │ │ ├── AUTHORS
│ │ │ ├── CONTRIBUTORS
│ │ │ ├── LICENSE
│ │ │ └── gomock/
│ │ │ ├── call.go
│ │ │ ├── callset.go
│ │ │ ├── controller.go
│ │ │ └── matchers.go
│ │ └── protobuf/
│ │ ├── AUTHORS
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ └── proto/
│ │ ├── buffer.go
│ │ ├── defaults.go
│ │ ├── deprecated.go
│ │ ├── discard.go
│ │ ├── extensions.go
│ │ ├── properties.go
│ │ ├── proto.go
│ │ ├── registry.go
│ │ ├── text_decode.go
│ │ ├── text_encode.go
│ │ ├── wire.go
│ │ └── wrappers.go
│ ├── golang-jwt/
│ │ └── jwt/
│ │ └── v4/
│ │ ├── .gitignore
│ │ ├── LICENSE
│ │ ├── MIGRATION_GUIDE.md
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── VERSION_HISTORY.md
│ │ ├── claims.go
│ │ ├── doc.go
│ │ ├── ecdsa.go
│ │ ├── ecdsa_utils.go
│ │ ├── ed25519.go
│ │ ├── ed25519_utils.go
│ │ ├── errors.go
│ │ ├── hmac.go
│ │ ├── map_claims.go
│ │ ├── none.go
│ │ ├── parser.go
│ │ ├── parser_option.go
│ │ ├── rsa.go
│ │ ├── rsa_pss.go
│ │ ├── rsa_utils.go
│ │ ├── signing_method.go
│ │ ├── staticcheck.conf
│ │ ├── token.go
│ │ └── types.go
│ ├── google/
│ │ ├── go-cmp/
│ │ │ ├── LICENSE
│ │ │ └── cmp/
│ │ │ ├── compare.go
│ │ │ ├── export.go
│ │ │ ├── internal/
│ │ │ │ ├── diff/
│ │ │ │ │ ├── debug_disable.go
│ │ │ │ │ ├── debug_enable.go
│ │ │ │ │ └── diff.go
│ │ │ │ ├── flags/
│ │ │ │ │ └── flags.go
│ │ │ │ ├── function/
│ │ │ │ │ └── func.go
│ │ │ │ └── value/
│ │ │ │ ├── name.go
│ │ │ │ ├── pointer.go
│ │ │ │ └── sort.go
│ │ │ ├── options.go
│ │ │ ├── path.go
│ │ │ ├── report.go
│ │ │ ├── report_compare.go
│ │ │ ├── report_references.go
│ │ │ ├── report_reflect.go
│ │ │ ├── report_slices.go
│ │ │ ├── report_text.go
│ │ │ └── report_value.go
│ │ ├── go-containerregistry/
│ │ │ ├── LICENSE
│ │ │ ├── internal/
│ │ │ │ ├── and/
│ │ │ │ │ └── and_closer.go
│ │ │ │ ├── compression/
│ │ │ │ │ └── compression.go
│ │ │ │ ├── estargz/
│ │ │ │ │ └── estargz.go
│ │ │ │ ├── gzip/
│ │ │ │ │ └── zip.go
│ │ │ │ ├── redact/
│ │ │ │ │ └── redact.go
│ │ │ │ ├── retry/
│ │ │ │ │ ├── retry.go
│ │ │ │ │ └── wait/
│ │ │ │ │ └── kubernetes_apimachinery_wait.go
│ │ │ │ ├── verify/
│ │ │ │ │ └── verify.go
│ │ │ │ └── zstd/
│ │ │ │ └── zstd.go
│ │ │ └── pkg/
│ │ │ ├── authn/
│ │ │ │ ├── README.md
│ │ │ │ ├── anon.go
│ │ │ │ ├── auth.go
│ │ │ │ ├── authn.go
│ │ │ │ ├── basic.go
│ │ │ │ ├── bearer.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── keychain.go
│ │ │ │ └── multikeychain.go
│ │ │ ├── compression/
│ │ │ │ └── compression.go
│ │ │ ├── logs/
│ │ │ │ └── logs.go
│ │ │ ├── name/
│ │ │ │ ├── README.md
│ │ │ │ ├── check.go
│ │ │ │ ├── digest.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── errors.go
│ │ │ │ ├── options.go
│ │ │ │ ├── ref.go
│ │ │ │ ├── registry.go
│ │ │ │ ├── repository.go
│ │ │ │ └── tag.go
│ │ │ └── v1/
│ │ │ ├── config.go
│ │ │ ├── daemon/
│ │ │ │ ├── README.md
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── options.go
│ │ │ │ └── write.go
│ │ │ ├── doc.go
│ │ │ ├── empty/
│ │ │ │ ├── README.md
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ └── index.go
│ │ │ ├── google/
│ │ │ │ ├── README.md
│ │ │ │ ├── auth.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── keychain.go
│ │ │ │ ├── list.go
│ │ │ │ └── options.go
│ │ │ ├── hash.go
│ │ │ ├── image.go
│ │ │ ├── index.go
│ │ │ ├── layer.go
│ │ │ ├── layout/
│ │ │ │ ├── README.md
│ │ │ │ ├── blob.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── gc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ ├── layoutpath.go
│ │ │ │ ├── options.go
│ │ │ │ ├── read.go
│ │ │ │ └── write.go
│ │ │ ├── manifest.go
│ │ │ ├── match/
│ │ │ │ └── match.go
│ │ │ ├── mutate/
│ │ │ │ ├── README.md
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ ├── mutate.go
│ │ │ │ └── rebase.go
│ │ │ ├── partial/
│ │ │ │ ├── README.md
│ │ │ │ ├── compressed.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ ├── uncompressed.go
│ │ │ │ └── with.go
│ │ │ ├── platform.go
│ │ │ ├── progress.go
│ │ │ ├── random/
│ │ │ │ ├── doc.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ └── options.go
│ │ │ ├── remote/
│ │ │ │ ├── README.md
│ │ │ │ ├── catalog.go
│ │ │ │ ├── check.go
│ │ │ │ ├── delete.go
│ │ │ │ ├── descriptor.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── fetcher.go
│ │ │ │ ├── image.go
│ │ │ │ ├── index.go
│ │ │ │ ├── layer.go
│ │ │ │ ├── list.go
│ │
Showing preview only (2,009K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (19500 symbols across 1205 files)
FILE: cmd/executor/cmd/root.go
function init (line 56) | func init() {
function validateFlags (line 68) | func validateFlags() {
function addKanikoOptionsFlags (line 227) | func addKanikoOptionsFlags() {
function addHiddenFlags (line 291) | func addHiddenFlags(cmd *cobra.Command) {
function checkKanikoDir (line 300) | func checkKanikoDir(dir string) error {
function checkContained (line 319) | func checkContained() bool {
function checkNoDeprecatedFlags (line 324) | func checkNoDeprecatedFlags() {
function cacheFlagsValid (line 343) | func cacheFlagsValid() error {
function resolveDockerfilePath (line 356) | func resolveDockerfilePath() error {
function resolveEnvironmentBuildArgs (line 381) | func resolveEnvironmentBuildArgs(arguments []string, resolver func(strin...
function copyDockerfile (line 393) | func copyDockerfile() error {
function resolveSourceContext (line 409) | func resolveSourceContext() error {
function resolveRelativePaths (line 448) | func resolveRelativePaths() error {
function exit (line 476) | func exit(err error) {
function exitWithCode (line 487) | func exitWithCode(err error, exitCode int) {
function isURL (line 492) | func isURL(path string) bool {
function shdSkip (line 499) | func shdSkip(path string) bool {
FILE: cmd/executor/cmd/root_test.go
function TestSkipPath (line 25) | func TestSkipPath(t *testing.T) {
function TestIsUrl (line 64) | func TestIsUrl(t *testing.T) {
function TestResolveEnvironmentBuildArgs (line 101) | func TestResolveEnvironmentBuildArgs(t *testing.T) {
FILE: cmd/executor/cmd/version.go
function init (line 26) | func init() {
FILE: cmd/executor/main.go
function main (line 27) | func main() {
FILE: cmd/warmer/cmd/root.go
function init (line 46) | func init() {
function addKanikoOptionsFlags (line 107) | func addKanikoOptionsFlags() {
function addHiddenFlags (line 138) | func addHiddenFlags() {
function validateDockerfilePath (line 142) | func validateDockerfilePath() error {
function isURL (line 158) | func isURL(path string) bool {
function exit (line 165) | func exit(err error) {
FILE: cmd/warmer/main.go
function main (line 25) | func main() {
FILE: hack/boilerplate/boilerplate.py
function get_refs (line 41) | def get_refs():
function file_passes (line 54) | def file_passes(filename, refs, regexs):
function file_extension (line 111) | def file_extension(filename):
function normalize_files (line 114) | def normalize_files(files):
function get_files (line 121) | def get_files(extensions):
function get_regexs (line 145) | def get_regexs():
function main (line 159) | def main():
FILE: hack/release_notes/listpullreqs.go
constant org (line 44) | org = "GoogleContainerTools"
constant repo (line 45) | repo = "kaniko"
function main (line 47) | func main() {
function printPullRequests (line 56) | func printPullRequests() {
function getClient (line 90) | func getClient() *github.Client {
FILE: integration/benchmark_test.go
type result (line 32) | type result struct
function TestSnapshotBenchmark (line 39) | func TestSnapshotBenchmark(t *testing.T) {
function newResult (line 90) | func newResult(t *testing.T, f string) result {
function TestSnapshotBenchmarkGcloud (line 118) | func TestSnapshotBenchmarkGcloud(t *testing.T) {
function runInGcloud (line 152) | func runInGcloud(dir string, num int) (string, error) {
FILE: integration/cleanup.go
function RunOnInterrupt (line 27) | func RunOnInterrupt(f func()) {
FILE: integration/cmd.go
function RunCommandWithoutTest (line 27) | func RunCommandWithoutTest(cmd *exec.Cmd) ([]byte, error) {
function RunCommand (line 35) | func RunCommand(cmd *exec.Cmd, t *testing.T) []byte {
FILE: integration/config.go
type integrationTestConfig (line 25) | type integrationTestConfig struct
method isGcrRepository (line 38) | func (config *integrationTestConfig) isGcrRepository() bool {
constant gcrRepoPrefix (line 36) | gcrRepoPrefix string = "gcr.io/"
FILE: integration/images.go
constant ExecutorImage (line 41) | ExecutorImage = "executor-image"
constant WarmerImage (line 43) | WarmerImage = "warmer-image"
constant dockerPrefix (line 45) | dockerPrefix = "docker-"
constant kanikoPrefix (line 46) | kanikoPrefix = "kaniko-"
constant buildContextPath (line 47) | buildContextPath = "/workspace"
constant cacheDir (line 48) | cacheDir = "/workspace/cache"
constant baseImageToCache (line 49) | baseImageToCache = "gcr.io/google-appengine/debian9@sha256:1d6a9a6d106bd...
function checkArgsNotPrinted (line 119) | func checkArgsNotPrinted(dockerfile string, out []byte) error {
function GetDockerImage (line 149) | func GetDockerImage(imageRepo, dockerfile string) string {
function GetKanikoImage (line 155) | func GetKanikoImage(imageRepo, dockerfile string) string {
function GetVersionedKanikoImage (line 161) | func GetVersionedKanikoImage(imageRepo, dockerfile string, version int) ...
function FindDockerFiles (line 169) | func FindDockerFiles(dir, dockerfilesPattern string) ([]string, error) {
type DockerFileBuilder (line 189) | type DockerFileBuilder struct
method BuildDockerImage (line 250) | func (d *DockerFileBuilder) BuildDockerImage(t *testing.T, imageRepo, ...
method BuildImage (line 292) | func (d *DockerFileBuilder) BuildImage(t *testing.T, config *integrati...
method BuildImageWithContext (line 299) | func (d *DockerFileBuilder) BuildImageWithContext(t *testing.T, config...
method buildCachedImage (line 373) | func (d *DockerFileBuilder) buildCachedImage(config *integrationTestCo...
method buildRelativePathsImage (line 413) | func (d *DockerFileBuilder) buildRelativePathsImage(imageRepo, dockerf...
type logger (line 197) | type logger
function NewDockerFileBuilder (line 201) | func NewDockerFileBuilder() *DockerFileBuilder {
function addServiceAccountFlags (line 231) | func addServiceAccountFlags(flags []string, serviceAccount string) []str...
function populateVolumeCache (line 349) | func populateVolumeCache() error {
function buildKanikoImage (line 459) | func buildKanikoImage(
FILE: integration/integration_test.go
constant daemonPrefix (line 56) | daemonPrefix = "daemon://"
constant integrationPath (line 57) | integrationPath = "integration"
constant dockerfilesPath (line 58) | dockerfilesPath = "dockerfiles"
constant emptyContainerDiff (line 59) | emptyContainerDiff = `[
function getDockerMajorVersion (line 82) | func getDockerMajorVersion() int {
function launchTests (line 96) | func launchTests(m *testing.M) (int, error) {
function TestMain (line 135) | func TestMain(m *testing.M) {
function buildRequiredImages (line 155) | func buildRequiredImages() error {
function TestRun (line 190) | func TestRun(t *testing.T) {
function getBranchCommitAndURL (line 220) | func getBranchCommitAndURL() (branch, commit, url string) {
function getGitRepo (line 241) | func getGitRepo(explicit bool) string {
function testGitBuildcontextHelper (line 249) | func testGitBuildcontextHelper(t *testing.T, repo string) {
function TestGitBuildcontext (line 293) | func TestGitBuildcontext(t *testing.T) {
function TestGitBuildcontextNoRef (line 302) | func TestGitBuildcontextNoRef(t *testing.T) {
function TestGitBuildcontextExplicitCommit (line 312) | func TestGitBuildcontextExplicitCommit(t *testing.T) {
function TestGitBuildcontextSubPath (line 317) | func TestGitBuildcontextSubPath(t *testing.T) {
function TestBuildViaRegistryMirrors (line 361) | func TestBuildViaRegistryMirrors(t *testing.T) {
function TestBuildViaRegistryMap (line 403) | func TestBuildViaRegistryMap(t *testing.T) {
function TestBuildSkipFallback (line 445) | func TestBuildSkipFallback(t *testing.T) {
function TestKanikoDir (line 469) | func TestKanikoDir(t *testing.T) {
function TestBuildWithLabels (line 510) | func TestBuildWithLabels(t *testing.T) {
function TestBuildWithHTTPError (line 555) | func TestBuildWithHTTPError(t *testing.T) {
function TestLayers (line 591) | func TestLayers(t *testing.T) {
function TestReplaceFolderWithFileOrLink (line 632) | func TestReplaceFolderWithFileOrLink(t *testing.T) {
function buildImage (line 654) | func buildImage(t *testing.T, dockerfile string, imageBuilder *DockerFil...
function TestCache (line 665) | func TestCache(t *testing.T) {
function TestWarmerTwice (line 694) | func TestWarmerTwice(t *testing.T) {
function verifyBuildWith (line 723) | func verifyBuildWith(t *testing.T, cache, dockerfile string) {
function TestRelativePaths (line 747) | func TestRelativePaths(t *testing.T) {
function TestExitCodePropagation (line 777) | func TestExitCodePropagation(t *testing.T) {
type fileDiff (line 847) | type fileDiff struct
type fileDiffResult (line 852) | type fileDiffResult struct
type metaDiffResult (line 857) | type metaDiffResult struct
type diffOutput (line 862) | type diffOutput struct
method UnmarshalJSON (line 869) | func (diff *diffOutput) UnmarshalJSON(data []byte) error {
function checkContainerDiffOutput (line 896) | func checkContainerDiffOutput(t *testing.T, diff []byte, expected string) {
function filterMetaDiff (line 926) | func filterMetaDiff(metaDiff []string) []string {
function filterFileDiff (line 943) | func filterFileDiff(f []fileDiff) []fileDiff {
function checkLayers (line 960) | func checkLayers(t *testing.T, image1, image2 string, offset int) {
function getImageDetails (line 978) | func getImageDetails(image string) (*imageDetails, error) {
function getLastLayerFiles (line 1002) | func getLastLayerFiles(image string) ([]string, error) {
function logBenchmarks (line 1036) | func logBenchmarks(benchmark string) error {
type imageDetails (line 1048) | type imageDetails struct
method String (line 1054) | func (i imageDetails) String() string {
function initIntegrationTestConfig (line 1058) | func initIntegrationTestConfig() *integrationTestConfig {
function meetsRequirements (line 1117) | func meetsRequirements() bool {
function containerDiff (line 1131) | func containerDiff(t *testing.T, image1, image2 string, flags ...string)...
FILE: integration/integration_with_context_test.go
function TestWithContext (line 27) | func TestWithContext(t *testing.T) {
FILE: integration/integration_with_stdin_test.go
function TestBuildWithStdin (line 33) | func TestBuildWithStdin(t *testing.T) {
FILE: integration/k8s_test.go
type K8sConfig (line 30) | type K8sConfig struct
function TestK8s (line 36) | func TestK8s(t *testing.T) {
FILE: integration/tar.go
function CreateIntegrationTarball (line 31) | func CreateIntegrationTarball() (string, error) {
FILE: pkg/buildcontext/azureblob.go
type AzureBlob (line 33) | type AzureBlob struct
method UnpackTarFromBuildContext (line 38) | func (b *AzureBlob) UnpackTarFromBuildContext() (string, error) {
FILE: pkg/buildcontext/buildcontext.go
constant TarBuildContextPrefix (line 28) | TarBuildContextPrefix = "tar://"
type BuildOptions (line 31) | type BuildOptions struct
type BuildContext (line 39) | type BuildContext interface
function GetBuildContext (line 46) | func GetBuildContext(srcContext string, opts BuildOptions) (BuildContext...
FILE: pkg/buildcontext/dir.go
type Dir (line 20) | type Dir struct
method UnpackTarFromBuildContext (line 25) | func (f *Dir) UnpackTarFromBuildContext() (string, error) {
FILE: pkg/buildcontext/gcs.go
type GCS (line 34) | type GCS struct
method UnpackTarFromBuildContext (line 38) | func (g *GCS) UnpackTarFromBuildContext() (string, error) {
function UploadToBucket (line 46) | func UploadToBucket(r io.Reader, dest string) error {
function unpackTarFromGCSBucket (line 60) | func unpackTarFromGCSBucket(bucketName, item, directory string) error {
function getTarFromBucket (line 77) | func getTarFromBucket(bucketName, filepathInBucket, directory string) (s...
FILE: pkg/buildcontext/git.go
constant gitPullMethodEnvKey (line 38) | gitPullMethodEnvKey = "GIT_PULL_METHOD"
constant gitPullMethodHTTPS (line 39) | gitPullMethodHTTPS = "https"
constant gitPullMethodHTTP (line 40) | gitPullMethodHTTP = "http"
constant gitAuthUsernameEnvKey (line 42) | gitAuthUsernameEnvKey = "GIT_USERNAME"
constant gitAuthPasswordEnvKey (line 43) | gitAuthPasswordEnvKey = "GIT_PASSWORD"
constant gitAuthTokenEnvKey (line 44) | gitAuthTokenEnvKey = "GIT_TOKEN"
type Git (line 52) | type Git struct
method UnpackTarFromBuildContext (line 58) | func (g *Git) UnpackTarFromBuildContext() (string, error) {
function getGitReferenceName (line 141) | func getGitReferenceName(directory string, url string, branch string) (p...
function gitRefExists (line 170) | func gitRefExists(ref plumbing.ReferenceName, refs []*plumbing.Reference...
function getRecurseSubmodules (line 179) | func getRecurseSubmodules(v bool) git.SubmoduleRescursivity {
function getGitAuth (line 186) | func getGitAuth() transport.AuthMethod {
function getGitPullMethod (line 203) | func getGitPullMethod() string {
FILE: pkg/buildcontext/git_test.go
function TestGetGitPullMethod (line 28) | func TestGetGitPullMethod(t *testing.T) {
function TestGetGitAuth (line 86) | func TestGetGitAuth(t *testing.T) {
function clearTestAuthEnv (line 188) | func clearTestAuthEnv() {
FILE: pkg/buildcontext/https.go
type HTTPSTar (line 33) | type HTTPSTar struct
method UnpackTarFromBuildContext (line 38) | func (h *HTTPSTar) UnpackTarFromBuildContext() (directory string, err ...
FILE: pkg/buildcontext/https_test.go
function TestBuildWithHttpsTar (line 25) | func TestBuildWithHttpsTar(t *testing.T) {
FILE: pkg/buildcontext/s3.go
type S3 (line 37) | type S3 struct
method UnpackTarFromBuildContext (line 42) | func (s *S3) UnpackTarFromBuildContext() (string, error) {
FILE: pkg/buildcontext/tar.go
type Tar (line 31) | type Tar struct
method UnpackTarFromBuildContext (line 36) | func (t *Tar) UnpackTarFromBuildContext() (string, error) {
FILE: pkg/buildcontext/tar_test.go
function TestBuildWithLocalTar (line 33) | func TestBuildWithLocalTar(t *testing.T) {
function getSHAFromFilePath (line 146) | func getSHAFromFilePath(f string) (string, error) {
FILE: pkg/cache/cache.go
type LayerCache (line 40) | type LayerCache interface
type RegistryCache (line 45) | type RegistryCache struct
method RetrieveLayer (line 50) | func (rc *RegistryCache) RetrieveLayer(ck string) (v1.Image, error) {
function verifyImage (line 87) | func verifyImage(img v1.Image, cacheTTL time.Duration, cache string) err...
type LayoutCache (line 108) | type LayoutCache struct
method RetrieveLayer (line 112) | func (lc *LayoutCache) RetrieveLayer(ck string) (v1.Image, error) {
function locateImage (line 130) | func locateImage(path string) (v1.Image, error) {
function Destination (line 159) | func Destination(opts *config.KanikoOptions, cacheKey string) (string, e...
function LocalSource (line 173) | func LocalSource(opts *config.CacheOptions, cacheKey string) (v1.Image, ...
type cachedImage (line 204) | type cachedImage struct
method Digest (line 210) | func (c *cachedImage) Digest() (v1.Hash, error) {
method Manifest (line 214) | func (c *cachedImage) Manifest() (*v1.Manifest, error) {
function mfstFromPath (line 221) | func mfstFromPath(p string) (*v1.Manifest, error) {
function cachedImageFromPath (line 230) | func cachedImageFromPath(p string) (v1.Image, error) {
FILE: pkg/cache/doc_test.go
function ExampleWarmer_Warm (line 27) | func ExampleWarmer_Warm() {
FILE: pkg/cache/errors.go
function IsAlreadyCached (line 23) | func IsAlreadyCached(err error) bool {
type AlreadyCachedErr (line 30) | type AlreadyCachedErr struct
method Error (line 34) | func (a AlreadyCachedErr) Error() string {
function IsNotFound (line 40) | func IsNotFound(err error) bool {
type NotFoundErr (line 46) | type NotFoundErr struct
method Error (line 50) | func (e NotFoundErr) Error() string {
function IsExpired (line 56) | func IsExpired(err error) bool {
type ExpiredErr (line 63) | type ExpiredErr struct
method Error (line 67) | func (e ExpiredErr) Error() string {
FILE: pkg/cache/warm.go
function WarmCache (line 39) | func WarmCache(opts *config.WarmerOptions) error {
function warmToFile (line 75) | func warmToFile(cacheDir, img string, opts *config.WarmerOptions) error {
type FetchRemoteImage (line 128) | type FetchRemoteImage
type FetchLocalSource (line 133) | type FetchLocalSource
type Warmer (line 136) | type Warmer struct
method Warm (line 145) | func (w *Warmer) Warm(image string, opts *config.WarmerOptions) (v1.Ha...
function ParseDockerfile (line 185) | func ParseDockerfile(opts *config.WarmerOptions) ([]string, error) {
FILE: pkg/cache/warm_test.go
constant image (line 30) | image = "foo:latest"
function Test_Warmer_Warm_not_in_cache (line 33) | func Test_Warmer_Warm_not_in_cache(t *testing.T) {
function Test_Warmer_Warm_in_cache_not_expired (line 61) | func Test_Warmer_Warm_in_cache_not_expired(t *testing.T) {
function Test_Warmer_Warm_in_cache_expired (line 89) | func Test_Warmer_Warm_in_cache_expired(t *testing.T) {
function TestParseDockerfile_SingleStageDockerfile (line 117) | func TestParseDockerfile_SingleStageDockerfile(t *testing.T) {
function TestParseDockerfile_MultiStageDockerfile (line 147) | func TestParseDockerfile_MultiStageDockerfile(t *testing.T) {
function TestParseDockerfile_ArgsDockerfile (line 184) | func TestParseDockerfile_ArgsDockerfile(t *testing.T) {
function TestParseDockerfile_MissingsDockerfile (line 214) | func TestParseDockerfile_MissingsDockerfile(t *testing.T) {
function TestParseDockerfile_InvalidsDockerfile (line 225) | func TestParseDockerfile_InvalidsDockerfile(t *testing.T) {
FILE: pkg/commands/add.go
type AddCommand (line 33) | type AddCommand struct
method ExecuteCommand (line 48) | func (a *AddCommand) ExecuteCommand(config *v1.Config, buildArgs *dock...
method FilesToSnapshot (line 125) | func (a *AddCommand) FilesToSnapshot() []string {
method String (line 130) | func (a *AddCommand) String() string {
method FilesUsedFromContext (line 134) | func (a *AddCommand) FilesUsedFromContext(config *v1.Config, buildArgs...
method MetadataOnly (line 158) | func (a *AddCommand) MetadataOnly() bool {
method RequiresUnpackedFS (line 162) | func (a *AddCommand) RequiresUnpackedFS() bool {
FILE: pkg/commands/add_test.go
type TarList (line 33) | type TarList struct
function createFile (line 39) | func createFile(tempDir string) error {
function createTar (line 54) | func createTar(tempDir string, toCreate TarList) error {
function setupAddTest (line 83) | func setupAddTest(t *testing.T) string {
function Test_AddCommand (line 126) | func Test_AddCommand(t *testing.T) {
FILE: pkg/commands/arg.go
type ArgCommand (line 26) | type ArgCommand struct
method ExecuteCommand (line 32) | func (r *ArgCommand) ExecuteCommand(config *v1.Config, buildArgs *dock...
method String (line 68) | func (r *ArgCommand) String() string {
function ParseArg (line 44) | func ParseArg(key string, val *string, env []string, ba *dockerfile.Buil...
FILE: pkg/commands/base_command.go
type BaseCommand (line 24) | type BaseCommand struct
method IsArgsEnvsRequiredInCache (line 27) | func (b *BaseCommand) IsArgsEnvsRequiredInCache() bool {
method CacheCommand (line 31) | func (b *BaseCommand) CacheCommand(v1.Image) DockerCommand {
method FilesToSnapshot (line 35) | func (b *BaseCommand) FilesToSnapshot() []string {
method ProvidesFilesToSnapshot (line 39) | func (b *BaseCommand) ProvidesFilesToSnapshot() bool {
method FilesUsedFromContext (line 43) | func (b *BaseCommand) FilesUsedFromContext(_ *v1.Config, _ *dockerfile...
method MetadataOnly (line 47) | func (b *BaseCommand) MetadataOnly() bool {
method RequiresUnpackedFS (line 51) | func (b *BaseCommand) RequiresUnpackedFS() bool {
method ShouldCacheOutput (line 55) | func (b *BaseCommand) ShouldCacheOutput() bool {
method ShouldDetectDeletedFiles (line 59) | func (b *BaseCommand) ShouldDetectDeletedFiles() bool {
FILE: pkg/commands/cache.go
type Cached (line 21) | type Cached interface
type caching (line 25) | type caching struct
method Layer (line 29) | func (c caching) Layer() v1.Layer {
FILE: pkg/commands/cache_test.go
function Test_caching (line 23) | func Test_caching(t *testing.T) {
FILE: pkg/commands/cmd.go
type CmdCommand (line 28) | type CmdCommand struct
method ExecuteCommand (line 35) | func (c *CmdCommand) ExecuteCommand(config *v1.Config, buildArgs *dock...
method String (line 58) | func (c *CmdCommand) String() string {
FILE: pkg/commands/cmd_test.go
function TestExecuteCmd (line 44) | func TestExecuteCmd(t *testing.T) {
FILE: pkg/commands/commands.go
type CurrentCacheKey (line 28) | type CurrentCacheKey
type DockerCommand (line 30) | type DockerCommand interface
function GetCommand (line 67) | func GetCommand(cmd instructions.Command, fileContext util.FileContext, ...
FILE: pkg/commands/copy.go
type CopyCommand (line 40) | type CopyCommand struct
method ExecuteCommand (line 48) | func (c *CopyCommand) ExecuteCommand(config *v1.Config, buildArgs *doc...
method FilesToSnapshot (line 132) | func (c *CopyCommand) FilesToSnapshot() []string {
method String (line 137) | func (c *CopyCommand) String() string {
method FilesUsedFromContext (line 141) | func (c *CopyCommand) FilesUsedFromContext(config *v1.Config, buildArg...
method MetadataOnly (line 145) | func (c *CopyCommand) MetadataOnly() bool {
method RequiresUnpackedFS (line 149) | func (c *CopyCommand) RequiresUnpackedFS() bool {
method From (line 153) | func (c *CopyCommand) From() string {
method ShouldCacheOutput (line 157) | func (c *CopyCommand) ShouldCacheOutput() bool {
method CacheCommand (line 162) | func (c *CopyCommand) CacheCommand(img v1.Image) DockerCommand {
type CachingCopyCommand (line 171) | type CachingCopyCommand struct
method ExecuteCommand (line 181) | func (cr *CachingCopyCommand) ExecuteCommand(config *v1.Config, buildA...
method FilesUsedFromContext (line 209) | func (cr *CachingCopyCommand) FilesUsedFromContext(config *v1.Config, ...
method FilesToSnapshot (line 213) | func (cr *CachingCopyCommand) FilesToSnapshot() []string {
method MetadataOnly (line 221) | func (cr *CachingCopyCommand) MetadataOnly() bool {
method String (line 225) | func (cr *CachingCopyCommand) String() string {
method From (line 232) | func (cr *CachingCopyCommand) From() string {
function resolveIfSymlink (line 236) | func resolveIfSymlink(destPath string) (string, error) {
function copyCmdFilesUsedFromContext (line 275) | func copyCmdFilesUsedFromContext(
type AbstractCopyCommand (line 304) | type AbstractCopyCommand interface
function CastAbstractCopyCommand (line 309) | func CastAbstractCopyCommand(cmd interface{}) (AbstractCopyCommand, bool) {
FILE: pkg/commands/copy_test.go
function setupTestTemp (line 76) | func setupTestTemp(t *testing.T) string {
function readDirectory (line 128) | func readDirectory(dirName string) ([]fs.FileInfo, error) {
function Test_CachingCopyCommand_ExecuteCommand (line 146) | func Test_CachingCopyCommand_ExecuteCommand(t *testing.T) {
function TestCopyExecuteCmd (line 296) | func TestCopyExecuteCmd(t *testing.T) {
function copySetUpBuildArgs (line 358) | func copySetUpBuildArgs() *dockerfile.BuildArgs {
function Test_resolveIfSymlink (line 369) | func Test_resolveIfSymlink(t *testing.T) {
function Test_CopyEnvAndWildcards (line 429) | func Test_CopyEnvAndWildcards(t *testing.T) {
function TestCopyCommand_ExecuteCommand_Extended (line 532) | func TestCopyCommand_ExecuteCommand_Extended(t *testing.T) {
FILE: pkg/commands/entrypoint.go
type EntrypointCommand (line 28) | type EntrypointCommand struct
method ExecuteCommand (line 34) | func (e *EntrypointCommand) ExecuteCommand(config *v1.Config, buildArg...
method String (line 55) | func (e *EntrypointCommand) String() string {
FILE: pkg/commands/entrypoint_test.go
function TestEntrypointExecuteCmd (line 44) | func TestEntrypointExecuteCmd(t *testing.T) {
FILE: pkg/commands/env.go
type EnvCommand (line 27) | type EnvCommand struct
method ExecuteCommand (line 32) | func (e *EnvCommand) ExecuteCommand(config *v1.Config, buildArgs *dock...
method String (line 39) | func (e *EnvCommand) String() string {
FILE: pkg/commands/env_test.go
function Test_EnvExecute (line 28) | func Test_EnvExecute(t *testing.T) {
function setUpBuildArgs (line 71) | func setUpBuildArgs() *dockerfile.BuildArgs {
FILE: pkg/commands/expose.go
type ExposeCommand (line 31) | type ExposeCommand struct
method ExecuteCommand (line 36) | func (r *ExposeCommand) ExecuteCommand(config *v1.Config, buildArgs *d...
method String (line 76) | func (r *ExposeCommand) String() string {
function validProtocol (line 66) | func validProtocol(protocol string) bool {
FILE: pkg/commands/expose_test.go
function TestUpdateExposedPorts (line 29) | func TestUpdateExposedPorts(t *testing.T) {
function TestInvalidProtocol (line 70) | func TestInvalidProtocol(t *testing.T) {
FILE: pkg/commands/fake_commands.go
type fakeLayer (line 28) | type fakeLayer struct
method Digest (line 32) | func (f fakeLayer) Digest() (v1.Hash, error) {
method DiffID (line 35) | func (f fakeLayer) DiffID() (v1.Hash, error) {
method Compressed (line 38) | func (f fakeLayer) Compressed() (io.ReadCloser, error) {
method Uncompressed (line 41) | func (f fakeLayer) Uncompressed() (io.ReadCloser, error) {
method Size (line 44) | func (f fakeLayer) Size() (int64, error) {
method MediaType (line 47) | func (f fakeLayer) MediaType() (types.MediaType, error) {
type fakeImage (line 51) | type fakeImage struct
method Layers (line 55) | func (f fakeImage) Layers() ([]v1.Layer, error) {
method MediaType (line 58) | func (f fakeImage) MediaType() (types.MediaType, error) {
method Size (line 61) | func (f fakeImage) Size() (int64, error) {
method ConfigName (line 64) | func (f fakeImage) ConfigName() (v1.Hash, error) {
method ConfigFile (line 67) | func (f fakeImage) ConfigFile() (*v1.ConfigFile, error) {
method RawConfigFile (line 70) | func (f fakeImage) RawConfigFile() ([]byte, error) {
method Digest (line 73) | func (f fakeImage) Digest() (v1.Hash, error) {
method Manifest (line 76) | func (f fakeImage) Manifest() (*v1.Manifest, error) {
method RawManifest (line 79) | func (f fakeImage) RawManifest() ([]byte, error) {
method LayerByDigest (line 82) | func (f fakeImage) LayerByDigest(v1.Hash) (v1.Layer, error) {
method LayerByDiffID (line 85) | func (f fakeImage) LayerByDiffID(v1.Hash) (v1.Layer, error) {
FILE: pkg/commands/healthcheck.go
function convertDockerHealthConfigToContainerRegistryFormat (line 26) | func convertDockerHealthConfigToContainerRegistryFormat(dockerHealthchec...
type HealthCheckCommand (line 36) | type HealthCheckCommand struct
method ExecuteCommand (line 42) | func (h *HealthCheckCommand) ExecuteCommand(config *v1.Config, buildAr...
method String (line 50) | func (h *HealthCheckCommand) String() string {
FILE: pkg/commands/label.go
type LabelCommand (line 28) | type LabelCommand struct
method ExecuteCommand (line 33) | func (r *LabelCommand) ExecuteCommand(config *v1.Config, buildArgs *do...
method String (line 69) | func (r *LabelCommand) String() string {
function updateLabels (line 37) | func updateLabels(labels []instructions.KeyValuePair, config *v1.Config,...
FILE: pkg/commands/label_test.go
function TestUpdateLabels (line 28) | func TestUpdateLabels(t *testing.T) {
FILE: pkg/commands/onbuild.go
type OnBuildCommand (line 26) | type OnBuildCommand struct
method ExecuteCommand (line 32) | func (o *OnBuildCommand) ExecuteCommand(config *v1.Config, buildArgs *...
method String (line 44) | func (o *OnBuildCommand) String() string {
FILE: pkg/commands/onbuild_test.go
function TestExecuteOnbuild (line 53) | func TestExecuteOnbuild(t *testing.T) {
FILE: pkg/commands/run.go
type RunCommand (line 36) | type RunCommand struct
method IsArgsEnvsRequiredInCache (line 47) | func (r *RunCommand) IsArgsEnvsRequiredInCache() bool {
method ExecuteCommand (line 51) | func (r *RunCommand) ExecuteCommand(config *v1.Config, buildArgs *dock...
method String (line 164) | func (r *RunCommand) String() string {
method FilesToSnapshot (line 168) | func (r *RunCommand) FilesToSnapshot() []string {
method ProvidesFilesToSnapshot (line 172) | func (r *RunCommand) ProvidesFilesToSnapshot() bool {
method CacheCommand (line 177) | func (r *RunCommand) CacheCommand(img v1.Image) DockerCommand {
method MetadataOnly (line 186) | func (r *RunCommand) MetadataOnly() bool {
method RequiresUnpackedFS (line 190) | func (r *RunCommand) RequiresUnpackedFS() bool {
method ShouldCacheOutput (line 194) | func (r *RunCommand) ShouldCacheOutput() bool {
function runCommandInExec (line 55) | func runCommandInExec(config *v1.Config, buildArgs *dockerfile.BuildArgs...
function addDefaultHOME (line 140) | func addDefaultHOME(u string, envs []string) ([]string, error) {
type CachingRunCommand (line 198) | type CachingRunCommand struct
method IsArgsEnvsRequiredInCache (line 207) | func (cr *CachingRunCommand) IsArgsEnvsRequiredInCache() bool {
method ExecuteCommand (line 211) | func (cr *CachingRunCommand) ExecuteCommand(config *v1.Config, buildAr...
method FilesToSnapshot (line 243) | func (cr *CachingRunCommand) FilesToSnapshot() []string {
method String (line 251) | func (cr *CachingRunCommand) String() string {
method MetadataOnly (line 258) | func (cr *CachingRunCommand) MetadataOnly() bool {
function setWorkDirIfExists (line 263) | func setWorkDirIfExists(workdir string) string {
FILE: pkg/commands/run_marker.go
type RunMarkerCommand (line 29) | type RunMarkerCommand struct
method ExecuteCommand (line 36) | func (r *RunMarkerCommand) ExecuteCommand(config *v1.Config, buildArgs...
method String (line 50) | func (r *RunMarkerCommand) String() string {
method FilesToSnapshot (line 54) | func (r *RunMarkerCommand) FilesToSnapshot() []string {
method ProvidesFilesToSnapshot (line 58) | func (r *RunMarkerCommand) ProvidesFilesToSnapshot() bool {
method IsArgsEnvsRequiredInCache (line 62) | func (r *RunMarkerCommand) IsArgsEnvsRequiredInCache() bool {
method CacheCommand (line 67) | func (r *RunMarkerCommand) CacheCommand(img v1.Image) DockerCommand {
method MetadataOnly (line 76) | func (r *RunMarkerCommand) MetadataOnly() bool {
method RequiresUnpackedFS (line 80) | func (r *RunMarkerCommand) RequiresUnpackedFS() bool {
method ShouldCacheOutput (line 84) | func (r *RunMarkerCommand) ShouldCacheOutput() bool {
method ShouldDetectDeletedFiles (line 88) | func (r *RunMarkerCommand) ShouldDetectDeletedFiles() bool {
FILE: pkg/commands/run_test.go
function Test_addDefaultHOME (line 34) | func Test_addDefaultHOME(t *testing.T) {
function prepareTarFixture (line 124) | func prepareTarFixture(t *testing.T, fileNames []string) ([]byte, error) {
function Test_CachingRunCommand_ExecuteCommand (line 169) | func Test_CachingRunCommand_ExecuteCommand(t *testing.T) {
function TestSetWorkDirIfExists (line 313) | func TestSetWorkDirIfExists(t *testing.T) {
FILE: pkg/commands/shell.go
type ShellCommand (line 25) | type ShellCommand struct
method ExecuteCommand (line 31) | func (s *ShellCommand) ExecuteCommand(config *v1.Config, buildArgs *do...
method String (line 37) | func (s *ShellCommand) String() string {
FILE: pkg/commands/shell_test.go
function TestShellExecuteCmd (line 41) | func TestShellExecuteCmd(t *testing.T) {
FILE: pkg/commands/stopsignal.go
type StopSignalCommand (line 28) | type StopSignalCommand struct
method ExecuteCommand (line 34) | func (s *StopSignalCommand) ExecuteCommand(config *v1.Config, buildArg...
method String (line 57) | func (s *StopSignalCommand) String() string {
FILE: pkg/commands/stopsignal_test.go
function TestStopsignalExecuteCmd (line 46) | func TestStopsignalExecuteCmd(t *testing.T) {
FILE: pkg/commands/user.go
type UserCommand (line 31) | type UserCommand struct
method ExecuteCommand (line 36) | func (r *UserCommand) ExecuteCommand(config *v1.Config, buildArgs *doc...
method String (line 58) | func (r *UserCommand) String() string {
FILE: pkg/commands/user_test.go
function TestUpdateUser (line 98) | func TestUpdateUser(t *testing.T) {
FILE: pkg/commands/volume.go
type VolumeCommand (line 31) | type VolumeCommand struct
method ExecuteCommand (line 36) | func (v *VolumeCommand) ExecuteCommand(config *v1.Config, buildArgs *d...
method FilesToSnapshot (line 66) | func (v *VolumeCommand) FilesToSnapshot() []string {
method String (line 70) | func (v *VolumeCommand) String() string {
FILE: pkg/commands/volume_test.go
function TestUpdateVolume (line 29) | func TestUpdateVolume(t *testing.T) {
FILE: pkg/commands/workdir.go
type WorkdirCommand (line 32) | type WorkdirCommand struct
method ExecuteCommand (line 41) | func (w *WorkdirCommand) ExecuteCommand(config *v1.Config, buildArgs *...
method FilesToSnapshot (line 83) | func (w *WorkdirCommand) FilesToSnapshot() []string {
method String (line 88) | func (w *WorkdirCommand) String() string {
method MetadataOnly (line 92) | func (w *WorkdirCommand) MetadataOnly() bool {
FILE: pkg/commands/workdir_test.go
function mockDir (line 87) | func mockDir(path string, mode os.FileMode, uid, gid int64) error {
function TestWorkdirCommand (line 90) | func TestWorkdirCommand(t *testing.T) {
FILE: pkg/config/args.go
type multiArg (line 27) | type multiArg
method String (line 32) | func (b *multiArg) String() string {
method Set (line 37) | func (b *multiArg) Set(value string) error {
method Type (line 44) | func (b *multiArg) Type() string {
method Contains (line 48) | func (b *multiArg) Contains(v string) bool {
type keyValueArg (line 58) | type keyValueArg
method String (line 63) | func (a *keyValueArg) String() string {
method Set (line 72) | func (a *keyValueArg) Set(value string) error {
method Type (line 82) | func (a *keyValueArg) Type() string {
type multiKeyMultiValueArg (line 86) | type multiKeyMultiValueArg
method parseKV (line 88) | func (c *multiKeyMultiValueArg) parseKV(value string) error {
method String (line 97) | func (c *multiKeyMultiValueArg) String() string {
method Set (line 108) | func (c *multiKeyMultiValueArg) Set(value string) error {
method Type (line 125) | func (c *multiKeyMultiValueArg) Type() string {
FILE: pkg/config/args_test.go
function TestMultiArg_Set_shouldAppendValue (line 21) | func TestMultiArg_Set_shouldAppendValue(t *testing.T) {
function Test_KeyValueArg_Set_shouldSplitArgument (line 33) | func Test_KeyValueArg_Set_shouldSplitArgument(t *testing.T) {
function Test_KeyValueArg_Set_shouldAcceptEqualAsValue (line 41) | func Test_KeyValueArg_Set_shouldAcceptEqualAsValue(t *testing.T) {
function Test_multiKeyMultiValueArg_Set_shouldSplitArgumentLikeKVA (line 49) | func Test_multiKeyMultiValueArg_Set_shouldSplitArgumentLikeKVA(t *testin...
function Test_multiKeyMultiValueArg_Set_ShouldAppendIfRepeated (line 57) | func Test_multiKeyMultiValueArg_Set_ShouldAppendIfRepeated(t *testing.T) {
function Test_multiKeyMultiValueArg_Set_Composed (line 66) | func Test_multiKeyMultiValueArg_Set_Composed(t *testing.T) {
function Test_multiKeyMultiValueArg_Set_WithEmptyValueShouldWork (line 74) | func Test_multiKeyMultiValueArg_Set_WithEmptyValueShouldWork(t *testing....
FILE: pkg/config/init.go
function init (line 49) | func init() {
FILE: pkg/config/options.go
type CacheOptions (line 28) | type CacheOptions struct
type RegistryOptions (line 34) | type RegistryOptions struct
type KanikoOptions (line 52) | type KanikoOptions struct
type KanikoGitOptions (line 96) | type KanikoGitOptions struct
method Type (line 105) | func (k *KanikoGitOptions) Type() string {
method String (line 109) | func (k *KanikoGitOptions) String() string {
method Set (line 113) | func (k *KanikoGitOptions) Set(s string) error {
type Compression (line 144) | type Compression
method String (line 152) | func (c *Compression) String() string {
method Set (line 156) | func (c *Compression) Set(v string) error {
method Type (line 166) | func (c *Compression) Type() string {
constant GZip (line 148) | GZip Compression = "gzip"
constant ZStd (line 149) | ZStd Compression = "zstd"
type WarmerOptions (line 171) | type WarmerOptions struct
FILE: pkg/config/options_test.go
function TestKanikoGitOptions (line 25) | func TestKanikoGitOptions(t *testing.T) {
FILE: pkg/config/stage.go
type KanikoStage (line 24) | type KanikoStage struct
FILE: pkg/constants/constants.go
constant RootDir (line 21) | RootDir = "/"
constant MountInfoPath (line 23) | MountInfoPath = "/proc/self/mountinfo"
constant DefaultKanikoPath (line 25) | DefaultKanikoPath = "/kaniko"
constant Author (line 27) | Author = "kaniko"
constant ContextTar (line 30) | ContextTar = "context.tar.gz"
constant SnapshotModeTime (line 33) | SnapshotModeTime = "time"
constant SnapshotModeFull (line 34) | SnapshotModeFull = "full"
constant SnapshotModeRedo (line 35) | SnapshotModeRedo = "redo"
constant NoBaseImage (line 38) | NoBaseImage = "scratch"
constant GCSBuildContextPrefix (line 40) | GCSBuildContextPrefix = "gs://"
constant S3BuildContextPrefix (line 41) | S3BuildContextPrefix = "s3://"
constant LocalDirBuildContextPrefix (line 42) | LocalDirBuildContextPrefix = "dir://"
constant GitBuildContextPrefix (line 43) | GitBuildContextPrefix = "git://"
constant HTTPSBuildContextPrefix (line 44) | HTTPSBuildContextPrefix = "https://"
constant HOME (line 46) | HOME = "HOME"
constant DefaultHOMEValue (line 48) | DefaultHOMEValue = "/root"
constant RootUser (line 49) | RootUser = "root"
constant Cmd (line 52) | Cmd = "CMD"
constant Entrypoint (line 53) | Entrypoint = "ENTRYPOINT"
constant Dockerignore (line 56) | Dockerignore = ".dockerignore"
constant S3EndpointEnv (line 59) | S3EndpointEnv = "S3_ENDPOINT"
constant S3ForcePathStyle (line 60) | S3ForcePathStyle = "S3_FORCE_PATH_STYLE"
FILE: pkg/creds/creds.go
function GetKeychain (line 30) | func GetKeychain() authn.Keychain {
FILE: pkg/dockerfile/buildargs.go
type BuildArgs (line 26) | type BuildArgs struct
method Clone (line 45) | func (b *BuildArgs) Clone() *BuildArgs {
method ReplacementEnvs (line 53) | func (b *BuildArgs) ReplacementEnvs(envs []string) []string {
method AddMetaArgs (line 63) | func (b *BuildArgs) AddMetaArgs(metaArgs []instructions.ArgCommand) {
function NewBuildArgs (line 30) | func NewBuildArgs(args []string) *BuildArgs {
FILE: pkg/dockerfile/dockerfile.go
function ParseStages (line 40) | func ParseStages(opts *config.KanikoOptions) ([]instructions.Stage, []in...
function baseImageIndex (line 73) | func baseImageIndex(currentStage int, stages []instructions.Stage) int {
function Parse (line 89) | func Parse(b []byte) ([]instructions.Stage, []instructions.ArgCommand, e...
function expandNestedArgs (line 108) | func expandNestedArgs(metaArgs []instructions.ArgCommand, buildArgs []st...
function stripEnclosingQuotes (line 129) | func stripEnclosingQuotes(metaArgs []instructions.ArgCommand) ([]instruc...
function extractValFromQuotes (line 147) | func extractValFromQuotes(val string) (string, error) {
function targetStage (line 197) | func targetStage(stages []instructions.Stage, target string) (int, error) {
function ParseCommands (line 210) | func ParseCommands(cmdArray []string) ([]instructions.Command, error) {
function saveStage (line 228) | func saveStage(index int, stages []instructions.Stage) bool {
function ResolveCrossStageCommands (line 249) | func ResolveCrossStageCommands(cmds []instructions.Command, stageNameToI...
function resolveStagesArgs (line 263) | func resolveStagesArgs(stages []instructions.Stage, args []string) error {
function MakeKanikoStages (line 276) | func MakeKanikoStages(opts *config.KanikoOptions, stages []instructions....
function GetOnBuildInstructions (line 310) | func GetOnBuildInstructions(config *v1.Config, stageNameToIdx map[string...
function unifyArgs (line 327) | func unifyArgs(metaArgs []instructions.ArgCommand, buildArgs []string) [...
function skipUnusedStages (line 351) | func skipUnusedStages(stages []instructions.Stage, lastStageIndex *int, ...
FILE: pkg/dockerfile/dockerfile_test.go
function Test_ParseStages_ArgValueWithQuotes (line 31) | func Test_ParseStages_ArgValueWithQuotes(t *testing.T) {
function Test_stripEnclosingQuotes (line 81) | func Test_stripEnclosingQuotes(t *testing.T) {
function Test_GetOnBuildInstructions (line 195) | func Test_GetOnBuildInstructions(t *testing.T) {
function Test_targetStage (line 255) | func Test_targetStage(t *testing.T) {
function Test_SaveStage (line 317) | func Test_SaveStage(t *testing.T) {
function Test_baseImageIndex (line 366) | func Test_baseImageIndex(t *testing.T) {
function Test_ResolveStagesArgs (line 403) | func Test_ResolveStagesArgs(t *testing.T) {
function Test_SkipingUnusedStages (line 471) | func Test_SkipingUnusedStages(t *testing.T) {
FILE: pkg/executor/build.go
constant emptyTarSize (line 54) | emptyTarSize = 1024
type cachePusher (line 62) | type cachePusher
type snapShotter (line 63) | type snapShotter interface
type stageBuilder (line 70) | type stageBuilder struct
method populateCompositeKey (line 201) | func (s *stageBuilder) populateCompositeKey(command commands.DockerCom...
method optimize (line 230) | func (s *stageBuilder) optimize(compositeKey CompositeCache, cfg v1.Co...
method build (line 295) | func (s *stageBuilder) build() error {
method takeSnapshot (line 441) | func (s *stageBuilder) takeSnapshot(files []string, shdDelete bool) (s...
method shouldTakeSnapshot (line 457) | func (s *stageBuilder) shouldTakeSnapshot(index int, isMetadatCmd bool...
method saveSnapshotToImage (line 474) | func (s *stageBuilder) saveSnapshotToImage(createdBy string, tarPath s...
method saveSnapshotToLayer (line 487) | func (s *stageBuilder) saveSnapshotToLayer(tarPath string) (v1.Layer, ...
method getLayerOptionFromOpts (line 522) | func (s *stageBuilder) getLayerOptionFromOpts() []tarball.LayerOption {
method convertLayerMediaType (line 576) | func (s *stageBuilder) convertLayerMediaType(layer v1.Layer) (v1.Layer...
method saveLayerToImage (line 610) | func (s *stageBuilder) saveLayerToImage(layer v1.Layer, createdBy stri...
method initSnapshotWithTimings (line 1049) | func (s stageBuilder) initSnapshotWithTimings() error {
function newStageBuilder (line 89) | func newStageBuilder(args *dockerfile.BuildArgs, opts *config.KanikoOpti...
function initConfig (line 155) | func initConfig(img partial.WithConfigFile, opts *config.KanikoOptions) ...
function newLayerCache (line 186) | func newLayerCache(opts *config.KanikoOptions) cache.LayerCache {
function isOCILayout (line 197) | func isOCILayout(path string) bool {
function extractMediaTypeVendor (line 535) | func extractMediaTypeVendor(mt types.MediaType) string {
function convertMediaType (line 543) | func convertMediaType(mt types.MediaType) types.MediaType {
function CalculateDependencies (line 628) | func CalculateDependencies(stages []config.KanikoStage, opts *config.Kan...
function DoBuild (line 692) | func DoBuild(opts *config.KanikoOptions) (v1.Image, error) {
function filesToSave (line 832) | func filesToSave(deps []string) ([]string, error) {
function deduplicatePaths (line 862) | func deduplicatePaths(paths []string) []string {
function fetchExtraStages (line 902) | func fetchExtraStages(stages []config.KanikoStage, opts *config.KanikoOp...
function fromPreviousStage (line 948) | func fromPreviousStage(copyCommand *instructions.CopyCommand, previousSt...
function extractImageToDependencyDir (line 957) | func extractImageToDependencyDir(name string, image v1.Image) error {
function saveStageAsTarball (line 969) | func saveStageAsTarball(path string, image v1.Image) error {
function getHasher (line 984) | func getHasher(snapshotMode string) (func(string) (string, error), error) {
function resolveOnBuild (line 998) | func resolveOnBuild(stage *config.KanikoStage, config *v1.Config, stageN...
function reviewConfig (line 1016) | func reviewConfig(stage config.KanikoStage, config *v1.Config) {
function ResolveCrossStageInstructions (line 1035) | func ResolveCrossStageInstructions(stages []config.KanikoStage) map[stri...
FILE: pkg/executor/build_test.go
function Test_reviewConfig (line 46) | func Test_reviewConfig(t *testing.T) {
function stage (line 86) | func stage(t *testing.T, d string) config.KanikoStage {
function Test_stageBuilder_shouldTakeSnapshot (line 96) | func Test_stageBuilder_shouldTakeSnapshot(t *testing.T) {
function TestCalculateDependencies (line 214) | func TestCalculateDependencies(t *testing.T) {
function Test_filesToSave (line 402) | func Test_filesToSave(t *testing.T) {
function TestDeduplicatePaths (line 471) | func TestDeduplicatePaths(t *testing.T) {
function TestInitializeConfig (line 506) | func TestInitializeConfig(t *testing.T) {
function Test_newLayerCache_defaultCache (line 561) | func Test_newLayerCache_defaultCache(t *testing.T) {
function Test_newLayerCache_layoutCache (line 576) | func Test_newLayerCache_layoutCache(t *testing.T) {
function Test_stageBuilder_optimize (line 591) | func Test_stageBuilder_optimize(t *testing.T) {
type stageContext (line 642) | type stageContext struct
function newStageContext (line 648) | func newStageContext(command string, args map[string]string, env []strin...
function Test_stageBuilder_populateCompositeKey (line 656) | func Test_stageBuilder_populateCompositeKey(t *testing.T) {
function Test_stageBuilder_build (line 911) | func Test_stageBuilder_build(t *testing.T) {
function assertCacheKeys (line 1529) | func assertCacheKeys(t *testing.T, expectedCacheKeys, actualCacheKeys []...
function getCommands (line 1552) | func getCommands(fileContext util.FileContext, cmds []instructions.Comma...
function tempDirAndFile (line 1570) | func tempDirAndFile(t *testing.T) (string, []string) {
function generateTar (line 1585) | func generateTar(t *testing.T, dir string, fileNames ...string) []byte {
function hashCompositeKeys (line 1617) | func hashCompositeKeys(t *testing.T, ck1 CompositeCache, ck2 CompositeCa...
function Test_stageBuild_populateCompositeKeyForCopyCommand (line 1629) | func Test_stageBuild_populateCompositeKeyForCopyCommand(t *testing.T) {
function Test_ResolveCrossStageInstructions (line 1705) | func Test_ResolveCrossStageInstructions(t *testing.T) {
function Test_stageBuilder_saveSnapshotToLayer (line 1749) | func Test_stageBuilder_saveSnapshotToLayer(t *testing.T) {
function Test_stageBuilder_convertLayerMediaType (line 1885) | func Test_stageBuilder_convertLayerMediaType(t *testing.T) {
FILE: pkg/executor/composite_cache.go
function NewCompositeCache (line 31) | func NewCompositeCache(initial ...string) *CompositeCache {
type CompositeCache (line 39) | type CompositeCache struct
method AddKey (line 44) | func (s *CompositeCache) AddKey(k ...string) {
method Key (line 49) | func (s *CompositeCache) Key() string {
method Hash (line 54) | func (s *CompositeCache) Hash() (string, error) {
method AddPath (line 58) | func (s *CompositeCache) AddPath(p string, context util.FileContext) e...
function hashDir (line 95) | func hashDir(p string, context util.FileContext) (bool, string, error) {
FILE: pkg/executor/composite_cache_test.go
function Test_NewCompositeCache (line 29) | func Test_NewCompositeCache(t *testing.T) {
function Test_CompositeCache_AddKey (line 36) | func Test_CompositeCache_AddKey(t *testing.T) {
function Test_CompositeCache_Key (line 48) | func Test_CompositeCache_Key(t *testing.T) {
function Test_CompositeCache_Hash (line 56) | func Test_CompositeCache_Hash(t *testing.T) {
function Test_CompositeCache_AddPath_dir (line 69) | func Test_CompositeCache_AddPath_dir(t *testing.T) {
function Test_CompositeCache_AddPath_file (line 99) | func Test_CompositeCache_AddPath_file(t *testing.T) {
function createFilesystemStructure (line 138) | func createFilesystemStructure(root string, directories, files []string)...
function setIgnoreContext (line 157) | func setIgnoreContext(t *testing.T, content string) (util.FileContext, e...
function hashDirectory (line 167) | func hashDirectory(dirpath string, fileContext util.FileContext) (string...
function Test_CompositeKey_AddPath_Works (line 181) | func Test_CompositeKey_AddPath_Works(t *testing.T) {
function Test_CompositeKey_AddPath_WithExtraFile_Works (line 241) | func Test_CompositeKey_AddPath_WithExtraFile_Works(t *testing.T) {
function Test_CompositeKey_AddPath_WithExtraDir_Works (line 311) | func Test_CompositeKey_AddPath_WithExtraDir_Works(t *testing.T) {
function Test_CompositeKey_AddPath_WithExtraFilIgnored_Works (line 381) | func Test_CompositeKey_AddPath_WithExtraFilIgnored_Works(t *testing.T) {
function Test_CompositeKey_AddPath_WithExtraDirIgnored_Works (line 454) | func Test_CompositeKey_AddPath_WithExtraDirIgnored_Works(t *testing.T) {
FILE: pkg/executor/copy_multistage_test.go
function readDirectory (line 31) | func readDirectory(dirName string) ([]fs.FileInfo, error) {
function TestCopyCommand_Multistage (line 49) | func TestCopyCommand_Multistage(t *testing.T) {
function setupMultistageTests (line 175) | func setupMultistageTests(t *testing.T) (string, func()) {
FILE: pkg/executor/fakes.go
type fakeSnapShotter (line 31) | type fakeSnapShotter struct
method Init (line 37) | func (f *fakeSnapShotter) Init() error {
method TakeSnapshotFS (line 41) | func (f *fakeSnapShotter) TakeSnapshotFS() (string, error) {
method TakeSnapshot (line 44) | func (f *fakeSnapShotter) TakeSnapshot(_ []string, _, _ bool) (string,...
type MockDockerCommand (line 48) | type MockDockerCommand struct
method ExecuteCommand (line 55) | func (m MockDockerCommand) ExecuteCommand(c *v1.Config, args *dockerfi...
method String (line 56) | func (m MockDockerCommand) String() string {
method FilesToSnapshot (line 59) | func (m MockDockerCommand) FilesToSnapshot() []string {
method ProvidesFilesToSnapshot (line 62) | func (m MockDockerCommand) ProvidesFilesToSnapshot() bool {
method CacheCommand (line 65) | func (m MockDockerCommand) CacheCommand(image v1.Image) commands.Docke...
method FilesUsedFromContext (line 68) | func (m MockDockerCommand) FilesUsedFromContext(c *v1.Config, args *do...
method MetadataOnly (line 71) | func (m MockDockerCommand) MetadataOnly() bool {
method RequiresUnpackedFS (line 74) | func (m MockDockerCommand) RequiresUnpackedFS() bool {
method ShouldCacheOutput (line 77) | func (m MockDockerCommand) ShouldCacheOutput() bool {
method ShouldDetectDeletedFiles (line 80) | func (m MockDockerCommand) ShouldDetectDeletedFiles() bool {
method IsArgsEnvsRequiredInCache (line 83) | func (m MockDockerCommand) IsArgsEnvsRequiredInCache() bool {
type MockCachedDockerCommand (line 87) | type MockCachedDockerCommand struct
method ExecuteCommand (line 92) | func (m MockCachedDockerCommand) ExecuteCommand(c *v1.Config, args *do...
method String (line 95) | func (m MockCachedDockerCommand) String() string {
method FilesToSnapshot (line 98) | func (m MockCachedDockerCommand) FilesToSnapshot() []string {
method ProvidesFilesToSnapshot (line 101) | func (m MockCachedDockerCommand) ProvidesFilesToSnapshot() bool {
method CacheCommand (line 104) | func (m MockCachedDockerCommand) CacheCommand(image v1.Image) commands...
method ShouldDetectDeletedFiles (line 107) | func (m MockCachedDockerCommand) ShouldDetectDeletedFiles() bool {
method FilesUsedFromContext (line 110) | func (m MockCachedDockerCommand) FilesUsedFromContext(c *v1.Config, ar...
method MetadataOnly (line 113) | func (m MockCachedDockerCommand) MetadataOnly() bool {
method RequiresUnpackedFS (line 116) | func (m MockCachedDockerCommand) RequiresUnpackedFS() bool {
method ShouldCacheOutput (line 119) | func (m MockCachedDockerCommand) ShouldCacheOutput() bool {
method IsArgsEnvsRequiredInCache (line 122) | func (m MockCachedDockerCommand) IsArgsEnvsRequiredInCache() bool {
type fakeLayerCache (line 126) | type fakeLayerCache struct
method RetrieveLayer (line 133) | func (f *fakeLayerCache) RetrieveLayer(key string) (v1.Image, error) {
type fakeLayer (line 149) | type fakeLayer struct
method Digest (line 154) | func (f fakeLayer) Digest() (v1.Hash, error) {
method DiffID (line 157) | func (f fakeLayer) DiffID() (v1.Hash, error) {
method Compressed (line 160) | func (f fakeLayer) Compressed() (io.ReadCloser, error) {
method Uncompressed (line 163) | func (f fakeLayer) Uncompressed() (io.ReadCloser, error) {
method Size (line 166) | func (f fakeLayer) Size() (int64, error) {
method MediaType (line 169) | func (f fakeLayer) MediaType() (types.MediaType, error) {
type fakeImage (line 173) | type fakeImage struct
method Layers (line 177) | func (f fakeImage) Layers() ([]v1.Layer, error) {
method MediaType (line 180) | func (f fakeImage) MediaType() (types.MediaType, error) {
method Size (line 183) | func (f fakeImage) Size() (int64, error) {
method ConfigName (line 186) | func (f fakeImage) ConfigName() (v1.Hash, error) {
method ConfigFile (line 189) | func (f fakeImage) ConfigFile() (*v1.ConfigFile, error) {
method RawConfigFile (line 192) | func (f fakeImage) RawConfigFile() ([]byte, error) {
method Digest (line 195) | func (f fakeImage) Digest() (v1.Hash, error) {
method Manifest (line 198) | func (f fakeImage) Manifest() (*v1.Manifest, error) {
method RawManifest (line 201) | func (f fakeImage) RawManifest() ([]byte, error) {
method LayerByDigest (line 204) | func (f fakeImage) LayerByDigest(v1.Hash) (v1.Layer, error) {
method LayerByDiffID (line 207) | func (f fakeImage) LayerByDiffID(v1.Hash) (v1.Layer, error) {
type ociFakeImage (line 211) | type ociFakeImage struct
method MediaType (line 215) | func (f ociFakeImage) MediaType() (types.MediaType, error) {
type dockerFakeImage (line 219) | type dockerFakeImage struct
method MediaType (line 223) | func (f dockerFakeImage) MediaType() (types.MediaType, error) {
FILE: pkg/executor/push.go
type withUserAgent (line 50) | type withUserAgent struct
method RoundTrip (line 75) | func (w *withUserAgent) RoundTrip(r *http.Request) (*http.Response, er...
constant UpstreamClientUaKey (line 61) | UpstreamClientUaKey = "UPSTREAM_CLIENT_TYPE"
constant DummyDestination (line 62) | DummyDestination = "docker.io/unset-repo/unset-image-name"
function CheckPushPermissions (line 92) | func CheckPushPermissions(opts *config.KanikoOptions) error {
function getDigest (line 140) | func getDigest(image v1.Image) ([]byte, error) {
function writeDigestFile (line 148) | func writeDigestFile(path string, digestByteArray []byte) error {
function DoPush (line 174) | func DoPush(image v1.Image, opts *config.KanikoOptions) error {
function writeImageOutputs (line 321) | func writeImageOutputs(image v1.Image, destRefs []name.Tag) error {
function pushLayerToCache (line 354) | func pushLayerToCache(opts *config.KanikoOptions, cacheKey string, tarPa...
function setDummyDestinations (line 415) | func setDummyDestinations(opts *config.KanikoOptions) {
FILE: pkg/executor/push_test.go
function mustTag (line 40) | func mustTag(t *testing.T, s string) name.Tag {
function TestWriteImageOutputs (line 48) | func TestWriteImageOutputs(t *testing.T) {
function TestHeaderAdded (line 109) | func TestHeaderAdded(t *testing.T) {
type mockRoundTripper (line 145) | type mockRoundTripper struct
method RoundTrip (line 148) | func (m *mockRoundTripper) RoundTrip(r *http.Request) (*http.Response,...
function TestOCILayoutPath (line 153) | func TestOCILayoutPath(t *testing.T) {
function TestImageNameDigestFile (line 195) | func TestImageNameDigestFile(t *testing.T) {
function TestDoPushWithOpts (line 226) | func TestDoPushWithOpts(t *testing.T) {
function TestImageNameTagDigestFile (line 288) | func TestImageNameTagDigestFile(t *testing.T) {
function resetCalledCount (line 320) | func resetCalledCount() {
function fakeCheckPushPermission (line 324) | func fakeCheckPushPermission(ref name.Reference, kc authn.Keychain, t ht...
function TestCheckPushPermissions (line 329) | func TestCheckPushPermissions(t *testing.T) {
function TestSkipPushPermission (line 416) | func TestSkipPushPermission(t *testing.T) {
function TestHelperProcess (line 455) | func TestHelperProcess(t *testing.T) {
function TestWriteDigestFile (line 463) | func TestWriteDigestFile(t *testing.T) {
FILE: pkg/fakes/image.go
type FakeImage (line 24) | type FakeImage struct
method Layers (line 28) | func (f FakeImage) Layers() ([]v1.Layer, error) {
method MediaType (line 31) | func (f FakeImage) MediaType() (types.MediaType, error) {
method Size (line 34) | func (f FakeImage) Size() (int64, error) {
method ConfigName (line 37) | func (f FakeImage) ConfigName() (v1.Hash, error) {
method ConfigFile (line 40) | func (f FakeImage) ConfigFile() (*v1.ConfigFile, error) {
method RawConfigFile (line 43) | func (f FakeImage) RawConfigFile() ([]byte, error) {
method Digest (line 46) | func (f FakeImage) Digest() (v1.Hash, error) {
method Manifest (line 49) | func (f FakeImage) Manifest() (*v1.Manifest, error) {
method RawManifest (line 52) | func (f FakeImage) RawManifest() ([]byte, error) {
method LayerByDigest (line 55) | func (f FakeImage) LayerByDigest(v1.Hash) (v1.Layer, error) {
method LayerByDiffID (line 58) | func (f FakeImage) LayerByDiffID(v1.Hash) (v1.Layer, error) {
FILE: pkg/filesystem/resolve.go
function ResolvePaths (line 37) | func ResolvePaths(paths []string, wl []util.IgnoreListEntry) (pathsToAdd...
function filesWithParentDirs (line 101) | func filesWithParentDirs(files []string) []string {
function resolveSymlinkAncestor (line 127) | func resolveSymlinkAncestor(path string) (string, error) {
FILE: pkg/filesystem/resolve_test.go
function Test_ResolvePaths (line 30) | func Test_ResolvePaths(t *testing.T) {
function Test_resolveSymlinkAncestor (line 182) | func Test_resolveSymlinkAncestor(t *testing.T) {
FILE: pkg/image/image_util.go
function RetrieveSourceImage (line 46) | func RetrieveSourceImage(stage config.KanikoStage, opts *config.KanikoOp...
function tarballImage (line 94) | func tarballImage(index int) (v1.Image, error) {
function cachedImage (line 100) | func cachedImage(opts *config.KanikoOptions, image string) (v1.Image, er...
FILE: pkg/image/image_util_test.go
function Test_StandardImage (line 47) | func Test_StandardImage(t *testing.T) {
function Test_ScratchImage (line 66) | func Test_ScratchImage(t *testing.T) {
function Test_TarImage (line 78) | func Test_TarImage(t *testing.T) {
function Test_ScratchImageFromMirror (line 99) | func Test_ScratchImageFromMirror(t *testing.T) {
function parse (line 116) | func parse(s string) ([]instructions.Stage, error) {
FILE: pkg/image/remote/remote.go
function RetrieveRemoteImage (line 40) | func RetrieveRemoteImage(image string, opts config.RegistryOptions, cust...
function remapRepository (line 113) | func remapRepository(repo name.Repository, regToMapTo string, repository...
function setNewRepository (line 121) | func setNewRepository(ref name.Reference, newRepo name.Repository) name....
function setNewRegistry (line 134) | func setNewRegistry(ref name.Reference, newReg name.Registry) name.Refer...
function remoteOptions (line 147) | func remoteOptions(registryName string, opts config.RegistryOptions, cus...
function parseRegistryMapping (line 167) | func parseRegistryMapping(regMapping string) (string, string) {
FILE: pkg/image/remote/remote_test.go
constant image (line 30) | image string = "debian"
type mockImage (line 33) | type mockImage struct
method ConfigFile (line 36) | func (m *mockImage) ConfigFile() (*v1.ConfigFile, error) {
method ConfigName (line 40) | func (m *mockImage) ConfigName() (v1.Hash, error) {
method Descriptor (line 44) | func (m *mockImage) Descriptor() (*v1.Descriptor, error) {
method Digest (line 48) | func (m *mockImage) Digest() (v1.Hash, error) {
method LayerByDigest (line 52) | func (m *mockImage) LayerByDigest(v1.Hash) (v1.Layer, error) {
method LayerByDiffID (line 56) | func (m *mockImage) LayerByDiffID(v1.Hash) (v1.Layer, error) {
method Layers (line 60) | func (m *mockImage) Layers() ([]v1.Layer, error) {
method Manifest (line 64) | func (m *mockImage) Manifest() (*v1.Manifest, error) {
method MediaType (line 68) | func (m *mockImage) MediaType() (types.MediaType, error) {
method RawManifest (line 72) | func (m *mockImage) RawManifest() ([]byte, error) {
method RawConfigFile (line 76) | func (m *mockImage) RawConfigFile() ([]byte, error) {
method Size (line 80) | func (m *mockImage) Size() (int64, error) {
function Test_remapRepository (line 84) | func Test_remapRepository(t *testing.T) {
function Test_RetrieveRemoteImage_manifestCache (line 176) | func Test_RetrieveRemoteImage_manifestCache(t *testing.T) {
function Test_RetrieveRemoteImage_skipFallback (line 190) | func Test_RetrieveRemoteImage_skipFallback(t *testing.T) {
function Test_RetryRetrieveRemoteImageSucceeds (line 219) | func Test_RetryRetrieveRemoteImageSucceeds(t *testing.T) {
function Test_NoRetryRetrieveRemoteImageFails (line 240) | func Test_NoRetryRetrieveRemoteImageFails(t *testing.T) {
function Test_ParseRegistryMapping (line 261) | func Test_ParseRegistryMapping(t *testing.T) {
FILE: pkg/logging/logging.go
constant DefaultLevel (line 28) | DefaultLevel = "info"
constant DefaultLogTimestamp (line 30) | DefaultLogTimestamp = false
constant FormatText (line 33) | FormatText = "text"
constant FormatColor (line 35) | FormatColor = "color"
constant FormatJSON (line 37) | FormatJSON = "json"
function Configure (line 41) | func Configure(level, format string, logTimestamp bool) error {
FILE: pkg/mocks/go-containerregistry/mockv1/mocks.go
type MockLayer (line 33) | type MockLayer struct
method EXPECT (line 51) | func (m *MockLayer) EXPECT() *MockLayerMockRecorder {
method Compressed (line 56) | func (m *MockLayer) Compressed() (io.ReadCloser, error) {
method DiffID (line 71) | func (m *MockLayer) DiffID() (v1.Hash, error) {
method Digest (line 86) | func (m *MockLayer) Digest() (v1.Hash, error) {
method MediaType (line 101) | func (m *MockLayer) MediaType() (types.MediaType, error) {
method Size (line 116) | func (m *MockLayer) Size() (int64, error) {
method Uncompressed (line 131) | func (m *MockLayer) Uncompressed() (io.ReadCloser, error) {
type MockLayerMockRecorder (line 39) | type MockLayerMockRecorder struct
method Compressed (line 65) | func (mr *MockLayerMockRecorder) Compressed() *gomock.Call {
method DiffID (line 80) | func (mr *MockLayerMockRecorder) DiffID() *gomock.Call {
method Digest (line 95) | func (mr *MockLayerMockRecorder) Digest() *gomock.Call {
method MediaType (line 110) | func (mr *MockLayerMockRecorder) MediaType() *gomock.Call {
method Size (line 125) | func (mr *MockLayerMockRecorder) Size() *gomock.Call {
method Uncompressed (line 140) | func (mr *MockLayerMockRecorder) Uncompressed() *gomock.Call {
function NewMockLayer (line 44) | func NewMockLayer(ctrl *gomock.Controller) *MockLayer {
FILE: pkg/snapshot/layered_map.go
type LayeredMap (line 28) | type LayeredMap struct
method Snapshot (line 51) | func (l *LayeredMap) Snapshot() {
method Key (line 62) | func (l *LayeredMap) Key() (string, error) {
method getCurrentImage (line 87) | func (l *LayeredMap) getCurrentImage() map[string]string {
method updateCurrentImage (line 117) | func (l *LayeredMap) updateCurrentImage() {
method get (line 127) | func (l *LayeredMap) get(s string) (string, bool) {
method GetCurrentPaths (line 134) | func (l *LayeredMap) GetCurrentPaths() map[string]struct{} {
method AddDelete (line 145) | func (l *LayeredMap) AddDelete(s string) error {
method Add (line 153) | func (l *LayeredMap) Add(s string) error {
method CheckFileChange (line 176) | func (l *LayeredMap) CheckFileChange(s string) (bool, error) {
function NewLayeredMap (line 40) | func NewLayeredMap(h func(string) (string, error)) *LayeredMap {
FILE: pkg/snapshot/layered_map_test.go
function Test_CacheKey (line 23) | func Test_CacheKey(t *testing.T) {
function Test_FlattenPaths (line 82) | func Test_FlattenPaths(t *testing.T) {
FILE: pkg/snapshot/snapshot.go
type Snapshotter (line 41) | type Snapshotter struct
method Init (line 53) | func (s *Snapshotter) Init() error {
method Key (line 60) | func (s *Snapshotter) Key() (string, error) {
method TakeSnapshot (line 66) | func (s *Snapshotter) TakeSnapshot(files []string, shdCheckDelete bool...
method TakeSnapshotFS (line 125) | func (s *Snapshotter) TakeSnapshotFS() (string, error) {
method getSnashotPathPrefix (line 145) | func (s *Snapshotter) getSnashotPathPrefix() string {
method scanFullFilesystem (line 152) | func (s *Snapshotter) scanFullFilesystem() ([]string, []string, error) {
function NewSnapshotter (line 48) | func NewSnapshotter(l *LayeredMap, d string) *Snapshotter {
function removeObsoleteWhiteouts (line 219) | func removeObsoleteWhiteouts(deletedFiles map[string]struct{}) (filesToW...
function writeToTar (line 233) | func writeToTar(t util.Tar, files, whiteouts []string) error {
function parentPathIncludesNonDirectory (line 273) | func parentPathIncludesNonDirectory(path string) (bool, error) {
function addParentDirectories (line 287) | func addParentDirectories(t util.Tar, addedPaths map[string]bool, path s...
function filesWithLinks (line 301) | func filesWithLinks(path string) ([]string, error) {
FILE: pkg/snapshot/snapshot_test.go
function TestSnapshotFSFileChange (line 34) | func TestSnapshotFSFileChange(t *testing.T) {
function TestSnapshotFSIsReproducible (line 100) | func TestSnapshotFSIsReproducible(t *testing.T) {
function TestSnapshotFSChangePermissions (line 130) | func TestSnapshotFSChangePermissions(t *testing.T) {
function TestSnapshotFSReplaceDirWithLink (line 191) | func TestSnapshotFSReplaceDirWithLink(t *testing.T) {
function TestSnapshotFiles (line 236) | func TestSnapshotFiles(t *testing.T) {
function TestEmptySnapshotFS (line 277) | func TestEmptySnapshotFS(t *testing.T) {
function TestFileWithLinks (line 301) | func TestFileWithLinks(t *testing.T) {
function TestSnapshotPreservesFileOrder (line 349) | func TestSnapshotPreservesFileOrder(t *testing.T) {
function TestSnapshotWithForceBuildMetadataSet (line 411) | func TestSnapshotWithForceBuildMetadataSet(t *testing.T) {
function TestSnapshotWithForceBuildMetadataIsNotSet (line 431) | func TestSnapshotWithForceBuildMetadataIsNotSet(t *testing.T) {
function TestSnapshotIncludesParentDirBeforeWhiteoutFile (line 451) | func TestSnapshotIncludesParentDirBeforeWhiteoutFile(t *testing.T) {
function TestSnapshotPreservesWhiteoutOrder (line 512) | func TestSnapshotPreservesWhiteoutOrder(t *testing.T) {
function TestSnapshotOmitsUnameGname (line 587) | func TestSnapshotOmitsUnameGname(t *testing.T) {
function setupSymlink (line 620) | func setupSymlink(dir string, link string, target string) error {
function sortAndCompareFilepaths (line 624) | func sortAndCompareFilepaths(t *testing.T, testDir string, expected []st...
function setUpTestDir (line 634) | func setUpTestDir(t *testing.T) (string, error) {
function setUpTest (line 650) | func setUpTest(t *testing.T) (string, *Snapshotter, func(), error) {
function listFilesInTar (line 675) | func listFilesInTar(path string) ([]string, error) {
FILE: pkg/timing/timing.go
type TimedRun (line 34) | type TimedRun struct
method Stop (line 40) | func (tr *TimedRun) Stop(t *Timer) {
method Summary (line 86) | func (tr *TimedRun) Summary() string {
method JSON (line 95) | func (tr *TimedRun) JSON() (string, error) {
function Start (line 51) | func Start(category string) *Timer {
function NewTimedRun (line 60) | func NewTimedRun() *TimedRun {
type Timer (line 68) | type Timer struct
function Summary (line 77) | func Summary() string {
function JSON (line 81) | func JSON() (string, error) {
FILE: pkg/timing/timing_test.go
function patchTime (line 24) | func patchTime(timeFunc func() time.Time) func() {
function mockTimeFunc (line 32) | func mockTimeFunc(t time.Time) func() time.Time {
function TestTimedRun_StartStop (line 38) | func TestTimedRun_StartStop(t *testing.T) {
function TestTimedRun_Summary (line 91) | func TestTimedRun_Summary(t *testing.T) {
FILE: pkg/util/azureblob_util.go
function ValidAzureBlobStorageHost (line 27) | func ValidAzureBlobStorageHost(context string) bool {
FILE: pkg/util/azureblob_util_test.go
function Test_ValidAzureBlobStorageHost (line 25) | func Test_ValidAzureBlobStorageHost(t *testing.T) {
FILE: pkg/util/bucket/bucket_util.go
function Upload (line 32) | func Upload(ctx context.Context, bucketName string, path string, r io.Re...
function Delete (line 46) | func Delete(ctx context.Context, bucketName string, path string, client ...
function ReadCloser (line 55) | func ReadCloser(ctx context.Context, bucketName string, path string, cli...
function NewClient (line 65) | func NewClient(ctx context.Context, opts ...option.ClientOption) (*stora...
function GetNameAndFilepathFromURI (line 76) | func GetNameAndFilepathFromURI(bucketURI string) (bucketName string, pat...
FILE: pkg/util/bucket/bucket_util_test.go
function Test_GetBucketAndItem (line 26) | func Test_GetBucketAndItem(t *testing.T) {
FILE: pkg/util/command_util.go
constant pathSeparator (line 45) | pathSeparator = "/"
function ResolveEnvironmentReplacementList (line 49) | func ResolveEnvironmentReplacementList(values, envs []string, isFilepath...
function ResolveEnvironmentReplacement (line 71) | func ResolveEnvironmentReplacement(value string, envs []string, isFilepa...
function ResolveEnvAndWildcards (line 89) | func ResolveEnvAndWildcards(sd instructions.SourcesAndDest, fileContext ...
function ContainsWildcards (line 114) | func ContainsWildcards(paths []string) bool {
function ResolveSources (line 125) | func ResolveSources(srcs []string, root string) ([]string, error) {
function matchSources (line 144) | func matchSources(srcs, files []string) ([]string, error) {
function IsDestDir (line 168) | func IsDestDir(path string) bool {
function DestinationFilepath (line 190) | func DestinationFilepath(src, dest, cwd string) (string, error) {
function URLDestinationFilepath (line 213) | func URLDestinationFilepath(rawurl, dest, cwd string, envs []string) (st...
function IsSrcsValid (line 239) | func IsSrcsValid(srcsAndDest instructions.SourcesAndDest, resolvedSource...
function IsSrcRemoteFileURL (line 302) | func IsSrcRemoteFileURL(rawurl string) bool {
function UpdateConfigEnv (line 307) | func UpdateConfigEnv(envVars []instructions.KeyValuePair, config *v1.Con...
function GetUserGroup (line 358) | func GetUserGroup(chownStr string, env []string) (int64, int64, error) {
function GetChmod (line 376) | func GetChmod(chmodStr string, env []string) (chmod fs.FileMode, useDefa...
function getUIDAndGIDFromString (line 396) | func getUIDAndGIDFromString(userGroupString string) (uint32, uint32, err...
function getUIDAndGID (line 406) | func getUIDAndGID(userStr string, groupStr string) (uint32, uint32, erro...
function getGID (line 431) | func getGID(groupStr string) (uint32, error) {
function getGIDFromName (line 440) | func getGIDFromName(groupStr string) (uint32, error) {
type fallbackToUIDErrorType (line 458) | type fallbackToUIDErrorType struct
method Error (line 460) | func (e fallbackToUIDErrorType) Error() string {
function LookupUser (line 466) | func LookupUser(userStr string) (*user.User, error) {
function getUID (line 492) | func getUID(userStr string) (uint32, error) {
function extractFilename (line 502) | func extractFilename(rawURL string) (string, error) {
FILE: pkg/util/command_util_test.go
function Test_EnvReplacement (line 132) | func Test_EnvReplacement(t *testing.T) {
function Test_DestinationFilepath (line 204) | func Test_DestinationFilepath(t *testing.T) {
function Test_UrlDestFilepath (line 251) | func Test_UrlDestFilepath(t *testing.T) {
function Test_MatchSources (line 286) | func Test_MatchSources(t *testing.T) {
function Test_UpdateConfigEnvTests (line 354) | func Test_UpdateConfigEnvTests(t *testing.T) {
function Test_IsSrcsValid (line 505) | func Test_IsSrcsValid(t *testing.T) {
function Test_ResolveSources (line 536) | func Test_ResolveSources(t *testing.T) {
function TestGetUserGroup (line 543) | func TestGetUserGroup(t *testing.T) {
function TestGetChmod (line 601) | func TestGetChmod(t *testing.T) {
function TestResolveEnvironmentReplacementList (line 638) | func TestResolveEnvironmentReplacementList(t *testing.T) {
function Test_GetUIDAndGIDFromString (line 693) | func Test_GetUIDAndGIDFromString(t *testing.T) {
function TestLookupUser (line 814) | func TestLookupUser(t *testing.T) {
function TestIsSrcRemoteFileURL (line 861) | func TestIsSrcRemoteFileURL(t *testing.T) {
FILE: pkg/util/fs_util.go
constant DoNotChangeUID (line 47) | DoNotChangeUID = -1
constant DoNotChangeGID (line 48) | DoNotChangeGID = -1
constant snapshotTimeout (line 52) | snapshotTimeout = "SNAPSHOT_TIMEOUT_DURATION"
constant defaultTimeout (line 53) | defaultTimeout = "90m"
type IgnoreListEntry (line 56) | type IgnoreListEntry struct
type FileContext (line 91) | type FileContext struct
method ExcludesFile (line 796) | func (c FileContext) ExcludesFile(path string) bool {
type ExtractFunction (line 96) | type ExtractFunction
type FSConfig (line 98) | type FSConfig struct
type FSOpt (line 103) | type FSOpt
function IgnoreList (line 105) | func IgnoreList() []IgnoreListEntry {
function AddToIgnoreList (line 109) | func AddToIgnoreList(entry IgnoreListEntry) {
function AddToDefaultIgnoreList (line 116) | func AddToDefaultIgnoreList(entry IgnoreListEntry) {
function IncludeWhiteout (line 123) | func IncludeWhiteout() FSOpt {
function ExtractFunc (line 129) | func ExtractFunc(extractFunc ExtractFunction) FSOpt {
function GetFSFromImage (line 137) | func GetFSFromImage(root string, img v1.Image, extract ExtractFunction) ...
function GetFSFromLayers (line 150) | func GetFSFromLayers(root string, layers []v1.Layer, opts ...FSOpt) ([]s...
function DeleteFilesystem (line 233) | func DeleteFilesystem() error {
function isExist (line 264) | func isExist(path string) bool {
function childDirInIgnoreList (line 272) | func childDirInIgnoreList(path string) bool {
function UnTar (line 282) | func UnTar(r io.Reader, dest string) ([]string, error) {
function ExtractFile (line 302) | func ExtractFile(dest string, hdr *tar.Header, cleanedName string, tr io...
function IsInProvidedIgnoreList (line 416) | func IsInProvidedIgnoreList(path string, wl []IgnoreListEntry) bool {
function IsInIgnoreList (line 427) | func IsInIgnoreList(path string) bool {
function CheckCleanedPathAgainstProvidedIgnoreList (line 431) | func CheckCleanedPathAgainstProvidedIgnoreList(path string, wl []IgnoreL...
function CheckIgnoreList (line 441) | func CheckIgnoreList(path string) bool {
function CheckCleanedPathAgainstIgnoreList (line 445) | func CheckCleanedPathAgainstIgnoreList(path string) bool {
function checkIgnoreListRoot (line 449) | func checkIgnoreListRoot(root string) bool {
function DetectFilesystemIgnoreList (line 462) | func DetectFilesystemIgnoreList(path string) error {
function RelativeFiles (line 500) | func RelativeFiles(fp string, root string) ([]string, error) {
function ParentDirectories (line 524) | func ParentDirectories(path string) []string {
function ParentDirectoriesWithoutLeadingSlash (line 544) | func ParentDirectoriesWithoutLeadingSlash(path string) []string {
function FilepathExists (line 560) | func FilepathExists(path string) bool {
function resetFileOwnershipIfNotMatching (line 567) | func resetFileOwnershipIfNotMatching(path string, newUID, newGID uint32)...
function CreateFile (line 586) | func CreateFile(path string, reader io.Reader, perm os.FileMode, uid uin...
function AddVolumePathToIgnoreList (line 613) | func AddVolumePathToIgnoreList(path string) {
function DownloadFileToDest (line 627) | func DownloadFileToDest(rawurl, dest string, uid, gid int64, chmod fs.Fi...
function DetermineTargetFileOwnership (line 653) | func DetermineTargetFileOwnership(fi os.FileInfo, uid, gid int64) (int64...
function CopyDir (line 665) | func CopyDir(src, dest string, context FileContext, uid, gid int64, chmo...
function CopySymlink (line 715) | func CopySymlink(src, dest string, context FileContext) (bool, error) {
function CopyFile (line 736) | func CopyFile(src, dest string, context FileContext, uid, gid int64, chm...
function NewFileContextFromDockerfile (line 766) | func NewFileContextFromDockerfile(dockerfilePath, buildcontext string) (...
function getExcludedFiles (line 777) | func getExcludedFiles(dockerfilePath, buildcontext string) ([]string, er...
function HasFilepathPrefix (line 814) | func HasFilepathPrefix(path, prefix string, prefixMatchOnly bool) bool {
function hasCleanedFilepathPrefix (line 818) | func hasCleanedFilepathPrefix(path, prefix string, prefixMatchOnly bool)...
function Volumes (line 840) | func Volumes() []string {
function MkdirAllWithPermissions (line 844) | func MkdirAllWithPermissions(path string, mode os.FileMode, uid, gid int...
function setFilePermissions (line 877) | func setFilePermissions(path string, mode os.FileMode, uid, gid int) err...
function setFileTimes (line 886) | func setFileTimes(path string, aTime, mTime time.Time) error {
function CreateTargetTarfile (line 916) | func CreateTargetTarfile(tarpath string) (*os.File, error) {
function IsSymlink (line 928) | func IsSymlink(fi os.FileInfo) bool {
function GetSymLink (line 934) | func GetSymLink(path string) (string, error) {
function EvalSymLink (line 941) | func EvalSymLink(path string) (string, error) {
function getSymlink (line 948) | func getSymlink(path string) error {
function CopyFileOrSymlink (line 962) | func CopyFileOrSymlink(src string, destDir string, root string) error {
function CopyOwnership (line 992) | func CopyOwnership(src string, destDir string, root string) error {
function createParentDirectory (line 1038) | func createParentDirectory(path string, uid int, gid int) error {
function InitIgnoreList (line 1083) | func InitIgnoreList() error {
type walkFSResult (line 1094) | type walkFSResult struct
function WalkFS (line 1105) | func WalkFS(
function gowalkDir (line 1139) | func gowalkDir(dir string, existingPaths map[string]struct{}, changeFunc...
function GetFSInfoMap (line 1176) | func GetFSInfoMap(dir string, existing map[string]os.FileInfo) (map[stri...
function isSame (line 1211) | func isSame(fi1, fi2 os.FileInfo) bool {
FILE: pkg/util/fs_util_test.go
function Test_DetectFilesystemSkiplist (line 42) | func Test_DetectFilesystemSkiplist(t *testing.T) {
function Test_AddToIgnoreList (line 79) | func Test_AddToIgnoreList(t *testing.T) {
function Test_RelativeFiles (line 153) | func Test_RelativeFiles(t *testing.T) {
function Test_ParentDirectories (line 166) | func Test_ParentDirectories(t *testing.T) {
function Test_ParentDirectoriesWithoutLeadingSlash (line 231) | func Test_ParentDirectoriesWithoutLeadingSlash(t *testing.T) {
function Test_CheckIgnoreList (line 263) | func Test_CheckIgnoreList(t *testing.T) {
function TestHasFilepathPrefix (line 329) | func TestHasFilepathPrefix(t *testing.T) {
function BenchmarkHasFilepathPrefix (line 404) | func BenchmarkHasFilepathPrefix(b *testing.B) {
type checker (line 482) | type checker
function fileExists (line 484) | func fileExists(p string) checker {
function fileMatches (line 493) | func fileMatches(p string, c []byte) checker {
function timesMatch (line 505) | func timesMatch(p string, fTime time.Time) checker {
function permissionsMatch (line 518) | func permissionsMatch(p string, perms os.FileMode) checker {
function linkPointsTo (line 530) | func linkPointsTo(src, dst string) checker {
function filesAreHardlinks (line 543) | func filesAreHardlinks(first, second string) checker {
function fileHeader (line 561) | func fileHeader(name string, contents string, mode int64, fTime time.Tim...
function linkHeader (line 574) | func linkHeader(name, linkname string) *tar.Header {
function hardlinkHeader (line 583) | func hardlinkHeader(name, linkname string) *tar.Header {
function dirHeader (line 592) | func dirHeader(name string, mode int64) *tar.Header {
function createUncompressedTar (line 603) | func createUncompressedTar(fileContents map[string]string, tarFileName, ...
function Test_UnTar (line 622) | func Test_UnTar(t *testing.T) {
function TestExtractFile (line 679) | func TestExtractFile(t *testing.T) {
function TestCopySymlink (line 823) | func TestCopySymlink(t *testing.T) {
function Test_childDirInSkiplist (line 878) | func Test_childDirInSkiplist(t *testing.T) {
function Test_correctDockerignoreFileIsUsed (line 923) | func Test_correctDockerignoreFileIsUsed(t *testing.T) {
function Test_CopyFile_skips_self (line 975) | func Test_CopyFile_skips_self(t *testing.T) {
function fakeExtract (line 1010) | func fakeExtract(_ string, _ *tar.Header, _ string, _ io.Reader) error {
function Test_GetFSFromLayers_with_whiteouts_include_whiteout_enabled (line 1014) | func Test_GetFSFromLayers_with_whiteouts_include_whiteout_enabled(t *tes...
function provideEmptyMountinfoFile (line 1113) | func provideEmptyMountinfoFile() func() {
function Test_GetFSFromLayers_with_whiteouts_include_whiteout_disabled (line 1123) | func Test_GetFSFromLayers_with_whiteouts_include_whiteout_disabled(t *te...
function Test_GetFSFromLayers_ignorelist (line 1226) | func Test_GetFSFromLayers_ignorelist(t *testing.T) {
function Test_GetFSFromLayers (line 1371) | func Test_GetFSFromLayers(t *testing.T) {
function assertGetFSFromLayers (line 1433) | func assertGetFSFromLayers(
function TestInitIgnoreList (line 1461) | func TestInitIgnoreList(t *testing.T) {
function Test_setFileTimes (line 1517) | func Test_setFileTimes(t *testing.T) {
FILE: pkg/util/gcr_util.go
function DockerConfLocation (line 28) | func DockerConfLocation() string {
FILE: pkg/util/gcr_util_test.go
constant DefaultKanikoDockerConfigJSON (line 26) | DefaultKanikoDockerConfigJSON = "/kaniko/.docker/config.json"
constant DockerConfigEnvKey (line 27) | DockerConfigEnvKey = "DOCKER_CONFIG"
function TestDockerConfLocationWithInvalidFileLocation (line 30) | func TestDockerConfLocationWithInvalidFileLocation(t *testing.T) {
function TestDockerConfLocation (line 50) | func TestDockerConfLocation(t *testing.T) {
function restoreOriginalDockerConfigEnv (line 86) | func restoreOriginalDockerConfigEnv(t *testing.T, originalDockerConfig s...
function TestDockerConfLocationWithFileLocation (line 98) | func TestDockerConfLocationWithFileLocation(t *testing.T) {
FILE: pkg/util/groupids_cgo.go
function groupIDs (line 28) | func groupIDs(u *user.User) ([]string, error) {
FILE: pkg/util/groupids_fallback.go
type group (line 38) | type group struct
function groupIDs (line 45) | func groupIDs(u *user.User) ([]string, error) {
function localGroups (line 74) | func localGroups(r io.Reader) []*group {
FILE: pkg/util/proc/proc.go
type ContainerRuntime (line 29) | type ContainerRuntime
constant RuntimeDocker (line 33) | RuntimeDocker ContainerRuntime = "docker"
constant RuntimeRkt (line 35) | RuntimeRkt ContainerRuntime = "rkt"
constant RuntimeNspawn (line 37) | RuntimeNspawn ContainerRuntime = "systemd-nspawn"
constant RuntimeLXC (line 39) | RuntimeLXC ContainerRuntime = "lxc"
constant RuntimeLXCLibvirt (line 41) | RuntimeLXCLibvirt ContainerRuntime = "lxc-libvirt"
constant RuntimeOpenVZ (line 43) | RuntimeOpenVZ ContainerRuntime = "openvz"
constant RuntimeKubernetes (line 45) | RuntimeKubernetes ContainerRuntime = "kube"
constant RuntimeGarden (line 47) | RuntimeGarden ContainerRuntime = "garden"
constant RuntimePodman (line 49) | RuntimePodman ContainerRuntime = "podman"
constant RuntimeGVisor (line 51) | RuntimeGVisor ContainerRuntime = "gvisor"
constant RuntimeFirejail (line 53) | RuntimeFirejail ContainerRuntime = "firejail"
constant RuntimeWSL (line 55) | RuntimeWSL ContainerRuntime = "wsl"
constant RuntimeNotFound (line 57) | RuntimeNotFound ContainerRuntime = "not-found"
function GetContainerRuntime (line 80) | func GetContainerRuntime(tgid, pid int) ContainerRuntime {
function detectContainerFiles (line 154) | func detectContainerFiles() ContainerRuntime {
function getContainerRuntime (line 177) | func getContainerRuntime(input string) ContainerRuntime {
function osFileExists (line 191) | func osFileExists(file string) bool {
function readFile (line 198) | func readFile(file string) []byte {
function readFileString (line 207) | func readFileString(file string) string {
FILE: pkg/util/proc/proc_test.go
function TestGetContainerRuntime (line 23) | func TestGetContainerRuntime(t *testing.T) {
FILE: pkg/util/syscall_credentials.go
function SyscallCredentials (line 29) | func SyscallCredentials(userStr string) (*syscall.Credential, error) {
FILE: pkg/util/syscall_credentials_test.go
function TestSyscallCredentials (line 28) | func TestSyscallCredentials(t *testing.T) {
FILE: pkg/util/tar_util.go
type Tar (line 39) | type Tar struct
method Close (line 74) | func (t *Tar) Close() {
method AddFileToTar (line 79) | func (t *Tar) AddFileToTar(p string) error {
method Whiteout (line 181) | func (t *Tar) Whiteout(p string) error {
method checkHardlink (line 198) | func (t *Tar) checkHardlink(p string, i os.FileInfo) (bool, string) {
function NewTar (line 45) | func NewTar(f io.Writer) Tar {
function CreateTarballOfDirectory (line 53) | func CreateTarballOfDirectory(pathToDir string, f io.Writer) error {
constant securityCapabilityXattr (line 147) | securityCapabilityXattr = "security.capability"
function writeSecurityXattrToTarFile (line 152) | func writeSecurityXattrToTarFile(path string, hdr *tar.Header) error {
function readSecurityXattrToTarHeader (line 167) | func readSecurityXattrToTarHeader(path string, hdr *tar.Header) error {
function getSyscallStatT (line 218) | func getSyscallStatT(i os.FileInfo) *syscall.Stat_t {
function UnpackLocalTarArchive (line 229) | func UnpackLocalTarArchive(path, dest string) ([]string, error) {
function IsFileLocalTarArchive (line 261) | func IsFileLocalTarArchive(src string) bool {
function fileIsCompressedTar (line 267) | func fileIsCompressedTar(src string) (bool, archive.Compression) {
function fileIsUncompressedTar (line 281) | func fileIsUncompressedTar(src string) bool {
function UnpackCompressedTar (line 303) | func UnpackCompressedTar(path, dir string) error {
FILE: pkg/util/tar_util_test.go
function Test_IsLocalTarArchive (line 37) | func Test_IsLocalTarArchive(t *testing.T) {
function Test_AddFileToTar (line 59) | func Test_AddFileToTar(t *testing.T) {
function setUpFilesAndTars (line 88) | func setUpFilesAndTars(testDir string) error {
function createTar (line 121) | func createTar(testdir string, writer io.Writer) error {
function Test_CreateTarballOfDirectory (line 133) | func Test_CreateTarballOfDirectory(t *testing.T) {
function createFilesInTempDir (line 165) | func createFilesInTempDir(t *testing.T, tmpDir string) {
FILE: pkg/util/transport_util.go
type CertPool (line 32) | type CertPool interface
type X509CertPool (line 37) | type X509CertPool struct
method value (line 41) | func (p *X509CertPool) value() *x509.CertPool {
method append (line 45) | func (p *X509CertPool) append(path string) error {
type KeyPairLoader (line 56) | type KeyPairLoader interface
type X509KeyPairLoader (line 60) | type X509KeyPairLoader struct
method load (line 63) | func (p *X509KeyPairLoader) load(certFile, keyFile string) (tls.Certif...
function init (line 69) | func init() {
function MakeTransport (line 82) | func MakeTransport(opts config.RegistryOptions, registryName string) (ht...
FILE: pkg/util/transport_util_test.go
type mockedCertPool (line 29) | type mockedCertPool struct
method value (line 33) | func (m *mockedCertPool) value() *x509.CertPool {
method append (line 37) | func (m *mockedCertPool) append(path string) error {
type mockedKeyPairLoader (line 42) | type mockedKeyPairLoader struct
method load (line 45) | func (p *mockedKeyPairLoader) load(certFile, keyFile string) (tls.Cert...
function Test_makeTransport (line 50) | func Test_makeTransport(t *testing.T) {
FILE: pkg/util/util.go
function Hasher (line 39) | func Hasher() func(string) (string, error) {
function CacheHasher (line 89) | func CacheHasher() func(string) (string, error) {
function MtimeHasher (line 126) | func MtimeHasher() func(string) (string, error) {
function RedoHasher (line 141) | func RedoHasher() func(string) (string, error) {
function SHA256 (line 167) | func SHA256(r io.Reader) (string, error) {
function GetInputFrom (line 177) | func GetInputFrom(r io.Reader) ([]byte, error) {
type retryFunc (line 185) | type retryFunc
function Retry (line 188) | func Retry(operation retryFunc, retryCount int, initialDelayMilliseconds...
function RetryWithResult (line 201) | func RetryWithResult[T any](operation func() (T, error), retryCount int,...
function Lgetxattr (line 220) | func Lgetxattr(path string, attr string) ([]byte, error) {
FILE: pkg/util/util_test.go
function TestGetInputFrom (line 28) | func TestGetInputFrom(t *testing.T) {
function makeRetryFunc (line 35) | func makeRetryFunc(numFailures int) retryFunc {
function TestRetry (line 47) | func TestRetry(t *testing.T) {
function makeRetryFuncWithResult (line 68) | func makeRetryFuncWithResult(numFailures int) func() (int, error) {
function TestRetryWithResult (line 80) | func TestRetryWithResult(t *testing.T) {
FILE: pkg/version/version.go
function Version (line 22) | func Version() string {
FILE: testutil/constants.go
constant Dockerfile (line 21) | Dockerfile = `
FILE: testutil/util.go
function SetupFiles (line 31) | func SetupFiles(path string, files map[string]string) error {
type CurrentUser (line 44) | type CurrentUser struct
function GetCurrentUser (line 50) | func GetCurrentUser(t *testing.T) CurrentUser {
function CheckDeepEqual (line 71) | func CheckDeepEqual(t *testing.T, expected, actual interface{}) {
function CheckErrorAndDeepEqual (line 79) | func CheckErrorAndDeepEqual(t *testing.T, shouldErr bool, err error, exp...
function CheckError (line 92) | func CheckError(t *testing.T, shouldErr bool, err error) {
function CheckNoError (line 98) | func CheckNoError(t *testing.T, err error) {
function checkErr (line 104) | func checkErr(shouldErr bool, err error) error {
FILE: vendor/cel.dev/expr/checked.pb.go
constant _ (line 20) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
constant _ (line 22) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
type Type_PrimitiveType (line 25) | type Type_PrimitiveType
method Enum (line 59) | func (x Type_PrimitiveType) Enum() *Type_PrimitiveType {
method String (line 65) | func (x Type_PrimitiveType) String() string {
method Descriptor (line 69) | func (Type_PrimitiveType) Descriptor() protoreflect.EnumDescriptor {
method Type (line 73) | func (Type_PrimitiveType) Type() protoreflect.EnumType {
method Number (line 77) | func (x Type_PrimitiveType) Number() protoreflect.EnumNumber {
method EnumDescriptor (line 82) | func (Type_PrimitiveType) EnumDescriptor() ([]byte, []int) {
constant Type_PRIMITIVE_TYPE_UNSPECIFIED (line 28) | Type_PRIMITIVE_TYPE_UNSPECIFIED Type_PrimitiveType = 0
constant Type_BOOL (line 29) | Type_BOOL Type_PrimitiveType = 1
constant Type_INT64 (line 30) | Type_INT64 Type_PrimitiveType = 2
constant Type_UINT64 (line 31) | Type_UINT64 Type_PrimitiveType = 3
constant Type_DOUBLE (line 32) | Type_DOUBLE Type_PrimitiveType = 4
constant Type_STRING (line 33) | Type_STRING Type_PrimitiveType = 5
constant Type_BYTES (line 34) | Type_BYTES Type_PrimitiveType = 6
type Type_WellKnownType (line 86) | type Type_WellKnownType
method Enum (line 111) | func (x Type_WellKnownType) Enum() *Type_WellKnownType {
method String (line 117) | func (x Type_WellKnownType) String() string {
method Descriptor (line 121) | func (Type_WellKnownType) Descriptor() protoreflect.EnumDescriptor {
method Type (line 125) | func (Type_WellKnownType) Type() protoreflect.EnumType {
method Number (line 129) | func (x Type_WellKnownType) Number() protoreflect.EnumNumber {
method EnumDescriptor (line 134) | func (Type_WellKnownType) EnumDescriptor() ([]byte, []int) {
constant Type_WELL_KNOWN_TYPE_UNSPECIFIED (line 89) | Type_WELL_KNOWN_TYPE_UNSPECIFIED Type_WellKnownType = 0
constant Type_ANY (line 90) | Type_ANY Type_WellKnownType = 1
constant Type_TIMESTAMP (line 91) | Type_TIMESTAMP Type_WellKnownType = 2
constant Type_DURATION (line 92) | Type_DURATION Type_WellKnownType = 3
type CheckedExpr (line 138) | type CheckedExpr struct
method Reset (line 150) | func (x *CheckedExpr) Reset() {
method String (line 159) | func (x *CheckedExpr) String() string {
method ProtoMessage (line 163) | func (*CheckedExpr) ProtoMessage() {}
method ProtoReflect (line 165) | func (x *CheckedExpr) ProtoReflect() protoreflect.Message {
method Descriptor (line 178) | func (*CheckedExpr) Descriptor() ([]byte, []int) {
method GetReferenceMap (line 182) | func (x *CheckedExpr) GetReferenceMap() map[int64]*Reference {
method GetTypeMap (line 189) | func (x *CheckedExpr) GetTypeMap() map[int64]*Type {
method GetSourceInfo (line 196) | func (x *CheckedExpr) GetSourceInfo() *SourceInfo {
method GetExprVersion (line 203) | func (x *CheckedExpr) GetExprVersion() string {
method GetExpr (line 210) | func (x *CheckedExpr) GetExpr() *Expr {
type Type (line 217) | type Type struct
method Reset (line 240) | func (x *Type) Reset() {
method String (line 249) | func (x *Type) String() string {
method ProtoMessage (line 253) | func (*Type) ProtoMessage() {}
method ProtoReflect (line 255) | func (x *Type) ProtoReflect() protoreflect.Message {
method Descriptor (line 268) | func (*Type) Descriptor() ([]byte, []int) {
method GetTypeKind (line 272) | func (m *Type) GetTypeKind() isType_TypeKind {
method GetDyn (line 279) | func (x *Type) GetDyn() *emptypb.Empty {
method GetNull (line 286) | func (x *Type) GetNull() structpb.NullValue {
method GetPrimitive (line 293) | func (x *Type) GetPrimitive() Type_PrimitiveType {
method GetWrapper (line 300) | func (x *Type) GetWrapper() Type_PrimitiveType {
method GetWellKnown (line 307) | func (x *Type) GetWellKnown() Type_WellKnownType {
method GetListType (line 314) | func (x *Type) GetListType() *Type_ListType {
method GetMapType (line 321) | func (x *Type) GetMapType() *Type_MapType {
method GetFunction (line 328) | func (x *Type) GetFunction() *Type_FunctionType {
method GetMessageType (line 335) | func (x *Type) GetMessageType() string {
method GetTypeParam (line 342) | func (x *Type) GetTypeParam() string {
method GetType (line 349) | func (x *Type) GetType() *Type {
method GetError (line 356) | func (x *Type) GetError() *emptypb.Empty {
method GetAbstractType (line 363) | func (x *Type) GetAbstractType() *Type_AbstractType {
type isType_TypeKind (line 370) | type isType_TypeKind interface
type Type_Dyn (line 374) | type Type_Dyn struct
method isType_TypeKind (line 426) | func (*Type_Dyn) isType_TypeKind() {}
type Type_Null (line 378) | type Type_Null struct
method isType_TypeKind (line 428) | func (*Type_Null) isType_TypeKind() {}
type Type_Primitive (line 382) | type Type_Primitive struct
method isType_TypeKind (line 430) | func (*Type_Primitive) isType_TypeKind() {}
type Type_Wrapper (line 386) | type Type_Wrapper struct
method isType_TypeKind (line 432) | func (*Type_Wrapper) isType_TypeKind() {}
type Type_WellKnown (line 390) | type Type_WellKnown struct
method isType_TypeKind (line 434) | func (*Type_WellKnown) isType_TypeKind() {}
type Type_ListType_ (line 394) | type Type_ListType_ struct
method isType_TypeKind (line 436) | func (*Type_ListType_) isType_TypeKind() {}
type Type_MapType_ (line 398) | type Type_MapType_ struct
method isType_TypeKind (line 438) | func (*Type_MapType_) isType_TypeKind() {}
type Type_Function (line 402) | type Type_Function struct
method isType_TypeKind (line 440) | func (*Type_Function) isType_TypeKind() {}
type Type_MessageType (line 406) | type Type_MessageType struct
method isType_TypeKind (line 442) | func (*Type_MessageType) isType_TypeKind() {}
type Type_TypeParam (line 410) | type Type_TypeParam struct
method isType_TypeKind (line 444) | func (*Type_TypeParam) isType_TypeKind() {}
type Type_Type (line 414) | type Type_Type struct
method isType_TypeKind (line 446) | func (*Type_Type) isType_TypeKind() {}
type Type_Error (line 418) | type Type_Error struct
method isType_TypeKind (line 448) | func (*Type_Error) isType_TypeKind() {}
type Type_AbstractType_ (line 422) | type Type_AbstractType_ struct
method isType_TypeKind (line 450) | func (*Type_AbstractType_) isType_TypeKind() {}
type Decl (line 452) | type Decl struct
method Reset (line 465) | func (x *Decl) Reset() {
method String (line 474) | func (x *Decl) String() string {
method ProtoMessage (line 478) | func (*Decl) ProtoMessage() {}
method ProtoReflect (line 480) | func (x *Decl) ProtoReflect() protoreflect.Message {
method Descriptor (line 493) | func (*Decl) Descriptor() ([]byte, []int) {
method GetName (line 497) | func (x *Decl) GetName() string {
method GetDeclKind (line 504) | func (m *Decl) GetDeclKind() isDecl_DeclKind {
method GetIdent (line 511) | func (x *Decl) GetIdent() *Decl_IdentDecl {
method GetFunction (line 518) | func (x *Decl) GetFunction() *Decl_FunctionDecl {
type isDecl_DeclKind (line 525) | type isDecl_DeclKind interface
type Decl_Ident (line 529) | type Decl_Ident struct
method isDecl_DeclKind (line 537) | func (*Decl_Ident) isDecl_DeclKind() {}
type Decl_Function (line 533) | type Decl_Function struct
method isDecl_DeclKind (line 539) | func (*Decl_Function) isDecl_DeclKind() {}
type Reference (line 541) | type Reference struct
method Reset (line 551) | func (x *Reference) Reset() {
method String (line 560) | func (x *Reference) String() string {
method ProtoMessage (line 564) | func (*Reference) ProtoMessage() {}
method ProtoReflect (line 566) | func (x *Reference) ProtoReflect() protoreflect.Message {
method Descriptor (line 579) | func (*Reference) Descriptor() ([]byte, []int) {
method GetName (line 583) | func (x *Reference) GetName() string {
method GetOverloadId (line 590) | func (x *Reference) GetOverloadId() []string {
method GetValue (line 597) | func (x *Reference) GetValue() *Constant {
type Type_ListType (line 604) | type Type_ListType struct
method Reset (line 612) | func (x *Type_ListType) Reset() {
method String (line 621) | func (x *Type_ListType) String() string {
method ProtoMessage (line 625) | func (*Type_ListType) ProtoMessage() {}
method ProtoReflect (line 627) | func (x *Type_ListType) ProtoReflect() protoreflect.Message {
method Descriptor (line 640) | func (*Type_ListType) Descriptor() ([]byte, []int) {
method GetElemType (line 644) | func (x *Type_ListType) GetElemType() *Type {
type Type_MapType (line 651) | type Type_MapType struct
method Reset (line 660) | func (x *Type_MapType) Reset() {
method String (line 669) | func (x *Type_MapType) String() string {
method ProtoMessage (line 673) | func (*Type_MapType) ProtoMessage() {}
method ProtoReflect (line 675) | func (x *Type_MapType) ProtoReflect() protoreflect.Message {
method Descriptor (line 688) | func (*Type_MapType) Descriptor() ([]byte, []int) {
method GetKeyType (line 692) | func (x *Type_MapType) GetKeyType() *Type {
method GetValueType (line 699) | func (x *Type_MapType) GetValueType() *Type {
type Type_FunctionType (line 706) | type Type_FunctionType struct
method Reset (line 715) | func (x *Type_FunctionType) Reset() {
method String (line 724) | func (x *Type_FunctionType) String() string {
method ProtoMessage (line 728) | func (*Type_FunctionType) ProtoMessage() {}
method ProtoReflect (line 730) | func (x *Type_FunctionType) ProtoReflect() protoreflect.Message {
method Descriptor (line 743) | func (*Type_FunctionType) Descriptor() ([]byte, []int) {
method GetResultType (line 747) | func (x *Type_FunctionType) GetResultType() *Type {
method GetArgTypes (line 754) | func (x *Type_FunctionType) GetArgTypes() []*Type {
type Type_AbstractType (line 761) | type Type_AbstractType struct
method Reset (line 770) | func (x *Type_AbstractType) Reset() {
method String (line 779) | func (x *Type_AbstractType) String() string {
method ProtoMessage (line 783) | func (*Type_AbstractType) ProtoMessage() {}
method ProtoReflect (line 785) | func (x *Type_AbstractType) ProtoReflect() protoreflect.Message {
method Descriptor (line 798) | func (*Type_AbstractType) Descriptor() ([]byte, []int) {
method GetName (line 802) | func (x *Type_AbstractType) GetName() string {
method GetParameterTypes (line 809) | func (x *Type_AbstractType) GetParameterTypes() []*Type {
type Decl_IdentDecl (line 816) | type Decl_IdentDecl struct
method Reset (line 826) | func (x *Decl_IdentDecl) Reset() {
method String (line 835) | func (x *Decl_IdentDecl) String() string {
method ProtoMessage (line 839) | func (*Decl_IdentDecl) ProtoMessage() {}
method ProtoReflect (line 841) | func (x *Decl_IdentDecl) ProtoReflect() protoreflect.Message {
method Descriptor (line 854) | func (*Decl_IdentDecl) Descriptor() ([]byte, []int) {
method GetType (line 858) | func (x *Decl_IdentDecl) GetType() *Type {
method GetValue (line 865) | func (x *Decl_IdentDecl) GetValue() *Constant {
method GetDoc (line 872) | func (x *Decl_IdentDecl) GetDoc() string {
type Decl_FunctionDecl (line 879) | type Decl_FunctionDecl struct
method Reset (line 887) | func (x *Decl_FunctionDecl) Reset() {
method String (line 896) | func (x *Decl_FunctionDecl) String() string {
method ProtoMessage (line 900) | func (*Decl_FunctionDecl) ProtoMessage() {}
method ProtoReflect (line 902) | func (x *Decl_FunctionDecl) ProtoReflect() protoreflect.Message {
method Descriptor (line 915) | func (*Decl_FunctionDecl) Descriptor() ([]byte, []int) {
method GetOverloads (line 919) | func (x *Decl_FunctionDecl) GetOverloads() []*Decl_FunctionDecl_Overlo...
type Decl_FunctionDecl_Overload (line 926) | type Decl_FunctionDecl_Overload struct
method Reset (line 939) | func (x *Decl_FunctionDecl_Overload) Reset() {
method String (line 948) | func (x *Decl_FunctionDecl_Overload) String() string {
method ProtoMessage (line 952) | func (*Decl_FunctionDecl_Overload) ProtoMessage() {}
method ProtoReflect (line 954) | func (x *Decl_FunctionDecl_Overload) ProtoReflect() protoreflect.Messa...
method Descriptor (line 967) | func (*Decl_FunctionDecl_Overload) Descriptor() ([]byte, []int) {
method GetOverloadId (line 971) | func (x *Decl_FunctionDecl_Overload) GetOverloadId() string {
method GetParams (line 978) | func (x *Decl_FunctionDecl_Overload) GetParams() []*Type {
method GetTypeParams (line 985) | func (x *Decl_FunctionDecl_Overload) GetTypeParams() []string {
method GetResultType (line 992) | func (x *Decl_FunctionDecl_Overload) GetResultType() *Type {
method GetIsInstanceFunction (line 999) | func (x *Decl_FunctionDecl_Overload) GetIsInstanceFunction() bool {
method GetDoc (line 1006) | func (x *Decl_FunctionDecl_Overload) GetDoc() string {
function file_cel_expr_checked_proto_rawDescGZIP (line 1184) | func file_cel_expr_checked_proto_rawDescGZIP() []byte {
function init (line 1254) | func init() { file_cel_expr_checked_proto_init() }
function file_cel_expr_checked_proto_init (line 1255) | func file_cel_expr_checked_proto_init() {
FILE: vendor/cel.dev/expr/eval.pb.go
constant _ (line 19) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
constant _ (line 21) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
type EvalState (line 24) | type EvalState struct
method Reset (line 32) | func (x *EvalState) Reset() {
method String (line 39) | func (x *EvalState) String() string {
method ProtoMessage (line 43) | func (*EvalState) ProtoMessage() {}
method ProtoReflect (line 45) | func (x *EvalState) ProtoReflect() protoreflect.Message {
method Descriptor (line 58) | func (*EvalState) Descriptor() ([]byte, []int) {
method GetValues (line 62) | func (x *EvalState) GetValues() []*ExprValue {
method GetResults (line 69) | func (x *EvalState) GetResults() []*EvalState_Result {
type ExprValue (line 76) | type ExprValue struct
method Reset (line 88) | func (x *ExprValue) Reset() {
method String (line 95) | func (x *ExprValue) String() string {
method ProtoMessage (line 99) | func (*ExprValue) ProtoMessage() {}
method ProtoReflect (line 101) | func (x *ExprValue) ProtoReflect() protoreflect.Message {
method Descriptor (line 114) | func (*ExprValue) Descriptor() ([]byte, []int) {
method GetKind (line 118) | func (x *ExprValue) GetKind() isExprValue_Kind {
method GetValue (line 125) | func (x *ExprValue) GetValue() *Value {
method GetError (line 134) | func (x *ExprValue) GetError() *ErrorSet {
method GetUnknown (line 143) | func (x *ExprValue) GetUnknown() *UnknownSet {
type isExprValue_Kind (line 152) | type isExprValue_Kind interface
type ExprValue_Value (line 156) | type ExprValue_Value struct
method isExprValue_Kind (line 168) | func (*ExprValue_Value) isExprValue_Kind() {}
type ExprValue_Error (line 160) | type ExprValue_Error struct
method isExprValue_Kind (line 170) | func (*ExprValue_Error) isExprValue_Kind() {}
type ExprValue_Unknown (line 164) | type ExprValue_Unknown struct
method isExprValue_Kind (line 172) | func (*ExprValue_Unknown) isExprValue_Kind() {}
type ErrorSet (line 174) | type ErrorSet struct
method Reset (line 181) | func (x *ErrorSet) Reset() {
method String (line 188) | func (x *ErrorSet) String() string {
method ProtoMessage (line 192) | func (*ErrorSet) ProtoMessage() {}
method ProtoReflect (line 194) | func (x *ErrorSet) ProtoReflect() protoreflect.Message {
method Descriptor (line 207) | func (*ErrorSet) Descriptor() ([]byte, []int) {
method GetErrors (line 211) | func (x *ErrorSet) GetErrors() []*Status {
type Status (line 218) | type Status struct
method Reset (line 227) | func (x *Status) Reset() {
method String (line 234) | func (x *Status) String() string {
method ProtoMessage (line 238) | func (*Status) ProtoMessage() {}
method ProtoReflect (line 240) | func (x *Status) ProtoReflect() protoreflect.Message {
method Descriptor (line 253) | func (*Status) Descriptor() ([]byte, []int) {
method GetCode (line 257) | func (x *Status) GetCode() int32 {
method GetMessage (line 264) | func (x *Status) GetMessage() string {
method GetDetails (line 271) | func (x *Status) GetDetails() []*anypb.Any {
type UnknownSet (line 278) | type UnknownSet struct
method Reset (line 285) | func (x *UnknownSet) Reset() {
method String (line 292) | func (x *UnknownSet) String() string {
method ProtoMessage (line 296) | func (*UnknownSet) ProtoMessage() {}
method ProtoReflect (line 298) | func (x *UnknownSet) ProtoReflect() protoreflect.Message {
method Descriptor (line 311) | func (*UnknownSet) Descriptor() ([]byte, []int) {
method GetExprs (line 315) | func (x *UnknownSet) GetExprs() []int64 {
type EvalState_Result (line 322) | type EvalState_Result struct
method Reset (line 330) | func (x *EvalState_Result) Reset() {
method String (line 337) | func (x *EvalState_Result) String() string {
method ProtoMessage (line 341) | func (*EvalState_Result) ProtoMessage() {}
method ProtoReflect (line 343) | func (x *EvalState_Result) ProtoReflect() protoreflect.Message {
method Descriptor (line 356) | func (*EvalState_Result) Descriptor() ([]byte, []int) {
method GetExpr (line 360) | func (x *EvalState_Result) GetExpr() int64 {
method GetValue (line 367) | func (x *EvalState_Result) GetValue() int64 {
function file_cel_expr_eval_proto_rawDescGZIP (line 425) | func file_cel_expr_eval_proto_rawDescGZIP() []byte {
function init (line 458) | func init() { file_cel_expr_eval_proto_init() }
function file_cel_expr_eval_proto_init (line 459) | func file_cel_expr_eval_proto_init() {
FILE: vendor/cel.dev/expr/explain.pb.go
constant _ (line 18) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
constant _ (line 20) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
type Explain (line 24) | type Explain struct
method Reset (line 33) | func (x *Explain) Reset() {
method String (line 42) | func (x *Explain) String() string {
method ProtoMessage (line 46) | func (*Explain) ProtoMessage() {}
method ProtoReflect (line 48) | func (x *Explain) ProtoReflect() protoreflect.Message {
method Descriptor (line 61) | func (*Explain) Descriptor() ([]byte, []int) {
method GetValues (line 65) | func (x *Explain) GetValues() []*Value {
method GetExprSteps (line 72) | func (x *Explain) GetExprSteps() []*Explain_ExprStep {
type Explain_ExprStep (line 79) | type Explain_ExprStep struct
method Reset (line 88) | func (x *Explain_ExprStep) Reset() {
method String (line 97) | func (x *Explain_ExprStep) String() string {
method ProtoMessage (line 101) | func (*Explain_ExprStep) ProtoMessage() {}
method ProtoReflect (line 103) | func (x *Explain_ExprStep) ProtoReflect() protoreflect.Message {
method Descriptor (line 116) | func (*Explain_ExprStep) Descriptor() ([]byte, []int) {
method GetId (line 120) | func (x *Explain_ExprStep) GetId() int64 {
method GetValueIndex (line 127) | func (x *Explain_ExprStep) GetValueIndex() int32 {
function file_cel_expr_explain_proto_rawDescGZIP (line 163) | func file_cel_expr_explain_proto_rawDescGZIP() []byte {
function init (line 186) | func init() { file_cel_expr_explain_proto_init() }
function file_cel_expr_explain_proto_init (line 187) | func file_cel_expr_explain_proto_init() {
FILE: vendor/cel.dev/expr/syntax.pb.go
constant _ (line 21) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
constant _ (line 23) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
type SourceInfo_Extension_Component (line 26) | type SourceInfo_Extension_Component
method Enum (line 51) | func (x SourceInfo_Extension_Component) Enum() *SourceInfo_Extension_C...
method String (line 57) | func (x SourceInfo_Extension_Component) String() string {
method Descriptor (line 61) | func (SourceInfo_Extension_Component) Descriptor() protoreflect.EnumDe...
method Type (line 65) | func (SourceInfo_Extension_Component) Type() protoreflect.EnumType {
method Number (line 69) | func (x SourceInfo_Extension_Component) Number() protoreflect.EnumNumb...
method EnumDescriptor (line 74) | func (SourceInfo_Extension_Component) EnumDescriptor() ([]byte, []int) {
constant SourceInfo_Extension_COMPONENT_UNSPECIFIED (line 29) | SourceInfo_Extension_COMPONENT_UNSPECIFIED SourceInfo_Extension_Compone...
constant SourceInfo_Extension_COMPONENT_PARSER (line 30) | SourceInfo_Extension_COMPONENT_PARSER SourceInfo_Extension_Compone...
constant SourceInfo_Extension_COMPONENT_TYPE_CHECKER (line 31) | SourceInfo_Extension_COMPONENT_TYPE_CHECKER SourceInfo_Extension_Compone...
constant SourceInfo_Extension_COMPONENT_RUNTIME (line 32) | SourceInfo_Extension_COMPONENT_RUNTIME SourceInfo_Extension_Compone...
type ParsedExpr (line 78) | type ParsedExpr struct
method Reset (line 87) | func (x *ParsedExpr) Reset() {
method String (line 96) | func (x *ParsedExpr) String() string {
method ProtoMessage (line 100) | func (*ParsedExpr) ProtoMessage() {}
method ProtoReflect (line 102) | func (x *ParsedExpr) ProtoReflect() protoreflect.Message {
method Descriptor (line 115) | func (*ParsedExpr) Descriptor() ([]byte, []int) {
method GetExpr (line 119) | func (x *ParsedExpr) GetExpr() *Expr {
method GetSourceInfo (line 126) | func (x *ParsedExpr) GetSourceInfo() *SourceInfo {
type Expr (line 133) | type Expr struct
method Reset (line 151) | func (x *Expr) Reset() {
method String (line 160) | func (x *Expr) String() string {
method ProtoMessage (line 164) | func (*Expr) ProtoMessage() {}
method ProtoReflect (line 166) | func (x *Expr) ProtoReflect() protoreflect.Message {
method Descriptor (line 179) | func (*Expr) Descriptor() ([]byte, []int) {
method GetId (line 183) | func (x *Expr) GetId() int64 {
method GetExprKind (line 190) | func (m *Expr) GetExprKind() isExpr_ExprKind {
method GetConstExpr (line 197) | func (x *Expr) GetConstExpr() *Constant {
method GetIdentExpr (line 204) | func (x *Expr) GetIdentExpr() *Expr_Ident {
method GetSelectExpr (line 211) | func (x *Expr) GetSelectExpr() *Expr_Select {
method GetCallExpr (line 218) | func (x *Expr) GetCallExpr() *Expr_Call {
method GetListExpr (line 225) | func (x *Expr) GetListExpr() *Expr_CreateList {
method GetStructExpr (line 232) | func (x *Expr) GetStructExpr() *Expr_CreateStruct {
method GetComprehensionExpr (line 239) | func (x *Expr) GetComprehensionExpr() *Expr_Comprehension {
type isExpr_ExprKind (line 246) | type isExpr_ExprKind interface
type Expr_ConstExpr (line 250) | type Expr_ConstExpr struct
method isExpr_ExprKind (line 278) | func (*Expr_ConstExpr) isExpr_ExprKind() {}
type Expr_IdentExpr (line 254) | type Expr_IdentExpr struct
method isExpr_ExprKind (line 280) | func (*Expr_IdentExpr) isExpr_ExprKind() {}
type Expr_SelectExpr (line 258) | type Expr_SelectExpr struct
method isExpr_ExprKind (line 282) | func (*Expr_SelectExpr) isExpr_ExprKind() {}
type Expr_CallExpr (line 262) | type Expr_CallExpr struct
method isExpr_ExprKind (line 284) | func (*Expr_CallExpr) isExpr_ExprKind() {}
type Expr_ListExpr (line 266) | type Expr_ListExpr struct
method isExpr_ExprKind (line 286) | func (*Expr_ListExpr) isExpr_ExprKind() {}
type Expr_StructExpr (line 270) | type Expr_StructExpr struct
method isExpr_ExprKind (line 288) | func (*Expr_StructExpr) isExpr_ExprKind() {}
type Expr_ComprehensionExpr (line 274) | type Expr_ComprehensionExpr struct
method isExpr_ExprKind (line 290) | func (*Expr_ComprehensionExpr) isExpr_ExprKind() {}
type Constant (line 292) | type Constant struct
method Reset (line 311) | func (x *Constant) Reset() {
method String (line 320) | func (x *Constant) String() string {
method ProtoMessage (line 324) | func (*Constant) ProtoMessage() {}
method ProtoReflect (line 326) | func (x *Constant) ProtoReflect() protoreflect.Message {
method Descriptor (line 339) | func (*Constant) Descriptor() ([]byte, []int) {
method GetConstantKind (line 343) | func (m *Constant) GetConstantKind() isConstant_ConstantKind {
method GetNullValue (line 350) | func (x *Constant) GetNullValue() structpb.NullValue {
method GetBoolValue (line 357) | func (x *Constant) GetBoolValue() bool {
method GetInt64Value (line 364) | func (x *Constant) GetInt64Value() int64 {
method GetUint64Value (line 371) | func (x *Constant) GetUint64Value() uint64 {
method GetDoubleValue (line 378) | func (x *Constant) GetDoubleValue() float64 {
method GetStringValue (line 385) | func (x *Constant) GetStringValue() string {
method GetBytesValue (line 392) | func (x *Constant) GetBytesValue() []byte {
method GetDurationValue (line 400) | func (x *Constant) GetDurationValue() *durationpb.Duration {
method GetTimestampValue (line 408) | func (x *Constant) GetTimestampValue() *timestamppb.Timestamp {
type isConstant_ConstantKind (line 415) | type isConstant_ConstantKind interface
type Constant_NullValue (line 419) | type Constant_NullValue struct
method isConstant_ConstantKind (line 457) | func (*Constant_NullValue) isConstant_ConstantKind() {}
type Constant_BoolValue (line 423) | type Constant_BoolValue struct
method isConstant_ConstantKind (line 459) | func (*Constant_BoolValue) isConstant_ConstantKind() {}
type Constant_Int64Value (line 427) | type Constant_Int64Value struct
method isConstant_ConstantKind (line 461) | func (*Constant_Int64Value) isConstant_ConstantKind() {}
type Constant_Uint64Value (line 431) | type Constant_Uint64Value struct
method isConstant_ConstantKind (line 463) | func (*Constant_Uint64Value) isConstant_ConstantKind() {}
type Constant_DoubleValue (line 435) | type Constant_DoubleValue struct
method isConstant_ConstantKind (line 465) | func (*Constant_DoubleValue) isConstant_ConstantKind() {}
type Constant_StringValue (line 439) | type Constant_StringValue struct
method isConstant_ConstantKind (line 467) | func (*Constant_StringValue) isConstant_ConstantKind() {}
type Constant_BytesValue (line 443) | type Constant_BytesValue struct
method isConstant_ConstantKind (line 469) | func (*Constant_BytesValue) isConstant_ConstantKind() {}
type Constant_DurationValue (line 447) | type Constant_DurationValue struct
method isConstant_ConstantKind (line 471) | func (*Constant_DurationValue) isConstant_ConstantKind() {}
type Constant_TimestampValue (line 452) | type Constant_TimestampValue struct
method isConstant_ConstantKind (line 473) | func (*Constant_TimestampValue) isConstant_ConstantKind() {}
type SourceInfo (line 475) | type SourceInfo struct
method Reset (line 488) | func (x *SourceInfo) Reset() {
method String (line 497) | func (x *SourceInfo) String() string {
method ProtoMessage (line 501) | func (*SourceInfo) ProtoMessage() {}
method ProtoReflect (line 503) | func (x *SourceInfo) ProtoReflect() protoreflect.Message {
method Descriptor (line 516) | func (*SourceInfo) Descriptor() ([]byte, []int) {
method GetSyntaxVersion (line 520) | func (x *SourceInfo) GetSyntaxVersion() string {
method GetLocation (line 527) | func (x *SourceInfo) GetLocation() string {
method GetLineOffsets (line 534) | func (x *SourceInfo) GetLineOffsets() []int32 {
method GetPositions (line 541) | func (x *SourceInfo) GetPositions() map[int64]int32 {
method GetMacroCalls (line 548) | func (x *SourceInfo) GetMacroCalls() map[int64]*Expr {
method GetExtensions (line 555) | func (x *SourceInfo) GetExtensions() []*SourceInfo_Extension {
type Expr_Ident (line 562) | type Expr_Ident struct
method Reset (line 570) | func (x *Expr_Ident) Reset() {
method String (line 579) | func (x *Expr_Ident) String() string {
method ProtoMessage (line 583) | func (*Expr_Ident) ProtoMessage() {}
method ProtoReflect (line 585) | func (x *Expr_Ident) ProtoReflect() protoreflect.Message {
method Descriptor (line 598) | func (*Expr_Ident) Descriptor() ([]byte, []int) {
method GetName (line 602) | func (x *Expr_Ident) GetName() string {
type Expr_Select (line 609) | type Expr_Select struct
method Reset (line 619) | func (x *Expr_Select) Reset() {
method String (line 628) | func (x *Expr_Select) String() string {
method ProtoMessage (line 632) | func (*Expr_Select) ProtoMessage() {}
method ProtoReflect (line 634) | func (x *Expr_Select) ProtoReflect() protoreflect.Message {
method Descriptor (line 647) | func (*Expr_Select) Descriptor() ([]byte, []int) {
method GetOperand (line 651) | func (x *Expr_Select) GetOperand() *Expr {
method GetField (line 658) | func (x *Expr_Select) GetField() string {
method GetTestOnly (line 665) | func (x *Expr_Select) GetTestOnly() bool {
type Expr_Call (line 672) | type Expr_Call struct
method Reset (line 682) | func (x *Expr_Call) Reset() {
method String (line 691) | func (x *Expr_Call) String() string {
method ProtoMessage (line 695) | func (*Expr_Call) ProtoMessage() {}
method ProtoReflect (line 697) | func (x *Expr_Call) ProtoReflect() protoreflect.Message {
method Descriptor (line 710) | func (*Expr_Call) Descriptor() ([]byte, []int) {
method GetTarget (line 714) | func (x *Expr_Call) GetTarget() *Expr {
method GetFunction (line 721) | func (x *Expr_Call) GetFunction() string {
method GetArgs (line 728) | func (x *Expr_Call) GetArgs() []*Expr {
type Expr_CreateList (line 735) | type Expr_CreateList struct
method Reset (line 744) | func (x *Expr_CreateList) Reset() {
method String (line 753) | func (x *Expr_CreateList) String() string {
method ProtoMessage (line 757) | func (*Expr_CreateList) ProtoMessage() {}
method ProtoReflect (line 759) | func (x *Expr_CreateList) ProtoReflect() protoreflect.Message {
method Descriptor (line 772) | func (*Expr_CreateList) Descriptor() ([]byte, []int) {
method GetElements (line 776) | func (x *Expr_CreateList) GetElements() []*Expr {
method GetOptionalIndices (line 783) | func (x *Expr_CreateList) GetOptionalIndices() []int32 {
type Expr_CreateStruct (line 790) | type Expr_CreateStruct struct
method Reset (line 799) | func (x *Expr_CreateStruct) Reset() {
method String (line 808) | func (x *Expr_CreateStruct) String() string {
method ProtoMessage (line 812) | func (*Expr_CreateStruct) ProtoMessage() {}
method ProtoReflect (line 814) | func (x *Expr_CreateStruct) ProtoReflect() protoreflect.Message {
method Descriptor (line 827) | func (*Expr_CreateStruct) Descriptor() ([]byte, []int) {
method GetMessageName (line 831) | func (x *Expr_CreateStruct) GetMessageName() string {
method GetEntries (line 838) | func (x *Expr_CreateStruct) GetEntries() []*Expr_CreateStruct_Entry {
type Expr_Comprehension (line 845) | type Expr_Comprehension struct
method Reset (line 859) | func (x *Expr_Comprehension) Reset() {
method String (line 868) | func (x *Expr_Comprehension) String() string {
method ProtoMessage (line 872) | func (*Expr_Comprehension) ProtoMessage() {}
method ProtoReflect (line 874) | func (x *Expr_Comprehension) ProtoReflect() protoreflect.Message {
method Descriptor (line 887) | func (*Expr_Comprehension) Descriptor() ([]byte, []int) {
method GetIterVar (line 891) | func (x *Expr_Comprehension) GetIterVar() string {
method GetIterRange (line 898) | func (x *Expr_Comprehension) GetIterRange() *Expr {
method GetAccuVar (line 905) | func (x *Expr_Comprehension) GetAccuVar() string {
method GetAccuInit (line 912) | func (x *Expr_Comprehension) GetAccuInit() *Expr {
method GetLoopCondition (line 919) | func (x *Expr_Comprehension) GetLoopCondition() *Expr {
method GetLoopStep (line 926) | func (x *Expr_Comprehension) GetLoopStep() *Expr {
method GetResult (line 933) | func (x *Expr_Comprehension) GetResult() *Expr {
type Expr_CreateStruct_Entry (line 940) | type Expr_CreateStruct_Entry struct
method Reset (line 955) | func (x *Expr_CreateStruct_Entry) Reset() {
method String (line 964) | func (x *Expr_CreateStruct_Entry) String() string {
method ProtoMessage (line 968) | func (*Expr_CreateStruct_Entry) ProtoMessage() {}
method ProtoReflect (line 970) | func (x *Expr_CreateStruct_Entry) ProtoReflect() protoreflect.Message {
method Descriptor (line 983) | func (*Expr_CreateStruct_Entry) Descriptor() ([]byte, []int) {
method GetId (line 987) | func (x *Expr_CreateStruct_Entry) GetId() int64 {
method GetKeyKind (line 994) | func (m *Expr_CreateStruct_Entry) GetKeyKind() isExpr_CreateStruct_Ent...
method GetFieldKey (line 1001) | func (x *Expr_CreateStruct_Entry) GetFieldKey() string {
method GetMapKey (line 1008) | func (x *Expr_CreateStruct_Entry) GetMapKey() *Expr {
method GetValue (line 1015) | func (x *Expr_CreateStruct_Entry) GetValue() *Expr {
method GetOptionalEntry (line 1022) | func (x *Expr_CreateStruct_Entry) GetOptionalEntry() bool {
type isExpr_CreateStruct_Entry_KeyKind (line 1029) | type isExpr_CreateStruct_Entry_KeyKind interface
type Expr_CreateStruct_Entry_FieldKey (line 1033) | type Expr_CreateStruct_Entry_FieldKey struct
method isExpr_CreateStruct_Entry_KeyKind (line 1041) | func (*Expr_CreateStruct_Entry_FieldKey) isExpr_CreateStruct_Entry_Key...
type Expr_CreateStruct_Entry_MapKey (line 1037) | type Expr_CreateStruct_Entry_MapKey struct
method isExpr_CreateStruct_Entry_KeyKind (line 1043) | func (*Expr_CreateStruct_Entry_MapKey) isExpr_CreateStruct_Entry_KeyKi...
type SourceInfo_Extension (line 1045) | type SourceInfo_Extension struct
method Reset (line 1055) | func (x *SourceInfo_Extension) Reset() {
method String (line 1064) | func (x *SourceInfo_Extension) String() string {
method ProtoMessage (line 1068) | func (*SourceInfo_Extension) ProtoMessage() {}
method ProtoReflect (line 1070) | func (x *SourceInfo_Extension) ProtoReflect() protoreflect.Message {
method Descriptor (line 1083) | func (*SourceInfo_Extension) Descriptor() ([]byte, []int) {
method GetId (line 1087) | func (x *SourceInfo_Extension) GetId() string {
method GetAffectedComponents (line 1094) | func (x *SourceInfo_Extension) GetAffectedComponents() []SourceInfo_Ex...
method GetVersion (line 1101) | func (x *SourceInfo_Extension) GetVersion() *SourceInfo_Extension_Vers...
type SourceInfo_Extension_Version (line 1108) | type SourceInfo_Extension_Version struct
method Reset (line 1117) | func (x *SourceInfo_Extension_Version) Reset() {
method String (line 1126) | func (x *SourceInfo_Extension_Version) String() string {
method ProtoMessage (line 1130) | func (*SourceInfo_Extension_Version) ProtoMessage() {}
method ProtoReflect (line 1132) | func (x *SourceInfo_Extension_Version) ProtoReflect() protoreflect.Mes...
method Descriptor (line 1145) | func (*SourceInfo_Extension_Version) Descriptor() ([]byte, []int) {
method GetMajor (line 1149) | func (x *SourceInfo_Extension_Version) GetMajor() int64 {
method GetMinor (line 1156) | func (x *SourceInfo_Extension_Version) GetMinor() int64 {
function file_cel_expr_syntax_proto_rawDescGZIP (line 1359) | func file_cel_expr_syntax_proto_rawDescGZIP() []byte {
function init (line 1427) | func init() { file_cel_expr_syntax_proto_init() }
function file_cel_expr_syntax_proto_init (line 1428) | func file_cel_expr_syntax_proto_init() {
FILE: vendor/cel.dev/expr/value.pb.go
constant _ (line 20) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
constant _ (line 22) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
type Value (line 25) | type Value struct
method Reset (line 47) | func (x *Value) Reset() {
method String (line 56) | func (x *Value) String() string {
method ProtoMessage (line 60) | func (*Value) ProtoMessage() {}
method ProtoReflect (line 62) | func (x *Value) ProtoReflect() protoreflect.Message {
method Descriptor (line 75) | func (*Value) Descriptor() ([]byte, []int) {
method GetKind (line 79) | func (m *Value) GetKind() isValue_Kind {
method GetNullValue (line 86) | func (x *Value) GetNullValue() structpb.NullValue {
method GetBoolValue (line 93) | func (x *Value) GetBoolValue() bool {
method GetInt64Value (line 100) | func (x *Value) GetInt64Value() int64 {
method GetUint64Value (line 107) | func (x *Value) GetUint64Value() uint64 {
method GetDoubleValue (line 114) | func (x *Value) GetDoubleValue() float64 {
method GetStringValue (line 121) | func (x *Value) GetStringValue() string {
method GetBytesValue (line 128) | func (x *Value) GetBytesValue() []byte {
method GetEnumValue (line 135) | func (x *Value) GetEnumValue() *EnumValue {
method GetObjectValue (line 142) | func (x *Value) GetObjectValue() *anypb.Any {
method GetMapValue (line 149) | func (x *Value) GetMapValue() *MapValue {
method GetListValue (line 156) | func (x *Value) GetListValue() *ListValue {
method GetTypeValue (line 163) | func (x *Value) GetTypeValue() string {
type isValue_Kind (line 170) | type isValue_Kind interface
type Value_NullValue (line 174) | type Value_NullValue struct
method isValue_Kind (line 222) | func (*Value_NullValue) isValue_Kind() {}
type Value_BoolValue (line 178) | type Value_BoolValue struct
method isValue_Kind (line 224) | func (*Value_BoolValue) isValue_Kind() {}
type Value_Int64Value (line 182) | type Value_Int64Value struct
method isValue_Kind (line 226) | func (*Value_Int64Value) isValue_Kind() {}
type Value_Uint64Value (line 186) | type Value_Uint64Value struct
method isValue_Kind (line 228) | func (*Value_Uint64Value) isValue_Kind() {}
type Value_DoubleValue (line 190) | type Value_DoubleValue struct
method isValue_Kind (line 230) | func (*Value_DoubleValue) isValue_Kind() {}
type Value_StringValue (line 194) | type Value_StringValue struct
method isValue_Kind (line 232) | func (*Value_StringValue) isValue_Kind() {}
type Value_BytesValue (line 198) | type Value_BytesValue struct
method isValue_Kind (line 234) | func (*Value_BytesValue) isValue_Kind() {}
type Value_EnumValue (line 202) | type Value_EnumValue struct
method isValue_Kind (line 236) | func (*Value_EnumValue) isValue_Kind() {}
type Value_ObjectValue (line 206) | type Value_ObjectValue struct
method isValue_Kind (line 238) | func (*Value_ObjectValue) isValue_Kind() {}
type Value_MapValue (line 210) | type Value_MapValue struct
method isValue_Kind (line 240) | func (*Value_MapValue) isValue_Kind() {}
type Value_ListValue (line 214) | type Value_ListValue struct
method isValue_Kind (line 242) | func (*Value_ListValue) isValue_Kind() {}
type Value_TypeValue (line 218) | type Value_TypeValue struct
method isValue_Kind (line 244) | func (*Value_TypeValue) isValue_Kind() {}
type EnumValue (line 246) | type EnumValue struct
method Reset (line 255) | func (x *EnumValue) Reset() {
method String (line 264) | func (x *EnumValue) String() string {
method ProtoMessage (line 268) | func (*EnumValue) ProtoMessage() {}
method ProtoReflect (line 270) | func (x *EnumValue) ProtoReflect() protoreflect.Message {
method Descriptor (line 283) | func (*EnumValue) Descriptor() ([]byte, []int) {
method GetType (line 287) | func (x *EnumValue) GetType() string {
method GetValue (line 294) | func (x *EnumValue) GetValue() int32 {
type ListValue (line 301) | type ListValue struct
method Reset (line 309) | func (x *ListValue) Reset() {
method String (line 318) | func (x *ListValue) String() string {
method ProtoMessage (line 322) | func (*ListValue) ProtoMessage() {}
method ProtoReflect (line 324) | func (x *ListValue) ProtoReflect() protoreflect.Message {
method Descriptor (line 337) | func (*ListValue) Descriptor() ([]byte, []int) {
method GetValues (line 341) | func (x *ListValue) GetValues() []*Value {
type MapValue (line 348) | type MapValue struct
method Reset (line 356) | func (x *MapValue) Reset() {
method String (line 365) | func (x *MapValue) String() string {
method ProtoMessage (line 369) | func (*MapValue) ProtoMessage() {}
method ProtoReflect (line 371) | func (x *MapValue) ProtoReflect() protoreflect.Message {
method Descriptor (line 384) | func (*MapValue) Descriptor() ([]byte, []int) {
method GetEntries (line 388) | func (x *MapValue) GetEntries() []*MapValue_Entry {
type MapValue_Entry (line 395) | type MapValue_Entry struct
method Reset (line 404) | func (x *MapValue_Entry) Reset() {
method String (line 413) | func (x *MapValue_Entry) String() string {
method ProtoMessage (line 417) | func (*MapValue_Entry) ProtoMessage() {}
method ProtoReflect (line 419) | func (x *MapValue_Entry) ProtoReflect() protoreflect.Message {
method Descriptor (line 432) | func (*MapValue_Entry) Descriptor() ([]byte, []int) {
method GetKey (line 436) | func (x *MapValue_Entry) GetKey() *Value {
method GetValue (line 443) | func (x *MapValue_Entry) GetValue() *Value {
function file_cel_expr_value_proto_rawDescGZIP (line 520) | func file_cel_expr_value_proto_rawDescGZIP() []byte {
function init (line 554) | func init() { file_cel_expr_value_proto_init() }
function file_cel_expr_value_proto_init (line 555) | func file_cel_expr_value_proto_init() {
FILE: vendor/cloud.google.com/go/auth/auth.go
constant codeChallengeKey (line 41) | codeChallengeKey = "code_challenge"
constant codeChallengeMethodKey (line 42) | codeChallengeMethodKey = "code_challenge_method"
constant codeVerifierKey (line 45) | codeVerifierKey = "code_verifier"
constant defaultExpiryDelta (line 49) | defaultExpiryDelta = 225 * time.Second
constant universeDomainDefault (line 51) | universeDomainDefault = "googleapis.com"
type tokenState (line 55) | type tokenState
constant fresh (line 60) | fresh tokenState = iota
constant stale (line 63) | stale
constant invalid (line 66) | invalid
type TokenProvider (line 78) | type TokenProvider interface
type Token (line 90) | type Token struct
method IsValid (line 107) | func (t *Token) IsValid() bool {
method MetadataString (line 114) | func (t *Token) MetadataString(k string) string {
method isValidWithEarlyExpiry (line 125) | func (t *Token) isValidWithEarlyExpiry(earlyExpiry time.Duration) bool {
method isEmpty (line 135) | func (t *Token) isEmpty() bool {
type Credentials (line 143) | type Credentials struct
method JSON (line 155) | func (c *Credentials) JSON() []byte {
method ProjectID (line 161) | func (c *Credentials) ProjectID(ctx context.Context) (string, error) {
method QuotaProjectID (line 174) | func (c *Credentials) QuotaProjectID(ctx context.Context) (string, err...
method UniverseDomain (line 187) | func (c *Credentials) UniverseDomain(ctx context.Context) (string, err...
type CredentialsPropertyProvider (line 203) | type CredentialsPropertyProvider interface
type CredentialsPropertyFunc (line 209) | type CredentialsPropertyFunc
method GetProperty (line 212) | func (p CredentialsPropertyFunc) GetProperty(ctx context.Context) (str...
type CredentialsOptions (line 217) | type CredentialsOptions struct
function NewCredentials (line 233) | func NewCredentials(opts *CredentialsOptions) *Credentials {
type CachedTokenProviderOptions (line 247) | type CachedTokenProviderOptions struct
method autoRefresh (line 260) | func (ctpo *CachedTokenProviderOptions) autoRefresh() bool {
method expireEarly (line 267) | func (ctpo *CachedTokenProviderOptions) expireEarly() time.Duration {
method blockingRefresh (line 274) | func (ctpo *CachedTokenProviderOptions) blockingRefresh() bool {
function NewCachedTokenProvider (line 284) | func NewCachedTokenProvider(tp TokenProvider, opts *CachedTokenProviderO...
type cachedTokenProvider (line 296) | type cachedTokenProvider struct
method Token (line 312) | func (c *cachedTokenProvider) Token(ctx context.Context) (*Token, erro...
method tokenNonBlocking (line 319) | func (c *cachedTokenProvider) tokenNonBlocking(ctx context.Context) (*...
method tokenState (line 339) | func (c *cachedTokenProvider) tokenState() tokenState {
method tokenAsync (line 363) | func (c *cachedTokenProvider) tokenAsync(ctx context.Context) {
method tokenBlocking (line 387) | func (c *cachedTokenProvider) tokenBlocking(ctx context.Context) (*Tok...
type Error (line 404) | type Error struct
method Error (line 421) | func (e *Error) Error() string {
method Temporary (line 437) | func (e *Error) Temporary() bool {
method Unwrap (line 445) | func (e *Error) Unwrap() error {
type Style (line 451) | type Style
constant StyleUnknown (line 456) | StyleUnknown Style = iota
constant StyleInParams (line 458) | StyleInParams
constant StyleInHeader (line 460) | StyleInHeader
type Options2LO (line 464) | type Options2LO struct
method client (line 502) | func (o *Options2LO) client() *http.Client {
method validate (line 509) | func (o *Options2LO) validate() error {
function New2LOTokenProvider (line 526) | func New2LOTokenProvider(opts *Options2LO) (TokenProvider, error) {
type tokenProvider2LO (line 533) | type tokenProvider2LO struct
method Token (line 539) | func (tp tokenProvider2LO) Token(ctx context.Context) (*Token, error) {
FILE: vendor/cloud.google.com/go/auth/credentials/compute.go
function computeTokenProvider (line 40) | func computeTokenProvider(opts *DetectOptions, client *metadata.Client) ...
type computeProvider (line 52) | type computeProvider struct
method Token (line 64) | func (cs *computeProvider) Token(ctx context.Context) (*auth.Token, er...
type metadataTokenResp (line 58) | type metadataTokenResp struct
FILE: vendor/cloud.google.com/go/auth/credentials/detect.go
constant jwtTokenURL (line 36) | jwtTokenURL = "https://oauth2.googleapis.com/token"
constant googleAuthURL (line 39) | googleAuthURL = "https://accounts.google.com/o/oauth2/auth"
constant googleTokenURL (line 40) | googleTokenURL = "https://oauth2.googleapis.com/token"
constant GoogleMTLSTokenURL (line 43) | GoogleMTLSTokenURL = "https://oauth2.mtls.googleapis.com/token"
constant adcSetupURL (line 46) | adcSetupURL = "https://cloud.google.com/docs/authentication/external/set...
type TokenBindingType (line 57) | type TokenBindingType
constant NoBinding (line 62) | NoBinding TokenBindingType = iota
constant MTLSHardBinding (line 65) | MTLSHardBinding
constant ALTSHardBinding (line 68) | ALTSHardBinding
function OnGCE (line 72) | func OnGCE() bool {
function DetectDefault (line 94) | func DetectDefault(opts *DetectOptions) (*auth.Credentials, error) {
type DetectOptions (line 136) | type DetectOptions struct
method validate (line 212) | func (o *DetectOptions) validate() error {
method tokenURL (line 225) | func (o *DetectOptions) tokenURL() string {
method scopes (line 232) | func (o *DetectOptions) scopes() []string {
method client (line 238) | func (o *DetectOptions) client() *http.Client {
method logger (line 245) | func (o *DetectOptions) logger() *slog.Logger {
function readCredentialsFile (line 249) | func readCredentialsFile(filename string, opts *DetectOptions) (*auth.Cr...
function readCredentialsFileJSON (line 257) | func readCredentialsFileJSON(b []byte, opts *DetectOptions) (*auth.Crede...
function clientCredConfigFromJSON (line 276) | func clientCredConfigFromJSON(b []byte, opts *DetectOptions) *auth.Optio...
FILE: vendor/cloud.google.com/go/auth/credentials/filetypes.go
function fileCredentials (line 30) | func fileCredentials(b []byte, opts *DetectOptions) (*auth.Credentials, ...
function resolveUniverseDomain (line 119) | func resolveUniverseDomain(optsUniverseDomain, fileUniverseDomain string...
function handleServiceAccount (line 126) | func handleServiceAccount(f *credsfile.ServiceAccountFile, opts *DetectO...
function handleUserCredential (line 152) | func handleUserCredential(f *credsfile.UserCredentialsFile, opts *Detect...
function handleExternalAccount (line 168) | func handleExternalAccount(f *credsfile.ExternalAccountFile, opts *Detec...
function handleExternalAccountAuthorizedUser (line 191) | func handleExternalAccountAuthorizedUser(f *credsfile.ExternalAccountAut...
function handleImpersonatedServiceAccount (line 206) | func handleImpersonatedServiceAccount(f *credsfile.ImpersonatedServiceAc...
function handleGDCHServiceAccount (line 225) | func handleGDCHServiceAccount(f *credsfile.GDCHServiceAccountFile, opts ...
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/aws_provider.go
constant awsAlgorithm (line 46) | awsAlgorithm = "AWS4-HMAC-SHA256"
constant awsRequestType (line 50) | awsRequestType = "aws4_request"
constant awsSecurityTokenHeader (line 53) | awsSecurityTokenHeader = "x-amz-security-token"
constant awsIMDSv2SessionTokenHeader (line 56) | awsIMDSv2SessionTokenHeader = "X-aws-ec2-metadata-token"
constant awsIMDSv2SessionTTLHeader (line 58) | awsIMDSv2SessionTTLHeader = "X-aws-ec2-metadata-token-ttl-seconds"
constant awsIMDSv2SessionTTL (line 60) | awsIMDSv2SessionTTL = "300"
constant awsDateHeader (line 63) | awsDateHeader = "x-amz-date"
constant defaultRegionalCredentialVerificationURL (line 65) | defaultRegionalCredentialVerificationURL = "https://sts.{region}.amazona...
constant awsAccessKeyIDEnvVar (line 68) | awsAccessKeyIDEnvVar = "AWS_ACCESS_KEY_ID"
constant awsDefaultRegionEnvVar (line 69) | awsDefaultRegionEnvVar = "AWS_DEFAULT_REGION"
constant awsRegionEnvVar (line 70) | awsRegionEnvVar = "AWS_REGION"
constant awsSecretAccessKeyEnvVar (line 71) | awsSecretAccessKeyEnvVar = "AWS_SECRET_ACCESS_KEY"
constant awsSessionTokenEnvVar (line 72) | awsSessionTokenEnvVar = "AWS_SESSION_TOKEN"
constant awsTimeFormatLong (line 74) | awsTimeFormatLong = "20060102T150405Z"
constant awsTimeFormatShort (line 75) | awsTimeFormatShort = "20060102"
constant awsProviderType (line 76) | awsProviderType = "aws"
type awsSubjectProvider (line 79) | type awsSubjectProvider struct
method subjectToken (line 95) | func (sp *awsSubjectProvider) subjectToken(ctx context.Context) (strin...
method providerType (line 181) | func (sp *awsSubjectProvider) providerType() string {
method getAWSSessionToken (line 188) | func (sp *awsSubjectProvider) getAWSSessionToken(ctx context.Context) ...
method getRegion (line 210) | func (sp *awsSubjectProvider) getRegion(ctx context.Context, headers m...
method getSecurityCredentials (line 252) | func (sp *awsSubjectProvider) getSecurityCredentials(ctx context.Conte...
method getMetadataSecurityCredentials (line 283) | func (sp *awsSubjectProvider) getMetadataSecurityCredentials(ctx conte...
method getMetadataRoleName (line 308) | func (sp *awsSubjectProvider) getMetadataRoleName(ctx context.Context,...
method shouldUseMetadataServer (line 529) | func (sp *awsSubjectProvider) shouldUseMetadataServer() bool {
type awsRequestSigner (line 333) | type awsRequestSigner struct
method signRequest (line 340) | func (rs *awsRequestSigner) signRequest(req *http.Request) error {
method generateAuthentication (line 360) | func (rs *awsRequestSigner) generateAuthentication(req *http.Request, ...
function getSha256 (line 392) | func getSha256(input []byte) (string, error) {
function getHmacSha256 (line 400) | func getHmacSha256(key, input []byte) ([]byte, error) {
function cloneRequest (line 408) | func cloneRequest(r *http.Request) *http.Request {
function canonicalPath (line 430) | func canonicalPath(req *http.Request) string {
function canonicalQuery (line 438) | func canonicalQuery(req *http.Request) string {
function canonicalHeaders (line 446) | func canonicalHeaders(req *http.Request) (string, string) {
function requestDataHash (line 474) | func requestDataHash(req *http.Request) (string, error) {
function requestHost (line 492) | func requestHost(req *http.Request) string {
function canonicalRequest (line 499) | func canonicalRequest(req *http.Request, canonicalHeaderColumns, canonic...
type awsRequestHeader (line 507) | type awsRequestHeader struct
type awsRequest (line 512) | type awsRequest struct
function canRetrieveRegionFromEnvironment (line 520) | func canRetrieveRegionFromEnvironment() bool {
function canRetrieveSecurityCredentialFromEnvironment (line 525) | func canRetrieveSecurityCredentialFromEnvironment() bool {
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/executable_provider.go
constant executableSupportedMaxVersion (line 34) | executableSupportedMaxVersion = 1
constant executableDefaultTimeout (line 35) | executableDefaultTimeout = 30 * time.Second
constant executableSource (line 36) | executableSource = "response"
constant executableProviderType (line 37) | executableProviderType = "executable"
constant outputFileSource (line 38) | outputFileSource = "output file"
constant allowExecutablesEnvVar (line 40) | allowExecutablesEnvVar = "GOOGLE_EXTERNAL_ACCOUNT_ALLOW_EXECUTABLES"
constant jwtTokenType (line 42) | jwtTokenType = "urn:ietf:params:oauth:token-type:jwt"
constant idTokenType (line 43) | idTokenType = "urn:ietf:params:oauth:token-type:id_token"
constant saml2TokenType (line 44) | saml2TokenType = "urn:ietf:params:oauth:token-type:saml2"
type nonCacheableError (line 51) | type nonCacheableError struct
method Error (line 55) | func (nce nonCacheableError) Error() string {
type environment (line 60) | type environment interface
type runtimeEnvironment (line 67) | type runtimeEnvironment struct
method existingEnv (line 69) | func (r runtimeEnvironment) existingEnv() []string {
method getenv (line 72) | func (r runtimeEnvironment) getenv(key string) string {
method now (line 75) | func (r runtimeEnvironment) now() time.Time {
method run (line 79) | func (r runtimeEnvironment) run(ctx context.Context, command string, e...
type executableSubjectProvider (line 105) | type executableSubjectProvider struct
method parseSubjectTokenFromSource (line 125) | func (sp *executableSubjectProvider) parseSubjectTokenFromSource(respo...
method subjectToken (line 172) | func (sp *executableSubjectProvider) subjectToken(ctx context.Context)...
method providerType (line 179) | func (sp *executableSubjectProvider) providerType() string {
method getTokenFromOutputFile (line 183) | func (sp *executableSubjectProvider) getTokenFromOutputFile() (token s...
method executableEnvironment (line 217) | func (sp *executableSubjectProvider) executableEnvironment() []string {
method getTokenFromExecutableCommand (line 234) | func (sp *executableSubjectProvider) getTokenFromExecutableCommand(ctx...
type executableResponse (line 114) | type executableResponse struct
function missingFieldError (line 250) | func missingFieldError(source, field string) error {
function jsonParsingError (line 254) | func jsonParsingError(source, data string) error {
function malformedFailureError (line 258) | func malformedFailureError() error {
function userDefinedError (line 262) | func userDefinedError(code, message string) error {
function unsupportedVersionError (line 266) | func unsupportedVersionError(source string, version int) error {
function tokenExpiredError (line 270) | func tokenExpiredError() error {
function tokenTypeError (line 274) | func tokenTypeError(source string) error {
function exitCodeError (line 278) | func exitCodeError(err *exec.ExitError) error {
function executableError (line 282) | func executableError(err error) error {
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/externalaccount.go
constant timeoutMinimum (line 36) | timeoutMinimum = 5 * time.Second
constant timeoutMaximum (line 37) | timeoutMaximum = 120 * time.Second
constant universeDomainPlaceholder (line 39) | universeDomainPlaceholder = "UNIVERSE_DOMAIN"
constant defaultTokenURL (line 40) | defaultTokenURL = "https://sts.UNIVERSE_DOMAIN/v1/token"
constant defaultUniverseDomain (line 41) | defaultUniverseDomain = "googleapis.com"
type Options (line 53) | type Options struct
method validate (line 164) | func (o *Options) validate() error {
method client (line 198) | func (o *Options) client() (*http.Client, error) {
method resolveTokenURL (line 217) | func (o *Options) resolveTokenURL() {
type SubjectTokenProvider (line 118) | type SubjectTokenProvider interface
type RequestOptions (line 128) | type RequestOptions struct
type AwsSecurityCredentialsProvider (line 142) | type AwsSecurityCredentialsProvider interface
type AwsSecurityCredentials (line 154) | type AwsSecurityCredentials struct
function NewTokenProvider (line 229) | func NewTokenProvider(opts *Options) (auth.TokenProvider, error) {
type subjectTokenProvider (line 274) | type subjectTokenProvider interface
type tokenProvider (line 280) | type tokenProvider struct
method Token (line 287) | func (tp *tokenProvider) Token(ctx context.Context) (*auth.Token, erro...
function newSubjectTokenProvider (line 344) | func newSubjectTokenProvider(o *Options) (subjectTokenProvider, error) {
function getGoogHeaderValue (line 424) | func getGoogHeaderValue(conf *Options, p subjectTokenProvider) string {
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/file_provider.go
constant fileProviderType (line 30) | fileProviderType = "file"
type fileSubjectProvider (line 33) | type fileSubjectProvider struct
method subjectToken (line 38) | func (sp *fileSubjectProvider) subjectToken(context.Context) (string, ...
method providerType (line 76) | func (sp *fileSubjectProvider) providerType() string {
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/info.go
constant versionUnknown (line 29) | versionUnknown = "UNKNOWN"
function goVersion (line 35) | func goVersion() string {
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/programmatic_provider.go
type programmaticProvider (line 19) | type programmaticProvider struct
method providerType (line 24) | func (pp *programmaticProvider) providerType() string {
method subjectToken (line 28) | func (pp *programmaticProvider) subjectToken(ctx context.Context) (str...
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/url_provider.go
constant fileTypeText (line 31) | fileTypeText = "text"
constant fileTypeJSON (line 32) | fileTypeJSON = "json"
constant urlProviderType (line 33) | urlProviderType = "url"
constant programmaticProviderType (line 34) | programmaticProviderType = "programmatic"
constant x509ProviderType (line 35) | x509ProviderType = "x509"
type urlSubjectProvider (line 38) | type urlSubjectProvider struct
method subjectToken (line 46) | func (sp *urlSubjectProvider) subjectToken(ctx context.Context) (strin...
method providerType (line 91) | func (sp *urlSubjectProvider) providerType() string {
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/x509_provider.go
type x509Provider (line 40) | type x509Provider struct
method providerType (line 51) | func (xp *x509Provider) providerType() string {
method subjectToken (line 150) | func (xp *x509Provider) subjectToken(context.Context) (string, error) {
constant pemCertificateHeader (line 49) | pemCertificateHeader = "-----BEGIN CERTIFICATE-----"
function loadLeafCertificate (line 58) | func loadLeafCertificate(configFilePath string) (*x509.Certificate, erro...
function encodeCert (line 73) | func encodeCert(cert *x509.Certificate) string {
function parseCertificate (line 79) | func parseCertificate(certData []byte) (*x509.Certificate, error) {
function readTrustChain (line 101) | func readTrustChain(trustChainPath string) ([]*x509.Certificate, error) {
function createX509Client (line 202) | func createX509Client(certificateConfigLocation string) (*http.Client, e...
FILE: vendor/cloud.google.com/go/auth/credentials/internal/externalaccountuser/externalaccountuser.go
type Options (line 32) | type Options struct
method validate (line 60) | func (c *Options) validate() bool {
function NewTokenProvider (line 66) | func NewTokenProvider(opts *Options) (auth.TokenProvider, error) {
type tokenProvider (line 77) | type tokenProvider struct
method Token (line 81) | func (tp *tokenProvider) Token(ctx context.Context) (*auth.Token, erro...
FILE: vendor/cloud.google.com/go/auth/credentials/internal/gdch/gdch.go
constant GrantType (line 41) | GrantType = "urn:ietf:params:oauth:token-type:token-exchange"
constant requestTokenType (line 42) | requestTokenType = "urn:ietf:params:oauth:token-type:access_token"
constant subjectTokenType (line 43) | subjectTokenType = "urn:k8s:params:oauth:token-type:serviceaccount"
type Options (line 53) | type Options struct
function NewTokenProvider (line 61) | func NewTokenProvider(f *credsfile.GDCHServiceAccountFile, o *Options) (...
function loadCertPool (line 90) | func loadCertPool(path string) (*x509.CertPool, error) {
type gdchProvider (line 100) | type gdchProvider struct
method Token (line 112) | func (g gdchProvider) Token(ctx context.Context) (*auth.Token, error) {
function addCertToTransport (line 183) | func addCertToTransport(hc *http.Client, certPool *x509.CertPool) {
FILE: vendor/cloud.google.com/go/auth/credentials/internal/impersonate/idtoken.go
type IDTokenIAMOptions (line 38) | type IDTokenIAMOptions struct
method Token (line 68) | func (o IDTokenIAMOptions) Token(ctx context.Context) (*auth.Token, er...
type GenerateIDTokenRequest (line 49) | type GenerateIDTokenRequest struct
type GenerateIDTokenResponse (line 63) | type GenerateIDTokenResponse struct
FILE: vendor/cloud.google.com/go/auth/credentials/internal/impersonate/impersonate.go
constant defaultTokenLifetime (line 33) | defaultTokenLifetime = "3600s"
constant authHeaderKey (line 34) | authHeaderKey = "Authorization"
type generateAccessTokenReq (line 38) | type generateAccessTokenReq struct
type impersonateTokenResponse (line 44) | type impersonateTokenResponse struct
function NewTokenProvider (line 51) | func NewTokenProvider(opts *Options) (auth.TokenProvider, error) {
type Options (line 59) | type Options struct
method validate (line 86) | func (o *Options) validate() error {
method Token (line 97) | func (o *Options) Token(ctx context.Context) (*auth.Token, error) {
function setAuthHeader (line 145) | func setAuthHeader(ctx context.Context, tp auth.TokenProvider, r *http.R...
FILE: vendor/cloud.google.com/go/auth/credentials/internal/stsexchange/sts_exchange.go
constant GrantType (line 35) | GrantType = "urn:ietf:params:oauth:grant-type:token-exchange"
constant TokenType (line 37) | TokenType = "urn:ietf:params:oauth:token-type:access_token"
constant jwtTokenType (line 39) | jwtTokenType = "urn:ietf:params:oauth:token-type:jwt"
type Options (line 43) | type Options struct
function RefreshAccessToken (line 57) | func RefreshAccessToken(ctx context.Context, opts *Options) (*TokenRespo...
function ExchangeToken (line 65) | func ExchangeToken(ctx context.Context, opts *Options) (*TokenResponse, ...
function doRequest (line 83) | func doRequest(ctx context.Context, opts *Options, data url.Values) (*To...
type TokenRequest (line 119) | type TokenRequest struct
type TokenResponse (line 135) | type TokenResponse struct
type ClientAuthentication (line 146) | type ClientAuthentication struct
method InjectAuthentication (line 155) | func (c *ClientAuthentication) InjectAuthentication(values url.Values,...
FILE: vendor/cloud.google.com/go/auth/credentials/selfsignedjwt.go
function configureSelfSignedJWT (line 39) | func configureSelfSignedJWT(f *credsfile.ServiceAccountFile, opts *Detec...
type selfSignedTokenProvider (line 57) | type selfSignedTokenProvider struct
method Token (line 66) | func (tp *selfSignedTokenProvider) Token(context.Context) (*auth.Token...
FILE: vendor/cloud.google.com/go/auth/grpctransport/dial_socketopt.go
constant tcpUserTimeoutMilliseconds (line 31) | tcpUserTimeoutMilliseconds = 20000
constant tcpUserTimeoutOp (line 34) | tcpUserTimeoutOp = 0x12
function init (line 37) | func init() {
function dialTCPUserTimeout (line 43) | func dialTCPUserTimeout(ctx context.Context, addr string) (net.Conn, err...
FILE: vendor/cloud.google.com/go/auth/grpctransport/directpath.go
function isDirectPathEnabled (line 31) | func isDirectPathEnabled(endpoint string, opts *Options) bool {
function checkDirectPathEndPoint (line 44) | func checkDirectPathEndPoint(endpoint string) bool {
function isTokenProviderComputeEngine (line 59) | func isTokenProviderComputeEngine(tp auth.TokenProvider) bool {
function isTokenProviderDirectPathCompatible (line 79) | func isTokenProviderDirectPathCompatible(tp auth.TokenProvider, o *Optio...
function isDirectPathXdsUsed (line 89) | func isDirectPathXdsUsed(o *Options) bool {
function isDirectPathBoundTokenEnabled (line 101) | func isDirectPathBoundTokenEnabled(opts *InternalOptions) bool {
function configureDirectPath (line 113) | func configureDirectPath(grpcOpts []grpc.DialOption, opts *Options, endp...
FILE: vendor/cloud.google.com/go/auth/grpctransport/grpctransport.go
constant disableDirectPathEnvVar (line 43) | disableDirectPathEnvVar = "GOOGLE_CLOUD_DISABLE_DIRECT_PATH"
constant enableDirectPathXdsEnvVar (line 46) | enableDirectPathXdsEnvVar = "GOOGLE_CLOUD_ENABLE_DIRECT_PATH_XDS"
constant quotaProjectHeaderKey (line 48) | quotaProjectHeaderKey = "X-goog-user-project"
function otelGRPCStatsHandler (line 70) | func otelGRPCStatsHandler() stats.Handler {
type Options (line 83) | type Options struct
method client (line 134) | func (o *Options) client() *http.Client {
method logger (line 141) | func (o *Options) logger() *slog.Logger {
method validate (line 145) | func (o *Options) validate() error {
method resolveDetectOptions (line 162) | func (o *Options) resolveDetectOptions() *credentials.DetectOptions {
type InternalOptions (line 196) | type InternalOptions struct
function Dial (line 230) | func Dial(ctx context.Context, secure bool, opts *Options) (GRPCClientCo...
function dial (line 255) | func dial(ctx context.Context, secure bool, opts *Options) (*grpc.Client...
type grpcKeyProvider (line 361) | type grpcKeyProvider struct
method GetRequestMetadata (line 367) | func (g *grpcKeyProvider) GetRequestMetadata(ctx context.Context, uri ...
method RequireTransportSecurity (line 376) | func (g *grpcKeyProvider) RequireTransportSecurity() bool {
type grpcCredentialsProvider (line 381) | type grpcCredentialsProvider struct
method getClientUniverseDomain (line 400) | func (c *grpcCredentialsProvider) getClientUniverseDomain() string {
method GetRequestMetadata (line 410) | func (c *grpcCredentialsProvider) GetRequestMetadata(ctx context.Conte...
method RequireTransportSecurity (line 448) | func (c *grpcCredentialsProvider) RequireTransportSecurity() bool {
function setAuthMetadata (line 440) | func setAuthMetadata(token *auth.Token, m map[string]string) {
function addOpenTelemetryStatsHandler (line 452) | func addOpenTelemetryStatsHandler(dialOpts []grpc.DialOption, opts *Opti...
FILE: vendor/cloud.google.com/go/auth/grpctransport/pool.go
type GRPCClientConnPool (line 30) | type GRPCClientConnPool interface
type singleConnPool (line 51) | type singleConnPool struct
method Connection (line 55) | func (p *singleConnPool) Connection() *grpc.ClientConn { return p.Clie...
method Len (line 56) | func (p *singleConnPool) Len() int { return 1 }
method private (line 57) | func (p *singleConnPool) private() {}
type roundRobinConnPool (line 59) | type roundRobinConnPool struct
method Len (line 65) | func (p *roundRobinConnPool) Len() int {
method Connection (line 69) | func (p *roundRobinConnPool) Connection() *grpc.ClientConn {
method Close (line 74) | func (p *roundRobinConnPool) Close() error {
method Invoke (line 87) | func (p *roundRobinConnPool) Invoke(ctx context.Context, method string...
method NewStream (line 91) | func (p *roundRobinConnPool) NewStream(ctx context.Context, desc *grpc...
method private (line 95) | func (p *roundRobinConnPool) private() {}
type multiError (line 98) | type multiError
method Error (line 100) | func (m multiError) Error() string {
FILE: vendor/cloud.google.com/go/auth/httptransport/httptransport.go
type Options (line 39) | type Options struct
method validate (line 85) | func (o *Options) validate() error {
method client (line 104) | func (o *Options) client() *http.Client {
method logger (line 111) | func (o *Options) logger() *slog.Logger {
method resolveDetectOptions (line 115) | func (o *Options) resolveDetectOptions() *detect.DetectOptions {
type InternalOptions (line 149) | type InternalOptions struct
function AddAuthorizationMiddleware (line 179) | func AddAuthorizationMiddleware(client *http.Client, creds *auth.Credent...
function NewClient (line 204) | func NewClient(opts *Options) (*http.Client, error) {
function SetAuthHeader (line 241) | func SetAuthHeader(token *auth.Token, req *http.Request) {
FILE: vendor/cloud.google.com/go/auth/httptransport/transport.go
constant quotaProjectHeaderKey (line 35) | quotaProjectHeaderKey = "X-goog-user-project"
function newTransport (line 38) | func newTransport(base http.RoundTripper, opts *Options) (http.RoundTrip...
function defaultBaseTransport (line 105) | func defaultBaseTransport(clientCertSource cert.Provider, dialTLSContext...
type apiKeyTransport (line 135) | type apiKeyTransport struct
method RoundTrip (line 143) | func (t *apiKeyTransport) RoundTrip(req *http.Request) (*http.Response...
type headerTransport (line 151) | type headerTransport struct
method RoundTrip (line 156) | func (t *headerTransport) RoundTrip(req *http.Request) (*http.Response...
function addOpenTelemetryTransport (line 171) | func addOpenTelemetryTransport(trans http.RoundTripper, opts *Options) h...
type authTransport (line 178) | type authTransport struct
method getClientUniverseDomain (line 194) | func (t *authTransport) getClientUniverseDomain() string {
method RoundTrip (line 208) | func (t *authTransport) RoundTrip(req *http.Request) (*http.Response, ...
FILE: vendor/cloud.google.com/go/auth/internal/compute/compute.go
function OnComputeEngine (line 37) | func OnComputeEngine() bool {
function isRunningOnGCE (line 51) | func isRunningOnGCE(manufacturer []byte, goos string) bool {
FILE: vendor/cloud.google.com/go/auth/internal/compute/manufacturer.go
function manufacturer (line 20) | func manufacturer() ([]byte, error) {
FILE: vendor/cloud.google.com/go/auth/internal/compute/manufacturer_linux.go
constant linuxProductNameFile (line 19) | linuxProductNameFile = "/sys/class/dmi/id/product_name"
function manufacturer (line 21) | func manufacturer() ([]byte, error) {
FILE: vendor/cloud.google.com/go/auth/internal/compute/manufacturer_windows.go
constant windowsCheckCommand (line 25) | windowsCheckCommand = "powershell.exe"
constant windowsCheckCommandArgs (line 26) | windowsCheckCommandArgs = "Get-WmiObject -Class Win32_BIOS"
constant powershellOutputFilter (line 27) | powershellOutputFilter = "Manufacturer"
constant windowsManufacturerRegex (line 28) | windowsManufacturerRegex = ":(.*)"
function manufacturer (line 31) | func manufacturer() ([]byte, error) {
FILE: vendor/cloud.google.com/go/auth/internal/credsfile/credsfile.go
constant GoogleAppCredsEnvVar (line 31) | GoogleAppCredsEnvVar = "GOOGLE_APPLICATION_CREDENTIALS"
constant userCredsFilename (line 32) | userCredsFilename = "application_default_credentials.json"
type CredentialType (line 37) | type CredentialType
constant UnknownCredType (line 41) | UnknownCredType CredentialType = iota
constant UserCredentialsKey (line 43) | UserCredentialsKey
constant ServiceAccountKey (line 45) | ServiceAccountKey
constant ImpersonatedServiceAccountKey (line 48) | ImpersonatedServiceAccountKey
constant ExternalAccountKey (line 50) | ExternalAccountKey
constant GDCHServiceAccountKey (line 52) | GDCHServiceAccountKey
constant ExternalAccountAuthorizedUserKey (line 55) | ExternalAccountAuthorizedUserKey
function parseCredentialType (line 60) | func parseCredentialType(typeString string) CredentialType {
function GetFileNameFromEnv (line 81) | func GetFileNameFromEnv(override string) string {
function GetWellKnownFileName (line 90) | func GetWellKnownFileName() string {
function guessUnixHomeDir (line 99) | func guessUnixHomeDir() string {
FILE: vendor/cloud.google.com/go/auth/internal/credsfile/filetype.go
type Config3LO (line 22) | type Config3LO struct
type ClientCredentialsFile (line 31) | type ClientCredentialsFile struct
type ServiceAccountFile (line 38) | type ServiceAccountFile struct
type UserCredentialsFile (line 51) | type UserCredentialsFile struct
type ExternalAccountFile (line 61) | type ExternalAccountFile struct
type ExternalAccountAuthorizedUserFile (line 78) | type ExternalAccountAuthorizedUserFile struct
type CredentialSource (line 95) | type CredentialSource struct
type Format (line 110) | type Format struct
type ExecutableConfig (line 119) | type ExecutableConfig struct
type CertificateConfig (line 127) | type CertificateConfig struct
type ServiceAccountImpersonationInfo (line 134) | type ServiceAccountImpersonationInfo struct
type ImpersonatedServiceAccountFile (line 139) | type ImpersonatedServiceAccountFile struct
type GDCHServiceAccountFile (line 148) | type GDCHServiceAccountFile struct
FILE: vendor/cloud.google.com/go/auth/internal/credsfile/parse.go
function ParseServiceAccount (line 22) | func ParseServiceAccount(b []byte) (*ServiceAccountFile, error) {
function ParseClientCredentials (line 32) | func ParseClientCredentials(b []byte) (*ClientCredentialsFile, error) {
function ParseUserCredentials (line 41) | func ParseUserCredentials(b []byte) (*UserCredentialsFile, error) {
function ParseExternalAccount (line 50) | func ParseExternalAccount(b []byte) (*ExternalAccountFile, error) {
function ParseExternalAccountAuthorizedUser (line 60) | func ParseExternalAccountAuthorizedUser(b []byte) (*ExternalAccountAutho...
function ParseImpersonatedServiceAccount (line 70) | func ParseImpersonatedServiceAccount(b []byte) (*ImpersonatedServiceAcco...
function ParseGDCHServiceAccount (line 79) | func ParseGDCHServiceAccount(b []byte) (*GDCHServiceAccountFile, error) {
type fileTypeChecker (line 87) | type fileTypeChecker struct
function ParseFileType (line 92) | func ParseFileType(b []byte) (CredentialType, error) {
FILE: vendor/cloud.google.com/go/auth/internal/internal.go
constant TokenTypeBearer (line 36) | TokenTypeBearer = "Bearer"
constant QuotaProjectEnvVar (line 40) | QuotaProjectEnvVar = "GOOGLE_CLOUD_QUOTA_PROJECT"
constant UniverseDomainEnvVar (line 43) | UniverseDomainEnvVar = "GOOGLE_CLOUD_UNIVERSE_DOMAIN"
constant projectEnvVar (line 44) | projectEnvVar = "GOOGLE_CLOUD_PROJECT"
constant maxBodySize (line 45) | maxBodySize = 1 << 20
constant DefaultUniverseDomain (line 49) | DefaultUniverseDomain = "googleapis.com"
type clonableTransport (line 52) | type clonableTransport interface
function DefaultClient (line 60) | func DefaultClient() *http.Client {
function ParseKey (line 79) | func ParseKey(key []byte) (crypto.Signer, error) {
function GetQuotaProject (line 102) | func GetQuotaProject(b []byte, override string) string {
function GetProjectID (line 123) | func GetProjectID(b []byte, override string) string {
function DoRequest (line 148) | func DoRequest(client *http.Client, req *http.Request) (*http.Response, ...
function ReadAll (line 163) | func ReadAll(r io.Reader) ([]byte, error) {
function StaticCredentialsProperty (line 169) | func StaticCredentialsProperty(s string) StaticProperty {
type StaticProperty (line 174) | type StaticProperty
method GetProperty (line 177) | func (p StaticProperty) GetProperty(context.Context) (string, error) {
type ComputeUniverseDomainProvider (line 183) | type ComputeUniverseDomainProvider struct
method GetProperty (line 192) | func (c *ComputeUniverseDomainProvider) GetProperty(ctx context.Contex...
function getMetadataUniverseDomain (line 209) | func getMetadataUniverseDomain(ctx context.Context, client *metadata.Cli...
function FormatIAMServiceAccountResource (line 223) | func FormatIAMServiceAccountResource(name string) string {
FILE: vendor/cloud.google.com/go/auth/internal/jwt/jwt.go
constant HeaderAlgRSA256 (line 33) | HeaderAlgRSA256 = "RS256"
constant HeaderAlgES256 (line 35) | HeaderAlgES256 = "ES256"
constant HeaderType (line 37) | HeaderType = "JWT"
type Header (line 41) | type Header struct
method encode (line 47) | func (h *Header) encode() (string, error) {
type Claims (line 56) | type Claims struct
method encode (line 73) | func (c *Claims) encode() (string, error) {
function EncodeJWS (line 114) | func EncodeJWS(header *Header, c *Claims, signer crypto.Signer) (string,...
function DecodeJWS (line 134) | func DecodeJWS(payload string) (*Claims, error) {
function VerifyJWS (line 156) | func VerifyJWS(token string, key *rsa.PublicKey) error {
FILE: vendor/cloud.google.com/go/auth/internal/transport/cba.go
constant mTLSModeAlways (line 39) | mTLSModeAlways = "always"
constant mTLSModeNever (line 40) | mTLSModeNever = "never"
constant mTLSModeAuto (line 41) | mTLSModeAuto = "auto"
constant googleAPIUseS2AEnv (line 44) | googleAPIUseS2AEnv = "EXPERIMENTAL_GOOGLE_API_USE_S2A"
constant googleAPIUseCertSource (line 45) | googleAPIUseCertSource = "GOOGLE_API_USE_CLIENT_CERTIFICATE"
constant googleAPIUseMTLS (line 46) | googleAPIUseMTLS = "GOOGLE_API_USE_MTLS_ENDPOINT"
constant googleAPIUseMTLSOld (line 47) | googleAPIUseMTLSOld = "GOOGLE_API_USE_MTLS"
constant universeDomainPlaceholder (line 49) | universeDomainPlaceholder = "UNIVERSE_DOMAIN"
constant mtlsMDSRoot (line 51) | mtlsMDSRoot = "/run/google-mds-mtls/root.crt"
constant mtlsMDSKey (line 52) | mtlsMDSKey = "/run/google-mds-mtls/client.key"
type Type (line 56) | type Type
constant TransportTypeUnknown (line 60) | TransportTypeUnknown Type = iota
constant TransportTypeMTLSS2A (line 62) | TransportTypeMTLSS2A
type Options (line 68) | type Options struct
method getUniverseDomain (line 82) | func (o *Options) getUniverseDomain() string {
method isUniverseDomainGDU (line 91) | func (o *Options) isUniverseDomainGDU() bool {
method defaultEndpoint (line 98) | func (o *Options) defaultEndpoint() string {
method defaultMTLSEndpoint (line 108) | func (o *Options) defaultMTLSEndpoint() string {
method mergedEndpoint (line 117) | func (o *Options) mergedEndpoint() (string, error) {
function fixScheme (line 126) | func fixScheme(baseURL string) string {
type GRPCTransportCredentials (line 134) | type GRPCTransportCredentials struct
function GetGRPCTransportCredsAndEndpoint (line 143) | func GetGRPCTransportCredsAndEndpoint(opts *Options) (*GRPCTransportCred...
function GetHTTPTransportConfig (line 195) | func GetHTTPTransportConfig(opts *Options) (cert.Provider, func(context....
function loadMTLSMDSTransportCreds (line 242) | func loadMTLSMDSTransportCreds(mtlsMDSRootFile, mtlsMDSKeyFile string) (...
function getTransportConfig (line 267) | func getTransportConfig(opts *Options) (*transportConfig, error) {
function GetClientCertificateProvider (line 305) | func GetClientCertificateProvider(opts *Options) (cert.Provider, error) {
function isClientCertificateEnabled (line 316) | func isClientCertificateEnabled(opts *Options) bool {
type transportConfig (line 325) | type transportConfig struct
function getEndpoint (line 353) | func getEndpoint(opts *Options, clientCertSource cert.Provider) (string,...
function getMTLSMode (line 376) | func getMTLSMode() string {
FILE: vendor/cloud.google.com/go/auth/internal/transport/cert/default_cert.go
type defaultCertData (line 30) | type defaultCertData struct
type Provider (line 41) | type Provider
function DefaultProvider (line 51) | func DefaultProvider() (Provider, error) {
FILE: vendor/cloud.google.com/go/auth/internal/transport/cert/enterprise_cert.go
type ecpSource (line 23) | type ecpSource struct
method getClientCertificate (line 49) | func (s *ecpSource) getClientCertificate(info *tls.CertificateRequestI...
function NewEnterpriseCertificateProxyProvider (line 36) | func NewEnterpriseCertificateProxyProvider(configFilePath string) (Provi...
FILE: vendor/cloud.google.com/go/auth/internal/transport/cert/secureconnect_cert.go
constant metadataPath (line 32) | metadataPath = ".secureConnect"
constant metadataFile (line 33) | metadataFile = "context_aware_metadata.json"
type secureConnectSource (line 36) | type secureConnectSource struct
method getClientCertificate (line 91) | func (s *secureConnectSource) getClientCertificate(info *tls.Certifica...
type secureConnectMetadata (line 44) | type secureConnectMetadata struct
function NewSecureConnectProvider (line 53) | func NewSecureConnectProvider(configFilePath string) (Provider, error) {
function validateMetadata (line 84) | func validateMetadata(metadata secureConnectMetadata) error {
function isCertificateExpired (line 115) | func isCertificateExpired(cert *tls.Certificate) bool {
FILE: vendor/cloud.google.com/go/auth/internal/transport/cert/workload_cert.go
type certConfigs (line 27) | type certConfigs struct
type workloadSource (line 31) | type workloadSource struct
method getClientCertificate (line 96) | func (s *workloadSource) getClientCertificate(info *tls.CertificateReq...
type certificateConfig (line 36) | type certificateConfig struct
function getconfigFilePath (line 44) | func getconfigFilePath() string {
function GetCertificatePath (line 59) | func GetCertificatePath(configFilePath string) (string, error) {
function NewWorkloadX509CertProvider (line 78) | func NewWorkloadX509CertProvider(configFilePath string) (Provider, error) {
function getCertAndKeyFiles (line 106) | func getCertAndKeyFiles(configFilePath string) (string, string, error) {
FILE: vendor/cloud.google.com/go/auth/internal/transport/s2a.go
constant configEndpointSuffix (line 32) | configEndpointSuffix = "instance/platform-security/auto-mtls-configuration"
function GetS2AAddress (line 43) | func GetS2AAddress(logger *slog.Logger) string {
function GetMTLSS2AAddress (line 53) | func GetMTLSS2AAddress(logger *slog.Logger) string {
type mtlsConfig (line 62) | type mtlsConfig struct
method valid (line 66) | func (c *mtlsConfig) valid() bool {
type s2aAddresses (line 71) | type s2aAddresses struct
function getMetadataMTLSAutoConfig (line 78) | func getMetadataMTLSAutoConfig(logger *slog.Logger) {
function queryConfig (line 95) | func queryConfig(logger *slog.Logger) (*mtlsConfig, error) {
function shouldUseS2A (line 111) | func shouldUseS2A(clientCertSource cert.Provider, opts *Options) bool {
function isGoogleS2AEnabled (line 132) | func isGoogleS2AEnabled() bool {
FILE: vendor/cloud.google.com/go/auth/internal/transport/transport.go
function CloneDetectOptions (line 31) | func CloneDetectOptions(oldDo *credentials.DetectOptions) *credentials.D...
function ValidateUniverseDomain (line 72) | func ValidateUniverseDomain(clientUniverseDomain, credentialsUniverseDom...
function DefaultHTTPClientWithTLS (line 85) | func DefaultHTTPClientWithTLS(tlsConfig *tls.Config) *http.Client {
function BaseTransport (line 93) | func BaseTransport() *http.Transport {
FILE: vendor/cloud.google.com/go/auth/oauth2adapt/oauth2adapt.go
constant oauth2TokenSourceKey (line 30) | oauth2TokenSourceKey = "oauth2.google.tokenSource"
constant oauth2ServiceAccountKey (line 31) | oauth2ServiceAccountKey = "oauth2.google.serviceAccount"
constant authTokenSourceKey (line 32) | authTokenSourceKey = "auth.google.tokenSource"
constant authServiceAccountKey (line 33) | authServiceAccountKey = "auth.google.serviceAccount"
function TokenProviderFromTokenSource (line 38) | func TokenProviderFromTokenSource(ts oauth2.TokenSource) auth.TokenProvi...
type tokenProviderAdapter (line 42) | type tokenProviderAdapter struct
method Token (line 48) | func (tp *tokenProviderAdapter) Token(context.Context) (*auth.Token, e...
function TokenSourceFromTokenProvider (line 78) | func TokenSourceFromTokenProvider(tp auth.TokenProvider) oauth2.TokenSou...
type tokenSourceAdapter (line 82) | type tokenSourceAdapter struct
method Token (line 88) | func (ts *tokenSourceAdapter) Token() (*oauth2.Token, error) {
function AuthCredentialsFromOauth2Credentials (line 124) | func AuthCredentialsFromOauth2Credentials(creds *google.Credentials) *au...
function Oauth2CredentialsFromAuthCredentials (line 142) | func Oauth2CredentialsFromAuthCredentials(creds *auth.Credentials) *goog...
type oauth2Error (line 160) | type oauth2Error struct
function AddRetrieveErrorToAuthError (line 169) | func AddRetrieveErrorToAuthError(err *auth.Error) *auth.Error {
function AuthErrorFromRetrieveError (line 191) | func AuthErrorFromRetrieveError(err *oauth2.RetrieveError) *auth.Error {
FILE: vendor/cloud.google.com/go/auth/threelegged.go
type AuthorizationHandler (line 38) | type AuthorizationHandler
type Options3LO (line 41) | type Options3LO struct
method validate (line 81) | func (o *Options3LO) validate() error {
method logger (line 106) | func (o *Options3LO) logger() *slog.Logger {
method client (line 138) | func (o *Options3LO) client() *http.Client {
method authCodeURL (line 146) | func (o *Options3LO) authCodeURL(state string, values url.Values) stri...
method exchange (line 220) | func (o *Options3LO) exchange(ctx context.Context, code string) (*Toke...
type PKCEOptions (line 111) | type PKCEOptions struct
type tokenJSON (line 120) | type tokenJSON struct
method expiry (line 131) | func (e *tokenJSON) expiry() (t time.Time) {
function New3LOTokenProvider (line 187) | func New3LOTokenProvider(opts *Options3LO) (TokenProvider, error) {
type AuthorizationHandlerOptions (line 201) | type AuthorizationHandlerOptions struct
function new3LOTokenProviderWithAuthHandler (line 212) | func new3LOTokenProviderWithAuthHandler(opts *Options3LO) TokenProvider {
type tokenProvider3LO (line 242) | type tokenProvider3LO struct
method Token (line 248) | func (tp *tokenProvider3LO) Token(ctx context.Context) (*Token, error) {
type tokenProviderWithHandler (line 270) | type tokenProviderWithHandler struct
method Token (line 275) | func (tp tokenProviderWithHandler) Token(ctx context.Context) (*Token,...
function fetchToken (line 289) | func fetchToken(ctx context.Context, o *Options3LO, v url.Values) (*Toke...
FILE: vendor/cloud.google.com/go/compute/metadata/log.go
type noOpHandler (line 32) | type noOpHandler struct
method Enabled (line 34) | func (h noOpHandler) Enabled(_ context.Context, _ slog.Level) bool {
method Handle (line 38) | func (h noOpHandler) Handle(_ context.Context, _ slog.Record) error {
method WithAttrs (line 42) | func (h noOpHandler) WithAttrs(_ []slog.Attr) slog.Handler {
method WithGroup (line 46) | func (h noOpHandler) WithGroup(_ string) slog.Handler {
function httpRequest (line 52) | func httpRequest(req *http.Request, body []byte) slog.LogValuer {
type request (line 59) | type request struct
method LogValue (line 64) | func (r *request) LogValue() slog.Value {
function httpResponse (line 90) | func httpResponse(resp *http.Response, body []byte) slog.LogValuer {
type response (line 97) | type response struct
method LogValue (line 102) | func (r *response) LogValue() slog.Value {
function processPayload (line 125) | func processPayload(payload []byte) (slog.Attr, bool) {
FILE: vendor/cloud.google.com/go/compute/metadata/metadata.go
constant metadataIP (line 39) | metadataIP = "169.254.169.254"
constant metadataHostEnv (line 46) | metadataHostEnv = "GCE_METADATA_HOST"
constant userAgent (line 48) | userAgent = "gcloud-golang/0.1"
type cachedValue (line 51) | type cachedValue struct
method get (line 94) | func (c *cachedValue) get(ctx context.Context, cl *Client) (v string, ...
function newDefaultHTTPClient (line 69) | func newDefaultHTTPClient() *http.Client {
type NotDefinedError (line 88) | type NotDefinedError
method Error (line 90) | func (suffix NotDefinedError) Error() string {
function OnGCE (line 119) | func OnGCE() bool {
function OnGCEWithContext (line 127) | func OnGCEWithContext(ctx context.Context) bool {
function Subscribe (line 137) | func Subscribe(suffix string, fn func(v string, ok bool) error) error {
function SubscribeWithContext (line 142) | func SubscribeWithContext(ctx context.Context, suffix string, fn func(ct...
function Get (line 149) | func Get(suffix string) (string, error) {
function GetWithContext (line 154) | func GetWithContext(ctx context.Context, suffix string) (string, error) {
function ProjectID (line 161) | func ProjectID() (string, error) {
function ProjectIDWithContext (line 166) | func ProjectIDWithContext(ctx context.Context) (string, error) {
function NumericProjectID (line 173) | func NumericProjectID() (string, error) {
function NumericProjectIDWithContext (line 178) | func NumericProjectIDWithContext(ctx context.Context) (string, error) {
function InternalIP (line 185) | func InternalIP() (string, error) {
function InternalIPWithContext (line 190) | func InternalIPWithContext(ctx context.Context) (string, error) {
function ExternalIP (line 197) | func ExternalIP() (string, error) {
function ExternalIPWithContext (line 202) | func ExternalIPWithContext(ctx context.Context) (string, error) {
function Email (line 209) | func Email(serviceAccount string) (string, error) {
function EmailWithContext (line 214) | func EmailWithContext(ctx context.Context, serviceAccount string) (strin...
function Hostname (line 222) | func Hostname() (string, error) {
function HostnameWithContext (line 228) | func HostnameWithContext(ctx context.Context) (string, error) {
function InstanceTags (line 236) | func InstanceTags() ([]string, error) {
function InstanceTagsWithContext (line 242) | func InstanceTagsWithContext(ctx context.Context) ([]string, error) {
function InstanceID (line 249) | func InstanceID() (string, error) {
function InstanceIDWithContext (line 254) | func InstanceIDWithContext(ctx context.Context) (string, error) {
function InstanceName (line 261) | func InstanceName() (string, error) {
function InstanceNameWithContext (line 266) | func InstanceNameWithContext(ctx context.Context) (string, error) {
function Zone (line 273) | func Zone() (string, error) {
function ZoneWithContext (line 278) | func ZoneWithContext(ctx context.Context) (string, error) {
function InstanceAttributes (line 285) | func InstanceAttributes() ([]string, error) {
function InstanceAttributesWithContext (line 290) | func InstanceAttributesWithContext(ctx context.Context) ([]string, error) {
function ProjectAttributes (line 297) | func ProjectAttributes() ([]string, error) {
function ProjectAttributesWithContext (line 302) | func ProjectAttributesWithContext(ctx context.Context) ([]string, error) {
function InstanceAttributeValue (line 309) | func InstanceAttributeValue(attr string) (string, error) {
function InstanceAttributeValueWithContext (line 314) | func InstanceAttributeValueWithContext(ctx context.Context, attr string)...
function ProjectAttributeValue (line 321) | func ProjectAttributeValue(attr string) (string, error) {
function ProjectAttributeValueWithContext (line 326) | func ProjectAttributeValueWithContext(ctx context.Context, attr string) ...
function Scopes (line 333) | func Scopes(serviceAccount string) ([]string, error) {
function ScopesWithContext (line 338) | func ScopesWithContext(ctx context.Context, serviceAccount string) ([]st...
function strsContains (line 342) | func strsContains(ss []string, s string) bool {
type Client (line 352) | type Client struct
method OnGCEWithContext (line 418) | func (c *Client) OnGCEWithContext(ctx context.Context) bool {
method getETag (line 471) | func (c *Client) getETag(ctx context.Context, suffix string) (value, e...
method Get (line 545) | func (c *Client) Get(suffix string) (string, error) {
method GetWithContext (line 561) | func (c *Client) GetWithContext(ctx context.Context, suffix string) (s...
method getTrimmed (line 566) | func (c *Client) getTrimmed(ctx context.Context, suffix string) (s str...
method lines (line 572) | func (c *Client) lines(ctx context.Context, suffix string) ([]string, ...
method ProjectID (line 587) | func (c *Client) ProjectID() (string, error) { return c.ProjectIDWithC...
method ProjectIDWithContext (line 590) | func (c *Client) ProjectIDWithContext(ctx context.Context) (string, er...
method NumericProjectID (line 595) | func (c *Client) NumericProjectID() (string, error) {
method NumericProjectIDWithContext (line 600) | func (c *Client) NumericProjectIDWithContext(ctx context.Context) (str...
method InstanceID (line 607) | func (c *Client) InstanceID() (string, error) {
method InstanceIDWithContext (line 612) | func (c *Client) InstanceIDWithContext(ctx context.Context) (string, e...
method InternalIP (line 619) | func (c *Client) InternalIP() (string, error) {
method InternalIPWithContext (line 624) | func (c *Client) InternalIPWithContext(ctx context.Context) (string, e...
method Email (line 631) | func (c *Client) Email(serviceAccount string) (string, error) {
method EmailWithContext (line 638) | func (c *Client) EmailWithContext(ctx context.Context, serviceAccount ...
method ExternalIP (line 648) | func (c *Client) ExternalIP() (string, error) {
method ExternalIPWithContext (line 653) | func (c *Client) ExternalIPWithContext(ctx context.Context) (string, e...
method Hostname (line 661) | func (c *Client) Hostname() (string, error) {
method HostnameWithContext (line 667) | func (c *Client) HostnameWithContext(ctx context.Context) (string, err...
method InstanceTags (line 674) | func (c *Client) InstanceTags() ([]string, error) {
method InstanceTagsWithContext (line 680) | func (c *Client) InstanceTagsWithContext(ctx context.Context) ([]strin...
method InstanceName (line 695) | func (c *Client) InstanceName() (string, error) {
method InstanceNameWithContext (line 700) | func (c *Client) InstanceNameWithContext(ctx context.Context) (string,...
method Zone (line 707) | func (c *Client) Zone() (string, error) {
method ZoneWithContext (line 712) | func (c *Client) ZoneWithContext(ctx context.Context) (string, error) {
method InstanceAttributes (line 726) | func (c *Client) InstanceAttributes() ([]string, error) {
method InstanceAttributesWithContext (line 733) | func (c *Client) InstanceAttributesWithContext(ctx context.Context) ([...
method ProjectAttributes (line 742) | func (c *Client) ProjectAttributes() ([]string, error) {
method ProjectAttributesWithContext (line 749) | func (c *Client) ProjectAttributesWithContext(ctx context.Context) ([]...
method InstanceAttributeValue (line 763) | func (c *Client) InstanceAttributeValue(attr string) (string, error) {
method InstanceAttributeValueWithContext (line 775) | func (c *Client) InstanceAttributeValueWithContext(ctx context.Context...
method ProjectAttributeValue (line 789) | func (c *Client) ProjectAttributeValue(attr string) (string, error) {
method ProjectAttributeValueWithContext (line 801) | func (c *Client) ProjectAttributeValueWithContext(ctx context.Context,...
method Scopes (line 810) | func (c *Client) Scopes(serviceAccount string) ([]string, error) {
method ScopesWithContext (line 817) | func (c *Client) ScopesWithContext(ctx context.Context, serviceAccount...
method Subscribe (line 829) | func (c *Client) Subscribe(suffix string, fn func(v string, ok bool) e...
method SubscribeWithContext (line 842) | func (c *Client) SubscribeWithContext(ctx context.Context, suffix stri...
type Options (line 358) | type Options struct
function NewClient (line 369) | func NewClient(c *http.Client) *Client {
function NewWithOptions (line 376) | func NewWithOptions(opts *Options) *Client {
type Error (line 879) | type Error struct
method Error (line 886) | func (e *Error) Error() string {
FILE: vendor/cloud.google.com/go/compute/metadata/retry.go
constant maxRetryAttempts (line 26) | maxRetryAttempts = 5
type defaultBackoff (line 35) | type defaultBackoff struct
method Pause (line 41) | func (b *defaultBackoff) Pause() time.Duration {
function sleep (line 51) | func sleep(ctx context.Context, d time.Duration) error {
function newRetryer (line 62) | func newRetryer() *metadataRetryer {
type backoff (line 70) | type backoff interface
type metadataRetryer (line 74) | type metadataRetryer struct
method Retry (line 79) | func (r *metadataRetryer) Retry(status int, err error) (time.Duration,...
function shouldRetry (line 94) | func shouldRetry(status int, err error) bool {
FILE: vendor/cloud.google.com/go/compute/metadata/retry_linux.go
function init (line 25) | func init() {
FILE: vendor/cloud.google.com/go/iam/apiv1/iampb/iam_policy.pb.go
constant _ (line 39) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
constant _ (line 41) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
type SetIamPolicyRequest (line 45) | type SetIamPolicyRequest struct
method Reset (line 66) | func (x *SetIamPolicyRequest) Reset() {
method String (line 73) | func (x *SetIamPolicyRequest) String() string {
method ProtoMessage (line 77) | func (*SetIamPolicyRequest) ProtoMessage() {}
method ProtoReflect (line 79) | func (x *SetIamPolicyRequest) ProtoReflect() protoreflect.Message {
method Descriptor (line 92) | func (*SetIamPolicyRequest) Descriptor() ([]byte, []int) {
method GetResource (line 96) | func (x *SetIamPolicyRequest) GetResource() string {
method GetPolicy (line 103) | func (x *SetIamPolicyRequest) GetPolicy() *Policy {
method GetUpdateMask (line 110) | func (x *SetIamPolicyRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
type GetIamPolicyRequest (line 118) | type GetIamPolicyRequest struct
method Reset (line 131) | func (x *GetIamPolicyRequest) Reset() {
method String (line 138) | func (x *GetIamPolicyRequest) String() string {
method ProtoMessage (line 142) | func (*GetIamPolicyRequest) ProtoMessage() {}
method ProtoReflect (line 144) | func (x *GetIamPolicyRequest) ProtoReflect() protoreflect.Message {
method Descriptor (line 157) | func (*GetIamPolicyRequest) Descriptor() ([]byte, []int) {
method GetResource (line 161) | func (x *GetIamPolicyRequest) GetResource() string {
method GetOptions (line 168) | func (x *GetIamPolicyRequest) GetOptions() *GetPolicyOptions {
type TestIamPermissionsRequest (line 176) | type TestIamPermissionsRequest struct
method Reset (line 191) | func (x *TestIamPermissionsRequest) Reset() {
method String (line 198) | func (x *TestIamPermissionsRequest) String() string {
method ProtoMessage (line 202) | func (*TestIamPermissionsRequest) ProtoMessage() {}
method ProtoReflect (line 204) | func (x *TestIamPermissionsRequest) ProtoReflect() protoreflect.Message {
method Descriptor (line 217) | func (*TestIamPermissionsRequest) Descriptor() ([]byte, []int) {
method GetResource (line 221) | func (x *TestIamPermissionsRequest) GetResource() string {
method GetPermissions (line 228) | func (x *TestIamPermissionsRequest) GetPermissions() []string {
type TestIamPermissionsResponse (line 236) | type TestIamPermissionsResponse struct
method Reset (line 246) | func (x *TestIamPermissionsResponse) Reset() {
method String (line 253) | func (x *TestIamPermissionsResponse) String() string {
method ProtoMessage (line 257) | func (*TestIamPermissionsResponse) ProtoMessage() {}
method ProtoReflect (line 259) | func (x *TestIamPermissionsResponse) ProtoReflect() protoreflect.Messa...
method Descriptor (line 272) | func (*TestIamPermissionsResponse) Descriptor() ([]byte, []int) {
method GetPermissions (line 276) | func (x *TestIamPermissionsResponse) GetPermissions() []string {
function file_google_iam_v1_iam_policy_proto_rawDescGZIP (line 374) | func file_google_iam_v1_iam_policy_proto_rawDescGZIP() []byte {
function init (line 408) | func init() { file_google_iam_v1_iam_policy_proto_init() }
function file_google_iam_v1_iam_policy_proto_init (line 409) | func file_google_iam_v1_iam_policy_proto_init() {
constant _ (line 441) | _ = grpc.SupportPackageIsVersion6
type IAMPolicyClient (line 446) | type IAMPolicyClient interface
type iAMPolicyClient (line 466) | type iAMPolicyClient struct
method SetIamPolicy (line 474) | func (c *iAMPolicyClient) SetIamPolicy(ctx context.Context, in *SetIam...
method GetIamPolicy (line 483) | func (c *iAMPolicyClient) GetIamPolicy(ctx context.Context, in *GetIam...
method TestIamPermissions (line 492) | func (c *iAMPolicyClient) TestIamPermissions(ctx context.Context, in *...
function NewIAMPolicyClient (line 470) | func NewIAMPolicyClient(cc grpc.ClientConnInterface) IAMPolicyClient {
type IAMPolicyServer (line 502) | type IAMPolicyServer interface
type UnimplementedIAMPolicyServer (line 523) | type UnimplementedIAMPolicyServer struct
method SetIamPolicy (line 526) | func (*UnimplementedIAMPolicyServer) SetIamPolicy(context.Context, *Se...
method GetIamPolicy (line 529) | func (*UnimplementedIAMPolicyServer) GetIamPolicy(context.Context, *Ge...
method TestIamPermissions (line 532) | func (*UnimplementedIAMPolicyServer) TestIamPermissions(context.Contex...
function RegisterIAMPolicyServer (line 536) | func RegisterIAMPolicyServer(s *grpc.Server, srv IAMPolicyServer) {
function _IAMPolicy_SetIamPolicy_Handler (line 540) | func _IAMPolicy_SetIamPolicy_Handler(srv interface{}, ctx context.Contex...
function _IAMPolicy_GetIamPolicy_Handler (line 558) | func _IAMPolicy_GetIamPolicy_Handler(srv interface{}, ctx context.Contex...
function _IAMPolicy_TestIamPermissions_Handler (line 576) | func _IAMPolicy_TestIamPermissions_Handler(srv interface{}, ctx context....
FILE: vendor/cloud.google.com/go/iam/apiv1/iampb/options.pb.go
constant _ (line 33) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
constant _ (line 35) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
type GetPolicyOptions (line 39) | type GetPolicyOptions struct
method Reset (line 65) | func (x *GetPolicyOptions) Reset() {
method String (line 72) | func (x *GetPolicyOptions) String() string {
method ProtoMessage (line 76) | func (*GetPolicyOptions) ProtoMessage() {}
method ProtoReflect (line 78) | func (x *GetPolicyOptions) ProtoReflect() protoreflect.Message {
method Descriptor (line 91) | func (*GetPolicyOptions) Descriptor() ([]byte, []int) {
method GetRequestedPolicyVersion (line 95) | func (x *GetPolicyOptions) GetRequestedPolicyVersion() int32 {
function file_google_iam_v1_options_proto_rawDescGZIP (line 129) | func file_google_iam_v1_options_proto_rawDescGZIP() []byte {
function init (line 148) | func init() { file_google_iam_v1_options_proto_init() }
function file_google_iam_v1_options_proto_init (line 149) | func file_google_iam_v1_options_proto_init() {
FILE: vendor/cloud.google.com/go/iam/apiv1/iampb/policy.pb.go
constant _ (line 34) | _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
constant _ (line 36) | _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
type AuditLogConfig_LogType (line 41) | type AuditLogConfig_LogType
method Enum (line 70) | func (x AuditLogConfig_LogType) Enum() *AuditLogConfig_LogType {
method String (line 76) | func (x AuditLogConfig_LogType) String() string {
method Descriptor (line 80) | func (AuditLogConfig_LogType) Descriptor() protoreflect.EnumDescriptor {
method Type (line 84) | func (AuditLogConfig_LogType) Type() protoreflect.EnumType {
method Number (line 88) | func (x AuditLogConfig_LogType) Number() protoreflect.EnumNumber {
method EnumDescriptor (line 93) | func (AuditLogConfig_LogType) EnumDescriptor() ([]byte, []int) {
constant AuditLogConfig_LOG_TYPE_UNSPECIFIED (line 45) | AuditLogConfig_LOG_TYPE_UNSPECIFIED AuditLogConfig_LogType = 0
constant AuditLogConfig_ADMIN_READ (line 47) | AuditLogConfig_ADMIN_READ AuditLogConfig_LogType = 1
constant AuditLogConfig_DATA_WRITE (line 49) | AuditLogConfig_DATA_WRITE AuditLogConfig_LogType = 2
constant AuditLogConfig_DATA_READ (line 51) | AuditLogConfig_DATA_READ AuditLogConfig_LogType = 3
type BindingDelta_Action (line 98) | type BindingDelta_Action
method Enum (line 123) | func (x BindingDelta_Action) Enum() *BindingDelta_Action {
method String (line 129) | func (x BindingDelta_Action) String() string {
method Descriptor (line 133) | func (BindingDelta_Action) Descriptor() protoreflect.EnumDescriptor {
method Type (line 137) | func (BindingDelta_Action) Type() protoreflect.EnumType {
method Number (line 141) | func (x BindingDelta_Action) Number() protoreflect.EnumNumber {
method EnumDescriptor (line 146) | func (BindingDelta_Action) EnumDescriptor() ([]byte, []int) {
constant BindingDelta_ACTION_UNSPECIFIED (line 102) | BindingDelta_ACTION_UNSPECIFIED BindingDelta_Action = 0
constant BindingDelta_ADD (line 104) | BindingDelta_ADD BindingDelta_Action = 1
constant BindingDelta_REMOVE (line 106) | BindingDelta_REMOVE BindingDelta_Action = 2
type AuditConfigDelta_Action (line 151) | type AuditConfigDelta_Action
method Enum (line 176) | func (x AuditConfigDelta_Action) Enum() *AuditConfigDelta_Action {
method String (line 182) | func (x AuditConfigDelta_Action) String() string {
method Descriptor (line 186) | func (AuditConfigDelta_Action) Descriptor() protoreflect.EnumDescriptor {
method Type (line 190) | func (AuditConfigDelta_Action) Type() protoreflect.EnumType {
method Number (line 194) | func (x AuditConfigDelta_Acti
Copy disabled (too large)
Download .json
Condensed preview — 6691 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (17,090K chars).
[
{
"path": ".dockerignore",
"chars": 97,
"preview": "integration/**/*\nscripts/**/*\nhack/**/*\nexamples/**/*\ndocs/**/*\n.github/**/*\nlogo/**/*\nout/**/*\n\n"
},
{
"path": ".github/ISSUE_TEMPLATE/bug_report.md",
"chars": 1245,
"preview": "---\nname: Bug report\nabout: Report a bug in kaniko\n\n---\n\n**Actual behavior**\nA clear and concise description of what the"
},
{
"path": ".github/dependabot.yml",
"chars": 261,
"preview": "version: 2\nupdates:\n- package-ecosystem: gomod\n directory: /\n schedule:\n interval: weekly\n- package-ecosystem: gith"
},
{
"path": ".github/pull_request_template.md",
"chars": 910,
"preview": "<!-- 🎉🎉🎉 Thank you for the PR!!! 🎉🎉🎉 -->\n\n\nFixes #<issue number> _in case of a bug fix, this should point to a bug and a"
},
{
"path": ".github/workflows/images.yaml",
"chars": 5376,
"preview": "name: Build images\n\non:\n pull_request:\n branches: ['main']\n push:\n branches: ['main']\n tags: ['v[0-9]+.[0-9]+"
},
{
"path": ".github/workflows/integration-tests.yaml",
"chars": 1072,
"preview": "name: Integration tests\n\non:\n push:\n branches: ['main']\n pull_request:\n branches: ['main']\n\npermissions:\n conte"
},
{
"path": ".github/workflows/nightly-vulnerability-scan.yml",
"chars": 1345,
"preview": "name: Nightly Vulnerability Scan\n\non:\n schedule:\n # Schedule to run every night at midnight\n - cron: '0 0 * * *'\n"
},
{
"path": ".github/workflows/unit-tests.yaml",
"chars": 390,
"preview": "name: Unit tests\n\non:\n push:\n branches: ['main']\n pull_request:\n branches: ['main']\n\npermissions:\n contents: re"
},
{
"path": ".gitignore",
"chars": 60,
"preview": "out/\nbazel-*\n*~\nBUILD.bazel\n.idea/**\n*.iml\n.vagrant\n.vscode/"
},
{
"path": ".golangci.yaml",
"chars": 7298,
"preview": "# This file contains all available configuration options\n# with their default values.\n\n# options for analysis running\nru"
},
{
"path": ".prettierrc",
"chars": 121,
"preview": "printWidth: 80\ntabWidth: 2\nsemi: false\nsingleQuote: false\noverrides: [{ files: \"*.md\", options: { proseWrap: always } }]"
},
{
"path": "CHANGELOG.md",
"chars": 175492,
"preview": "# v1.24.0 Release 2025-05-21\nThe executor images in this release are:\n```\ngcr.io/kaniko-project/executor:v1.24.0\ngcr.io/"
},
{
"path": "CONTRIBUTING.md",
"chars": 3031,
"preview": "# Contributing to Kaniko\n\nWe'd love to accept your patches and contributions to this project!!\n\nTo get started developin"
},
{
"path": "DEVELOPMENT.md",
"chars": 7018,
"preview": "# Development\n\nThis doc explains the development workflow so you can get started\n[contributing](CONTRIBUTING.md) to Kani"
},
{
"path": "LICENSE",
"chars": 11341,
"preview": "\n Apache License\n Version 2.0, January 2004\n "
},
{
"path": "MAINTAINERS",
"chars": 0,
"preview": ""
},
{
"path": "Makefile",
"chars": 3945,
"preview": "# Copyright 2018 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this f"
},
{
"path": "README.md",
"chars": 58905,
"preview": "# 🧊 This project is archived and no longer developed or maintained. 🧊\n\nThe code remains available for historic purposes."
},
{
"path": "RELEASE.md",
"chars": 5311,
"preview": "# Kaniko Release Process\n\nThis document explains the Kaniko release process.\n\nKaniko is not an officially supported Goog"
},
{
"path": "ROADMAP.md",
"chars": 2090,
"preview": "# Kaniko Project Roadmap 2024\n\n## Introduction\n\nKaniko is an open-source project designed to build container images from"
},
{
"path": "SECURITY.md",
"chars": 297,
"preview": "To report a security issue with Kaniko, please use https://g.co/vulnz. We use\nhttps://g.co/vulnz for our intake, and do "
},
{
"path": "Vagrantfile",
"chars": 2160,
"preview": "# -*- mode: ruby -*-\n# vi: set ft=ruby :\n\nVagrant.configure(\"2\") do |config|\n config.vm.box = \"generic/debian10\"\n conf"
},
{
"path": "benchmark.sh",
"chars": 758,
"preview": "#!/bin/bash\n\n# Copyright 2018 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may n"
},
{
"path": "cmd/executor/cmd/root.go",
"chars": 24053,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "cmd/executor/cmd/root_test.go",
"chars": 3765,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "cmd/executor/cmd/version.go",
"chars": 926,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "cmd/executor/main.go",
"chars": 838,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "cmd/warmer/cmd/root.go",
"chars": 7493,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "cmd/warmer/main.go",
"chars": 727,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "code-of-conduct.md",
"chars": 5142,
"preview": "# Code of Conduct\n\n## Our Pledge\n\nIn the interest of fostering an open and welcoming environment, we as\ncontributors and"
},
{
"path": "cosign.pub",
"chars": 178,
"preview": "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9aAfAcgAxIFMTstJUv8l/AMqnSKw\nP+vLu3NnnBDHCfREQpV/AJuiZ1Ut"
},
{
"path": "deploy/Dockerfile",
"chars": 3673,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "docs/design_proposals/design-proposal-template.md",
"chars": 2249,
"preview": "# Title\n\n* Author(s): \\<your name\\>\n* Reviewers: \\<reviewer name\\>\n\n If you are already working with someone mention "
},
{
"path": "docs/design_proposals/filesystem-resolution-proposal-01.md",
"chars": 5358,
"preview": "# Filesystem Resolution 01\n\n* Author(s): cgwippern@google.com\n* Reviewers: Tejal Desai\n* Date: 2020-02-12\n* Status: Revi"
},
{
"path": "docs/designdoc.md",
"chars": 13324,
"preview": "# Kaniko Design Doc \n\n_<span style=\"color:#666666;\">Authors: [priyawadhwa@google.com](mailto:priyawadhwa@google.com)<spa"
},
{
"path": "docs/testplan.md",
"chars": 3845,
"preview": "# Kaniko Test Plan\n\n\n## What do we want to test?\n\n\n\n* The basic premise is to build the same Dockerfile, both through "
},
{
"path": "docs/tutorial.md",
"chars": 5514,
"preview": "# Getting Started Tutorial\n\nThis tutorial is for beginners who want to start using kaniko and aims to establish a quick "
},
{
"path": "examples/kaniko-cache-claim.yaml",
"chars": 193,
"preview": "kind: PersistentVolumeClaim\napiVersion: v1\nmetadata:\n name: kaniko-cache-claim\nspec:\n storageClassName: manual\n acces"
},
{
"path": "examples/kaniko-cache-volume.yaml",
"chars": 241,
"preview": "kind: PersistentVolume\napiVersion: v1\nmetadata:\n name: kaniko-cache-volume\n labels:\n type: local\nspec:\n storageCla"
},
{
"path": "examples/kaniko-test.yaml",
"chars": 740,
"preview": "apiVersion: v1\nkind: Pod\nmetadata:\n name: kaniko\nspec:\n containers:\n - name: kaniko\n image: gcr.io/kaniko-project/"
},
{
"path": "examples/kaniko-warmer.yaml",
"chars": 664,
"preview": "apiVersion: v1\nkind: Pod\nmetadata:\n name: kaniko-warmer\nspec:\n containers:\n - name: kaniko-warmer\n image: gcr.io/k"
},
{
"path": "examples/pod-blobstorage.yaml",
"chars": 645,
"preview": "apiVersion: v1\nkind: Pod\nmetadata:\n name: kaniko\nspec:\n containers:\n - name: kaniko\n image: gcr.io/kaniko-project/"
},
{
"path": "examples/pod-build-profile.yaml",
"chars": 909,
"preview": "apiVersion: v1\nkind: Pod\nmetadata:\n name: kaniko\nspec:\n containers:\n - name: kaniko\n image: gcr.io/kaniko-project/"
},
{
"path": "examples/pod.yaml",
"chars": 734,
"preview": "apiVersion: v1\nkind: Pod\nmetadata:\n name: kaniko\nspec:\n containers:\n - name: kaniko\n image: gcr.io/kaniko-project/"
},
{
"path": "examples/volume-claim.yaml",
"chars": 199,
"preview": "kind: PersistentVolumeClaim\napiVersion: v1\nmetadata:\n name: dockerfile-claim\nspec:\n accessModes:\n - ReadWriteOnce\n "
},
{
"path": "examples/volume.yaml",
"chars": 304,
"preview": "apiVersion: v1\nkind: PersistentVolume\nmetadata:\n name: dockerfile\n labels:\n type: local\nspec:\n capacity:\n stora"
},
{
"path": "files/nsswitch.conf",
"chars": 782,
"preview": "# /etc/nsswitch.conf\n#\n# As described on the web page https://man7.org/linux/man-pages/man3/gethostbyname.3.html,\n# with"
},
{
"path": "go.mod",
"chars": 10941,
"preview": "module github.com/GoogleContainerTools/kaniko\n\ngo 1.24.0\n\nrequire (\n\tcloud.google.com/go/storage v1.54.0\n\tgithub.com/Azu"
},
{
"path": "go.sum",
"chars": 68114,
"preview": "cel.dev/expr v0.24.0 h1:56OvJKSH3hDGL0ml5uSxZmz3/3Pq4tJ+fb1unVLAFcY=\ncel.dev/expr v0.24.0/go.mod h1:hLPLo1W4QUmuYdA72RBX"
},
{
"path": "hack/.gitignore",
"chars": 3,
"preview": "bin"
},
{
"path": "hack/boilerplate/boilerplate.Dockerfile.txt",
"chars": 597,
"preview": "# Copyright YEAR Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "hack/boilerplate/boilerplate.Makefile.txt",
"chars": 574,
"preview": "# Copyright YEAR Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this f"
},
{
"path": "hack/boilerplate/boilerplate.go.txt",
"chars": 557,
"preview": "/*\nCopyright YEAR Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "hack/boilerplate/boilerplate.py",
"chars": 5045,
"preview": "#!/usr/bin/env python3\n\n# Copyright 2018 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n"
},
{
"path": "hack/boilerplate/boilerplate.py.txt",
"chars": 598,
"preview": "#!/usr/bin/env python3\n\n# Copyright YEAR Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n"
},
{
"path": "hack/boilerplate/boilerplate.sh.txt",
"chars": 574,
"preview": "# Copyright YEAR Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this f"
},
{
"path": "hack/boilerplate.sh",
"chars": 1060,
"preview": "#!/bin/bash\n# Copyright 2018 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may no"
},
{
"path": "hack/gofmt.sh",
"chars": 831,
"preview": "#!/bin/bash\n\n# Copyright 2018 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may n"
},
{
"path": "hack/install_golint.sh",
"chars": 9531,
"preview": "#!/bin/sh\nset -e\n# Code generated by godownloader on 2018-06-05T12:04:55Z. DO NOT EDIT.\n#\n\nusage() {\n this=$1\n cat <<E"
},
{
"path": "hack/linter.sh",
"chars": 831,
"preview": "#!/bin/bash\n\n# Copyright 2018 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may n"
},
{
"path": "hack/release.sh",
"chars": 2614,
"preview": "#!/bin/bash\n\n# Copyright 2018 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may n"
},
{
"path": "hack/release_notes/changelog_template.txt",
"chars": 572,
"preview": "# {{VERSION}} Release {{DATE}}\nThe executor images in this release are:\n```\ngcr.io/kaniko-project/executor:{{VERSION}}\ng"
},
{
"path": "hack/release_notes/listpullreqs.go",
"chars": 2791,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/.dockerignore",
"chars": 85,
"preview": "# A .dockerignore file to make sure dockerignore support works\nignore/**\n!ignore/foo\n"
},
{
"path": "integration/.gitignore",
"chars": 17,
"preview": "cache\nconfig.json"
},
{
"path": "integration/BUILD",
"chars": 2545,
"preview": "load(\"@io_bazel_rules_go//go:def.bzl\", \"go_library\", \"go_test\")\n\ngo_library(\n name = \"integration\",\n srcs = [\n "
},
{
"path": "integration/benchmark_fs/Dockerfile",
"chars": 734,
"preview": "# Copyright 2020 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/benchmark_fs/cloudbuild.yaml",
"chars": 286,
"preview": "steps:\n- name: 'gcr.io/kaniko-project/executor:latest'\n args:\n - --build-arg=NUM=${_COUNT}\n - --no-push\n - --snapsho"
},
{
"path": "integration/benchmark_fs/context.txt",
"chars": 12,
"preview": "hello world\n"
},
{
"path": "integration/benchmark_fs/make.sh",
"chars": 737,
"preview": "#!/usr/local/bin/bash\n\n# Copyright 2020 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/benchmark_test.go",
"chars": 4774,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/cleanup.go",
"chars": 920,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/cmd.go",
"chars": 1412,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/config.go",
"chars": 1058,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/context/arr[0].txt",
"chars": 5,
"preview": "hello"
},
{
"path": "integration/context/bar/bam/bat",
"chars": 4,
"preview": "bat\n"
},
{
"path": "integration/context/bar/bat",
"chars": 4,
"preview": "bat\n"
},
{
"path": "integration/context/bar/baz",
"chars": 4,
"preview": "baz\n"
},
{
"path": "integration/context/empty/.gitignore",
"chars": 0,
"preview": ""
},
{
"path": "integration/context/foo",
"chars": 4,
"preview": "foo\n"
},
{
"path": "integration/context/qux/qup",
"chars": 4,
"preview": "qup\n"
},
{
"path": "integration/context/qux/quw/que",
"chars": 4,
"preview": "que\n"
},
{
"path": "integration/context/qux/quz",
"chars": 4,
"preview": "quz\n"
},
{
"path": "integration/context/tars/file",
"chars": 12,
"preview": "normal file\n"
},
{
"path": "integration/context/workspace/test",
"chars": 5,
"preview": "test\n"
},
{
"path": "integration/dockerfiles/1097",
"chars": 161,
"preview": "FROM ubuntu:latest\n\nRUN groupadd -g 20000 bar\nRUN groupadd -g 10000 foo\n\nRUN useradd -c \"Foo user\" -u 10000 -g 10000 -G "
},
{
"path": "integration/dockerfiles/Dockerfile_dockerignore_relative",
"chars": 475,
"preview": "# This is not included in integration tests because docker build does not exploit Dockerfile.dockerignore\n# See https://"
},
{
"path": "integration/dockerfiles/Dockerfile_dockerignore_relative.dockerignore",
"chars": 103,
"preview": "# A .dockerignore file to make sure dockerignore support works\nignore_relative/**\n!ignore_relative/foo\n"
},
{
"path": "integration/dockerfiles/Dockerfile_git_buildcontext",
"chars": 36,
"preview": "FROM scratch\nCOPY LICENSE ./LICENSE\n"
},
{
"path": "integration/dockerfiles/Dockerfile_hardlink_base",
"chars": 189,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a AS stage1\nRUN apk --no-cache add git"
},
{
"path": "integration/dockerfiles/Dockerfile_onbuild_base",
"chars": 178,
"preview": "FROM ubuntu:18.04\nENV dir /tmp/dir/\nONBUILD RUN echo \"onbuild\" > /tmp/onbuild\nONBUILD RUN mkdir $dir\nONBUILD RUN echo \""
},
{
"path": "integration/dockerfiles/Dockerfile_registry_mirror",
"chars": 746,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_relative_copy",
"chars": 115,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a\nCOPY foo foo\nCOPY foo /foodir/\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_add",
"chars": 1174,
"preview": "FROM debian:10.13\n# First, try adding some regular files\nADD context/foo foo\nADD context/foo /foodir/\nADD context/bar/b*"
},
{
"path": "integration/dockerfiles/Dockerfile_test_add_404",
"chars": 101,
"preview": "FROM debian:10.13\n\n# Testing that any HTTP failure is handled properly\nADD https://httpstat.us/404 .\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_add_chown_intermediate_dirs",
"chars": 541,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a\n# Create dev user and group, with id"
},
{
"path": "integration/dockerfiles/Dockerfile_test_add_dest_symlink_dir",
"chars": 61,
"preview": "FROM phusion/baseimage:0.11\nADD context/foo /etc/service/foo\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_add_url_with_arg",
"chars": 150,
"preview": "FROM busybox:1.31\n\nARG REPO=kaniko\nARG VERSION=v0.14.0\n\nADD https://github.com/GoogleContainerTools/$REPO/archive/$VERSI"
},
{
"path": "integration/dockerfiles/Dockerfile_test_arg_blank_with_quotes",
"chars": 278,
"preview": "ARG FILE_NAME=\"\"\n\nFROM busybox:latest AS builder\nARG FILE_NAME\n\nRUN echo $FILE_NAME && touch /$FILE_NAME.txt && stat /$F"
},
{
"path": "integration/dockerfiles/Dockerfile_test_arg_from_quotes",
"chars": 122,
"preview": "ARG IMAGE_NAME=\"busybox:latest\"\n\nFROM $IMAGE_NAME\nENV PATH=\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
},
{
"path": "integration/dockerfiles/Dockerfile_test_arg_from_single_quotes",
"chars": 122,
"preview": "ARG IMAGE_NAME='busybox:latest'\n\nFROM $IMAGE_NAME\nENV PATH=\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
},
{
"path": "integration/dockerfiles/Dockerfile_test_arg_multi",
"chars": 281,
"preview": "ARG FILE_NAME=myFile\n\nFROM busybox:latest AS builder\nARG FILE_NAME\n\nRUN echo $FILE_NAME && touch /$FILE_NAME.txt && stat"
},
{
"path": "integration/dockerfiles/Dockerfile_test_arg_multi_empty_val",
"chars": 66,
"preview": "ARG VARIANT=\"\"\nARG VERSION=1\nFROM busybox${VARIANT}:1.3${VERSION}\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_arg_multi_with_quotes",
"chars": 284,
"preview": "ARG FILE_NAME=\"myFile\"\n\nFROM busybox:latest AS builder\nARG FILE_NAME\n\nRUN echo $FILE_NAME && touch /$FILE_NAME.txt && st"
},
{
"path": "integration/dockerfiles/Dockerfile_test_arg_secret",
"chars": 309,
"preview": "FROM debian:10.13\n\nARG SSH_PRIVATE_KEY\nARG SSH_PUBLIC_KEY\n\nRUN mkdir .ssh && \\\n chmod"
},
{
"path": "integration/dockerfiles/Dockerfile_test_arg_two_level",
"chars": 38,
"preview": "ARG A=3.9\nARG B=alpine:${A}\nFROM ${B}\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cache",
"chars": 825,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cache_copy",
"chars": 64,
"preview": "FROM google/cloud-sdk:256.0.0-alpine\n\nCOPY context/foo /usr/bin\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cache_copy_oci",
"chars": 64,
"preview": "FROM google/cloud-sdk:256.0.0-alpine\n\nCOPY context/foo /usr/bin\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cache_install",
"chars": 874,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cache_install_oci",
"chars": 874,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cache_oci",
"chars": 825,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cache_perm",
"chars": 284,
"preview": "# Test to make sure the cache works with special file permissions properly.\n# If the image is built twice, directory foo"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cache_perm_oci",
"chars": 284,
"preview": "# Test to make sure the cache works with special file permissions properly.\n# If the image is built twice, directory foo"
},
{
"path": "integration/dockerfiles/Dockerfile_test_cmd",
"chars": 128,
"preview": "FROM debian:12 AS first\nCMD [\"mycmd\"]\nFROM first\nENTRYPOINT [\"myentrypoint\"] # This should clear out CMD in the config m"
},
{
"path": "integration/dockerfiles/Dockerfile_test_complex_substitution",
"chars": 126,
"preview": "FROM docker.io/library/busybox:latest@sha256:afe605d272837ce1732f390966166c2afff5391208ddd57de10942748694049d\nRUN echo $"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copy",
"chars": 588,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a\nCOPY context/foo foo\nCOPY context/fo"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copy_bucket",
"chars": 588,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a\nCOPY context/foo foo\nCOPY context/fo"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copy_chown_intermediate_dirs",
"chars": 545,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a\n# Create dev user and group, with id"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copy_chown_nonexisting_user",
"chars": 822,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copy_reproducible",
"chars": 588,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a\nCOPY context/foo foo\nCOPY context/fo"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copy_root_multistage",
"chars": 136,
"preview": "FROM busybox:1.31\nCOPY context/foo foo\n\nFROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e08439"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copy_same_file_many_times",
"chars": 1140,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a\nCOPY context/foo /foo\nCOPY context/f"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copy_symlink",
"chars": 282,
"preview": "FROM busybox as t\nRUN mkdir temp\nRUN echo \"hello\" > temp/target\nRUN ln -s target temp/link\n## Relative link with paths\nR"
},
{
"path": "integration/dockerfiles/Dockerfile_test_copyadd_chmod",
"chars": 599,
"preview": "FROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a\n\nADD --chmod=0666 context/foo /file6"
},
{
"path": "integration/dockerfiles/Dockerfile_test_daemons",
"chars": 220,
"preview": "FROM busybox\nRUN (while true; do sleep 10; dd if=/dev/zero of=file`date +%s`.txt count=16000 bs=256 > /dev/null 2>&1; d"
},
{
"path": "integration/dockerfiles/Dockerfile_test_dangling_symlink",
"chars": 134,
"preview": "FROM busybox:latest@sha256:b26cd013274a657b86e706210ddd5cc1f82f50155791199d29b9e86e935ce135\nRUN [\"/bin/ln\", \"-s\", \"nowhe"
},
{
"path": "integration/dockerfiles/Dockerfile_test_deleted_file_cached",
"chars": 103,
"preview": "FROM alpine\n\nRUN mkdir -p /some/dir/ && echo 'first' > /some/dir/first.txt\n\nRUN rm /some/dir/first.txt\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_dockerignore",
"chars": 573,
"preview": "# This dockerfile makes sure the .dockerignore is working\n# If so then ignore/foo should copy to /foo\n# If not, then thi"
},
{
"path": "integration/dockerfiles/Dockerfile_test_env",
"chars": 474,
"preview": "FROM debian:10.13\nENV hey hey\nENV PATH /usr/local\nENV testmultipleeq=\"this=is a=test string=with a=lot of=equals\"\nENV he"
},
{
"path": "integration/dockerfiles/Dockerfile_test_expose",
"chars": 131,
"preview": "FROM debian:10.13\nEXPOSE 80\nEXPOSE 81/udp\nENV protocol tcp\nEXPOSE 82/$protocol\nENV port 83\nEXPOSE $port/udp\nEXPOSE $port"
},
{
"path": "integration/dockerfiles/Dockerfile_test_extract_fs",
"chars": 616,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_extraction",
"chars": 151,
"preview": "# Tests extraction of symlink, hardlink and regular files to a path that is a non-empty directory\nFROM gcr.io/kaniko-tes"
},
{
"path": "integration/dockerfiles/Dockerfile_test_from_multistage_capital",
"chars": 152,
"preview": "FROM alpine as base_stage\n\nRUN echo base_stage\n\n\nFROM base_stage as BUG_stage\n\nRUN echo BUG_stage\n\n\nFROM BUG_stage as fi"
},
{
"path": "integration/dockerfiles/Dockerfile_test_hardlink",
"chars": 586,
"preview": "FROM composer@sha256:4598feb4b58b4370893a29cbc654afa9420b4debed1d574531514b78a24cd608 AS composer\nFROM php@sha256:13813f"
},
{
"path": "integration/dockerfiles/Dockerfile_test_ignore",
"chars": 22,
"preview": "FROM scratch\nCOPY . .\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_issue_1039",
"chars": 395,
"preview": "FROM registry.access.redhat.com/ubi7/ubi:7.7-214\n\n# Install GCC, GCC-C++ and make libraries for build environment\n# Then"
},
{
"path": "integration/dockerfiles/Dockerfile_test_issue_1837",
"chars": 234,
"preview": "FROM registry.access.redhat.com/ubi8/ubi:8.2 AS base\n# Install ping\nRUN yum --disableplugin=subscription-manager install"
},
{
"path": "integration/dockerfiles/Dockerfile_test_issue_2049",
"chars": 173,
"preview": "FROM debian:bullseye-20220328\n\nRUN set -x; \\\n apt-get update && \\\n apt-get install -y curl openssh-client gnupg gp"
},
{
"path": "integration/dockerfiles/Dockerfile_test_issue_2066",
"chars": 308,
"preview": "FROM ubuntu:focal as base\nRUN apt update\nRUN apt install -y libbsd0\nRUN apt remove -y libbsd0\nRUN apt install -y libbsd0"
},
{
"path": "integration/dockerfiles/Dockerfile_test_issue_519",
"chars": 204,
"preview": "FROM alpine as base_stage\nRUN echo base_stage\nRUN touch meow.txt\n\nFROM base_stage as BUG_stage\nRUN echo BUG_stage\nRUN to"
},
{
"path": "integration/dockerfiles/Dockerfile_test_issue_647",
"chars": 205,
"preview": "FROM alpine:3.8 AS foo\nRUN mkdir /foo\nWORKDIR /foo\nRUN mkdir some_dir\nRUN touch some_file\nRUN chmod 777 some_dir\nRUN chm"
},
{
"path": "integration/dockerfiles/Dockerfile_test_issue_684",
"chars": 202,
"preview": "# ubuntu:bionic-20200219\nFROM ubuntu@sha256:04d48df82c938587820d7b6006f5071dbbffceb7ca01d2814f81857c631d44df as builder\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_issue_704",
"chars": 103,
"preview": "FROM alpine\n\nRUN mkdir -p /some/dir/ && echo 'first' > /some/dir/first.txt\n\nRUN rm /some/dir/first.txt\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_label",
"chars": 171,
"preview": "FROM debian:10.13\nLABEL foo=bar\nLABEL \"baz\"=\"bat\"\nENV label1 \"mylabel\"\nLABEL label1=$label1\nLABEL multilabel1=multilabel"
},
{
"path": "integration/dockerfiles/Dockerfile_test_maintainer",
"chars": 148,
"preview": "FROM scratch\nMAINTAINER nobody@domain.test\n# Add a file to the image to work around https://github.com/moby/moby/issues/"
},
{
"path": "integration/dockerfiles/Dockerfile_test_meta_arg",
"chars": 417,
"preview": "ARG REGISTRY=docker.io\nARG IMAGE=debian\nARG TAG=9.11\nARG WORD=hello\nARG W0RD2=hey\n\nFROM ${REGISTRY}/${IMAGE}:${TAG} as s"
},
{
"path": "integration/dockerfiles/Dockerfile_test_metadata",
"chars": 154,
"preview": "FROM debian:10.2\nCMD [\"command\", \"one\"]\nCMD [\"command\", \"two\"]\nCMD echo \"hello\"\n\nENTRYPOINT [\"execute\", \"something\"]\nENT"
},
{
"path": "integration/dockerfiles/Dockerfile_test_multistage",
"chars": 603,
"preview": "FROM debian:10.13 as base\nCOPY . .\n\nFROM scratch as second\nENV foopath context/foo\nCOPY --from=0 $foopath context/b* /fo"
},
{
"path": "integration/dockerfiles/Dockerfile_test_multistage_args_issue_1911",
"chars": 392,
"preview": "ARG OTHER=\"fix\"\nFROM alpine:latest as base\nARG NAME=\"base\"\nRUN echo \"base:: $NAME\" >> A.txt\n\nFROM base AS base-dev\nARG N"
},
{
"path": "integration/dockerfiles/Dockerfile_test_mv_add",
"chars": 165,
"preview": "FROM busybox@sha256:1bd6df27274fef1dd36eb529d0f4c8033f61c675d6b04213dd913f902f7cafb5\nADD context/tars /tmp/tars\nRUN stat"
},
{
"path": "integration/dockerfiles/Dockerfile_test_onbuild",
"chars": 198,
"preview": "FROM gcr.io/kaniko-test/onbuild-base:latest\nCOPY context/foo foo\nENV dir /new/workdir/\nARG file\nONBUILD RUN echo \"onbuil"
},
{
"path": "integration/dockerfiles/Dockerfile_test_parent_dir_perms",
"chars": 296,
"preview": "FROM busybox\n\nRUN adduser --disabled-password --gecos \"\" --uid 1000 user\nRUN mkdir -p /home/user/foo\nRUN chown -R user /"
},
{
"path": "integration/dockerfiles/Dockerfile_test_registry",
"chars": 107,
"preview": "FROM busybox@sha256:1bd6df27274fef1dd36eb529d0f4c8033f61c675d6b04213dd913f902f7cafb5\nRUN echo \"hey\" > /hey\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_replaced_hardlinks",
"chars": 92,
"preview": "FROM jboss/base-jdk@sha256:70d956f632c26d1f1df57cbb99870a6141cfe470de0eb2d51bccd44929df9367\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_replaced_symlinks",
"chars": 92,
"preview": "FROM alpine@sha256:ab00606a42621fb68f2ed6ad3c88be54397f981a7b70a79db3d1172b11c4367d\nRUN pwd\n"
},
{
"path": "integration/dockerfiles/Dockerfile_test_run",
"chars": 820,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_run_2",
"chars": 738,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_run_new",
"chars": 820,
"preview": "# Copyright 2020 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_run_redo",
"chars": 820,
"preview": "# Copyright 2020 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_scratch",
"chars": 399,
"preview": "ARG image\nFROM ${image}\n# First, make sure simple arg replacement works\nARG file\nCOPY $file /foo\n# Check that setting a "
},
{
"path": "integration/dockerfiles/Dockerfile_test_snapshotter_ignorelist",
"chars": 110,
"preview": "FROM alpine@sha256:def822f9851ca422481ec6fee59a9966f12b351c62ccb9aca841526ffaa9f748\nRUN ln -s /dev/null /hello"
},
{
"path": "integration/dockerfiles/Dockerfile_test_target",
"chars": 190,
"preview": "FROM gcr.io/distroless/base:latest as base\nCOPY . .\n\nFROM scratch as second\nENV foopath context/foo\nCOPY --from=0 $foopa"
},
{
"path": "integration/dockerfiles/Dockerfile_test_user",
"chars": 641,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_user_home",
"chars": 1011,
"preview": "# Copyright 2020 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_user_nonexisting",
"chars": 806,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_user_run",
"chars": 950,
"preview": "# Copyright 2018 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles/Dockerfile_test_volume",
"chars": 161,
"preview": "FROM debian:10.13\nRUN mkdir /foo\nRUN echo \"hello\" > /foo/hey\nVOLUME /foo/bar /tmp /qux/quux\nENV VOL /baz/bat\nVOLUME [\"${"
},
{
"path": "integration/dockerfiles/Dockerfile_test_volume_2",
"chars": 234,
"preview": "FROM debian:10.13\nVOLUME /foo1\nRUN echo \"hello\" > /foo1/hello\nWORKDIR /foo1/bar\nADD context/foo /foo1/foo\nCOPY context/f"
},
{
"path": "integration/dockerfiles/Dockerfile_test_volume_3",
"chars": 161,
"preview": "FROM scratch as one\nVOLUME /vol\n\nFROM alpine@sha256:5ce5f501c457015c4b91f91a15ac69157d9b06f1a75cf9107bf2b62e0843983a as "
},
{
"path": "integration/dockerfiles/Dockerfile_test_volume_4",
"chars": 266,
"preview": "FROM rabbitmq@sha256:57b028a4bb9592ece3915e3e9cdbbaecb3eb82b753aaaf5250f8d25d81d318e2\n# This base image has a volume dec"
},
{
"path": "integration/dockerfiles/Dockerfile_test_whitelist",
"chars": 419,
"preview": "# Make sure that whitelisting (specifically, filepath.SkipDir) works correctly, and that /var/test/testfile and\n# /etc/t"
},
{
"path": "integration/dockerfiles/Dockerfile_test_workdir",
"chars": 419,
"preview": "FROM debian:10.13\nCOPY context/foo foo\nWORKDIR test\n# Test that this will be appended on to the previous command, to cre"
},
{
"path": "integration/dockerfiles/Dockerfile_test_workdir_with_user",
"chars": 660,
"preview": "FROM debian:10.13\nRUN groupadd -g 10000 bar\nRUN useradd -c \"Foo user\" -u 10000 -g 10000 -m foo\n\n\n# no passwd file\nFROM s"
},
{
"path": "integration/dockerfiles/TestReplaceFolderWithFile",
"chars": 141,
"preview": "# Not prefixed Dockerfile_test to exclude it from TestRun()\nFROM busybox\n\nRUN mkdir /a /b /c && echo a > /a/d\nRUN rm -r "
},
{
"path": "integration/dockerfiles/TestReplaceFolderWithLink",
"chars": 138,
"preview": "# Not prefixed Dockerfile_test to exclude it from TestRun()\nFROM busybox\n\nRUN mkdir /a /b /c && echo a > /a/d\nRUN rm -r "
},
{
"path": "integration/dockerfiles-with-context/issue-1020/Dockerfile",
"chars": 743,
"preview": "# Copyright 2020 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles-with-context/issue-1020/package.json",
"chars": 238,
"preview": "{\n \"name\": \"foo\",\n \"version\": \"2.0.0\",\n \"description\": \"Don't forget to sanitize your inputs\",\n \"author\": \"Little Bo"
},
{
"path": "integration/dockerfiles-with-context/issue-1315/Dockerfile",
"chars": 1113,
"preview": "# Copyright 2021 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles-with-context/issue-2075/Dockerfile",
"chars": 1027,
"preview": "# Copyright 2022 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles-with-context/issue-57/Dockerfile",
"chars": 1326,
"preview": "# Copyright 2020 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles-with-context/issue-57/a.txt",
"chars": 0,
"preview": ""
},
{
"path": "integration/dockerfiles-with-context/issue-57/b.txt",
"chars": 0,
"preview": ""
},
{
"path": "integration/dockerfiles-with-context/issue-721/Dockerfile",
"chars": 630,
"preview": "# Copyright 2020 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles-with-context/issue-721/test.txt",
"chars": 5,
"preview": "meow\n"
},
{
"path": "integration/dockerfiles-with-context/issue-774/Dockerfile",
"chars": 658,
"preview": "# Copyright 2020 Google, Inc. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n#"
},
{
"path": "integration/dockerfiles-with-context/issue-774/test-file",
"chars": 0,
"preview": ""
},
{
"path": "integration/ignore/bar",
"chars": 0,
"preview": ""
},
{
"path": "integration/ignore/baz",
"chars": 0,
"preview": ""
},
{
"path": "integration/ignore/foo",
"chars": 0,
"preview": ""
},
{
"path": "integration/ignore_relative/bar",
"chars": 0,
"preview": ""
},
{
"path": "integration/ignore_relative/baz",
"chars": 0,
"preview": ""
},
{
"path": "integration/ignore_relative/foo",
"chars": 0,
"preview": ""
},
{
"path": "integration/images.go",
"chars": 18194,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/integration_test.go",
"chars": 35998,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/integration_with_context_test.go",
"chars": 1842,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/integration_with_stdin_test.go",
"chars": 4049,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/k8s-job.yaml",
"chars": 542,
"preview": "apiVersion: batch/v1\nkind: Job\nmetadata:\n name: kaniko-test-{{.Name}}\nspec:\n template:\n spec:\n hostNetwork: tr"
},
{
"path": "integration/k8s_test.go",
"chars": 3730,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
},
{
"path": "integration/tar.go",
"chars": 1704,
"preview": "/*\nCopyright 2018 Google LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file "
}
]
// ... and 6491 more files (download for full content)
About this extraction
This page contains the full source code of the GoogleContainerTools/kaniko GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 6691 files (67.8 MB), approximately 4.4M tokens, and a symbol index with 19500 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.