You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2019/01/07 14:25:38 UTC

[camel-k] 01/13: Fix #237: initial migration to operator-sdk 0.3.0

This is an automated email from the ASF dual-hosted git repository.

nferraro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git

commit d2fc723d9f8236fd529e952e1ed6d604ce697f2e
Author: nferraro <ni...@gmail.com>
AuthorDate: Fri Jan 4 09:25:45 2019 +0100

    Fix #237: initial migration to operator-sdk 0.3.0
---
 Gopkg.lock                                         |   493 +-
 Gopkg.toml                                         |    36 +-
 Makefile                                           |     2 +-
 build/Dockerfile                                   |     7 +
 build/Makefile                                     |    81 -
 build/embed_resources.sh                           |    47 -
 build/travis_build.sh                              |    72 -
 cmd/camel-k/main.go                                |    97 +-
 cmd/kamel/main.go                                  |     2 -
 config/config.yaml                                 |     3 -
 deploy/resources.go                                |    54 +-
 pkg/apis/addtoscheme_camel_v1alpha1.go             |    10 +
 pkg/apis/addtoscheme_openshift.go                  |     8 +
 pkg/apis/addtoscheme_serving_v1alpha1.go           |    10 +
 pkg/apis/apis.go                                   |    13 +
 pkg/apis/camel/v1alpha1/common_types.go            |    45 +
 pkg/apis/camel/v1alpha1/common_types_support.go    |    40 +
 pkg/apis/camel/v1alpha1/doc.go                     |    21 +-
 pkg/apis/camel/v1alpha1/integration_types.go       |   127 +
 .../camel/v1alpha1/integration_types_support.go    |   124 +
 ...t_test.go => integration_types_support_test.go} |     0
 .../camel/v1alpha1/integrationcontext_types.go     |    68 +
 .../v1alpha1/integrationcontext_types_support.go   |    52 +
 .../camel/v1alpha1/integrationplatform_types.go    |   111 +
 .../v1alpha1/integrationplatform_types_support.go  |    57 +
 pkg/apis/camel/v1alpha1/knative/register.go        |    28 -
 pkg/apis/camel/v1alpha1/register.go                |    58 +-
 pkg/apis/camel/v1alpha1/types.go                   |   385 -
 pkg/apis/camel/v1alpha1/types_support.go           |   153 -
 pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go   |    15 +-
 pkg/builder/builder.go                             |     6 +-
 pkg/builder/builder_steps.go                       |    21 +-
 pkg/builder/builder_types.go                       |     2 +
 pkg/builder/kaniko/publisher.go                    |     7 +-
 pkg/builder/s2i/publisher.go                       |    41 +-
 pkg/client/cmd/completion_bash.go                  |     3 +-
 pkg/client/cmd/context_create.go                   |    19 +-
 pkg/client/cmd/context_delete.go                   |    21 +-
 pkg/client/cmd/context_get.go                      |     8 +-
 pkg/client/cmd/delete.go                           |    13 +-
 pkg/client/cmd/get.go                              |     9 +-
 pkg/client/cmd/install.go                          |    23 +-
 pkg/client/cmd/log.go                              |    19 +-
 pkg/client/cmd/reset.go                            |    30 +-
 pkg/client/cmd/root.go                             |    33 +-
 pkg/client/cmd/run.go                              |    47 +-
 pkg/client/cmd/util.go                             |     9 +-
 pkg/controller/add_integration.go                  |    10 +
 pkg/controller/add_integrationcontext.go           |    10 +
 pkg/controller/add_integrationplatform.go          |    10 +
 pkg/controller/controller.go                       |    18 +
 pkg/controller/integration/action.go               |    48 +
 pkg/controller/integration/build_context.go        |   156 +
 pkg/controller/integration/build_image.go          |   159 +
 pkg/controller/integration/deploy.go               |    78 +
 pkg/controller/integration/initialize.go           |    80 +
 .../integration/integration_controller.go          |   123 +
 pkg/controller/integration/monitor.go              |    66 +
 pkg/controller/integration/util.go                 |    67 +
 pkg/controller/integrationcontext/action.go        |    48 +
 pkg/controller/integrationcontext/build.go         |   152 +
 pkg/controller/integrationcontext/initialize.go    |    69 +
 .../integrationcontext_controller.go               |   107 +
 pkg/controller/integrationcontext/monitor.go       |    60 +
 pkg/controller/integrationplatform/action.go       |    48 +
 pkg/controller/integrationplatform/create.go       |    75 +
 pkg/controller/integrationplatform/initialize.go   |   119 +
 .../integrationplatform_controller.go              |   106 +
 pkg/controller/integrationplatform/start.go        |    86 +
 pkg/install/cluster.go                             |    52 +-
 pkg/install/common.go                              |    34 +-
 pkg/install/operator.go                            |    67 +-
 pkg/platform/platform.go                           |    14 +-
 pkg/stub/action/context/action.go                  |    35 -
 pkg/stub/action/context/build.go                   |   153 -
 pkg/stub/action/context/initialize.go              |    68 -
 pkg/stub/action/context/monitor.go                 |    59 -
 pkg/stub/action/integration/action.go              |    35 -
 pkg/stub/action/integration/build_context.go       |   155 -
 pkg/stub/action/integration/build_image.go         |   155 -
 pkg/stub/action/integration/deploy.go              |    72 -
 pkg/stub/action/integration/initialize.go          |    79 -
 pkg/stub/action/integration/monitor.go             |    65 -
 pkg/stub/action/integration/util.go                |    63 -
 pkg/stub/action/platform/action.go                 |    34 -
 pkg/stub/action/platform/create.go                 |    74 -
 pkg/stub/action/platform/initialize.go             |   113 -
 pkg/stub/action/platform/start.go                  |    81 -
 pkg/stub/handler.go                                |    92 -
 pkg/trait/builder_test.go                          |    13 +-
 pkg/trait/catalog.go                               |    16 +-
 pkg/trait/classpath.go                             |     8 +-
 pkg/trait/environment_test.go                      |    11 +-
 pkg/trait/knative.go                               |    10 +-
 pkg/trait/knative_test.go                          |     7 +-
 pkg/trait/trait.go                                 |    22 +-
 pkg/trait/trait_test.go                            |     7 +-
 pkg/trait/types.go                                 |    20 +
 pkg/trait/util.go                                  |    17 +-
 pkg/util/knative/knative.go                        |     7 +-
 pkg/util/kubernetes/config.go                      |     2 +-
 pkg/util/kubernetes/converter.go                   |    32 +
 pkg/util/kubernetes/customclient/customclient.go   |    46 +-
 pkg/util/kubernetes/loader.go                      |    28 +-
 pkg/util/kubernetes/replace.go                     |    19 +-
 pkg/util/kubernetes/util.go                        |    16 +-
 pkg/util/kubernetes/wait.go                        |    12 +-
 pkg/util/log/annotation_scraper.go                 |    22 +-
 pkg/util/log/pod_scraper.go                        |    24 +-
 pkg/util/log/util.go                               |     5 +-
 pkg/util/minishift/minishift.go                    |    17 +-
 pkg/util/openshift/openshift.go                    |     6 +-
 pkg/util/openshift/register.go                     |     9 +-
 pkg/util/watch/watch.go                            |    75 +-
 script/Makefile                                    |    81 +
 {build => script}/cross_compile.sh                 |     0
 script/embed_resources.sh                          |    47 +
 {build => script}/get_version.sh                   |     0
 {build => script}/git_tag.sh                       |     0
 {build => script}/images_build.sh                  |     0
 {build => script}/images_push.sh                   |     0
 {build => script}/install_minikube.sh              |     0
 {build => script}/install_minishift.sh             |     0
 {build => script}/next_snapshot.sh                 |     0
 {build => script}/package_examples.sh              |     0
 {build => script}/package_maven_artifacts.sh       |     0
 {build => script}/prepare_release.sh               |     0
 {build => script}/set_version.sh                   |     0
 script/travis_build.sh                             |    72 +
 test/log_scrape_integration_test.go                |     2 +-
 test/testing_env.go                                |     2 +-
 .../go/asset/apiv1beta1/asset_client.go            |   248 +
 vendor/cloud.google.com/go/asset/apiv1beta1/doc.go |    89 +
 .../go/asset/v1beta1/asset_client.go               |   248 +
 vendor/cloud.google.com/go/asset/v1beta1/doc.go    |    89 +
 .../go/bigquery/benchmarks/bench.go                |    85 +
 vendor/cloud.google.com/go/bigquery/bigquery.go    |   162 +
 vendor/cloud.google.com/go/bigquery/copy.go        |   107 +
 vendor/cloud.google.com/go/bigquery/dataset.go     |   536 +
 .../datatransfer/apiv1/data_transfer_client.go     |   625 +
 .../go/bigquery/datatransfer/apiv1/doc.go          |    90 +
 .../go/bigquery/datatransfer/apiv1/path_funcs.go   |   135 +
 vendor/cloud.google.com/go/bigquery/doc.go         |   310 +
 vendor/cloud.google.com/go/bigquery/error.go       |    83 +
 vendor/cloud.google.com/go/bigquery/external.go    |   400 +
 vendor/cloud.google.com/go/bigquery/extract.go     |   110 +
 vendor/cloud.google.com/go/bigquery/file.go        |   137 +
 vendor/cloud.google.com/go/bigquery/gcs.go         |    75 +
 vendor/cloud.google.com/go/bigquery/inserter.go    |   238 +
 vendor/cloud.google.com/go/bigquery/iterator.go    |   222 +
 vendor/cloud.google.com/go/bigquery/job.go         |   821 +
 vendor/cloud.google.com/go/bigquery/load.go        |   146 +
 vendor/cloud.google.com/go/bigquery/nulls.go       |   320 +
 vendor/cloud.google.com/go/bigquery/params.go      |   356 +
 vendor/cloud.google.com/go/bigquery/query.go       |   328 +
 vendor/cloud.google.com/go/bigquery/random.go      |    56 +
 vendor/cloud.google.com/go/bigquery/schema.go      |   488 +
 vendor/cloud.google.com/go/bigquery/table.go       |   617 +
 vendor/cloud.google.com/go/bigquery/value.go       |   870 +
 vendor/cloud.google.com/go/bigtable/admin.go       |  1135 +
 vendor/cloud.google.com/go/bigtable/bigtable.go    |   914 +
 .../cloud.google.com/go/bigtable/bttest/inmem.go   |  1400 +
 vendor/cloud.google.com/go/bigtable/cmd/cbt/cbt.go |  1614 +
 .../cloud.google.com/go/bigtable/cmd/cbt/cbtdoc.go |   425 +
 .../go/bigtable/cmd/cbt/gcpolicy.go                |   215 +
 .../go/bigtable/cmd/emulator/cbtemulator.go        |    44 +
 .../go/bigtable/cmd/loadtest/loadtest.go           |   205 +
 .../go/bigtable/cmd/scantest/scantest.go           |   155 +
 vendor/cloud.google.com/go/bigtable/doc.go         |   123 +
 vendor/cloud.google.com/go/bigtable/filter.go      |   330 +
 vendor/cloud.google.com/go/bigtable/gc.go          |   167 +
 .../go/bigtable/internal/cbtconfig/cbtconfig.go    |   262 +
 .../go/bigtable/internal/gax/call_option.go        |   110 +
 .../go/bigtable/internal/gax/invoke.go             |    87 +
 .../go/bigtable/internal/option/option.go          |    48 +
 .../go/bigtable/internal/stat/stats.go             |   150 +
 vendor/cloud.google.com/go/bigtable/reader.go      |   249 +
 vendor/cloud.google.com/go/bigtable/trace.go       |    57 +
 vendor/cloud.google.com/go/civil/civil.go          |   277 +
 vendor/cloud.google.com/go/cloud.go                |    79 +
 .../go/cloudtasks/apiv2beta2/cloud_tasks_client.go |   784 +
 .../go/cloudtasks/apiv2beta2/doc.go                |    89 +
 .../go/cloudtasks/apiv2beta3/cloud_tasks_client.go |   665 +
 .../go/cloudtasks/apiv2beta3/doc.go                |    89 +
 .../go/cmd/go-cloud-debug-agent/debuglet.go        |   450 +
 .../internal/breakpoints/breakpoints.go            |   174 +
 .../internal/controller/client.go                  |   291 +
 .../internal/debug/arch/arch.go                    |   186 +
 .../internal/debug/cmd/debugproxy/main.go          |    85 +
 .../internal/debug/dwarf/buf.go                    |   213 +
 .../internal/debug/dwarf/cache.go                  |   277 +
 .../internal/debug/dwarf/const.go                  |   480 +
 .../internal/debug/dwarf/entry.go                  |   417 +
 .../internal/debug/dwarf/frame.go                  |   309 +
 .../internal/debug/dwarf/line.go                   |   463 +
 .../internal/debug/dwarf/open.go                   |   106 +
 .../internal/debug/dwarf/symbol.go                 |   129 +
 .../internal/debug/dwarf/testdata/pclinetest.go    |    23 +
 .../internal/debug/dwarf/testdata/pcsptest.go      |    39 +
 .../internal/debug/dwarf/testdata/typedef.c        |    95 +
 .../internal/debug/dwarf/type.go                   |   877 +
 .../internal/debug/dwarf/typeunit.go               |   181 +
 .../internal/debug/dwarf/unit.go                   |   100 +
 .../go-cloud-debug-agent/internal/debug/elf/elf.go |  2993 +
 .../internal/debug/elf/file.go                     |  1417 +
 .../internal/debug/elf/reader.go                   |   118 +
 .../internal/debug/elf/testdata/hello.c            |     7 +
 .../internal/debug/gosym/pclinetest.h              |     9 +
 .../internal/debug/gosym/pclntab.go                |   472 +
 .../internal/debug/gosym/symtab.go                 |   731 +
 .../internal/debug/local/local.go                  |   205 +
 .../go-cloud-debug-agent/internal/debug/program.go |   327 +
 .../internal/debug/remote/remote.go                |   305 +
 .../internal/debug/server/dwarf.go                 |   112 +
 .../internal/debug/server/eval.go                  |  2115 +
 .../internal/debug/server/peek.go                  |   378 +
 .../internal/debug/server/print.go                 |   548 +
 .../internal/debug/server/protocol/protocol.go     |   174 +
 .../internal/debug/server/ptrace.go                |   157 +
 .../internal/debug/server/server.go                |  1136 +
 .../internal/debug/server/value.go                 |   260 +
 .../internal/debug/tests/peek/doc.go               |    15 +
 .../internal/debug/tests/peek/testdata/main.go     |   203 +
 .../internal/valuecollector/valuecollector.go      |   460 +
 .../go/compute/metadata/metadata.go                |     6 +-
 .../go/container/apiv1/cluster_manager_client.go   |   676 +
 vendor/cloud.google.com/go/container/apiv1/doc.go  |    49 +
 vendor/cloud.google.com/go/container/container.go  |   276 +
 .../container_analysis_v1_beta1_client.go          |   322 +
 .../go/containeranalysis/apiv1beta1/doc.go         |    91 +
 .../apiv1beta1/grafeas_v1_beta1_client.go          |   545 +
 .../go/dataproc/apiv1/cluster_controller_client.go |   609 +
 vendor/cloud.google.com/go/dataproc/apiv1/doc.go   |    89 +
 .../go/dataproc/apiv1/job_controller_client.go     |   301 +
 .../go/dataproc/apiv1/workflow_template_client.go  |   525 +
 .../apiv1beta2/cluster_controller_client.go        |   609 +
 .../cloud.google.com/go/dataproc/apiv1beta2/doc.go |    89 +
 .../dataproc/apiv1beta2/job_controller_client.go   |   301 +
 .../apiv1beta2/workflow_template_client.go         |   525 +
 vendor/cloud.google.com/go/datastore/client.go     |   117 +
 vendor/cloud.google.com/go/datastore/datastore.go  |   645 +
 vendor/cloud.google.com/go/datastore/doc.go        |   490 +
 vendor/cloud.google.com/go/datastore/errors.go     |    47 +
 vendor/cloud.google.com/go/datastore/key.go        |   280 +
 vendor/cloud.google.com/go/datastore/load.go       |   509 +
 vendor/cloud.google.com/go/datastore/mutation.go   |   129 +
 vendor/cloud.google.com/go/datastore/prop.go       |   342 +
 vendor/cloud.google.com/go/datastore/query.go      |   784 +
 vendor/cloud.google.com/go/datastore/save.go       |   470 +
 vendor/cloud.google.com/go/datastore/time.go       |    36 +
 .../cloud.google.com/go/datastore/transaction.go   |   408 +
 .../go/debugger/apiv2/controller2_client.go        |   216 +
 .../go/debugger/apiv2/debugger2_client.go          |   212 +
 vendor/cloud.google.com/go/debugger/apiv2/doc.go   |    93 +
 .../go/dialogflow/apiv2/agents_client.go           |   603 +
 .../go/dialogflow/apiv2/contexts_client.go         |   297 +
 vendor/cloud.google.com/go/dialogflow/apiv2/doc.go |    90 +
 .../go/dialogflow/apiv2/entity_types_client.go     |   722 +
 .../go/dialogflow/apiv2/intents_client.go          |   486 +
 .../apiv2/session_entity_types_client.go           |   278 +
 .../go/dialogflow/apiv2/sessions_client.go         |   144 +
 vendor/cloud.google.com/go/dlp/apiv2/dlp_client.go |  1036 +
 vendor/cloud.google.com/go/dlp/apiv2/doc.go        |    90 +
 .../go/errorreporting/apiv1beta1/doc.go            |    93 +
 .../apiv1beta1/error_group_client.go               |   152 +
 .../apiv1beta1/error_stats_client.go               |   299 +
 .../go/errorreporting/apiv1beta1/path_funcs.go     |    51 +
 .../apiv1beta1/report_errors_client.go             |   124 +
 .../cloud.google.com/go/errorreporting/errors.go   |   231 +
 .../go/expr/apiv1alpha1/cel_client.go              |   160 +
 .../go/expr/apiv1alpha1/conformance_client.go      |   160 +
 vendor/cloud.google.com/go/expr/apiv1alpha1/doc.go |    87 +
 .../go/firestore/apiv1beta1/doc.go                 |    91 +
 .../go/firestore/apiv1beta1/firestore_client.go    |   503 +
 .../go/firestore/apiv1beta1/path_funcs.go          |    78 +
 vendor/cloud.google.com/go/firestore/client.go     |   280 +
 vendor/cloud.google.com/go/firestore/collref.go    |   123 +
 vendor/cloud.google.com/go/firestore/doc.go        |   218 +
 vendor/cloud.google.com/go/firestore/docref.go     |   706 +
 vendor/cloud.google.com/go/firestore/document.go   |   322 +
 vendor/cloud.google.com/go/firestore/fieldpath.go  |   277 +
 vendor/cloud.google.com/go/firestore/from_value.go |   430 +
 .../go/firestore/genproto/test.pb.go               |  1853 +
 .../go/firestore/internal/doc-snippets.go          |   161 +
 .../go/firestore/list_documents.go                 |   104 +
 vendor/cloud.google.com/go/firestore/options.go    |   175 +
 vendor/cloud.google.com/go/firestore/order.go      |   216 +
 vendor/cloud.google.com/go/firestore/query.go      |   781 +
 vendor/cloud.google.com/go/firestore/to_value.go   |   299 +
 .../cloud.google.com/go/firestore/transaction.go   |   282 +
 vendor/cloud.google.com/go/firestore/watch.go      |   519 +
 vendor/cloud.google.com/go/firestore/writebatch.go |    81 +
 .../cloud.google.com/go/functions/metadata/doc.go  |    19 +
 .../go/functions/metadata/metadata.go              |    98 +
 .../go/httpreplay/cmd/httpr/httpr.go               |   110 +
 .../cloud.google.com/go/httpreplay/httpreplay.go   |   129 +
 .../go/httpreplay/internal/proxy/debug.go          |    61 +
 .../go/httpreplay/internal/proxy/log.go            |   232 +
 .../go/httpreplay/internal/proxy/record.go         |   188 +
 .../go/httpreplay/internal/proxy/replay.go         |   313 +
 vendor/cloud.google.com/go/iam/admin/apiv1/doc.go  |    92 +
 .../go/iam/admin/apiv1/iam_client.go               |   475 +
 .../go/iam/admin/apiv1/path_funcs.go               |    45 +
 .../go/iam/admin/apiv1/policy_methods.go           |    53 +
 .../go/iam/credentials/apiv1/doc.go                |    89 +
 .../credentials/apiv1/iam_credentials_client.go    |   214 +
 vendor/cloud.google.com/go/iam/iam.go              |   292 +
 vendor/cloud.google.com/go/internal/annotate.go    |    54 +
 vendor/cloud.google.com/go/internal/btree/btree.go |  1021 +
 vendor/cloud.google.com/go/internal/btree/debug.go |    37 +
 .../cloud.google.com/go/internal/fields/fields.go  |   480 +
 vendor/cloud.google.com/go/internal/fields/fold.go |   156 +
 .../go/internal/leakcheck/leakcheck.go             |   119 +
 .../go/internal/optional/optional.go               |   108 +
 vendor/cloud.google.com/go/internal/pretty/diff.go |    78 +
 .../cloud.google.com/go/internal/pretty/pretty.go  |   255 +
 .../go/internal/protostruct/protostruct.go         |    56 +
 vendor/cloud.google.com/go/internal/retry.go       |    54 +
 .../cloud.google.com/go/internal/testutil/cmp.go   |    61 +
 .../go/internal/testutil/context.go                |   106 +
 .../cloud.google.com/go/internal/testutil/rand.go  |    44 +
 .../go/internal/testutil/server.go                 |   135 +
 .../cloud.google.com/go/internal/testutil/trace.go |    68 +
 vendor/cloud.google.com/go/internal/trace/trace.go |    84 +
 .../go/internal/tracecontext/tracecontext.go       |    83 +
 vendor/cloud.google.com/go/internal/uid/uid.go     |   149 +
 .../go/internal/version/version.go                 |    71 +
 vendor/cloud.google.com/go/kms/apiv1/doc.go        |    89 +
 vendor/cloud.google.com/go/kms/apiv1/iam.go        |    30 +
 .../go/kms/apiv1/key_management_client.go          |   725 +
 vendor/cloud.google.com/go/language/apiv1/doc.go   |    90 +
 .../go/language/apiv1/language_client.go           |   230 +
 .../cloud.google.com/go/language/apiv1beta2/doc.go |    91 +
 .../go/language/apiv1beta2/language_client.go      |   230 +
 .../go/logging/apiv2/config_client.go              |   427 +
 vendor/cloud.google.com/go/logging/apiv2/doc.go    |    95 +
 .../go/logging/apiv2/logging_client.go             |   407 +
 .../go/logging/apiv2/metrics_client.go             |   268 +
 .../go/logging/apiv2/path_funcs.go                 |   107 +
 vendor/cloud.google.com/go/logging/doc.go          |   134 +
 .../cloud.google.com/go/logging/internal/common.go |    41 +
 .../go/logging/internal/testing/equal.go           |    41 +
 .../go/logging/internal/testing/fake.go            |   438 +
 .../go/logging/logadmin/logadmin.go                |   405 +
 .../go/logging/logadmin/metrics.go                 |   154 +
 .../go/logging/logadmin/resources.go               |    75 +
 .../cloud.google.com/go/logging/logadmin/sinks.go  |   256 +
 vendor/cloud.google.com/go/logging/logging.go      |   842 +
 .../cloud.google.com/go/longrunning/autogen/doc.go |    88 +
 .../go/longrunning/autogen/from_conn.go            |    34 +
 .../go/longrunning/autogen/operations_client.go    |   271 +
 .../cloud.google.com/go/longrunning/longrunning.go |   179 +
 .../go/monitoring/apiv3/alert_policy_client.go     |   278 +
 vendor/cloud.google.com/go/monitoring/apiv3/doc.go |    94 +
 .../go/monitoring/apiv3/group_client.go            |   361 +
 .../go/monitoring/apiv3/metric_client.go           |   452 +
 .../apiv3/notification_channel_client.go           |   375 +
 .../go/monitoring/apiv3/path_funcs.go              |   107 +
 .../go/monitoring/apiv3/uptime_check_client.go     |   361 +
 vendor/cloud.google.com/go/oslogin/apiv1/doc.go    |    92 +
 .../go/oslogin/apiv1/os_login_client.go            |   223 +
 .../cloud.google.com/go/oslogin/apiv1beta/doc.go   |    92 +
 .../go/oslogin/apiv1beta/os_login_client.go        |   223 +
 .../go/profiler/busybench/busybench.go             |   101 +
 vendor/cloud.google.com/go/profiler/heap.go        |   116 +
 .../go/profiler/mocks/mock_profiler_client.go      |   105 +
 vendor/cloud.google.com/go/profiler/mutex.go       |    23 +
 vendor/cloud.google.com/go/profiler/profiler.go    |   529 +
 .../go/profiler/proftest/proftest.go               |   556 +
 vendor/cloud.google.com/go/profiler/symbolizer.go  |   140 +
 .../go/profiler/testdata/testdata.go               |   126 +
 vendor/cloud.google.com/go/pubsub/apiv1/doc.go     |    93 +
 vendor/cloud.google.com/go/pubsub/apiv1/iam.go     |    36 +
 .../cloud.google.com/go/pubsub/apiv1/path_funcs.go |    95 +
 .../go/pubsub/apiv1/publisher_client.go            |   391 +
 .../go/pubsub/apiv1/subscriber_client.go           |   606 +
 vendor/cloud.google.com/go/pubsub/debug.go         |    72 +
 vendor/cloud.google.com/go/pubsub/doc.go           |   137 +
 .../cloud.google.com/go/pubsub/flow_controller.go  |   122 +
 .../pubsub/internal/distribution/distribution.go   |    69 +
 vendor/cloud.google.com/go/pubsub/iterator.go      |   498 +
 .../go/pubsub/loadtest/cmd/loadtest.go             |    53 +
 .../go/pubsub/loadtest/loadtest.go                 |   220 +
 .../go/pubsub/loadtest/pb/loadtest.pb.go           |   793 +
 vendor/cloud.google.com/go/pubsub/message.go       |   100 +
 vendor/cloud.google.com/go/pubsub/nodebug.go       |    25 +
 vendor/cloud.google.com/go/pubsub/pstest/fake.go   |   996 +
 vendor/cloud.google.com/go/pubsub/pubsub.go        |   111 +
 vendor/cloud.google.com/go/pubsub/pullstream.go    |   182 +
 vendor/cloud.google.com/go/pubsub/service.go       |    78 +
 vendor/cloud.google.com/go/pubsub/snapshot.go      |   160 +
 vendor/cloud.google.com/go/pubsub/subscription.go  |   587 +
 vendor/cloud.google.com/go/pubsub/topic.go         |   463 +
 vendor/cloud.google.com/go/pubsub/trace.go         |   157 +
 .../go/redis/apiv1/cloud_redis_client.go           |   519 +
 vendor/cloud.google.com/go/redis/apiv1/doc.go      |    90 +
 .../go/redis/apiv1beta1/cloud_redis_client.go      |   520 +
 vendor/cloud.google.com/go/redis/apiv1beta1/doc.go |    91 +
 vendor/cloud.google.com/go/rpcreplay/doc.go        |   145 +
 .../go/rpcreplay/proto/intstore/intstore.pb.go     |   455 +
 .../go/rpcreplay/proto/rpcreplay/rpcreplay.pb.go   |   170 +
 vendor/cloud.google.com/go/rpcreplay/rpcreplay.go  |   716 +
 .../scheduler/apiv1beta1/cloud_scheduler_client.go |   344 +
 .../go/scheduler/apiv1beta1/doc.go                 |    89 +
 .../go/securitycenter/apiv1beta1/doc.go            |    89 +
 .../apiv1beta1/security_center_client.go           |   792 +
 .../admin/database/apiv1/database_admin_client.go  |   520 +
 .../go/spanner/admin/database/apiv1/doc.go         |    89 +
 .../go/spanner/admin/database/apiv1/path_funcs.go  |    45 +
 .../go/spanner/admin/instance/apiv1/doc.go         |    89 +
 .../admin/instance/apiv1/instance_admin_client.go  |   706 +
 .../go/spanner/admin/instance/apiv1/path_funcs.go  |    55 +
 vendor/cloud.google.com/go/spanner/apiv1/doc.go    |    93 +
 .../go/spanner/apiv1/path_funcs.go                 |    49 +
 .../go/spanner/apiv1/spanner_client.go             |   510 +
 vendor/cloud.google.com/go/spanner/appengine.go    |    20 +
 vendor/cloud.google.com/go/spanner/backoff.go      |    58 +
 vendor/cloud.google.com/go/spanner/batch.go        |   347 +
 vendor/cloud.google.com/go/spanner/client.go       |   443 +
 vendor/cloud.google.com/go/spanner/doc.go          |   328 +
 vendor/cloud.google.com/go/spanner/errors.go       |   115 +
 .../go/spanner/internal/testutil/mockclient.go     |   381 +
 .../go/spanner/internal/testutil/mockserver.go     |   265 +
 vendor/cloud.google.com/go/spanner/key.go          |   397 +
 vendor/cloud.google.com/go/spanner/mutation.go     |   430 +
 .../cloud.google.com/go/spanner/not_appengine.go   |    20 +
 vendor/cloud.google.com/go/spanner/pdml.go         |   101 +
 vendor/cloud.google.com/go/spanner/protoutils.go   |   113 +
 vendor/cloud.google.com/go/spanner/read.go         |   731 +
 vendor/cloud.google.com/go/spanner/retry.go        |   199 +
 vendor/cloud.google.com/go/spanner/row.go          |   308 +
 vendor/cloud.google.com/go/spanner/session.go      |  1093 +
 vendor/cloud.google.com/go/spanner/statement.go    |    92 +
 .../cloud.google.com/go/spanner/timestampbound.go  |   240 +
 vendor/cloud.google.com/go/spanner/trace.go        |    81 +
 vendor/cloud.google.com/go/spanner/transaction.go  |   913 +
 vendor/cloud.google.com/go/spanner/util.go         |    33 +
 vendor/cloud.google.com/go/spanner/value.go        |  1608 +
 vendor/cloud.google.com/go/speech/apiv1/doc.go     |    88 +
 .../go/speech/apiv1/speech_client.go               |   264 +
 .../cloud.google.com/go/speech/apiv1p1beta1/doc.go |    89 +
 .../go/speech/apiv1p1beta1/speech_client.go        |   264 +
 vendor/cloud.google.com/go/storage/acl.go          |   335 +
 vendor/cloud.google.com/go/storage/bucket.go       |  1129 +
 vendor/cloud.google.com/go/storage/copy.go         |   228 +
 vendor/cloud.google.com/go/storage/doc.go          |   176 +
 vendor/cloud.google.com/go/storage/go110.go        |    32 +
 vendor/cloud.google.com/go/storage/iam.go          |   130 +
 vendor/cloud.google.com/go/storage/invoke.go       |    37 +
 vendor/cloud.google.com/go/storage/not_go110.go    |    42 +
 .../cloud.google.com/go/storage/notifications.go   |   188 +
 vendor/cloud.google.com/go/storage/reader.go       |   385 +
 vendor/cloud.google.com/go/storage/storage.go      |  1123 +
 vendor/cloud.google.com/go/storage/writer.go       |   261 +
 .../cloud.google.com/go/texttospeech/apiv1/doc.go  |    90 +
 .../go/texttospeech/apiv1/text_to_speech_client.go |   153 +
 vendor/cloud.google.com/go/trace/apiv1/doc.go      |    97 +
 .../go/trace/apiv1/trace_client.go                 |   239 +
 vendor/cloud.google.com/go/trace/apiv2/doc.go      |    94 +
 .../cloud.google.com/go/trace/apiv2/path_funcs.go  |    43 +
 .../go/trace/apiv2/trace_client.go                 |   152 +
 vendor/cloud.google.com/go/trace/grpc.go           |   111 +
 vendor/cloud.google.com/go/trace/http.go           |   114 +
 vendor/cloud.google.com/go/trace/sampling.go       |   127 +
 .../go/trace/testdata/helloworld/helloworld.pb.go  |   162 +
 vendor/cloud.google.com/go/trace/trace.go          |   758 +
 .../internal/translate/v2/translate-nov2016-gen.go |   789 +
 vendor/cloud.google.com/go/translate/translate.go  |   236 +
 .../go/videointelligence/apiv1/doc.go              |    89 +
 .../apiv1/video_intelligence_client.go             |   226 +
 .../go/videointelligence/apiv1beta1/doc.go         |    89 +
 .../apiv1beta1/video_intelligence_client.go        |   226 +
 .../go/videointelligence/apiv1beta2/doc.go         |    89 +
 .../apiv1beta2/video_intelligence_client.go        |   226 +
 .../go/videointelligence/apiv1beta2/whitelist.go   |    16 +
 vendor/cloud.google.com/go/vision/apiv1/client.go  |   170 +
 vendor/cloud.google.com/go/vision/apiv1/doc.go     |    92 +
 vendor/cloud.google.com/go/vision/apiv1/face.go    |   153 +
 vendor/cloud.google.com/go/vision/apiv1/image.go   |    37 +
 .../go/vision/apiv1/image_annotator_client.go      |   248 +
 .../go/vision/apiv1/product_search_client.go       |   875 +
 .../cloud.google.com/go/vision/apiv1p1beta1/doc.go |    93 +
 .../vision/apiv1p1beta1/image_annotator_client.go  |   135 +
 .../github.com/beorn7/perks/histogram/histogram.go |   108 +
 vendor/github.com/beorn7/perks/topk/topk.go        |    90 +
 .../davecgh/go-spew/spew/testdata/dumpcgo.go       |    82 +
 .../examples/google_app_engine/datastore/main.go   |   267 +
 .../restful-appstats-integration.go                |    12 +
 .../google_app_engine/restful-user-service.go      |   162 +
 .../go-restful/examples/msgpack/msgpack_entity.go  |    34 +
 .../go-restful/examples/restful-CORS-filter.go     |    68 +
 .../go-restful/examples/restful-NCSA-logging.go    |    54 +
 .../examples/restful-basic-authentication.go       |    35 +
 .../examples/restful-cpuprofiler-service.go        |    65 +
 .../go-restful/examples/restful-curly-router.go    |   107 +
 .../go-restful/examples/restful-encoding-filter.go |    61 +
 .../go-restful/examples/restful-filters.go         |   114 +
 .../go-restful/examples/restful-form-handling.go   |    63 +
 .../go-restful/examples/restful-hello-world.go     |    23 +
 .../go-restful/examples/restful-html-template.go   |    35 +
 .../examples/restful-multi-containers.go           |    43 +
 .../go-restful/examples/restful-no-cache-filter.go |    25 +
 .../go-restful/examples/restful-openapi.go         |   178 +
 .../go-restful/examples/restful-options-filter.go  |    51 +
 .../go-restful/examples/restful-path-tail.go       |    27 +
 .../examples/restful-pre-post-filters.go           |    98 +
 .../examples/restful-resource-functions.go         |    63 +
 .../go-restful/examples/restful-serve-static.go    |    47 +
 .../go-restful/examples/restful-swagger.go         |    61 +
 .../go-restful/examples/restful-user-resource.go   |   169 +
 .../evanphx/json-patch/cmd/json-patch/file_flag.go |    39 +
 .../evanphx/json-patch/cmd/json-patch/main.go      |    56 +
 vendor/github.com/go-logr/logr/LICENSE             |   201 +
 .../github.com/go-logr/logr/examples/tab_logger.go |    74 +
 .../go-logr/logr/examples/usage_example.go         |   149 +
 vendor/github.com/go-logr/logr/logr.go             |   151 +
 vendor/github.com/go-logr/logr/testing/null.go     |    32 +
 vendor/github.com/go-logr/logr/testing/test.go     |    39 +
 vendor/github.com/go-logr/zapr/LICENSE             |   201 +
 vendor/github.com/go-logr/zapr/zapr.go             |   163 +
 vendor/github.com/go-openapi/spec/operation.go     |   131 +
 vendor/github.com/go-openapi/spec/ref.go           |    24 +
 vendor/github.com/go-openapi/swag/net.go           |    14 +
 vendor/github.com/go-openapi/swag/post_go18.go     |    14 +
 vendor/github.com/go-openapi/swag/post_go19.go     |    14 +
 vendor/github.com/go-openapi/swag/pre_go18.go      |    14 +
 vendor/github.com/go-openapi/swag/pre_go19.go      |    14 +
 vendor/github.com/go-openapi/swag/util.go          |    43 +-
 vendor/github.com/go-openapi/swag/yaml.go          |     1 -
 vendor/github.com/gobuffalo/envy/envy.go           |    25 +
 .../gobuffalo/envy/packrd/packed-packr.go          |    21 +
 vendor/github.com/gobuffalo/envy/version.go        |     2 +-
 vendor/github.com/gogo/protobuf/LICENSE            |     5 +-
 vendor/github.com/gogo/protobuf/codec/codec.go     |    91 +
 .../gogo/protobuf/conformance/conformance.go       |   154 +
 .../internal/conformance_proto/conformance.pb.go   |  1814 +
 vendor/github.com/gogo/protobuf/gogoproto/doc.go   |   169 +
 .../github.com/gogo/protobuf/gogoproto/gogo.pb.go  |   872 +
 .../github.com/gogo/protobuf/gogoproto/helper.go   |   415 +
 .../github.com/gogo/protobuf/gogoreplace/main.go   |    25 +
 vendor/github.com/gogo/protobuf/io/full.go         |   102 +
 vendor/github.com/gogo/protobuf/io/io.go           |    70 +
 vendor/github.com/gogo/protobuf/io/uint32.go       |   138 +
 vendor/github.com/gogo/protobuf/io/varint.go       |   133 +
 vendor/github.com/gogo/protobuf/jsonpb/jsonpb.go   |  1416 +
 .../protobuf/jsonpb/jsonpb_test_proto/bytes.go     |     7 +
 .../jsonpb_test_proto/more_test_objects.pb.go      |   368 +
 .../jsonpb/jsonpb_test_proto/test_objects.pb.go    |  1357 +
 .../gogo/protobuf/plugin/compare/compare.go        |   526 +
 .../gogo/protobuf/plugin/compare/comparetest.go    |   118 +
 .../protobuf/plugin/defaultcheck/defaultcheck.go   |   133 +
 .../protobuf/plugin/description/description.go     |   201 +
 .../protobuf/plugin/description/descriptiontest.go |    73 +
 .../gogo/protobuf/plugin/embedcheck/embedcheck.go  |   200 +
 .../protobuf/plugin/enumstringer/enumstringer.go   |   104 +
 .../github.com/gogo/protobuf/plugin/equal/equal.go |   694 +
 .../gogo/protobuf/plugin/equal/equaltest.go        |   109 +
 .../github.com/gogo/protobuf/plugin/face/face.go   |   233 +
 .../gogo/protobuf/plugin/face/facetest.go          |    82 +
 .../gogo/protobuf/plugin/gostring/gostring.go      |   386 +
 .../gogo/protobuf/plugin/gostring/gostringtest.go  |    90 +
 .../gogo/protobuf/plugin/marshalto/marshalto.go    |  1357 +
 .../gogo/protobuf/plugin/oneofcheck/oneofcheck.go  |    93 +
 .../gogo/protobuf/plugin/populate/populate.go      |   815 +
 .../github.com/gogo/protobuf/plugin/size/size.go   |   701 +
 .../gogo/protobuf/plugin/size/sizetest.go          |   134 +
 .../gogo/protobuf/plugin/stringer/stringer.go      |   296 +
 .../gogo/protobuf/plugin/stringer/stringertest.go  |    83 +
 .../gogo/protobuf/plugin/testgen/testgen.go        |   608 +
 .../github.com/gogo/protobuf/plugin/union/union.go |   209 +
 .../gogo/protobuf/plugin/union/uniontest.go        |    86 +
 .../gogo/protobuf/plugin/unmarshal/unmarshal.go    |  1647 +
 vendor/github.com/gogo/protobuf/proto/encode.go    |    18 -
 vendor/github.com/gogo/protobuf/proto/lib.go       |    80 +-
 .../gogo/protobuf/proto/pointer_unsafe_gogo.go     |     2 +-
 .../github.com/gogo/protobuf/proto/properties.go   |    30 +-
 .../gogo/protobuf/proto/proto3_proto/proto3.pb.go  |   611 +
 .../gogo/protobuf/proto/table_marshal.go           |   313 +-
 .../gogo/protobuf/proto/table_unmarshal.go         |   255 +-
 .../gogo/protobuf/proto/test_proto/test.pb.go      |  5268 ++
 vendor/github.com/gogo/protobuf/proto/text.go      |     4 +-
 .../github.com/gogo/protobuf/proto/text_parser.go  |    26 +-
 vendor/github.com/gogo/protobuf/proto/wrappers.go  |  1888 +
 .../gogo/protobuf/proto/wrappers_gogo.go           |   113 +
 .../gogo/protobuf/protoc-gen-combo/combo.go        |   172 +
 .../gogo/protobuf/protoc-gen-gofast/main.go        |    48 +
 .../protoc-gen-gogo/descriptor/descriptor.go       |   118 +
 .../protoc-gen-gogo/descriptor/descriptor.pb.go    |  2806 +
 .../descriptor/descriptor_gostring.gen.go          |   744 +
 .../protobuf/protoc-gen-gogo/descriptor/helper.go  |   390 +
 .../gogo/protobuf/protoc-gen-gogo/doc.go           |    51 +
 .../protoc-gen-gogo/generator/generator.go         |  3948 ++
 .../protobuf/protoc-gen-gogo/generator/helper.go   |   460 +
 .../generator/internal/remap/remap.go              |   117 +
 .../gogo/protobuf/protoc-gen-gogo/grpc/grpc.go     |   484 +
 .../gogo/protobuf/protoc-gen-gogo/main.go          |    57 +
 .../protobuf/protoc-gen-gogo/plugin/plugin.pb.go   |   363 +
 .../testdata/deprecated/deprecated.pb.go           |   234 +
 .../testdata/extension_base/extension_base.pb.go   |   138 +
 .../testdata/extension_extra/extension_extra.pb.go |    78 +
 .../testdata/extension_user/extension_user.pb.go   |   401 +
 .../protoc-gen-gogo/testdata/grpc/grpc.pb.go       |   444 +
 .../protoc-gen-gogo/testdata/import_public/a.pb.go |   110 +
 .../protoc-gen-gogo/testdata/import_public/b.pb.go |    87 +
 .../testdata/import_public/sub/a.pb.go             |   100 +
 .../testdata/import_public/sub/b.pb.go             |    67 +
 .../protoc-gen-gogo/testdata/imports/fmt/m.pb.go   |    66 +
 .../testdata/imports/test_a_1/m1.pb.go             |   130 +
 .../testdata/imports/test_a_1/m2.pb.go             |    66 +
 .../testdata/imports/test_a_2/m3.pb.go             |    66 +
 .../testdata/imports/test_a_2/m4.pb.go             |    66 +
 .../testdata/imports/test_b_1/m1.pb.go             |    67 +
 .../testdata/imports/test_b_1/m2.pb.go             |    67 +
 .../testdata/imports/test_import_a1m1.pb.go        |    80 +
 .../testdata/imports/test_import_a1m2.pb.go        |    80 +
 .../testdata/imports/test_import_all.pb.go         |   138 +
 .../protoc-gen-gogo/testdata/my_test/test.pb.go    |  1174 +
 .../protoc-gen-gogo/testdata/proto3/proto3.pb.go   |   195 +
 .../gogo/protobuf/protoc-gen-gogofast/main.go      |    47 +
 .../gogo/protobuf/protoc-gen-gogofaster/main.go    |    52 +
 .../gogo/protobuf/protoc-gen-gogoslick/main.go     |    61 +
 .../gogo/protobuf/protoc-gen-gogotypes/main.go     |    76 +
 .../gogo/protobuf/protoc-gen-gostring/main.go      |    42 +
 .../gogo/protobuf/protoc-min-version/minversion.go |    67 +
 .../protobuf/test/asymetric-issue125/asym.pb.go    |   638 +
 .../gogo/protobuf/test/asymetric-issue125/pop.go   |    65 +
 .../gogo/protobuf/test/cachedsize/cachedsize.pb.go |   282 +
 .../test/casttype/combos/both/casttype.pb.go       |  2615 +
 .../test/casttype/combos/marshaler/casttype.pb.go  |  1660 +
 .../test/casttype/combos/neither/casttype.pb.go    |  1437 +
 .../casttype/combos/unmarshaler/casttype.pb.go     |  2393 +
 .../gogo/protobuf/test/casttype/mytypes.go         |    59 +
 .../gogo/protobuf/test/castvalue/castvalue.pb.go   |   904 +
 .../test/castvalue/combos/both/castvalue.pb.go     |  1485 +
 .../protobuf/test/castvalue/combos/both/mytypes.go |    31 +
 .../castvalue/combos/marshaler/castvalue.pb.go     |  1033 +
 .../test/castvalue/combos/marshaler/mytypes.go     |    31 +
 .../castvalue/combos/unmarshaler/castvalue.pb.go   |  1359 +
 .../test/castvalue/combos/unmarshaler/mytypes.go   |    31 +
 .../gogo/protobuf/test/castvalue/mytypes.go        |    31 +
 .../github.com/gogo/protobuf/test/combos/both/t.go |    77 +
 .../gogo/protobuf/test/combos/both/thetest.pb.go   | 46037 +++++++++++++
 .../gogo/protobuf/test/combos/both/uuid.go         |   137 +
 .../gogo/protobuf/test/combos/marshaler/t.go       |    77 +
 .../protobuf/test/combos/marshaler/thetest.pb.go   | 31684 +++++++++
 .../gogo/protobuf/test/combos/marshaler/uuid.go    |   137 +
 .../gogo/protobuf/test/combos/unmarshaler/t.go     |    73 +
 .../protobuf/test/combos/unmarshaler/thetest.pb.go | 41441 ++++++++++++
 .../gogo/protobuf/test/combos/unmarshaler/uuid.go  |   137 +
 .../protobuf/test/custom-dash-type/customdash.go   |   104 +
 .../github.com/gogo/protobuf/test/custom/custom.go |   154 +
 .../test/custombytesnonstruct/customtype.go        |    36 +
 .../protobuf/test/custombytesnonstruct/proto.pb.go |   293 +
 .../gogo/protobuf/test/dashfilename/doc.go         |     1 +
 .../github.com/gogo/protobuf/test/data/data.pb.go  |   511 +
 .../gogo/protobuf/test/defaultconflict/doc.go      |     1 +
 .../test/deterministic/deterministic.pb.go         |  1331 +
 .../gogo/protobuf/test/embedconflict/doc.go        |     1 +
 .../gogo/protobuf/test/empty-issue70/empty.pb.go   |   223 +
 .../test/enumcustomname/enumcustomname.pb.go       |   330 +
 .../gogo/protobuf/test/enumdecl/enumdecl.pb.go     |   489 +
 .../gogo/protobuf/test/enumdecl/models.go          |     8 +
 .../protobuf/test/enumdecl_all/enumdeclall.pb.go   |   559 +
 .../gogo/protobuf/test/enumdecl_all/models.go      |     8 +
 .../gogo/protobuf/test/enumprefix/enumprefix.pb.go |    79 +
 .../protobuf/test/enumstringer/enumstringer.pb.go  |   635 +
 .../gogo/protobuf/test/enumstringer/string.go      |    41 +
 .../gogo/protobuf/test/example/example.pb.go       |  2700 +
 .../gogo/protobuf/test/filedotname/file.dot.pb.go  |   597 +
 .../gogo/protobuf/test/fuzztests/fuzz.pb.go        |  2968 +
 .../gogo/protobuf/test/group/group.pb.go           |  1034 +
 .../test/importcustom-issue389/imported/a.pb.go    |   446 +
 .../test/importcustom-issue389/imported/b.go       |    55 +
 .../test/importcustom-issue389/importing/c.pb.go   |   460 +
 .../gogo/protobuf/test/importdedup/proto.pb.go     |    83 +
 .../protobuf/test/importdedup/subpkg/customtype.go |    31 +
 .../test/importdedup/subpkg/subproto.pb.go         |    66 +
 .../test/importduplicate/importduplicate.pb.go     |   283 +
 .../test/importduplicate/proto/proto.pb.go         |   196 +
 .../test/importduplicate/sortkeys/sortable.pb.go   |   197 +
 .../test/indeximport-issue72/index/index.pb.go     |   518 +
 .../test/indeximport-issue72/indeximport.pb.go     |   471 +
 .../gogo/protobuf/test/int64support/object.pb.go   |   513 +
 .../gogo/protobuf/test/int64support/object_js.go   |    63 +
 .../gogo/protobuf/test/issue260/issue260.pb.go     |  1076 +
 .../gogo/protobuf/test/issue260/models.go          |    40 +
 .../gogo/protobuf/test/issue261/issue261.pb.go     |   545 +
 .../gogo/protobuf/test/issue262/timefail.pb.go     |   412 +
 .../github.com/gogo/protobuf/test/issue270/doc.go  |     1 +
 .../protobuf/test/issue312/events/events.pb.go     |   225 +
 .../gogo/protobuf/test/issue312/issue312.pb.go     |    79 +
 .../gogo/protobuf/test/issue322/issue322.pb.go     |   607 +
 .../gogo/protobuf/test/issue330/issue330.pb.go     |   436 +
 .../github.com/gogo/protobuf/test/issue330/type.go |    17 +
 .../gogo/protobuf/test/issue34/proto.pb.go         |   383 +
 .../github.com/gogo/protobuf/test/issue411/ids.go  |   222 +
 .../gogo/protobuf/test/issue411/issue411.pb.go     |    72 +
 .../gogo/protobuf/test/issue42order/issue42.pb.go  |   654 +
 .../gogo/protobuf/test/issue435/issue435.pb.go     |   129 +
 .../gogo/protobuf/test/issue438/issue438.pb.go     |   488 +
 .../gogo/protobuf/test/issue444/issue444.pb.go     |   104 +
 .../gogo/protobuf/test/issue449/issue449.pb.go     |   602 +
 .../gogo/protobuf/test/issue498/issue498.pb.go     |   614 +
 .../gogo/protobuf/test/issue8/proto.pb.go          |   375 +
 .../gogo/protobuf/test/jsonpb-gogo/jsonpb_gogo.go  |     1 +
 .../test/mapdefaults/combos/both/map.pb.go         |  1589 +
 .../test/mapdefaults/combos/marshaler/map.pb.go    |  1094 +
 .../test/mapdefaults/combos/neither/map.pb.go      |   948 +
 .../test/mapdefaults/combos/unmarshaler/map.pb.go  |  1443 +
 .../gogo/protobuf/test/mapdefaults/map.pb.go       |   414 +
 .../test/mapsproto2/combos/both/mapsproto2.pb.go   |  8793 +++
 .../mapsproto2/combos/marshaler/mapsproto2.pb.go   |  4653 ++
 .../mapsproto2/combos/neither/mapsproto2.pb.go     |  3721 ++
 .../mapsproto2/combos/unmarshaler/mapsproto2.pb.go |  7862 +++
 .../gogo/protobuf/test/mapsproto2/doc.go           |     1 +
 .../gogo/protobuf/test/merge/merge.pb.go           |   115 +
 .../gogo/protobuf/test/mixbench/mixbench.go        |    58 +
 .../gogo/protobuf/test/moredefaults/md.pb.go       |   363 +
 .../gogo/protobuf/test/nopackage/nopackage.pb.go   |   425 +
 .../gogo/protobuf/test/oneof/combos/both/one.pb.go |  5646 ++
 .../protobuf/test/oneof/combos/marshaler/one.pb.go |  4771 ++
 .../protobuf/test/oneof/combos/neither/one.pb.go   |  4363 ++
 .../test/oneof/combos/unmarshaler/one.pb.go        |  5239 ++
 vendor/github.com/gogo/protobuf/test/oneof/doc.go  |     1 +
 .../protobuf/test/oneof3/combos/both/one.pb.go     |  3424 +
 .../test/oneof3/combos/marshaler/one.pb.go         |  2887 +
 .../protobuf/test/oneof3/combos/neither/one.pb.go  |  2666 +
 .../test/oneof3/combos/unmarshaler/one.pb.go       |  3204 +
 vendor/github.com/gogo/protobuf/test/oneof3/doc.go |     1 +
 .../gogo/protobuf/test/oneofembed/oneofembed.pb.go |   434 +
 vendor/github.com/gogo/protobuf/test/packed/doc.go |     1 +
 .../gogo/protobuf/test/packed/packed.pb.go         |  4697 ++
 .../protobuf/test/proto3extension/proto3ext.pb.go  |    58 +
 .../gogo/protobuf/test/protosize/protosize.pb.go   |   619 +
 .../protobuf/test/required/requiredexample.pb.go   |  2269 +
 .../gogo/protobuf/test/sizerconflict/doc.go        |     1 +
 .../test/sizeunderscore/sizeunderscore.pb.go       |   568 +
 .../gogo/protobuf/test/stdtypes/stdtypes.pb.go     |  4962 ++
 vendor/github.com/gogo/protobuf/test/t.go          |    73 +
 .../test/theproto3/combos/both/theproto3.pb.go     | 11629 ++++
 .../theproto3/combos/marshaler/theproto3.pb.go     |  6561 ++
 .../test/theproto3/combos/neither/theproto3.pb.go  |  5302 ++
 .../theproto3/combos/unmarshaler/theproto3.pb.go   | 10370 +++
 .../github.com/gogo/protobuf/test/theproto3/doc.go |     1 +
 vendor/github.com/gogo/protobuf/test/thetest.pb.go | 27081 ++++++++
 .../gogo/protobuf/test/typedecl/models.go          |    41 +
 .../gogo/protobuf/test/typedecl/typedecl.pb.go     |  1018 +
 .../gogo/protobuf/test/typedecl_all/models.go      |    41 +
 .../protobuf/test/typedecl_all/typedeclall.pb.go   |  1018 +
 .../gogo/protobuf/test/typedeclimport/models.go    |     7 +
 .../test/typedeclimport/subpkg/subpkg.pb.go        |   383 +
 .../test/typedeclimport/typedeclimport.pb.go       |   384 +
 .../protobuf/test/types/combos/both/types.pb.go    | 21345 ++++++
 .../test/types/combos/marshaler/types.pb.go        | 12057 ++++
 .../protobuf/test/types/combos/neither/types.pb.go |  9192 +++
 .../test/types/combos/unmarshaler/types.pb.go      | 18482 ++++++
 .../test/unmarshalmerge/unmarshalmerge.pb.go       |  1596 +
 .../protobuf/test/unrecognized/unrecognized.pb.go  |  4395 ++
 .../test/unrecognizedgroup/unrecognizedgroup.pb.go |  1829 +
 vendor/github.com/gogo/protobuf/test/uuid.go       |   137 +
 .../gogo/protobuf/test/xxxfields/xxxfields.pb.go   |   993 +
 vendor/github.com/gogo/protobuf/types/any.go       |   140 +
 vendor/github.com/gogo/protobuf/types/any.pb.go    |   703 +
 vendor/github.com/gogo/protobuf/types/api.pb.go    |  2067 +
 vendor/github.com/gogo/protobuf/types/doc.go       |    35 +
 vendor/github.com/gogo/protobuf/types/duration.go  |   100 +
 .../github.com/gogo/protobuf/types/duration.pb.go  |   537 +
 .../gogo/protobuf/types/duration_gogo.go           |   100 +
 vendor/github.com/gogo/protobuf/types/empty.pb.go  |   480 +
 .../gogo/protobuf/types/field_mask.pb.go           |   769 +
 vendor/github.com/gogo/protobuf/types/protosize.go |    34 +
 .../gogo/protobuf/types/source_context.pb.go       |   538 +
 vendor/github.com/gogo/protobuf/types/struct.pb.go |  1986 +
 vendor/github.com/gogo/protobuf/types/timestamp.go |   132 +
 .../github.com/gogo/protobuf/types/timestamp.pb.go |   555 +
 .../gogo/protobuf/types/timestamp_gogo.go          |    94 +
 vendor/github.com/gogo/protobuf/types/type.pb.go   |  3243 +
 .../github.com/gogo/protobuf/types/wrappers.pb.go  |  2668 +
 .../gogo/protobuf/types/wrappers_gogo.go           |   300 +
 .../gogo/protobuf/vanity/command/command.go        |   161 +
 vendor/github.com/gogo/protobuf/vanity/enum.go     |    78 +
 vendor/github.com/gogo/protobuf/vanity/field.go    |    90 +
 vendor/github.com/gogo/protobuf/vanity/file.go     |   197 +
 vendor/github.com/gogo/protobuf/vanity/foreach.go  |   125 +
 vendor/github.com/gogo/protobuf/vanity/msg.go      |   154 +
 vendor/github.com/gogo/protobuf/vanity/test/doc.go |     1 +
 .../protobuf/vanity/test/fast/gogovanity.pb.go     |   413 +
 .../gogo/protobuf/vanity/test/fast/proto3.pb.go    |   333 +
 .../gogo/protobuf/vanity/test/fast/vanity.pb.go    |   380 +
 .../protobuf/vanity/test/faster/gogovanity.pb.go   |   399 +
 .../gogo/protobuf/vanity/test/faster/proto3.pb.go  |   323 +
 .../gogo/protobuf/vanity/test/faster/vanity.pb.go  |   358 +
 .../protobuf/vanity/test/slick/gogovanity.pb.go    |   489 +
 .../gogo/protobuf/vanity/test/slick/proto3.pb.go   |   387 +
 .../gogo/protobuf/vanity/test/slick/vanity.pb.go   |   427 +
 vendor/github.com/gogo/protobuf/version/version.go |    78 +
 vendor/github.com/golang/groupcache/LICENSE        |   191 +
 vendor/github.com/golang/groupcache/byteview.go    |   175 +
 .../groupcache/consistenthash/consistenthash.go    |    81 +
 vendor/github.com/golang/groupcache/groupcache.go  |   491 +
 .../groupcache/groupcachepb/groupcache.pb.go       |    65 +
 vendor/github.com/golang/groupcache/http.go        |   227 +
 vendor/github.com/golang/groupcache/lru/lru.go     |   133 +
 vendor/github.com/golang/groupcache/peers.go       |    85 +
 .../golang/groupcache/singleflight/singleflight.go |    64 +
 vendor/github.com/golang/groupcache/sinks.go       |   322 +
 .../github.com/golang/groupcache/testpb/test.pb.go |   235 +
 .../golang/protobuf/conformance/conformance.go     |   154 +
 .../internal/conformance_proto/conformance.pb.go   |  1834 +
 .../golang/protobuf/descriptor/descriptor.go       |    93 +
 vendor/github.com/golang/protobuf/jsonpb/jsonpb.go |  1271 +
 .../jsonpb_test_proto/more_test_objects.pb.go      |   368 +
 .../jsonpb/jsonpb_test_proto/test_objects.pb.go    |  1357 +
 .../protobuf/proto/proto3_proto/proto3.pb.go       |   611 +
 .../golang/protobuf/proto/test_proto/test.pb.go    |  5314 ++
 .../protoc-gen-go/descriptor/descriptor.pb.go      |  2812 +
 .../golang/protobuf/protoc-gen-go/doc.go           |    51 +
 .../protobuf/protoc-gen-go/generator/generator.go  |  3086 +
 .../generator/internal/remap/remap.go              |   117 +
 .../golang/protobuf/protoc-gen-go/grpc/grpc.go     |   484 +
 .../golang/protobuf/protoc-gen-go/link_grpc.go     |    34 +
 .../golang/protobuf/protoc-gen-go/main.go          |    98 +
 .../protobuf/protoc-gen-go/plugin/plugin.pb.go     |   369 +
 .../testdata/deprecated/deprecated.pb.go           |   234 +
 .../testdata/extension_base/extension_base.pb.go   |   139 +
 .../testdata/extension_extra/extension_extra.pb.go |    78 +
 .../testdata/extension_user/extension_user.pb.go   |   401 +
 .../protoc-gen-go/testdata/grpc/grpc.pb.go         |   444 +
 .../protoc-gen-go/testdata/import_public/a.pb.go   |   110 +
 .../protoc-gen-go/testdata/import_public/b.pb.go   |    87 +
 .../testdata/import_public/sub/a.pb.go             |   100 +
 .../testdata/import_public/sub/b.pb.go             |    67 +
 .../protoc-gen-go/testdata/imports/fmt/m.pb.go     |    66 +
 .../testdata/imports/test_a_1/m1.pb.go             |   130 +
 .../testdata/imports/test_a_1/m2.pb.go             |    67 +
 .../testdata/imports/test_a_2/m3.pb.go             |    67 +
 .../testdata/imports/test_a_2/m4.pb.go             |    67 +
 .../testdata/imports/test_b_1/m1.pb.go             |    67 +
 .../testdata/imports/test_b_1/m2.pb.go             |    67 +
 .../testdata/imports/test_import_a1m1.pb.go        |    80 +
 .../testdata/imports/test_import_a1m2.pb.go        |    80 +
 .../testdata/imports/test_import_all.pb.go         |   138 +
 .../protoc-gen-go/testdata/multi/multi1.pb.go      |    96 +
 .../protoc-gen-go/testdata/multi/multi2.pb.go      |   128 +
 .../protoc-gen-go/testdata/multi/multi3.pb.go      |   115 +
 .../protoc-gen-go/testdata/my_test/test.pb.go      |  1192 +
 .../protoc-gen-go/testdata/proto3/proto3.pb.go     |   196 +
 .../golang/protobuf/ptypes/empty/empty.pb.go       |    79 +
 .../golang/protobuf/ptypes/struct/struct.pb.go     |   450 +
 .../golang/protobuf/ptypes/wrappers/wrappers.pb.go |   443 +
 .../go-cmp/cmp/internal/testprotos/protos.go       |   116 +
 .../go-cmp/cmp/internal/teststructs/project1.go    |   267 +
 .../go-cmp/cmp/internal/teststructs/project2.go    |    74 +
 .../go-cmp/cmp/internal/teststructs/project3.go    |    82 +
 .../go-cmp/cmp/internal/teststructs/project4.go    |   142 +
 .../go-cmp/cmp/internal/teststructs/structs.go     |   197 +
 vendor/github.com/google/uuid/CONTRIBUTORS         |     9 +
 vendor/github.com/google/uuid/LICENSE              |    27 +
 vendor/github.com/google/uuid/dce.go               |    80 +
 vendor/github.com/google/uuid/doc.go               |    12 +
 vendor/github.com/google/uuid/hash.go              |    53 +
 vendor/github.com/google/uuid/marshal.go           |    37 +
 vendor/github.com/google/uuid/node.go              |    89 +
 vendor/github.com/google/uuid/node_js.go           |    12 +
 vendor/github.com/google/uuid/node_net.go          |    33 +
 vendor/github.com/google/uuid/sql.go               |    59 +
 vendor/github.com/google/uuid/time.go              |   123 +
 vendor/github.com/google/uuid/util.go              |    43 +
 vendor/github.com/google/uuid/uuid.go              |   245 +
 vendor/github.com/google/uuid/version1.go          |    44 +
 vendor/github.com/google/uuid/version4.go          |    38 +
 .../googleapis/gnostic/OpenAPIv3/OpenAPIv3.go      |  8301 +++
 .../googleapis/gnostic/OpenAPIv3/OpenAPIv3.pb.go   |  4692 ++
 .../gnostic/OpenAPIv3/schema-generator/main.go     |   859 +
 .../googleapis/gnostic/apps/disco/list.go          |    79 +
 .../googleapis/gnostic/apps/disco/main.go          |   255 +
 .../googleapis/gnostic/apps/disco/openapiv2.go     |   287 +
 .../googleapis/gnostic/apps/disco/openapiv3.go     |   303 +
 .../gnostic/apps/petstore-builder/main.go          |    82 +
 .../gnostic/apps/petstore-builder/petstore-v2.go   |   260 +
 .../gnostic/apps/petstore-builder/petstore-v3.go   |   369 +
 .../gnostic/apps/report-messages/main.go           |    69 +
 .../googleapis/gnostic/apps/report/main.go         |   239 +
 .../googleapis/gnostic/discovery/discovery.go      |  2692 +
 .../googleapis/gnostic/discovery/discovery.pb.go   |  1415 +
 .../googleapis/gnostic/generate-gnostic/domain.go  |   624 +
 .../gnostic/generate-gnostic/generate-compiler.go  |   913 +
 .../gnostic/generate-gnostic/generate-extension.go |   363 +
 .../gnostic/generate-gnostic/generate-proto.go     |   119 +
 .../googleapis/gnostic/generate-gnostic/helpers.go |    55 +
 .../googleapis/gnostic/generate-gnostic/main.go    |   257 +
 .../googleapis/gnostic/generate-gnostic/types.go   |   132 +
 vendor/github.com/googleapis/gnostic/gnostic.go    |   610 +
 .../googleapis/gnostic/jsonschema/display.go       |   229 +
 .../googleapis/gnostic/jsonschema/models.go        |   226 +
 .../googleapis/gnostic/jsonschema/operations.go    |   394 +
 .../googleapis/gnostic/jsonschema/reader.go        |   409 +
 .../googleapis/gnostic/jsonschema/writer.go        |   334 +
 .../googleapis/gnostic/jsonwriter/writer.go        |   168 +
 .../go/gnostic-lint-descriptions/linter_v2.go      |   180 +
 .../go/gnostic-lint-descriptions/linter_v3.go      |    33 +
 .../linters/go/gnostic-lint-descriptions/main.go   |    61 +
 .../gnostic/linters/go/gnostic-lint-paths/main.go  |    77 +
 .../googleapis/gnostic/plugins/environment.go      |   215 +
 .../gnostic/plugins/gnostic-analyze/main.go        |    95 +
 .../plugins/gnostic-analyze/statistics/statsv2.go  |   331 +
 .../plugins/gnostic-analyze/statistics/statsv3.go  |   127 +
 .../plugins/gnostic-analyze/summarize/main.go      |   156 +
 .../examples/googleauth/googleauth.go              |   220 +
 .../examples/v2.0/apis_guru/main.go                |    45 +
 .../examples/v2.0/bookstore/bookstore/bookstore.go |    19 +
 .../examples/v2.0/bookstore/service/init.go        |    27 +
 .../examples/v2.0/bookstore/service/main.go        |    34 +
 .../examples/v2.0/bookstore/service/service.go     |   195 +
 .../examples/v2.0/sample/sample/sample.go          |    19 +
 .../examples/v2.0/sample/service/init.go           |    27 +
 .../examples/v2.0/sample/service/main.go           |    34 +
 .../examples/v2.0/sample/service/service.go        |    38 +
 .../examples/v2.0/xkcd/main.go                     |    23 +
 .../examples/v2.0/xkcd/xkcd/xkcd.go                |    19 +
 .../examples/v3.0/bookstore/bookstore/bookstore.go |    19 +
 .../examples/v3.0/bookstore/service/init.go        |    27 +
 .../examples/v3.0/bookstore/service/main.go        |    34 +
 .../examples/v3.0/bookstore/service/service.go     |   195 +
 .../examples/v3.0/urlshortener/main.go             |    62 +
 .../v3.0/urlshortener/urlshortener/urlshortener.go |    19 +
 .../plugins/gnostic-go-generator/goimports.go      |    50 +
 .../plugins/gnostic-go-generator/language.go       |   123 +
 .../plugins/gnostic-go-generator/linewriter.go     |    29 +
 .../gnostic/plugins/gnostic-go-generator/main.go   |    76 +
 .../plugins/gnostic-go-generator/render_client.go  |   178 +
 .../gnostic-go-generator/render_constants.go       |    30 +
 .../gnostic-go-generator/render_provider.go        |    64 +
 .../plugins/gnostic-go-generator/render_server.go  |   168 +
 .../plugins/gnostic-go-generator/render_types.go   |    57 +
 .../plugins/gnostic-go-generator/renderer.go       |    67 +
 .../gnostic/plugins/gnostic-summary/main.go        |   122 +
 .../googleapis/gnostic/plugins/plugin.pb.go        |   372 +
 .../github.com/googleapis/gnostic/printer/code.go  |    57 +
 .../github.com/googleapis/gnostic/surface/field.go |    20 +
 .../github.com/googleapis/gnostic/surface/model.go |    58 +
 .../googleapis/gnostic/surface/model_openapiv2.go  |   253 +
 .../googleapis/gnostic/surface/model_openapiv3.go  |   305 +
 .../googleapis/gnostic/surface/surface.pb.go       |   424 +
 .../github.com/googleapis/gnostic/surface/type.go  |    51 +
 .../googleapis/gnostic/tools/format-schema/main.go |    37 +
 .../googleapis/gnostic/tools/j2y2j/main.go         |    60 +
 .../httpcache/leveldbcache/leveldbcache.go         |    51 +
 .../gregjones/httpcache/memcache/appengine.go      |    61 +
 .../gregjones/httpcache/memcache/memcache.go       |    60 +
 .../github.com/gregjones/httpcache/redis/redis.go  |    43 +
 .../github.com/joho/godotenv/autoload/autoload.go  |    15 +
 .../github.com/joho/godotenv/cmd/godotenv/cmd.go   |    54 +
 .../go/extra/binary_as_string_codec.go             |   238 +
 .../json-iterator/go/extra/fuzzy_decoder.go        |   294 +
 .../json-iterator/go/extra/naming_strategy.go      |    52 +
 .../json-iterator/go/extra/privat_fields.go        |    54 +
 .../json-iterator/go/extra/time_as_int64_codec.go  |    31 +
 .../knative/build/cmd/controller/main.go           |   148 +
 .../knative/build/cmd/creds-init/main.go           |    41 +
 .../github.com/knative/build/cmd/git-init/main.go  |    75 +
 vendor/github.com/knative/build/cmd/logs/main.go   |    42 +
 vendor/github.com/knative/build/cmd/nop/main.go    |    23 +
 .../github.com/knative/build/cmd/webhook/main.go   |    93 +
 .../knative/build/pkg/builder/cluster/builder.go   |   349 +
 .../build/pkg/builder/cluster/convert/convert.go   |   493 +
 .../github.com/knative/build/pkg/builder/common.go |   121 +
 .../knative/build/pkg/builder/interface.go         |   116 +
 .../knative/build/pkg/builder/nop/builder.go       |   140 +
 .../knative/build/pkg/builder/validation/error.go  |    38 +
 .../github.com/knative/build/pkg/buildtest/data.go |    45 +
 .../github.com/knative/build/pkg/buildtest/json.go |    30 +
 .../github.com/knative/build/pkg/buildtest/wait.go |    68 +
 .../github.com/knative/build/pkg/buildtest/yaml.go |    49 +
 .../pkg/client/clientset/versioned/clientset.go    |    95 +
 .../build/pkg/client/clientset/versioned/doc.go    |    17 +
 .../versioned/fake/clientset_generated.go          |    79 +
 .../pkg/client/clientset/versioned/fake/doc.go     |    17 +
 .../client/clientset/versioned/fake/register.go    |    51 +
 .../pkg/client/clientset/versioned/scheme/doc.go   |    17 +
 .../client/clientset/versioned/scheme/register.go  |    51 +
 .../versioned/typed/build/v1alpha1/build.go        |   154 +
 .../versioned/typed/build/v1alpha1/build_client.go |    97 +
 .../typed/build/v1alpha1/buildtemplate.go          |   154 +
 .../typed/build/v1alpha1/clusterbuildtemplate.go   |   144 +
 .../versioned/typed/build/v1alpha1/doc.go          |    17 +
 .../versioned/typed/build/v1alpha1/fake/doc.go     |    17 +
 .../typed/build/v1alpha1/fake/fake_build.go        |   125 +
 .../typed/build/v1alpha1/fake/fake_build_client.go |    45 +
 .../build/v1alpha1/fake/fake_buildtemplate.go      |   125 +
 .../v1alpha1/fake/fake_clusterbuildtemplate.go     |   117 +
 .../typed/build/v1alpha1/generated_expansion.go    |    22 +
 .../informers/externalversions/build/interface.go  |    43 +
 .../externalversions/build/v1alpha1/build.go       |    86 +
 .../build/v1alpha1/buildtemplate.go                |    86 +
 .../build/v1alpha1/clusterbuildtemplate.go         |    85 +
 .../externalversions/build/v1alpha1/interface.go   |    56 +
 .../client/informers/externalversions/factory.go   |   177 +
 .../client/informers/externalversions/generic.go   |    63 +
 .../internalinterfaces/factory_interfaces.go       |    35 +
 .../pkg/client/listers/build/v1alpha1/build.go     |    91 +
 .../client/listers/build/v1alpha1/buildtemplate.go |    91 +
 .../listers/build/v1alpha1/clusterbuildtemplate.go |    62 +
 .../listers/build/v1alpha1/expansion_generated.go  |    36 +
 .../knative/build/pkg/controller/controller.go     |    51 +
 .../build/pkg/credentials/dockercreds/creds.go     |   152 +
 .../build/pkg/credentials/gitcreds/basic.go        |   138 +
 .../build/pkg/credentials/gitcreds/creds.go        |    84 +
 .../knative/build/pkg/credentials/gitcreds/ssh.go  |   159 +
 .../knative/build/pkg/credentials/initialize.go    |    58 +
 vendor/github.com/knative/build/pkg/logs/logs.go   |   243 +
 .../knative/build/pkg/reconciler/build/build.go    |   277 +
 .../build/pkg/reconciler/build/template_common.go  |    57 +
 .../build/pkg/reconciler/build/validate_build.go   |   154 +
 .../pkg/reconciler/buildtemplate/buildtemplate.go  |   204 +
 .../buildtemplate/resources/imagecache.go          |    71 +
 .../buildtemplate/resources/names/doc.go           |    18 +
 .../buildtemplate/resources/names/names.go         |    38 +
 .../clusterbuildtemplate/clusterbuildtemplate.go   |   161 +
 .../clusterbuildtemplate/resources/imagecache.go   |    28 +
 .../knative/build/pkg/reconciler/stats.go          |    32 +
 .../github.com/knative/build/pkg/system/names.go   |    32 +
 vendor/github.com/knative/build/test/e2e/e2e.go    |   182 +
 vendor/github.com/knative/build/test/panic/main.go |    26 +
 .../knative/build/test/workingdir/main.go          |    36 +
 .../cmd/controller/controller-runtime-main.go      |    92 +
 .../knative/eventing/cmd/controller/main.go        |   150 +
 .../knative/eventing/cmd/fanoutsidecar/main.go     |   167 +
 .../knative/eventing/cmd/sendevent/main.go         |    97 +
 .../knative/eventing/cmd/webhook/main.go           |   109 +
 .../eventing/pkg/apis/eventing/logkey/constants.go |    24 +
 .../pkg/apis/eventing/v1alpha1/channel_defaults.go |    33 +-
 .../pkg/channeldefaulter/channel_defaulter.go      |   141 +
 .../pkg/client/clientset/versioned/clientset.go    |    98 +
 .../eventing/pkg/client/clientset/versioned/doc.go |    20 +
 .../versioned/fake/clientset_generated.go          |    82 +
 .../pkg/client/clientset/versioned/fake/doc.go     |    20 +
 .../client/clientset/versioned/fake/register.go    |    54 +
 .../pkg/client/clientset/versioned/scheme/doc.go   |    20 +
 .../client/clientset/versioned/scheme/register.go  |    54 +
 .../versioned/typed/eventing/v1alpha1/channel.go   |   157 +
 .../eventing/v1alpha1/clusterchannelprovisioner.go |   147 +
 .../versioned/typed/eventing/v1alpha1/doc.go       |    20 +
 .../typed/eventing/v1alpha1/eventing_client.go     |   100 +
 .../versioned/typed/eventing/v1alpha1/fake/doc.go  |    20 +
 .../typed/eventing/v1alpha1/fake/fake_channel.go   |   128 +
 .../fake/fake_clusterchannelprovisioner.go         |   120 +
 .../eventing/v1alpha1/fake/fake_eventing_client.go |    48 +
 .../eventing/v1alpha1/fake/fake_subscription.go    |   128 +
 .../typed/eventing/v1alpha1/generated_expansion.go |    25 +
 .../typed/eventing/v1alpha1/subscription.go        |   157 +
 .../externalversions/eventing/interface.go         |    46 +
 .../externalversions/eventing/v1alpha1/channel.go  |    89 +
 .../eventing/v1alpha1/clusterchannelprovisioner.go |    88 +
 .../eventing/v1alpha1/interface.go                 |    59 +
 .../eventing/v1alpha1/subscription.go              |    89 +
 .../client/informers/externalversions/factory.go   |   180 +
 .../client/informers/externalversions/generic.go   |    66 +
 .../internalinterfaces/factory_interfaces.go       |    38 +
 .../client/listers/eventing/v1alpha1/channel.go    |    94 +
 .../eventing/v1alpha1/clusterchannelprovisioner.go |    65 +
 .../eventing/v1alpha1/expansion_generated.go       |    39 +
 .../listers/eventing/v1alpha1/subscription.go      |    94 +
 .../knative/eventing/pkg/controller/controller.go  |    43 +
 .../eventing/inmemory/channel/controller.go        |    95 +
 .../eventing/inmemory/channel/reconcile.go         |   268 +
 .../clusterchannelprovisioner/controller.go        |    71 +
 .../clusterchannelprovisioner/reconcile.go         |   173 +
 .../eventing/inmemory/controller/main.go           |    70 +
 .../controller/eventing/subscription/provider.go   |    78 +
 .../controller/eventing/subscription/reconcile.go  |   424 +
 .../knative/eventing/pkg/controller/names.go       |    23 +
 .../eventing/pkg/controller/testing/mock_client.go |   152 +
 .../eventing/pkg/controller/testing/table.go       |   251 +
 .../knative/eventing/pkg/logconfig/config.go       |    33 +
 .../eventing/pkg/provisioners/channel_util.go      |   215 +
 .../pkg/provisioners/kafka/cmd/controller/main.go  |    79 +
 .../pkg/provisioners/kafka/cmd/dispatcher/main.go  |    99 +
 .../kafka/controller/channel/provider.go           |   105 +
 .../kafka/controller/channel/reconcile.go          |   380 +
 .../pkg/provisioners/kafka/controller/provider.go  |    86 +
 .../pkg/provisioners/kafka/controller/reconcile.go |   113 +
 .../pkg/provisioners/kafka/controller/types.go     |     5 +
 .../pkg/provisioners/kafka/controller/util.go      |    40 +
 .../provisioners/kafka/dispatcher/dispatcher.go    |   297 +
 .../eventing/pkg/provisioners/kafka/main.go        |   106 +
 .../knative/eventing/pkg/provisioners/logger.go    |    63 +
 .../knative/eventing/pkg/provisioners/message.go   |    64 +
 .../pkg/provisioners/message_dispatcher.go         |   199 +
 .../eventing/pkg/provisioners/message_receiver.go  |   179 +
 .../eventing/pkg/provisioners/provisioner_util.go  |   113 +
 .../eventing/pkg/provisioners/references.go        |    32 +
 .../eventing/pkg/provisioners/utils/topic_names.go |     9 +
 .../configmap/filesystem/filesystem_watcher.go     |   124 +
 .../eventing/pkg/sidecar/configmap/parse.go        |    53 +
 .../pkg/sidecar/configmap/watcher/watcher.go       |    49 +
 .../eventing/pkg/sidecar/fanout/fanout_handler.go  |   124 +
 .../multi_channel_fanout_handler.go                |   121 +
 .../pkg/sidecar/multichannelfanout/parse.go        |    44 +
 .../eventing/pkg/sidecar/swappable/swappable.go    |   105 +
 .../knative/eventing/pkg/system/names.go           |    23 +
 vendor/github.com/knative/eventing/test/cleanup.go |   122 +
 vendor/github.com/knative/eventing/test/clients.go |    85 +
 vendor/github.com/knative/eventing/test/crd.go     |   194 +
 .../github.com/knative/eventing/test/crd_checks.go |    54 +
 vendor/github.com/knative/eventing/test/e2e/e2e.go |   243 +
 .../github.com/knative/eventing/test/e2e_flags.go  |    57 +
 vendor/github.com/knative/eventing/test/states.go  |    54 +
 .../test/test_images/k8sevents/function.go         |    34 +
 .../{e2e => test_images}/k8sevents/kodata/LICENSE  |     0
 .../k8sevents/kodata/VENDOR-LICENSE                |     0
 .../pkg/apis/duck/v1alpha1/addressable_types.go    |     1 -
 .../pkg/apis/duck/v1alpha1/condition_set.go        |    86 +-
 .../pkg/apis/duck/v1alpha1/conditions_types.go     |    21 +-
 .../pkg/apis/duck/v1alpha1/generational_types.go   |     1 -
 .../apis/duck/v1alpha1/legacy_targetable_types.go  |     1 -
 .../apis/duck/v1alpha1/retired_targetable_types.go |     1 -
 vendor/github.com/knative/pkg/apis/field_error.go  |    48 +-
 .../pkg/apis/istio/authentication/register.go      |    21 +
 .../pkg/apis/istio/authentication/v1alpha1/doc.go  |    22 +
 .../istio/authentication/v1alpha1/policy_types.go  |   345 +
 .../apis/istio/authentication/v1alpha1/register.go |    52 +
 .../v1alpha1/zz_generated.deepcopy.go              |   259 +
 .../pkg/apis/istio/common/v1alpha1/string.go       |    35 +
 .../github.com/knative/pkg/apis/istio/register.go  |    21 +
 .../apis/istio/v1alpha3/destinationrule_types.go   |   547 +
 .../knative/pkg/apis/istio/v1alpha3/doc.go         |    23 +
 .../pkg/apis/istio/v1alpha3/gateway_types.go       |   318 +
 .../knative/pkg/apis/istio/v1alpha3/register.go    |    56 +
 .../apis/istio/v1alpha3/virtualservice_types.go    |   769 +
 .../apis/istio/v1alpha3/zz_generated.deepcopy.go   |   983 +
 vendor/github.com/knative/pkg/changeset/commit.go  |    64 +
 vendor/github.com/knative/pkg/changeset/doc.go     |    23 +
 .../pkg/client/clientset/versioned/clientset.go    |   120 +
 .../knative/pkg/client/clientset/versioned/doc.go  |    20 +
 .../versioned/fake/clientset_generated.go          |    94 +
 .../pkg/client/clientset/versioned/fake/doc.go     |    20 +
 .../client/clientset/versioned/fake/register.go    |    56 +
 .../pkg/client/clientset/versioned/scheme/doc.go   |    20 +
 .../client/clientset/versioned/scheme/register.go  |    56 +
 .../v1alpha1/authentication_client.go              |    90 +
 .../versioned/typed/authentication/v1alpha1/doc.go |    20 +
 .../typed/authentication/v1alpha1/fake/doc.go      |    20 +
 .../v1alpha1/fake/fake_authentication_client.go    |    40 +
 .../authentication/v1alpha1/fake/fake_policy.go    |   128 +
 .../authentication/v1alpha1/generated_expansion.go |    21 +
 .../typed/authentication/v1alpha1/policy.go        |   157 +
 .../typed/istio/v1alpha3/destinationrule.go        |   157 +
 .../versioned/typed/istio/v1alpha3/doc.go          |    20 +
 .../versioned/typed/istio/v1alpha3/fake/doc.go     |    20 +
 .../istio/v1alpha3/fake/fake_destinationrule.go    |   128 +
 .../typed/istio/v1alpha3/fake/fake_gateway.go      |   128 +
 .../typed/istio/v1alpha3/fake/fake_istio_client.go |    48 +
 .../istio/v1alpha3/fake/fake_virtualservice.go     |   128 +
 .../versioned/typed/istio/v1alpha3/gateway.go      |   157 +
 .../typed/istio/v1alpha3/generated_expansion.go    |    25 +
 .../versioned/typed/istio/v1alpha3/istio_client.go |   100 +
 .../typed/istio/v1alpha3/virtualservice.go         |   157 +
 .../externalversions/authentication/interface.go   |    46 +
 .../authentication/v1alpha1/interface.go           |    45 +
 .../authentication/v1alpha1/policy.go              |    89 +
 .../client/informers/externalversions/factory.go   |   186 +
 .../client/informers/externalversions/generic.go   |    71 +
 .../internalinterfaces/factory_interfaces.go       |    38 +
 .../informers/externalversions/istio/interface.go  |    46 +
 .../istio/v1alpha3/destinationrule.go              |    89 +
 .../externalversions/istio/v1alpha3/gateway.go     |    89 +
 .../externalversions/istio/v1alpha3/interface.go   |    59 +
 .../istio/v1alpha3/virtualservice.go               |    89 +
 .../authentication/v1alpha1/expansion_generated.go |    27 +
 .../listers/authentication/v1alpha1/policy.go      |    94 +
 .../listers/istio/v1alpha3/destinationrule.go      |    94 +
 .../listers/istio/v1alpha3/expansion_generated.go  |    43 +
 .../pkg/client/listers/istio/v1alpha3/gateway.go   |    94 +
 .../listers/istio/v1alpha3/virtualservice.go       |    94 +
 vendor/github.com/knative/pkg/cloudevents/doc.go   |    23 +
 .../knative/pkg/cloudevents/encoding_binary.go     |   201 +
 .../knative/pkg/cloudevents/encoding_structured.go |   116 +
 vendor/github.com/knative/pkg/cloudevents/event.go |   199 +
 .../github.com/knative/pkg/cloudevents/handler.go  |   394 +
 vendor/github.com/knative/pkg/configmap/doc.go     |    21 +
 vendor/github.com/knative/pkg/configmap/filter.go  |    44 +
 .../knative/pkg/configmap/informed_watcher.go      |   126 +
 vendor/github.com/knative/pkg/configmap/load.go    |    58 +
 .../knative/pkg/configmap/manual_watcher.go        |    71 +
 .../knative/pkg/configmap/static_watcher.go        |    63 +
 vendor/github.com/knative/pkg/configmap/store.go   |   174 +
 vendor/github.com/knative/pkg/configmap/watcher.go |    38 +
 .../knative/pkg/controller/controller.go           |   329 +
 vendor/github.com/knative/pkg/controller/helper.go |    52 +
 .../knative/pkg/controller/stats_reporter.go       |   136 +
 .../pkg/controller/testing/fake_stats_reporter.go  |    65 +
 vendor/github.com/knative/pkg/kmp/diff.go          |    51 +
 vendor/github.com/knative/pkg/kmp/doc.go           |    19 +
 vendor/github.com/knative/pkg/logging/config.go    |    16 +-
 .../knative/pkg/logging/logkey/constants.go        |     4 +
 .../github.com/knative/pkg/logging/testing/util.go |    60 +
 vendor/github.com/knative/pkg/metrics/config.go    |   153 +
 vendor/github.com/knative/pkg/metrics/doc.go       |    16 +
 vendor/github.com/knative/pkg/metrics/exporter.go  |   153 +
 .../knative/pkg/metrics/metricskey/constants.go    |    62 +
 vendor/github.com/knative/pkg/signals/signal.go    |    43 +
 .../github.com/knative/pkg/signals/signal_posix.go |    26 +
 .../knative/pkg/signals/signal_windows.go          |    23 +
 vendor/github.com/knative/pkg/test/cleanup.go      |    40 +
 vendor/github.com/knative/pkg/test/clients.go      |    86 +
 vendor/github.com/knative/pkg/test/e2e_flags.go    |    66 +
 vendor/github.com/knative/pkg/test/kube_checks.go  |    75 +
 .../github.com/knative/pkg/test/logging/logging.go |   178 +
 vendor/github.com/knative/pkg/test/request.go      |    99 +
 vendor/github.com/knative/pkg/test/spoof/spoof.go  |   256 +
 vendor/github.com/knative/pkg/test/zipkin/util.go  |   110 +
 vendor/github.com/knative/pkg/testing/doc.go       |    19 +
 vendor/github.com/knative/pkg/testing/register.go  |    42 +
 vendor/github.com/knative/pkg/testing/resource.go  |   117 +
 .../knative/pkg/testing/zz_generated.deepcopy.go   |   101 +
 vendor/github.com/knative/pkg/tracker/doc.go       |    21 +
 vendor/github.com/knative/pkg/tracker/enqueue.go   |   151 +
 vendor/github.com/knative/pkg/tracker/interface.go |    33 +
 vendor/github.com/knative/pkg/webhook/webhook.go   |    12 +-
 .../github.com/knative/pkg/websocket/connection.go |   226 +
 .../knative/serving/cmd/activator/main.go          |   194 +
 .../knative/serving/cmd/autoscaler/main.go         |   239 +
 .../knative/serving/cmd/controller/main.go         |   235 +
 .../github.com/knative/serving/cmd/queue/main.go   |   296 +
 vendor/github.com/knative/serving/cmd/util/env.go  |    34 +
 .../github.com/knative/serving/cmd/webhook/main.go |   104 +
 .../knative/serving/pkg/activator/activator.go     |    55 +
 .../knative/serving/pkg/activator/dedupe.go        |    94 +
 .../pkg/activator/handler/concurrency_reporter.go  |    85 +
 .../activator/handler/enforce_length_handler.go    |    33 +
 .../pkg/activator/handler/filtering_handler.go     |    37 +
 .../serving/pkg/activator/handler/handler.go       |   101 +
 .../pkg/activator/handler/requestevent_handler.go  |    65 +
 .../knative/serving/pkg/activator/revision.go      |   185 +
 .../serving/pkg/activator/stats_reporter.go        |   203 +
 .../knative/serving/pkg/activator/util/header.go   |    44 +
 .../knative/serving/pkg/activator/util/rewinder.go |    59 +
 .../serving/pkg/activator/util/transports.go       |   119 +
 .../serving/pkg/apis/autoscaling/v1alpha1/doc.go   |    19 +
 .../pkg/apis/autoscaling/v1alpha1/kpa_defaults.go  |    33 +
 .../pkg/apis/autoscaling/v1alpha1/kpa_types.go     |   191 +
 .../apis/autoscaling/v1alpha1/kpa_validation.go    |    79 +
 .../pkg/apis/autoscaling/v1alpha1/register.go      |    53 +
 .../autoscaling/v1alpha1/zz_generated.deepcopy.go  |   129 +
 vendor/github.com/knative/serving/pkg/apis/doc.go  |    22 +
 .../pkg/apis/serving/v1alpha1/route_types.go       |     6 +-
 .../pkg/apis/serving/v1alpha1/service_types.go     |    10 +-
 .../apis/serving/v1alpha1/zz_generated.deepcopy.go |    12 +-
 .../knative/serving/pkg/autoscaler/autoscaler.go   |   351 +
 .../knative/serving/pkg/autoscaler/config.go       |   172 +
 .../knative/serving/pkg/autoscaler/doc.go          |    39 +
 .../serving/pkg/autoscaler/dynamic_config.go       |    65 +
 .../knative/serving/pkg/autoscaler/multiscaler.go  |   244 +
 .../serving/pkg/autoscaler/stats_reporter.go       |   217 +
 .../serving/pkg/autoscaler/statserver/doc.go       |    23 +
 .../serving/pkg/autoscaler/statserver/server.go    |   194 +
 .../pkg/autoscaler/zz_generated.deepcopy.go        |    37 +
 .../pkg/client/clientset/versioned/clientset.go    |   139 +
 .../serving/pkg/client/clientset/versioned/doc.go  |    17 +
 .../versioned/fake/clientset_generated.go          |   103 +
 .../pkg/client/clientset/versioned/fake/doc.go     |    17 +
 .../client/clientset/versioned/fake/register.go    |    55 +
 .../pkg/client/clientset/versioned/scheme/doc.go   |    17 +
 .../client/clientset/versioned/scheme/register.go  |    55 +
 .../autoscaling/v1alpha1/autoscaling_client.go     |    87 +
 .../versioned/typed/autoscaling/v1alpha1/doc.go    |    17 +
 .../typed/autoscaling/v1alpha1/fake/doc.go         |    17 +
 .../v1alpha1/fake/fake_autoscaling_client.go       |    37 +
 .../v1alpha1/fake/fake_podautoscaler.go            |   137 +
 .../autoscaling/v1alpha1/generated_expansion.go    |    18 +
 .../typed/autoscaling/v1alpha1/podautoscaler.go    |   171 +
 .../typed/networking/v1alpha1/clusteringress.go    |   160 +
 .../versioned/typed/networking/v1alpha1/doc.go     |    17 +
 .../typed/networking/v1alpha1/fake/doc.go          |    17 +
 .../v1alpha1/fake/fake_clusteringress.go           |   128 +
 .../v1alpha1/fake/fake_networking_client.go        |    37 +
 .../networking/v1alpha1/generated_expansion.go     |    18 +
 .../typed/networking/v1alpha1/networking_client.go |    87 +
 .../typed/serving/v1alpha1/configuration.go        |   171 +
 .../versioned/typed/serving/v1alpha1/doc.go        |    17 +
 .../versioned/typed/serving/v1alpha1/fake/doc.go   |    17 +
 .../serving/v1alpha1/fake/fake_configuration.go    |   137 +
 .../typed/serving/v1alpha1/fake/fake_revision.go   |   137 +
 .../typed/serving/v1alpha1/fake/fake_route.go      |   137 +
 .../typed/serving/v1alpha1/fake/fake_service.go    |   137 +
 .../serving/v1alpha1/fake/fake_serving_client.go   |    49 +
 .../typed/serving/v1alpha1/generated_expansion.go  |    24 +
 .../versioned/typed/serving/v1alpha1/revision.go   |   171 +
 .../versioned/typed/serving/v1alpha1/route.go      |   171 +
 .../versioned/typed/serving/v1alpha1/service.go    |   171 +
 .../typed/serving/v1alpha1/serving_client.go       |   102 +
 .../externalversions/autoscaling/interface.go      |    43 +
 .../autoscaling/v1alpha1/interface.go              |    42 +
 .../autoscaling/v1alpha1/podautoscaler.go          |    86 +
 .../client/informers/externalversions/factory.go   |   189 +
 .../client/informers/externalversions/generic.go   |    75 +
 .../internalinterfaces/factory_interfaces.go       |    35 +
 .../externalversions/networking/interface.go       |    43 +
 .../networking/v1alpha1/clusteringress.go          |    85 +
 .../networking/v1alpha1/interface.go               |    42 +
 .../externalversions/serving/interface.go          |    43 +
 .../serving/v1alpha1/configuration.go              |    86 +
 .../externalversions/serving/v1alpha1/interface.go |    63 +
 .../externalversions/serving/v1alpha1/revision.go  |    86 +
 .../externalversions/serving/v1alpha1/route.go     |    86 +
 .../externalversions/serving/v1alpha1/service.go   |    86 +
 .../autoscaling/v1alpha1/expansion_generated.go    |    24 +
 .../listers/autoscaling/v1alpha1/podautoscaler.go  |    91 +
 .../listers/networking/v1alpha1/clusteringress.go  |    62 +
 .../networking/v1alpha1/expansion_generated.go     |    20 +
 .../listers/serving/v1alpha1/configuration.go      |    91 +
 .../serving/v1alpha1/expansion_generated.go        |    48 +
 .../client/listers/serving/v1alpha1/revision.go    |    91 +
 .../pkg/client/listers/serving/v1alpha1/route.go   |    91 +
 .../pkg/client/listers/serving/v1alpha1/service.go |    91 +
 vendor/github.com/knative/serving/pkg/gc/config.go |    80 +
 vendor/github.com/knative/serving/pkg/gc/doc.go    |    20 +
 .../serving/pkg/gc/zz_generated.deepcopy.go        |    37 +
 .../github.com/knative/serving/pkg/http/h2c/h2c.go |    47 +
 .../github.com/knative/serving/pkg/http/header.go  |    37 +
 .../knative/serving/pkg/logging/config.go          |    61 +
 .../knative/serving/pkg/queue/breaker.go           |    71 +
 .../knative/serving/pkg/queue/constants.go         |    47 +
 .../github.com/knative/serving/pkg/queue/queue.go  |    18 +
 .../github.com/knative/serving/pkg/queue/stats.go  |   131 +
 .../knative/serving/pkg/reconciler/doc.go          |    30 +
 .../knative/serving/pkg/reconciler/helper.go       |    51 +
 .../knative/serving/pkg/reconciler/names.go        |    27 +
 .../knative/serving/pkg/reconciler/reconciler.go   |   127 +
 .../knative/serving/pkg/reconciler/stats.go        |    31 +
 .../serving/pkg/reconciler/testing/actions.go      |    65 +
 .../serving/pkg/reconciler/testing/configmap.go    |    44 +
 .../serving/pkg/reconciler/testing/hooks.go        |   161 +
 .../serving/pkg/reconciler/testing/reactions.go    |    65 +
 .../serving/pkg/reconciler/testing/sorter.go       |    92 +
 .../serving/pkg/reconciler/testing/table.go        |   190 +
 .../serving/pkg/reconciler/testing/tracker.go      |    31 +
 .../knative/serving/pkg/reconciler/testing/util.go |    85 +
 .../reconciler/v1alpha1/autoscaling/autoscaling.go |   245 +
 .../pkg/reconciler/v1alpha1/autoscaling/doc.go     |    23 +
 .../reconciler/v1alpha1/autoscaling/kpa_scaler.go  |   169 +
 .../v1alpha1/clusteringress/clusteringress.go      |   225 +
 .../pkg/reconciler/v1alpha1/clusteringress/doc.go  |    23 +
 .../v1alpha1/clusteringress/resources/doc.go       |    19 +
 .../v1alpha1/clusteringress/resources/names/doc.go |    18 +
 .../clusteringress/resources/names/names.go        |    38 +
 .../clusteringress/resources/virtual_service.go    |   153 +
 .../v1alpha1/configuration/config/doc.go           |    20 +
 .../v1alpha1/configuration/config/store.go         |    66 +
 .../configuration/config/zz_generated.deepcopy.go  |    21 +
 .../v1alpha1/configuration/configuration.go        |   318 +
 .../v1alpha1/configuration/resources/build.go      |    80 +
 .../v1alpha1/configuration/resources/doc.go        |    19 +
 .../v1alpha1/configuration/resources/names/doc.go  |    18 +
 .../configuration/resources/names/names.go         |    34 +
 .../v1alpha1/configuration/resources/revision.go   |    77 +
 .../serving/pkg/reconciler/v1alpha1/labeler/doc.go |    21 +
 .../pkg/reconciler/v1alpha1/labeler/labeler.go     |   113 +
 .../pkg/reconciler/v1alpha1/labeler/labels.go      |   163 +
 .../v1alpha1/revision/config/controller.go         |    75 +
 .../pkg/reconciler/v1alpha1/revision/config/doc.go |    21 +
 .../reconciler/v1alpha1/revision/config/network.go |    80 +
 .../v1alpha1/revision/config/observability.go      |    70 +
 .../reconciler/v1alpha1/revision/config/store.go   |    82 +
 .../revision/config/zz_generated.deepcopy.go       |    76 +
 .../pkg/reconciler/v1alpha1/revision/cruds.go      |    91 +
 .../pkg/reconciler/v1alpha1/revision/helpers.go    |    70 +
 .../v1alpha1/revision/reconcile_resources.go       |   246 +
 .../pkg/reconciler/v1alpha1/revision/resolve.go    |    69 +
 .../v1alpha1/revision/resources/constants.go       |    70 +
 .../v1alpha1/revision/resources/deploy.go          |   183 +
 .../reconciler/v1alpha1/revision/resources/doc.go  |    19 +
 .../v1alpha1/revision/resources/env_var.go         |    46 +
 .../v1alpha1/revision/resources/fluentd.go         |   150 +
 .../v1alpha1/revision/resources/imagecache.go      |    57 +
 .../reconciler/v1alpha1/revision/resources/kpa.go  |    48 +
 .../reconciler/v1alpha1/revision/resources/meta.go |    58 +
 .../v1alpha1/revision/resources/names/doc.go       |    18 +
 .../v1alpha1/revision/resources/names/names.go     |    43 +
 .../v1alpha1/revision/resources/queue.go           |   127 +
 .../v1alpha1/revision/resources/service.go         |    61 +
 .../pkg/reconciler/v1alpha1/revision/revision.go   |   416 +
 .../pkg/reconciler/v1alpha1/route/config/doc.go    |    20 +
 .../pkg/reconciler/v1alpha1/route/config/domain.go |   102 +
 .../pkg/reconciler/v1alpha1/route/config/store.go  |    84 +
 .../v1alpha1/route/config/zz_generated.deepcopy.go |    72 +
 .../serving/pkg/reconciler/v1alpha1/route/doc.go   |    23 +
 .../v1alpha1/route/reconcile_resources.go          |   230 +
 .../v1alpha1/route/resources/cluster_ingress.go    |   176 +
 .../pkg/reconciler/v1alpha1/route/resources/doc.go |    19 +
 .../v1alpha1/route/resources/names/doc.go          |    18 +
 .../v1alpha1/route/resources/names/names.go        |    47 +
 .../reconciler/v1alpha1/route/resources/service.go |    87 +
 .../serving/pkg/reconciler/v1alpha1/route/route.go |   352 +
 .../pkg/reconciler/v1alpha1/route/traffic/doc.go   |    24 +
 .../reconciler/v1alpha1/route/traffic/errors.go    |   149 +
 .../reconciler/v1alpha1/route/traffic/traffic.go   |   257 +
 .../v1alpha1/service/resources/configuration.go    |    53 +
 .../reconciler/v1alpha1/service/resources/doc.go   |    19 +
 .../v1alpha1/service/resources/labels.go           |    33 +
 .../v1alpha1/service/resources/names/doc.go        |    18 +
 .../v1alpha1/service/resources/names/names.go      |    29 +
 .../reconciler/v1alpha1/service/resources/route.go |    92 +
 .../pkg/reconciler/v1alpha1/service/service.go     |   280 +
 .../pkg/reconciler/v1alpha1/testing/aliases.go     |    47 +
 .../pkg/reconciler/v1alpha1/testing/clock.go       |    29 +
 .../pkg/reconciler/v1alpha1/testing/factory.go     |    68 +
 .../pkg/reconciler/v1alpha1/testing/listers.go     |   148 +
 .../github.com/knative/serving/pkg/system/clock.go |    32 +
 .../github.com/knative/serving/pkg/system/names.go |    23 +
 .../knative/serving/pkg/websocket/connection.go    |   194 +
 vendor/github.com/knative/serving/test/apis/doc.go |    22 +
 .../knative/serving/test/apis/testing/register.go  |    21 +
 .../test/apis/testing/v1alpha1/build_types.go      |   115 +
 .../serving/test/apis/testing/v1alpha1/doc.go      |    19 +
 .../serving/test/apis/testing/v1alpha1/register.go |    53 +
 .../apis/testing/v1alpha1/zz_generated.deepcopy.go |   153 +
 vendor/github.com/knative/serving/test/cleanup.go  |    40 +
 .../test/client/clientset/versioned/clientset.go   |    95 +
 .../serving/test/client/clientset/versioned/doc.go |    17 +
 .../versioned/fake/clientset_generated.go          |    79 +
 .../test/client/clientset/versioned/fake/doc.go    |    17 +
 .../client/clientset/versioned/fake/register.go    |    51 +
 .../test/client/clientset/versioned/scheme/doc.go  |    17 +
 .../client/clientset/versioned/scheme/register.go  |    51 +
 .../versioned/typed/testing/v1alpha1/build.go      |   171 +
 .../versioned/typed/testing/v1alpha1/doc.go        |    17 +
 .../versioned/typed/testing/v1alpha1/fake/doc.go   |    17 +
 .../typed/testing/v1alpha1/fake/fake_build.go      |   137 +
 .../testing/v1alpha1/fake/fake_testing_client.go   |    37 +
 .../typed/testing/v1alpha1/generated_expansion.go  |    18 +
 .../typed/testing/v1alpha1/testing_client.go       |    87 +
 .../client/informers/externalversions/factory.go   |   177 +
 .../client/informers/externalversions/generic.go   |    59 +
 .../internalinterfaces/factory_interfaces.go       |    35 +
 .../externalversions/testing/interface.go          |    43 +
 .../externalversions/testing/v1alpha1/build.go     |    86 +
 .../externalversions/testing/v1alpha1/interface.go |    42 +
 .../test/client/listers/testing/v1alpha1/build.go  |    91 +
 .../testing/v1alpha1/expansion_generated.go        |    24 +
 vendor/github.com/knative/serving/test/clients.go  |   159 +
 .../knative/serving/test/configuration.go          |    40 +
 .../knative/serving/test/conformance/util.go       |    50 +
 .../knative/serving/test/controller/main.go        |   104 +
 vendor/github.com/knative/serving/test/crd.go      |   230 +
 .../github.com/knative/serving/test/crd_checks.go  |   191 +
 .../knative/serving/test/e2e/diagnose.go           |    88 +
 vendor/github.com/knative/serving/test/e2e/e2e.go  |    52 +
 .../github.com/knative/serving/test/e2e_flags.go   |    68 +
 .../github.com/knative/serving/test/kube_checks.go |    71 +
 .../observed-concurrency/observed_concurrency.go   |    42 +
 .../knative/serving/test/reconciler/build/build.go |   155 +
 vendor/github.com/knative/serving/test/route.go    |   131 +
 vendor/github.com/knative/serving/test/service.go  |   105 +
 vendor/github.com/knative/serving/test/states.go   |   137 +
 .../test/test_images/autoscale/autoscale.go        |   104 +
 .../serving/test/test_images/envvars/envvars.go    |    41 +
 .../test/test_images/helloworld/helloworld.go      |    37 +
 .../test/test_images/httpproxy/httpproxy.go        |    72 +
 .../serving/test/test_images/pizzaplanetv1/main.go |    34 +
 .../serving/test/test_images/pizzaplanetv2/main.go |    34 +
 .../test/test_images/singlethreaded/main.go        |    50 +
 vendor/github.com/knative/serving/test/util.go     |    36 +
 .../github.com/mailru/easyjson/benchmark/data.go   |   148 +
 .../mailru/easyjson/benchmark/data_codec.go        |  6914 ++
 .../mailru/easyjson/benchmark/data_ffjson.go       |  6723 ++
 .../mailru/easyjson/benchmark/data_var.go          |   350 +
 .../mailru/easyjson/bootstrap/bootstrap.go         |   193 +
 vendor/github.com/mailru/easyjson/easyjson/main.go |   108 +
 vendor/github.com/mailru/easyjson/gen/decoder.go   |   515 +
 vendor/github.com/mailru/easyjson/gen/encoder.go   |   399 +
 vendor/github.com/mailru/easyjson/gen/generator.go |   533 +
 vendor/github.com/mailru/easyjson/helpers.go       |    78 +
 .../mailru/easyjson/opt/gotemplate_Bool.go         |    79 +
 .../mailru/easyjson/opt/gotemplate_Float32.go      |    79 +
 .../mailru/easyjson/opt/gotemplate_Float64.go      |    79 +
 .../mailru/easyjson/opt/gotemplate_Int.go          |    79 +
 .../mailru/easyjson/opt/gotemplate_Int16.go        |    79 +
 .../mailru/easyjson/opt/gotemplate_Int32.go        |    79 +
 .../mailru/easyjson/opt/gotemplate_Int64.go        |    79 +
 .../mailru/easyjson/opt/gotemplate_Int8.go         |    79 +
 .../mailru/easyjson/opt/gotemplate_String.go       |    79 +
 .../mailru/easyjson/opt/gotemplate_Uint.go         |    79 +
 .../mailru/easyjson/opt/gotemplate_Uint16.go       |    79 +
 .../mailru/easyjson/opt/gotemplate_Uint32.go       |    79 +
 .../mailru/easyjson/opt/gotemplate_Uint64.go       |    79 +
 .../mailru/easyjson/opt/gotemplate_Uint8.go        |    79 +
 .../github.com/mailru/easyjson/opt/optional/opt.go |    80 +
 vendor/github.com/mailru/easyjson/opt/opts.go      |    22 +
 vendor/github.com/mailru/easyjson/parser/parser.go |    98 +
 .../github.com/mailru/easyjson/parser/pkgpath.go   |   163 +
 vendor/github.com/mailru/easyjson/raw.go           |    45 +
 .../mailru/easyjson/tests/custom_map_key_type.go   |    29 +
 vendor/github.com/mailru/easyjson/tests/data.go    |   802 +
 .../mailru/easyjson/tests/disallow_unknown.go      |     8 +
 .../mailru/easyjson/tests/embedded_type.go         |    24 +
 vendor/github.com/mailru/easyjson/tests/errors.go  |    26 +
 .../github.com/mailru/easyjson/tests/named_type.go |    22 +
 .../mailru/easyjson/tests/nested_easy.go           |    25 +
 vendor/github.com/mailru/easyjson/tests/nothing.go |     3 +
 .../github.com/mailru/easyjson/tests/omitempty.go  |    12 +
 vendor/github.com/mailru/easyjson/tests/snake.go   |    10 +
 .../golang_protobuf_extensions/ext/moved.go        |     2 +
 .../golang_protobuf_extensions/pbtest/deleted.go   |     2 +
 .../golang_protobuf_extensions/testdata/test.pb.go |  4029 ++
 vendor/github.com/openshift/api/network/v1/doc.go  |     8 +
 .../openshift/api/network/v1/generated.pb.go       |  2602 +
 .../openshift/api/network/v1/register.go           |    60 +
 .../github.com/openshift/api/network/v1/types.go   |   177 +
 .../api/network/v1/types_swagger_doc_generated.go  |   142 +
 .../api/network/v1/zz_generated.deepcopy.go        |   360 +
 vendor/github.com/openshift/api/oauth/v1/doc.go    |     8 +
 .../openshift/api/oauth/v1/generated.pb.go         |  3411 +
 .../github.com/openshift/api/oauth/v1/register.go  |    61 +
 vendor/github.com/openshift/api/oauth/v1/types.go  |   259 +
 .../api/oauth/v1/types_swagger_doc_generated.go    |   162 +
 .../api/oauth/v1/zz_generated.deepcopy.go          |   424 +
 vendor/github.com/openshift/api/project/v1/doc.go  |     8 +
 .../openshift/api/project/v1/generated.pb.go       |  1092 +
 .../openshift/api/project/v1/register.go           |    49 +
 .../github.com/openshift/api/project/v1/types.go   |    79 +
 .../api/project/v1/types_swagger_doc_generated.go  |    64 +
 .../api/project/v1/zz_generated.deepcopy.go        |   137 +
 vendor/github.com/openshift/api/quota/v1/doc.go    |     8 +
 .../openshift/api/quota/v1/generated.pb.go         |  1855 +
 .../github.com/openshift/api/quota/v1/register.go  |    57 +
 vendor/github.com/openshift/api/quota/v1/types.go  |   113 +
 .../api/quota/v1/types_swagger_doc_generated.go    |    96 +
 .../api/quota/v1/zz_generated.deepcopy.go          |   251 +
 vendor/github.com/openshift/api/security/v1/doc.go |     8 +
 .../openshift/api/security/v1/generated.pb.go      |  4017 ++
 .../openshift/api/security/v1/register.go          |    53 +
 .../github.com/openshift/api/security/v1/types.go  |   353 +
 .../api/security/v1/types_swagger_doc_generated.go |   203 +
 .../api/security/v1/zz_generated.deepcopy.go       |   578 +
 .../tools/genswaggertypedocs/swagger_type_docs.go  |    72 +
 vendor/github.com/openshift/api/user/v1/doc.go     |     8 +
 .../openshift/api/user/v1/generated.pb.go          |  1973 +
 .../github.com/openshift/api/user/v1/register.go   |    58 +
 vendor/github.com/openshift/api/user/v1/types.go   |   135 +
 .../api/user/v1/types_swagger_doc_generated.go     |    90 +
 .../openshift/api/user/v1/zz_generated.deepcopy.go |   266 +
 .../github.com/openshift/api/webconsole/v1/doc.go  |     8 +
 .../openshift/api/webconsole/v1/generated.pb.go    |  2172 +
 .../openshift/api/webconsole/v1/register.go        |    31 +
 .../openshift/api/webconsole/v1/types.go           |   120 +
 .../webconsole/v1/types_swagger_doc_generated.go   |   103 +
 .../api/webconsole/v1/zz_generated.deepcopy.go     |   188 +
 .../operator-sdk/commands/operator-sdk/cmd/add.go  |    34 +
 .../commands/operator-sdk/cmd/add/api.go           |   107 +
 .../commands/operator-sdk/cmd/add/controller.go    |    87 +
 .../commands/operator-sdk/cmd/add/crd.go           |   114 +
 .../commands/operator-sdk/cmd/build.go             |   235 +
 .../commands/operator-sdk/cmd/completion.go        |    31 +
 .../commands/operator-sdk/cmd/completion/bash.go   |    31 +
 .../commands/operator-sdk/cmd/completion/zsh.go    |    31 +
 .../commands/operator-sdk/cmd/generate.go          |    31 +
 .../commands/operator-sdk/cmd/generate/k8s.go      |   120 +
 .../operator-sdk/commands/operator-sdk/cmd/new.go  |   352 +
 .../commands/operator-sdk/cmd/print_deps.go        |    56 +
 .../operator-sdk/commands/operator-sdk/cmd/root.go |    40 +
 .../operator-sdk/commands/operator-sdk/cmd/test.go |    34 +
 .../commands/operator-sdk/cmd/test/cluster.go      |   164 +
 .../commands/operator-sdk/cmd/test/local.go        |   289 +
 .../operator-sdk/commands/operator-sdk/cmd/up.go   |    33 +
 .../commands/operator-sdk/cmd/up/local.go          |   243 +
 .../operator-sdk/commands/operator-sdk/main.go     |    26 +
 .../internal/util/diffutil/diff_util.go            |    60 +
 .../internal/util/fileutil/file_util.go            |    91 +
 .../operator-sdk/internal/util/k8sutil/k8sutil.go  |    53 +
 .../internal/util/projutil/project_util.go         |   235 +
 .../pkg/ansible/controller/controller.go           |    86 +
 .../pkg/ansible/controller/reconcile.go            |   291 +
 .../pkg/ansible/controller/status/types.go         |   194 +
 .../pkg/ansible/controller/status/utils.go         |    93 +
 .../operator-sdk/pkg/ansible/events/log_events.go  |   100 +
 .../operator-sdk/pkg/ansible/operator/operator.go  |    56 +
 .../pkg/ansible/paramconv/paramconv.go             |   164 +
 .../pkg/ansible/proxy/kubeconfig/kubeconfig.go     |   101 +
 .../operator-sdk/pkg/ansible/proxy/kubectl.go      |   268 +
 .../operator-sdk/pkg/ansible/proxy/proxy.go        |   253 +
 .../ansible/proxy/requestfactory/requestinfo.go    |   275 +
 .../pkg/ansible/runner/eventapi/eventapi.go        |   168 +
 .../pkg/ansible/runner/eventapi/types.go           |   112 +
 .../operator-sdk/pkg/ansible/runner/fake/runner.go |    83 +
 .../ansible/runner/internal/inputdir/inputdir.go   |   133 +
 .../operator-sdk/pkg/ansible/runner/runner.go      |   388 +
 .../operator-sdk/pkg/helm/client/client.go         |    73 +
 .../operator-sdk/pkg/helm/client/doc.go            |    17 +
 .../operator-sdk/pkg/helm/controller/controller.go |    75 +
 .../operator-sdk/pkg/helm/controller/doc.go        |    18 +
 .../operator-sdk/pkg/helm/controller/reconcile.go  |   179 +
 .../operator-sdk/pkg/helm/engine/doc.go            |    17 +
 .../operator-sdk/pkg/helm/engine/ownerref.go       |   122 +
 .../operator-sdk/pkg/helm/internal/types/doc.go    |    17 +
 .../operator-sdk/pkg/helm/internal/types/types.go  |   115 +
 .../operator-sdk/pkg/helm/release/doc.go           |    18 +
 .../operator-sdk/pkg/helm/release/manager.go       |   358 +
 .../pkg/helm/release/manager_factory.go            |   105 +
 .../operator-sdk/pkg/helm/release/new.go           |   168 +
 .../operator-sdk/pkg/k8sclient/client.go           |   172 -
 .../operator-sdk/pkg/k8sutil/constants.go          |    35 +
 .../operator-sdk/pkg/k8sutil/k8sutil.go            |    83 +
 .../operator-sdk/pkg/leader/doc.go                 |    54 +
 .../operator-sdk/pkg/leader/leader.go              |   194 +
 .../operator-sdk/pkg/metrics/metrics.go            |    60 +
 .../operator-sdk/pkg/metrics/service-monitor.go    |    52 +
 .../operator-sdk/pkg/ready/ready.go                |    58 +
 .../operator-sdk/pkg/scaffold/add_controller.go    |    50 +
 .../operator-sdk/pkg/scaffold/addtoscheme.go       |    54 +
 .../pkg/scaffold/ansible/dockerfile.go             |    48 +
 .../pkg/scaffold/ansible/galaxy_init.go            |    64 +
 .../operator-sdk/pkg/scaffold/ansible/operator.go  |    72 +
 .../operator-sdk/pkg/scaffold/ansible/playbook.go  |    44 +
 .../operator-sdk/pkg/scaffold/ansible/watches.go   |    48 +
 .../operator-sdk/pkg/scaffold/apis.go              |    50 +
 .../operator-sdk/pkg/scaffold/build_dockerfile.go  |    44 +
 .../operator-sdk/pkg/scaffold/cmd.go               |   132 +
 .../operator-sdk/pkg/scaffold/constants.go         |    38 +
 .../operator-sdk/pkg/scaffold/controller.go        |    55 +
 .../operator-sdk/pkg/scaffold/controller_kind.go   |   195 +
 .../operator-sdk/pkg/scaffold/cr.go                |    52 +
 .../operator-sdk/pkg/scaffold/crd.go               |    61 +
 .../operator-sdk/pkg/scaffold/doc.go               |    50 +
 .../operator-sdk/pkg/scaffold/gitignore.go         |   112 +
 .../operator-sdk/pkg/scaffold/go_test_script.go    |    41 +
 .../operator-sdk/pkg/scaffold/gopkgtoml.go         |   175 +
 .../operator-sdk/pkg/scaffold/helm/chart.go        |    51 +
 .../operator-sdk/pkg/scaffold/helm/dockerfile.go   |    45 +
 .../operator-sdk/pkg/scaffold/helm/operator.go     |    74 +
 .../operator-sdk/pkg/scaffold/helm/watches.go      |    47 +
 .../operator-sdk/pkg/scaffold/input/input.go       |   121 +
 .../operator-sdk/pkg/scaffold/operator.go          |    87 +
 .../operator-sdk/pkg/scaffold/register.go          |    66 +
 .../operator-sdk/pkg/scaffold/resource.go          |   147 +
 .../operator-sdk/pkg/scaffold/role.go              |   192 +
 .../operator-sdk/pkg/scaffold/rolebinding.go       |    54 +
 .../operator-sdk/pkg/scaffold/scaffold.go          |   175 +
 .../operator-sdk/pkg/scaffold/service_account.go   |    41 +
 .../pkg/scaffold/test_framework_dockerfile.go      |    41 +
 .../operator-sdk/pkg/scaffold/test_pod.go          |    59 +
 .../operator-sdk/pkg/scaffold/test_setup.go        |    59 +
 .../operator-sdk/pkg/scaffold/types.go             |    90 +
 .../operator-sdk/pkg/scaffold/version.go           |    42 +
 .../operator-sdk/pkg/sdk/action.go                 |   182 -
 .../operator-framework/operator-sdk/pkg/sdk/api.go |    73 -
 .../operator-sdk/pkg/sdk/handler.go                |    29 -
 .../operator-sdk/pkg/sdk/informer-sync.go          |   124 -
 .../operator-sdk/pkg/sdk/informer.go               |   136 -
 .../pkg/sdk/internal/metrics/metrics.go            |    88 -
 .../operator-sdk/pkg/sdk/metrics.go                |    43 -
 .../operator-sdk/pkg/sdk/query-opt.go              |    86 -
 .../operator-sdk/pkg/sdk/query.go                  |    76 -
 .../operator-sdk/pkg/sdk/types.go                  |    29 -
 .../operator-sdk/pkg/sdk/watch-opt.go              |    56 -
 .../operator-sdk/pkg/test/client.go                |   106 +
 .../operator-sdk/pkg/test/context.go               |    96 +
 .../operator-sdk/pkg/test/e2eutil/wait_util.go     |    69 +
 .../operator-sdk/pkg/test/framework.go             |   170 +
 .../operator-sdk/pkg/test/main_entry.go            |   127 +
 .../operator-sdk/pkg/test/resource_creator.go      |   111 +
 .../operator-sdk/pkg/tls/error.go                  |    24 +
 .../operator-sdk/pkg/tls/primitives.go             |   133 +
 .../operator-framework/operator-sdk/pkg/tls/tls.go |   384 +
 .../operator-sdk/pkg/util/k8sutil/constants.go     |    35 -
 .../operator-sdk/pkg/util/k8sutil/k8sutil.go       |   208 -
 .../ansible-operator/cmd/ansible-operator/main.go  |    80 +
 .../test/helm-operator/cmd/helm-operator/main.go   |   108 +
 .../test/test-framework/cmd/manager/main.go        |   108 +
 .../pkg/apis/addtoscheme_cache_v1alpha1.go         |    24 +
 .../test/test-framework/pkg/apis/apis.go           |    27 +
 .../test-framework/pkg/apis/cache/v1alpha1/doc.go  |    18 +
 .../pkg/apis/cache/v1alpha1/memcached_types.go     |    56 +
 .../pkg/apis/cache/v1alpha1/register.go            |    33 +
 .../apis/cache/v1alpha1/zz_generated.deepcopy.go   |   107 +
 .../test-framework/pkg/controller/add_memcached.go |    24 +
 .../test-framework/pkg/controller/controller.go    |    32 +
 .../controller/memcached/memcached_controller.go   |   243 +
 .../operator-sdk/version/version.go                |     2 +-
 vendor/github.com/pborman/uuid/CONTRIBUTORS        |     1 +
 vendor/github.com/pborman/uuid/LICENSE             |    27 +
 vendor/github.com/pborman/uuid/dce.go              |    84 +
 vendor/github.com/pborman/uuid/doc.go              |    13 +
 vendor/github.com/pborman/uuid/hash.go             |    53 +
 vendor/github.com/pborman/uuid/marshal.go          |    85 +
 vendor/github.com/pborman/uuid/node.go             |    50 +
 vendor/github.com/pborman/uuid/sql.go              |    68 +
 vendor/github.com/pborman/uuid/time.go             |    57 +
 vendor/github.com/pborman/uuid/util.go             |    32 +
 vendor/github.com/pborman/uuid/uuid.go             |   163 +
 vendor/github.com/pborman/uuid/version1.go         |    23 +
 vendor/github.com/pborman/uuid/version4.go         |    26 +
 vendor/github.com/petar/GoLLRB/example/ex1.go      |    26 +
 .../examples/content-addressable-store/cas.go      |    63 +
 .../super-simple-store/super-simple-store.go       |    30 +
 .../prometheus/client_golang/api/client.go         |   131 +
 .../client_golang/api/prometheus/v1/api.go         |   519 +
 .../client_golang/examples/random/main.go          |   106 +
 .../client_golang/examples/simple/main.go          |    31 +
 .../prometheus/client_golang/prometheus/counter.go |     2 +-
 .../prometheus/client_golang/prometheus/desc.go    |     4 +-
 .../prometheus/client_golang/prometheus/gauge.go   |     2 +-
 .../client_golang/prometheus/graphite/bridge.go    |   282 +
 .../client_golang/prometheus/histogram.go          |     2 +-
 .../prometheus/client_golang/prometheus/http.go    |   105 +-
 .../prometheus/client_golang/prometheus/labels.go  |    21 +-
 .../client_golang/prometheus/promauto/auto.go      |   223 +
 .../client_golang/prometheus/promhttp/http.go      |   104 +-
 .../client_golang/prometheus/push/deprecated.go    |   172 +
 .../client_golang/prometheus/push/push.go          |   236 +
 .../client_golang/prometheus/registry.go           |    48 +-
 .../prometheus/client_golang/prometheus/summary.go |     2 +-
 .../client_golang/prometheus/testutil/testutil.go  |   189 +
 .../prometheus/client_golang/prometheus/timer.go   |    11 +-
 .../prometheus/client_model/cpp/metrics.pb.cc      |  3380 +
 .../prometheus/client_model/cpp/metrics.pb.h       |  2072 +
 .../github.com/prometheus/common/config/config.go  |    34 +
 .../prometheus/common/config/http_config.go        |   317 +
 .../prometheus/common/expfmt/text_create.go        |    12 +-
 .../prometheus/common/log/eventlog_formatter.go    |    89 +
 vendor/github.com/prometheus/common/log/log.go     |   364 +
 .../prometheus/common/log/syslog_formatter.go      |   126 +
 .../prometheus/common/promlog/flag/flag.go         |    45 +
 vendor/github.com/prometheus/common/promlog/log.go |    95 +
 vendor/github.com/prometheus/common/route/route.go |   110 +
 .../github.com/prometheus/common/version/info.go   |    89 +
 .../github.com/prometheus/procfs/bcache/bcache.go  |    84 +
 vendor/github.com/prometheus/procfs/bcache/get.go  |   330 +
 vendor/github.com/prometheus/procfs/sysfs/doc.go   |    16 +
 vendor/github.com/prometheus/procfs/sysfs/fs.go    |   108 +
 .../prometheus/procfs/sysfs/net_class.go           |   153 +
 .../prometheus/procfs/sysfs/system_cpu.go          |   141 +
 vendor/github.com/prometheus/procfs/xfs/parse.go   |    18 +-
 .../radovskyb/watcher/cmd/watcher/main.go          |   171 +
 .../radovskyb/watcher/example/basics/main.go       |    72 +
 .../watcher/example/close_watcher/main.go          |    52 +
 .../watcher/example/filter_events/main.go          |    49 +
 .../radovskyb/watcher/example/ignore_files/main.go |    58 +
 .../watcher/example/ignore_hidden_files/main.go    |    48 +
 vendor/github.com/radovskyb/watcher/ishidden.go    |    12 +
 .../radovskyb/watcher/ishidden_windows.go          |    21 +
 vendor/github.com/radovskyb/watcher/samefile.go    |     2 +-
 .../radovskyb/watcher/samefile_windows.go          |     2 +-
 vendor/github.com/radovskyb/watcher/watcher.go     |   114 +-
 .../go-internal/cmd/txtar-addmod/addmod.go         |   160 +
 .../rogpeppe/go-internal/cmd/txtar-goproxy/main.go |    47 +
 .../go-internal/cmd/txtar-savedir/savedir.go       |    84 +
 .../rogpeppe/go-internal/dirhash/hash.go           |   103 +
 .../rogpeppe/go-internal/goproxytest/allhex.go     |    19 +
 .../rogpeppe/go-internal/goproxytest/proxy.go      |   287 +
 .../rogpeppe/go-internal/goproxytest/pseudo.go     |    21 +
 .../rogpeppe/go-internal/gotooltest/setup.go       |   140 +
 .../rogpeppe/go-internal/imports/build.go          |   211 +
 .../rogpeppe/go-internal/imports/read.go           |   249 +
 .../rogpeppe/go-internal/imports/scan.go           |    96 +
 .../go-internal/imports/testdata/import1/x.go      |     3 +
 .../go-internal/imports/testdata/import1/x1.go     |     9 +
 .../imports/testdata/import1/x_darwin.go           |     3 +
 .../imports/testdata/import1/x_windows.go          |     3 +
 .../rogpeppe/go-internal/modfile/gopkgin.go        |    47 +
 .../rogpeppe/go-internal/modfile/print.go          |   164 +
 .../rogpeppe/go-internal/modfile/read.go           |   869 +
 .../rogpeppe/go-internal/modfile/rule.go           |   724 +
 .../rogpeppe/go-internal/module/module.go          |   540 +
 vendor/github.com/rogpeppe/go-internal/par/work.go |   149 +
 .../rogpeppe/go-internal/semver/semver.go          |   388 +
 .../rogpeppe/go-internal/testenv/testenv.go        |   248 +
 .../rogpeppe/go-internal/testenv/testenv_cgo.go    |    11 +
 .../rogpeppe/go-internal/testenv/testenv_notwin.go |    20 +
 .../go-internal/testenv/testenv_windows.go         |    48 +
 .../rogpeppe/go-internal/testscript/cmd.go         |   377 +
 .../rogpeppe/go-internal/testscript/cover.go       |   272 +
 .../rogpeppe/go-internal/testscript/doc.go         |   282 +
 .../rogpeppe/go-internal/testscript/exe.go         |   203 +
 .../rogpeppe/go-internal/testscript/testscript.go  |   577 +
 .../rogpeppe/go-internal/txtar/archive.go          |   140 +
 vendor/github.com/scylladb/go-set/b16set/b16set.go |   279 +
 vendor/github.com/scylladb/go-set/b32set/b32set.go |   279 +
 vendor/github.com/scylladb/go-set/b64set/b64set.go |   279 +
 vendor/github.com/scylladb/go-set/b8set/b8set.go   |   279 +
 vendor/github.com/scylladb/go-set/doc.go           |     8 +
 vendor/github.com/scylladb/go-set/f32set/f32set.go |   279 +
 vendor/github.com/scylladb/go-set/f64set/f64set.go |   279 +
 vendor/github.com/scylladb/go-set/i16set/i16set.go |   279 +
 vendor/github.com/scylladb/go-set/i32set/i32set.go |   279 +
 vendor/github.com/scylladb/go-set/i64set/i64set.go |   279 +
 vendor/github.com/scylladb/go-set/i8set/i8set.go   |   279 +
 .../github.com/scylladb/go-set/internal/set/set.go |   279 +
 .../github.com/scylladb/go-set/internal/set/t.go   |     8 +
 vendor/github.com/scylladb/go-set/iset/iset.go     |   279 +
 vendor/github.com/scylladb/go-set/set.go           |   229 +
 vendor/github.com/scylladb/go-set/u16set/u16set.go |   279 +
 vendor/github.com/scylladb/go-set/u32set/u32set.go |   279 +
 vendor/github.com/scylladb/go-set/u64set/u64set.go |   279 +
 vendor/github.com/scylladb/go-set/u8set/u8set.go   |   279 +
 vendor/github.com/scylladb/go-set/uset/uset.go     |   279 +
 vendor/github.com/sirupsen/logrus/entry.go         |   118 +-
 vendor/github.com/sirupsen/logrus/exported.go      |    21 +
 vendor/github.com/sirupsen/logrus/formatter.go     |    18 +-
 .../sirupsen/logrus/hooks/syslog/syslog.go         |    55 +
 .../github.com/sirupsen/logrus/hooks/test/test.go  |    92 +
 .../logrus/internal/testutils/testutils.go         |    58 +
 .../github.com/sirupsen/logrus/json_formatter.go   |    13 +-
 vendor/github.com/sirupsen/logrus/logger.go        |    62 +-
 vendor/github.com/sirupsen/logrus/logrus.go        |    30 +-
 .../github.com/sirupsen/logrus/text_formatter.go   |    35 +-
 vendor/github.com/sirupsen/logrus/writer.go        |     2 +
 vendor/github.com/spf13/cobra/cobra/cmd/add.go     |   179 +
 vendor/github.com/spf13/cobra/cobra/cmd/helpers.go |   168 +
 vendor/github.com/spf13/cobra/cobra/cmd/init.go    |   234 +
 .../spf13/cobra/cobra/cmd/license_agpl.go          |   683 +
 .../spf13/cobra/cobra/cmd/license_apache_2.go      |   238 +
 .../spf13/cobra/cobra/cmd/license_bsd_clause_2.go  |    71 +
 .../spf13/cobra/cobra/cmd/license_bsd_clause_3.go  |    78 +
 .../spf13/cobra/cobra/cmd/license_gpl_2.go         |   376 +
 .../spf13/cobra/cobra/cmd/license_gpl_3.go         |   711 +
 .../spf13/cobra/cobra/cmd/license_lgpl.go          |   186 +
 .../spf13/cobra/cobra/cmd/license_mit.go           |    63 +
 .../github.com/spf13/cobra/cobra/cmd/licenses.go   |   118 +
 vendor/github.com/spf13/cobra/cobra/cmd/project.go |   200 +
 vendor/github.com/spf13/cobra/cobra/cmd/root.go    |    79 +
 vendor/github.com/spf13/cobra/cobra/main.go        |    20 +
 vendor/github.com/spf13/cobra/doc/man_docs.go      |   236 +
 vendor/github.com/spf13/cobra/doc/md_docs.go       |   159 +
 vendor/github.com/spf13/cobra/doc/rest_docs.go     |   185 +
 vendor/github.com/spf13/cobra/doc/util.go          |    51 +
 vendor/github.com/spf13/cobra/doc/yaml_docs.go     |   169 +
 vendor/github.com/stoewer/go-strcase/doc.go        |     2 +-
 .../github.com/stretchr/testify/_codegen/main.go   |   316 +
 vendor/github.com/stretchr/testify/doc.go          |    22 +
 vendor/github.com/stretchr/testify/http/doc.go     |     2 +
 .../stretchr/testify/http/test_response_writer.go  |    49 +
 .../stretchr/testify/http/test_round_tripper.go    |    17 +
 vendor/github.com/stretchr/testify/mock/doc.go     |    44 +
 vendor/github.com/stretchr/testify/mock/mock.go    |   885 +
 vendor/github.com/stretchr/testify/require/doc.go  |    28 +
 .../testify/require/forward_requirements.go        |    16 +
 .../github.com/stretchr/testify/require/require.go |  1227 +
 .../stretchr/testify/require/require_forward.go    |   957 +
 .../stretchr/testify/require/requirements.go       |    29 +
 vendor/github.com/stretchr/testify/suite/doc.go    |    65 +
 .../stretchr/testify/suite/interfaces.go           |    46 +
 vendor/github.com/stretchr/testify/suite/suite.go  |   136 +
 vendor/go.uber.org/zap/benchmarks/doc.go           |    23 +
 vendor/go.uber.org/zap/internal/readme/readme.go   |   209 +
 vendor/go.uber.org/zap/internal/ztest/doc.go       |    24 +
 vendor/go.uber.org/zap/internal/ztest/timeout.go   |    59 +
 vendor/go.uber.org/zap/internal/ztest/writer.go    |    96 +
 vendor/go.uber.org/zap/zapgrpc/zapgrpc.go          |   100 +
 vendor/go.uber.org/zap/zaptest/doc.go              |    22 +
 vendor/go.uber.org/zap/zaptest/logger.go           |   124 +
 .../zap/zaptest/observer/logged_entry.go           |    39 +
 .../go.uber.org/zap/zaptest/observer/observer.go   |   167 +
 vendor/go.uber.org/zap/zaptest/testingt.go         |    47 +
 vendor/go.uber.org/zap/zaptest/timeout.go          |    45 +
 vendor/go.uber.org/zap/zaptest/writer.go           |    44 +
 vendor/golang.org/x/crypto/acme/acme.go            |   926 +
 .../golang.org/x/crypto/acme/autocert/autocert.go  |  1139 +
 vendor/golang.org/x/crypto/acme/autocert/cache.go  |   130 +
 .../x/crypto/acme/autocert/internal/acmetest/ca.go |   416 +
 .../golang.org/x/crypto/acme/autocert/listener.go  |   157 +
 .../golang.org/x/crypto/acme/autocert/renewal.go   |   141 +
 vendor/golang.org/x/crypto/acme/http.go            |   281 +
 vendor/golang.org/x/crypto/acme/jws.go             |   156 +
 vendor/golang.org/x/crypto/acme/types.go           |   329 +
 vendor/golang.org/x/crypto/argon2/argon2.go        |   285 +
 vendor/golang.org/x/crypto/argon2/blake2b.go       |    53 +
 vendor/golang.org/x/crypto/argon2/blamka_amd64.go  |    60 +
 vendor/golang.org/x/crypto/argon2/blamka_amd64.s   |   243 +
 .../golang.org/x/crypto/argon2/blamka_generic.go   |   163 +
 vendor/golang.org/x/crypto/argon2/blamka_ref.go    |    15 +
 vendor/golang.org/x/crypto/bcrypt/base64.go        |    35 +
 vendor/golang.org/x/crypto/bcrypt/bcrypt.go        |   295 +
 vendor/golang.org/x/crypto/blake2b/blake2b.go      |   289 +
 .../x/crypto/blake2b/blake2bAVX2_amd64.go          |    37 +
 .../x/crypto/blake2b/blake2bAVX2_amd64.s           |   750 +
 .../golang.org/x/crypto/blake2b/blake2b_amd64.go   |    24 +
 vendor/golang.org/x/crypto/blake2b/blake2b_amd64.s |   281 +
 .../golang.org/x/crypto/blake2b/blake2b_generic.go |   179 +
 vendor/golang.org/x/crypto/blake2b/blake2b_ref.go  |    11 +
 vendor/golang.org/x/crypto/blake2b/blake2x.go      |   177 +
 vendor/golang.org/x/crypto/blake2b/register.go     |    32 +
 vendor/golang.org/x/crypto/blake2s/blake2s.go      |   244 +
 vendor/golang.org/x/crypto/blake2s/blake2s_386.go  |    32 +
 vendor/golang.org/x/crypto/blake2s/blake2s_386.s   |   435 +
 .../golang.org/x/crypto/blake2s/blake2s_amd64.go   |    37 +
 vendor/golang.org/x/crypto/blake2s/blake2s_amd64.s |   438 +
 .../golang.org/x/crypto/blake2s/blake2s_generic.go |   174 +
 vendor/golang.org/x/crypto/blake2s/blake2s_ref.go  |    17 +
 vendor/golang.org/x/crypto/blake2s/blake2x.go      |   178 +
 vendor/golang.org/x/crypto/blake2s/register.go     |    21 +
 vendor/golang.org/x/crypto/blowfish/block.go       |   159 +
 vendor/golang.org/x/crypto/blowfish/cipher.go      |    91 +
 vendor/golang.org/x/crypto/blowfish/const.go       |   199 +
 vendor/golang.org/x/crypto/bn256/bn256.go          |   416 +
 vendor/golang.org/x/crypto/bn256/constants.go      |    44 +
 vendor/golang.org/x/crypto/bn256/curve.go          |   287 +
 vendor/golang.org/x/crypto/bn256/gfp12.go          |   200 +
 vendor/golang.org/x/crypto/bn256/gfp2.go           |   219 +
 vendor/golang.org/x/crypto/bn256/gfp6.go           |   296 +
 vendor/golang.org/x/crypto/bn256/optate.go         |   395 +
 vendor/golang.org/x/crypto/bn256/twist.go          |   258 +
 vendor/golang.org/x/crypto/cast5/cast5.go          |   526 +
 .../x/crypto/chacha20poly1305/chacha20poly1305.go  |   101 +
 .../chacha20poly1305/chacha20poly1305_amd64.go     |    86 +
 .../chacha20poly1305/chacha20poly1305_amd64.s      |  2695 +
 .../chacha20poly1305/chacha20poly1305_generic.go   |    81 +
 .../chacha20poly1305/chacha20poly1305_noasm.go     |    15 +
 .../x/crypto/chacha20poly1305/xchacha20poly1305.go |   104 +
 vendor/golang.org/x/crypto/cryptobyte/asn1.go      |   751 +
 vendor/golang.org/x/crypto/cryptobyte/asn1/asn1.go |    46 +
 vendor/golang.org/x/crypto/cryptobyte/builder.go   |   337 +
 vendor/golang.org/x/crypto/cryptobyte/string.go    |   166 +
 .../golang.org/x/crypto/curve25519/const_amd64.h   |     8 +
 .../golang.org/x/crypto/curve25519/const_amd64.s   |    20 +
 .../golang.org/x/crypto/curve25519/cswap_amd64.s   |    65 +
 .../golang.org/x/crypto/curve25519/curve25519.go   |   834 +
 vendor/golang.org/x/crypto/curve25519/doc.go       |    23 +
 .../golang.org/x/crypto/curve25519/freeze_amd64.s  |    73 +
 .../x/crypto/curve25519/ladderstep_amd64.s         |  1377 +
 .../x/crypto/curve25519/mont25519_amd64.go         |   240 +
 vendor/golang.org/x/crypto/curve25519/mul_amd64.s  |   169 +
 .../golang.org/x/crypto/curve25519/square_amd64.s  |   132 +
 vendor/golang.org/x/crypto/ed25519/ed25519.go      |   217 +
 .../crypto/ed25519/internal/edwards25519/const.go  |  1422 +
 .../ed25519/internal/edwards25519/edwards25519.go  |  1793 +
 vendor/golang.org/x/crypto/hkdf/hkdf.go            |    93 +
 .../x/crypto/internal/chacha20/chacha_generic.go   |   264 +
 .../x/crypto/internal/chacha20/chacha_noasm.go     |    16 +
 .../x/crypto/internal/chacha20/chacha_s390x.go     |    30 +
 .../x/crypto/internal/chacha20/chacha_s390x.s      |   283 +
 .../golang.org/x/crypto/internal/chacha20/xor.go   |    43 +
 .../x/crypto/internal/subtle/aliasing.go           |    32 +
 .../x/crypto/internal/subtle/aliasing_appengine.go |    35 +
 vendor/golang.org/x/crypto/md4/md4.go              |   118 +
 vendor/golang.org/x/crypto/md4/md4block.go         |    89 +
 vendor/golang.org/x/crypto/nacl/auth/auth.go       |    58 +
 vendor/golang.org/x/crypto/nacl/box/box.go         |   103 +
 .../x/crypto/nacl/secretbox/secretbox.go           |   173 +
 vendor/golang.org/x/crypto/nacl/sign/sign.go       |    90 +
 vendor/golang.org/x/crypto/ocsp/ocsp.go            |   781 +
 vendor/golang.org/x/crypto/openpgp/armor/armor.go  |   219 +
 vendor/golang.org/x/crypto/openpgp/armor/encode.go |   160 +
 .../golang.org/x/crypto/openpgp/canonical_text.go  |    59 +
 .../x/crypto/openpgp/clearsign/clearsign.go        |   399 +
 .../golang.org/x/crypto/openpgp/elgamal/elgamal.go |   122 +
 .../golang.org/x/crypto/openpgp/errors/errors.go   |    72 +
 vendor/golang.org/x/crypto/openpgp/keys.go         |   693 +
 .../x/crypto/openpgp/packet/compressed.go          |   123 +
 .../golang.org/x/crypto/openpgp/packet/config.go   |    91 +
 .../x/crypto/openpgp/packet/encrypted_key.go       |   206 +
 .../golang.org/x/crypto/openpgp/packet/literal.go  |    89 +
 vendor/golang.org/x/crypto/openpgp/packet/ocfb.go  |   143 +
 .../x/crypto/openpgp/packet/one_pass_signature.go  |    73 +
 .../golang.org/x/crypto/openpgp/packet/opaque.go   |   162 +
 .../golang.org/x/crypto/openpgp/packet/packet.go   |   551 +
 .../x/crypto/openpgp/packet/private_key.go         |   385 +
 .../x/crypto/openpgp/packet/public_key.go          |   753 +
 .../x/crypto/openpgp/packet/public_key_v3.go       |   279 +
 .../golang.org/x/crypto/openpgp/packet/reader.go   |    76 +
 .../x/crypto/openpgp/packet/signature.go           |   731 +
 .../x/crypto/openpgp/packet/signature_v3.go        |   146 +
 .../openpgp/packet/symmetric_key_encrypted.go      |   155 +
 .../openpgp/packet/symmetrically_encrypted.go      |   290 +
 .../x/crypto/openpgp/packet/userattribute.go       |    91 +
 .../golang.org/x/crypto/openpgp/packet/userid.go   |   160 +
 vendor/golang.org/x/crypto/openpgp/read.go         |   442 +
 vendor/golang.org/x/crypto/openpgp/s2k/s2k.go      |   273 +
 vendor/golang.org/x/crypto/openpgp/write.go        |   418 +
 .../golang.org/x/crypto/otr/libotr_test_helper.c   |   197 +
 vendor/golang.org/x/crypto/otr/otr.go              |  1415 +
 vendor/golang.org/x/crypto/otr/smp.go              |   572 +
 vendor/golang.org/x/crypto/pbkdf2/pbkdf2.go        |    77 +
 vendor/golang.org/x/crypto/pkcs12/bmp-string.go    |    50 +
 vendor/golang.org/x/crypto/pkcs12/crypto.go        |   131 +
 vendor/golang.org/x/crypto/pkcs12/errors.go        |    23 +
 .../golang.org/x/crypto/pkcs12/internal/rc2/rc2.go |   271 +
 vendor/golang.org/x/crypto/pkcs12/mac.go           |    45 +
 vendor/golang.org/x/crypto/pkcs12/pbkdf.go         |   170 +
 vendor/golang.org/x/crypto/pkcs12/pkcs12.go        |   346 +
 vendor/golang.org/x/crypto/pkcs12/safebags.go      |    57 +
 vendor/golang.org/x/crypto/poly1305/poly1305.go    |    33 +
 vendor/golang.org/x/crypto/poly1305/sum_amd64.go   |    22 +
 vendor/golang.org/x/crypto/poly1305/sum_amd64.s    |   125 +
 vendor/golang.org/x/crypto/poly1305/sum_arm.go     |    22 +
 vendor/golang.org/x/crypto/poly1305/sum_arm.s      |   427 +
 vendor/golang.org/x/crypto/poly1305/sum_noasm.go   |    14 +
 vendor/golang.org/x/crypto/poly1305/sum_ref.go     |   139 +
 vendor/golang.org/x/crypto/poly1305/sum_s390x.go   |    49 +
 vendor/golang.org/x/crypto/poly1305/sum_s390x.s    |   400 +
 .../golang.org/x/crypto/poly1305/sum_vmsl_s390x.s  |   931 +
 vendor/golang.org/x/crypto/ripemd160/ripemd160.go  |   120 +
 .../x/crypto/ripemd160/ripemd160block.go           |   165 +
 .../golang.org/x/crypto/salsa20/salsa/hsalsa20.go  |   144 +
 .../x/crypto/salsa20/salsa/salsa2020_amd64.s       |   889 +
 .../golang.org/x/crypto/salsa20/salsa/salsa208.go  |   199 +
 .../x/crypto/salsa20/salsa/salsa20_amd64.go        |    24 +
 .../x/crypto/salsa20/salsa/salsa20_ref.go          |   234 +
 vendor/golang.org/x/crypto/salsa20/salsa20.go      |    58 +
 vendor/golang.org/x/crypto/scrypt/scrypt.go        |   244 +
 vendor/golang.org/x/crypto/sha3/doc.go             |    66 +
 vendor/golang.org/x/crypto/sha3/hashes.go          |    91 +
 vendor/golang.org/x/crypto/sha3/hashes_generic.go  |    27 +
 vendor/golang.org/x/crypto/sha3/keccakf.go         |   412 +
 vendor/golang.org/x/crypto/sha3/keccakf_amd64.go   |    13 +
 vendor/golang.org/x/crypto/sha3/keccakf_amd64.s    |   390 +
 vendor/golang.org/x/crypto/sha3/register.go        |    18 +
 vendor/golang.org/x/crypto/sha3/sha3.go            |   192 +
 vendor/golang.org/x/crypto/sha3/sha3_s390x.go      |   289 +
 vendor/golang.org/x/crypto/sha3/sha3_s390x.s       |    49 +
 vendor/golang.org/x/crypto/sha3/shake.go           |    70 +
 vendor/golang.org/x/crypto/sha3/shake_generic.go   |    19 +
 vendor/golang.org/x/crypto/sha3/xor.go             |    16 +
 vendor/golang.org/x/crypto/sha3/xor_generic.go     |    28 +
 vendor/golang.org/x/crypto/sha3/xor_unaligned.go   |    58 +
 vendor/golang.org/x/crypto/ssh/agent/client.go     |   789 +
 vendor/golang.org/x/crypto/ssh/agent/forward.go    |   103 +
 vendor/golang.org/x/crypto/ssh/agent/keyring.go    |   241 +
 vendor/golang.org/x/crypto/ssh/agent/server.go     |   567 +
 vendor/golang.org/x/crypto/ssh/buffer.go           |    97 +
 vendor/golang.org/x/crypto/ssh/certs.go            |   535 +
 vendor/golang.org/x/crypto/ssh/channel.go          |   633 +
 vendor/golang.org/x/crypto/ssh/cipher.go           |   770 +
 vendor/golang.org/x/crypto/ssh/client.go           |   278 +
 vendor/golang.org/x/crypto/ssh/client_auth.go      |   525 +
 vendor/golang.org/x/crypto/ssh/common.go           |   383 +
 vendor/golang.org/x/crypto/ssh/connection.go       |   143 +
 vendor/golang.org/x/crypto/ssh/doc.go              |    21 +
 vendor/golang.org/x/crypto/ssh/handshake.go        |   646 +
 vendor/golang.org/x/crypto/ssh/kex.go              |   540 +
 vendor/golang.org/x/crypto/ssh/keys.go             |  1100 +
 .../x/crypto/ssh/knownhosts/knownhosts.go          |   540 +
 vendor/golang.org/x/crypto/ssh/mac.go              |    61 +
 vendor/golang.org/x/crypto/ssh/messages.go         |   766 +
 vendor/golang.org/x/crypto/ssh/mux.go              |   330 +
 vendor/golang.org/x/crypto/ssh/server.go           |   594 +
 vendor/golang.org/x/crypto/ssh/session.go          |   647 +
 vendor/golang.org/x/crypto/ssh/streamlocal.go      |   116 +
 vendor/golang.org/x/crypto/ssh/tcpip.go            |   474 +
 vendor/golang.org/x/crypto/ssh/terminal/util.go    |     4 +-
 .../golang.org/x/crypto/ssh/terminal/util_aix.go   |    12 +
 .../golang.org/x/crypto/ssh/terminal/util_plan9.go |     2 +-
 .../x/crypto/ssh/terminal/util_solaris.go          |     2 +-
 .../x/crypto/ssh/terminal/util_windows.go          |     2 +-
 vendor/golang.org/x/crypto/ssh/test/doc.go         |     7 +
 vendor/golang.org/x/crypto/ssh/test/sshd_test_pw.c |   173 +
 vendor/golang.org/x/crypto/ssh/testdata/doc.go     |     8 +
 vendor/golang.org/x/crypto/ssh/testdata/keys.go    |   227 +
 vendor/golang.org/x/crypto/ssh/transport.go        |   353 +
 vendor/golang.org/x/crypto/tea/cipher.go           |   108 +
 vendor/golang.org/x/crypto/twofish/twofish.go      |   342 +
 vendor/golang.org/x/crypto/xtea/block.go           |    66 +
 vendor/golang.org/x/crypto/xtea/cipher.go          |    82 +
 vendor/golang.org/x/crypto/xts/xts.go              |   145 +
 vendor/golang.org/x/net/bpf/asm.go                 |    41 +
 vendor/golang.org/x/net/bpf/constants.go           |   222 +
 vendor/golang.org/x/net/bpf/doc.go                 |    82 +
 vendor/golang.org/x/net/bpf/instructions.go        |   726 +
 vendor/golang.org/x/net/bpf/setter.go              |    10 +
 vendor/golang.org/x/net/bpf/vm.go                  |   150 +
 vendor/golang.org/x/net/bpf/vm_instructions.go     |   181 +
 vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go |     5 +-
 .../x/net/context/ctxhttp/ctxhttp_pre17.go         |   147 -
 vendor/golang.org/x/net/dict/dict.go               |   210 +
 vendor/golang.org/x/net/dns/dnsmessage/message.go  |  2606 +
 vendor/golang.org/x/net/html/atom/atom.go          |    78 +
 vendor/golang.org/x/net/html/atom/gen.go           |   712 +
 vendor/golang.org/x/net/html/atom/table.go         |   783 +
 vendor/golang.org/x/net/html/charset/charset.go    |   257 +
 vendor/golang.org/x/net/html/const.go              |   112 +
 vendor/golang.org/x/net/html/doc.go                |   106 +
 vendor/golang.org/x/net/html/doctype.go            |   156 +
 vendor/golang.org/x/net/html/entity.go             |  2253 +
 vendor/golang.org/x/net/html/escape.go             |   258 +
 vendor/golang.org/x/net/html/foreign.go            |   226 +
 vendor/golang.org/x/net/html/node.go               |   220 +
 vendor/golang.org/x/net/html/parse.go              |  2311 +
 vendor/golang.org/x/net/html/render.go             |   271 +
 vendor/golang.org/x/net/html/token.go              |  1219 +
 vendor/golang.org/x/net/http/httpproxy/proxy.go    |   370 +
 .../golang.org/x/net/http2/configure_transport.go  |    82 -
 vendor/golang.org/x/net/http2/frame.go             |     2 +-
 vendor/golang.org/x/net/http2/go111.go             |    11 +-
 vendor/golang.org/x/net/http2/go16.go              |    16 -
 vendor/golang.org/x/net/http2/go17.go              |   121 -
 vendor/golang.org/x/net/http2/go17_not18.go        |    36 -
 vendor/golang.org/x/net/http2/go18.go              |    56 -
 vendor/golang.org/x/net/http2/go19.go              |    16 -
 vendor/golang.org/x/net/http2/h2c/h2c.go           |   495 +
 vendor/golang.org/x/net/http2/h2demo/h2demo.go     |   546 +
 vendor/golang.org/x/net/http2/h2demo/launch.go     |   302 +
 vendor/golang.org/x/net/http2/h2demo/tmpl.go       |  1991 +
 vendor/golang.org/x/net/http2/h2i/h2i.go           |   522 +
 vendor/golang.org/x/net/http2/hpack/hpack.go       |    10 +-
 vendor/golang.org/x/net/http2/not_go111.go         |    11 +-
 vendor/golang.org/x/net/http2/not_go16.go          |    21 -
 vendor/golang.org/x/net/http2/not_go17.go          |    95 -
 vendor/golang.org/x/net/http2/not_go18.go          |    29 -
 vendor/golang.org/x/net/http2/not_go19.go          |    16 -
 vendor/golang.org/x/net/http2/server.go            |    47 +-
 vendor/golang.org/x/net/http2/transport.go         |   202 +-
 vendor/golang.org/x/net/http2/write.go             |     2 +-
 vendor/golang.org/x/net/icmp/dstunreach.go         |    41 +
 vendor/golang.org/x/net/icmp/echo.go               |   157 +
 vendor/golang.org/x/net/icmp/endpoint.go           |   113 +
 vendor/golang.org/x/net/icmp/extension.go          |   110 +
 vendor/golang.org/x/net/icmp/helper_posix.go       |    75 +
 vendor/golang.org/x/net/icmp/interface.go          |   322 +
 vendor/golang.org/x/net/icmp/ipv4.go               |    69 +
 vendor/golang.org/x/net/icmp/ipv6.go               |    23 +
 vendor/golang.org/x/net/icmp/listen_posix.go       |   100 +
 vendor/golang.org/x/net/icmp/listen_stub.go        |    33 +
 vendor/golang.org/x/net/icmp/message.go            |   160 +
 vendor/golang.org/x/net/icmp/messagebody.go        |    43 +
 vendor/golang.org/x/net/icmp/mpls.go               |    77 +
 vendor/golang.org/x/net/icmp/multipart.go          |   121 +
 vendor/golang.org/x/net/icmp/packettoobig.go       |    43 +
 vendor/golang.org/x/net/icmp/paramprob.go          |    63 +
 vendor/golang.org/x/net/icmp/sys_freebsd.go        |    11 +
 vendor/golang.org/x/net/icmp/timeexceeded.go       |    39 +
 vendor/golang.org/x/net/internal/iana/const.go     |   223 +
 vendor/golang.org/x/net/internal/iana/gen.go       |   383 +
 .../x/net/internal/nettest/helper_bsd.go           |    53 +
 .../x/net/internal/nettest/helper_nobsd.go         |    15 +
 .../x/net/internal/nettest/helper_posix.go         |    31 +
 .../x/net/internal/nettest/helper_stub.go          |    32 +
 .../x/net/internal/nettest/helper_unix.go          |    29 +
 .../x/net/internal/nettest/helper_windows.go       |    42 +
 .../golang.org/x/net/internal/nettest/interface.go |    94 +
 vendor/golang.org/x/net/internal/nettest/rlimit.go |    11 +
 vendor/golang.org/x/net/internal/nettest/stack.go  |   152 +
 vendor/golang.org/x/net/internal/socket/cmsghdr.go |    11 +
 .../x/net/internal/socket/cmsghdr_bsd.go           |    13 +
 .../x/net/internal/socket/cmsghdr_linux_32bit.go   |    14 +
 .../x/net/internal/socket/cmsghdr_linux_64bit.go   |    14 +
 .../x/net/internal/socket/cmsghdr_solaris_64bit.go |    14 +
 .../x/net/internal/socket/cmsghdr_stub.go          |    17 +
 .../x/net/internal/socket/defs_darwin.go           |    44 +
 .../x/net/internal/socket/defs_dragonfly.go        |    44 +
 .../x/net/internal/socket/defs_freebsd.go          |    44 +
 .../golang.org/x/net/internal/socket/defs_linux.go |    49 +
 .../x/net/internal/socket/defs_netbsd.go           |    47 +
 .../x/net/internal/socket/defs_openbsd.go          |    44 +
 .../x/net/internal/socket/defs_solaris.go          |    44 +
 vendor/golang.org/x/net/internal/socket/empty.s    |     7 +
 .../golang.org/x/net/internal/socket/error_unix.go |    31 +
 .../x/net/internal/socket/error_windows.go         |    26 +
 .../x/net/internal/socket/iovec_32bit.go           |    19 +
 .../x/net/internal/socket/iovec_64bit.go           |    19 +
 .../x/net/internal/socket/iovec_solaris_64bit.go   |    19 +
 .../golang.org/x/net/internal/socket/iovec_stub.go |    11 +
 .../x/net/internal/socket/mmsghdr_stub.go          |    21 +
 .../x/net/internal/socket/mmsghdr_unix.go          |    42 +
 .../golang.org/x/net/internal/socket/msghdr_bsd.go |    39 +
 .../x/net/internal/socket/msghdr_bsdvar.go         |    16 +
 .../x/net/internal/socket/msghdr_linux.go          |    36 +
 .../x/net/internal/socket/msghdr_linux_32bit.go    |    24 +
 .../x/net/internal/socket/msghdr_linux_64bit.go    |    24 +
 .../x/net/internal/socket/msghdr_openbsd.go        |    14 +
 .../x/net/internal/socket/msghdr_solaris_64bit.go  |    36 +
 .../x/net/internal/socket/msghdr_stub.go           |    14 +
 vendor/golang.org/x/net/internal/socket/rawconn.go |    66 +
 .../x/net/internal/socket/rawconn_mmsg.go          |    74 +
 .../x/net/internal/socket/rawconn_msg.go           |    77 +
 .../x/net/internal/socket/rawconn_nommsg.go        |    18 +
 .../x/net/internal/socket/rawconn_nomsg.go         |    18 +
 .../x/net/internal/socket/rawconn_stub.go          |    25 +
 vendor/golang.org/x/net/internal/socket/reflect.go |    62 +
 vendor/golang.org/x/net/internal/socket/socket.go  |   285 +
 vendor/golang.org/x/net/internal/socket/sys.go     |    33 +
 vendor/golang.org/x/net/internal/socket/sys_bsd.go |    17 +
 .../golang.org/x/net/internal/socket/sys_bsdvar.go |    20 +
 .../golang.org/x/net/internal/socket/sys_darwin.go |     7 +
 .../x/net/internal/socket/sys_dragonfly.go         |     7 +
 .../x/net/internal/socket/sys_go1_11_darwin.go     |    33 +
 .../x/net/internal/socket/sys_go1_12_darwin.go     |    42 +
 .../golang.org/x/net/internal/socket/sys_linux.go  |    27 +
 .../x/net/internal/socket/sys_linux_386.go         |    55 +
 .../x/net/internal/socket/sys_linux_386.s          |    11 +
 .../x/net/internal/socket/sys_linux_amd64.go       |    10 +
 .../x/net/internal/socket/sys_linux_arm.go         |    10 +
 .../x/net/internal/socket/sys_linux_arm64.go       |    10 +
 .../x/net/internal/socket/sys_linux_mips.go        |    10 +
 .../x/net/internal/socket/sys_linux_mips64.go      |    10 +
 .../x/net/internal/socket/sys_linux_mips64le.go    |    10 +
 .../x/net/internal/socket/sys_linux_mipsle.go      |    10 +
 .../x/net/internal/socket/sys_linux_ppc64.go       |    10 +
 .../x/net/internal/socket/sys_linux_ppc64le.go     |    10 +
 .../x/net/internal/socket/sys_linux_s390x.go       |    55 +
 .../x/net/internal/socket/sys_linux_s390x.s        |    11 +
 .../golang.org/x/net/internal/socket/sys_netbsd.go |    25 +
 .../golang.org/x/net/internal/socket/sys_posix.go  |   184 +
 .../x/net/internal/socket/sys_solaris.go           |    71 +
 .../x/net/internal/socket/sys_solaris_amd64.s      |    11 +
 .../golang.org/x/net/internal/socket/sys_stub.go   |    64 +
 .../golang.org/x/net/internal/socket/sys_unix.go   |    33 +
 .../x/net/internal/socket/sys_windows.go           |    70 +
 .../x/net/internal/socket/zsys_darwin_386.go       |    59 +
 .../x/net/internal/socket/zsys_darwin_amd64.go     |    61 +
 .../x/net/internal/socket/zsys_darwin_arm.go       |    59 +
 .../x/net/internal/socket/zsys_darwin_arm64.go     |    61 +
 .../x/net/internal/socket/zsys_dragonfly_amd64.go  |    61 +
 .../x/net/internal/socket/zsys_freebsd_386.go      |    59 +
 .../x/net/internal/socket/zsys_freebsd_amd64.go    |    61 +
 .../x/net/internal/socket/zsys_freebsd_arm.go      |    59 +
 .../x/net/internal/socket/zsys_linux_386.go        |    63 +
 .../x/net/internal/socket/zsys_linux_amd64.go      |    66 +
 .../x/net/internal/socket/zsys_linux_arm.go        |    63 +
 .../x/net/internal/socket/zsys_linux_arm64.go      |    66 +
 .../x/net/internal/socket/zsys_linux_mips.go       |    63 +
 .../x/net/internal/socket/zsys_linux_mips64.go     |    66 +
 .../x/net/internal/socket/zsys_linux_mips64le.go   |    66 +
 .../x/net/internal/socket/zsys_linux_mipsle.go     |    63 +
 .../x/net/internal/socket/zsys_linux_ppc64.go      |    66 +
 .../x/net/internal/socket/zsys_linux_ppc64le.go    |    66 +
 .../x/net/internal/socket/zsys_linux_s390x.go      |    66 +
 .../x/net/internal/socket/zsys_netbsd_386.go       |    65 +
 .../x/net/internal/socket/zsys_netbsd_amd64.go     |    68 +
 .../x/net/internal/socket/zsys_netbsd_arm.go       |    65 +
 .../x/net/internal/socket/zsys_openbsd_386.go      |    59 +
 .../x/net/internal/socket/zsys_openbsd_amd64.go    |    61 +
 .../x/net/internal/socket/zsys_openbsd_arm.go      |    59 +
 .../x/net/internal/socket/zsys_solaris_amd64.go    |    60 +
 vendor/golang.org/x/net/internal/socks/client.go   |   168 +
 vendor/golang.org/x/net/internal/socks/socks.go    |   317 +
 .../golang.org/x/net/internal/sockstest/server.go  |   241 +
 .../x/net/internal/timeseries/timeseries.go        |   525 +
 vendor/golang.org/x/net/ipv4/batch.go              |   190 +
 vendor/golang.org/x/net/ipv4/control.go            |   144 +
 vendor/golang.org/x/net/ipv4/control_bsd.go        |    40 +
 vendor/golang.org/x/net/ipv4/control_pktinfo.go    |    39 +
 vendor/golang.org/x/net/ipv4/control_stub.go       |    13 +
 vendor/golang.org/x/net/ipv4/control_unix.go       |    73 +
 vendor/golang.org/x/net/ipv4/control_windows.go    |    16 +
 vendor/golang.org/x/net/ipv4/defs_darwin.go        |    77 +
 vendor/golang.org/x/net/ipv4/defs_dragonfly.go     |    38 +
 vendor/golang.org/x/net/ipv4/defs_freebsd.go       |    75 +
 vendor/golang.org/x/net/ipv4/defs_linux.go         |   122 +
 vendor/golang.org/x/net/ipv4/defs_netbsd.go        |    37 +
 vendor/golang.org/x/net/ipv4/defs_openbsd.go       |    37 +
 vendor/golang.org/x/net/ipv4/defs_solaris.go       |    84 +
 vendor/golang.org/x/net/ipv4/dgramopt.go           |   264 +
 vendor/golang.org/x/net/ipv4/doc.go                |   245 +
 vendor/golang.org/x/net/ipv4/endpoint.go           |   186 +
 vendor/golang.org/x/net/ipv4/gen.go                |   199 +
 vendor/golang.org/x/net/ipv4/genericopt.go         |    55 +
 vendor/golang.org/x/net/ipv4/header.go             |   170 +
 vendor/golang.org/x/net/ipv4/helper.go             |    64 +
 vendor/golang.org/x/net/ipv4/iana.go               |    38 +
 vendor/golang.org/x/net/ipv4/icmp.go               |    57 +
 vendor/golang.org/x/net/ipv4/icmp_linux.go         |    25 +
 vendor/golang.org/x/net/ipv4/icmp_stub.go          |    25 +
 vendor/golang.org/x/net/ipv4/packet.go             |    68 +
 vendor/golang.org/x/net/ipv4/packet_go1_8.go       |    56 +
 vendor/golang.org/x/net/ipv4/packet_go1_9.go       |    67 +
 vendor/golang.org/x/net/ipv4/payload.go            |    23 +
 vendor/golang.org/x/net/ipv4/payload_cmsg.go       |    33 +
 vendor/golang.org/x/net/ipv4/payload_cmsg_go1_8.go |    59 +
 vendor/golang.org/x/net/ipv4/payload_cmsg_go1_9.go |    67 +
 vendor/golang.org/x/net/ipv4/payload_nocmsg.go     |    39 +
 vendor/golang.org/x/net/ipv4/sockopt.go            |    44 +
 vendor/golang.org/x/net/ipv4/sockopt_posix.go      |    71 +
 vendor/golang.org/x/net/ipv4/sockopt_stub.go       |    42 +
 vendor/golang.org/x/net/ipv4/sys_asmreq.go         |   119 +
 vendor/golang.org/x/net/ipv4/sys_asmreq_stub.go    |    25 +
 vendor/golang.org/x/net/ipv4/sys_asmreqn.go        |    42 +
 vendor/golang.org/x/net/ipv4/sys_asmreqn_stub.go   |    21 +
 vendor/golang.org/x/net/ipv4/sys_bpf.go            |    23 +
 vendor/golang.org/x/net/ipv4/sys_bpf_stub.go       |    16 +
 vendor/golang.org/x/net/ipv4/sys_bsd.go            |    37 +
 vendor/golang.org/x/net/ipv4/sys_darwin.go         |    93 +
 vendor/golang.org/x/net/ipv4/sys_dragonfly.go      |    35 +
 vendor/golang.org/x/net/ipv4/sys_freebsd.go        |    76 +
 vendor/golang.org/x/net/ipv4/sys_linux.go          |    59 +
 vendor/golang.org/x/net/ipv4/sys_solaris.go        |    57 +
 vendor/golang.org/x/net/ipv4/sys_ssmreq.go         |    54 +
 vendor/golang.org/x/net/ipv4/sys_ssmreq_stub.go    |    21 +
 vendor/golang.org/x/net/ipv4/sys_stub.go           |    13 +
 vendor/golang.org/x/net/ipv4/sys_windows.go        |    67 +
 vendor/golang.org/x/net/ipv4/zsys_darwin.go        |    99 +
 vendor/golang.org/x/net/ipv4/zsys_dragonfly.go     |    31 +
 vendor/golang.org/x/net/ipv4/zsys_freebsd_386.go   |    93 +
 vendor/golang.org/x/net/ipv4/zsys_freebsd_amd64.go |    95 +
 vendor/golang.org/x/net/ipv4/zsys_freebsd_arm.go   |    95 +
 vendor/golang.org/x/net/ipv4/zsys_linux_386.go     |   148 +
 vendor/golang.org/x/net/ipv4/zsys_linux_amd64.go   |   150 +
 vendor/golang.org/x/net/ipv4/zsys_linux_arm.go     |   148 +
 vendor/golang.org/x/net/ipv4/zsys_linux_arm64.go   |   150 +
 vendor/golang.org/x/net/ipv4/zsys_linux_mips.go    |   148 +
 vendor/golang.org/x/net/ipv4/zsys_linux_mips64.go  |   150 +
 .../golang.org/x/net/ipv4/zsys_linux_mips64le.go   |   150 +
 vendor/golang.org/x/net/ipv4/zsys_linux_mipsle.go  |   148 +
 vendor/golang.org/x/net/ipv4/zsys_linux_ppc.go     |   148 +
 vendor/golang.org/x/net/ipv4/zsys_linux_ppc64.go   |   150 +
 vendor/golang.org/x/net/ipv4/zsys_linux_ppc64le.go |   150 +
 vendor/golang.org/x/net/ipv4/zsys_linux_s390x.go   |   150 +
 vendor/golang.org/x/net/ipv4/zsys_netbsd.go        |    30 +
 vendor/golang.org/x/net/ipv4/zsys_openbsd.go       |    30 +
 vendor/golang.org/x/net/ipv4/zsys_solaris.go       |   100 +
 vendor/golang.org/x/net/ipv6/batch.go              |   118 +
 vendor/golang.org/x/net/ipv6/control.go            |   187 +
 .../golang.org/x/net/ipv6/control_rfc2292_unix.go  |    48 +
 .../golang.org/x/net/ipv6/control_rfc3542_unix.go  |    94 +
 vendor/golang.org/x/net/ipv6/control_stub.go       |    13 +
 vendor/golang.org/x/net/ipv6/control_unix.go       |    55 +
 vendor/golang.org/x/net/ipv6/control_windows.go    |    16 +
 vendor/golang.org/x/net/ipv6/defs_darwin.go        |   112 +
 vendor/golang.org/x/net/ipv6/defs_dragonfly.go     |    84 +
 vendor/golang.org/x/net/ipv6/defs_freebsd.go       |   105 +
 vendor/golang.org/x/net/ipv6/defs_linux.go         |   147 +
 vendor/golang.org/x/net/ipv6/defs_netbsd.go        |    80 +
 vendor/golang.org/x/net/ipv6/defs_openbsd.go       |    89 +
 vendor/golang.org/x/net/ipv6/defs_solaris.go       |   114 +
 vendor/golang.org/x/net/ipv6/dgramopt.go           |   301 +
 vendor/golang.org/x/net/ipv6/doc.go                |   244 +
 vendor/golang.org/x/net/ipv6/endpoint.go           |   127 +
 vendor/golang.org/x/net/ipv6/gen.go                |   199 +
 vendor/golang.org/x/net/ipv6/genericopt.go         |    56 +
 vendor/golang.org/x/net/ipv6/header.go             |    55 +
 vendor/golang.org/x/net/ipv6/helper.go             |    58 +
 vendor/golang.org/x/net/ipv6/iana.go               |    86 +
 vendor/golang.org/x/net/ipv6/icmp.go               |    60 +
 vendor/golang.org/x/net/ipv6/icmp_bsd.go           |    29 +
 vendor/golang.org/x/net/ipv6/icmp_linux.go         |    27 +
 vendor/golang.org/x/net/ipv6/icmp_solaris.go       |    27 +
 vendor/golang.org/x/net/ipv6/icmp_stub.go          |    23 +
 vendor/golang.org/x/net/ipv6/icmp_windows.go       |    22 +
 vendor/golang.org/x/net/ipv6/payload.go            |    23 +
 vendor/golang.org/x/net/ipv6/payload_cmsg.go       |    32 +
 vendor/golang.org/x/net/ipv6/payload_cmsg_go1_8.go |    55 +
 vendor/golang.org/x/net/ipv6/payload_cmsg_go1_9.go |    57 +
 vendor/golang.org/x/net/ipv6/payload_nocmsg.go     |    38 +
 vendor/golang.org/x/net/ipv6/sockopt.go            |    43 +
 vendor/golang.org/x/net/ipv6/sockopt_posix.go      |    87 +
 vendor/golang.org/x/net/ipv6/sockopt_stub.go       |    46 +
 vendor/golang.org/x/net/ipv6/sys_asmreq.go         |    24 +
 vendor/golang.org/x/net/ipv6/sys_asmreq_stub.go    |    17 +
 vendor/golang.org/x/net/ipv6/sys_bpf.go            |    23 +
 vendor/golang.org/x/net/ipv6/sys_bpf_stub.go       |    16 +
 vendor/golang.org/x/net/ipv6/sys_bsd.go            |    57 +
 vendor/golang.org/x/net/ipv6/sys_darwin.go         |   106 +
 vendor/golang.org/x/net/ipv6/sys_freebsd.go        |    92 +
 vendor/golang.org/x/net/ipv6/sys_linux.go          |    74 +
 vendor/golang.org/x/net/ipv6/sys_solaris.go        |    74 +
 vendor/golang.org/x/net/ipv6/sys_ssmreq.go         |    54 +
 vendor/golang.org/x/net/ipv6/sys_ssmreq_stub.go    |    21 +
 vendor/golang.org/x/net/ipv6/sys_stub.go           |    13 +
 vendor/golang.org/x/net/ipv6/sys_windows.go        |    75 +
 vendor/golang.org/x/net/ipv6/zsys_darwin.go        |   131 +
 vendor/golang.org/x/net/ipv6/zsys_dragonfly.go     |    88 +
 vendor/golang.org/x/net/ipv6/zsys_freebsd_386.go   |   122 +
 vendor/golang.org/x/net/ipv6/zsys_freebsd_amd64.go |   124 +
 vendor/golang.org/x/net/ipv6/zsys_freebsd_arm.go   |   124 +
 vendor/golang.org/x/net/ipv6/zsys_linux_386.go     |   170 +
 vendor/golang.org/x/net/ipv6/zsys_linux_amd64.go   |   172 +
 vendor/golang.org/x/net/ipv6/zsys_linux_arm.go     |   170 +
 vendor/golang.org/x/net/ipv6/zsys_linux_arm64.go   |   172 +
 vendor/golang.org/x/net/ipv6/zsys_linux_mips.go    |   170 +
 vendor/golang.org/x/net/ipv6/zsys_linux_mips64.go  |   172 +
 .../golang.org/x/net/ipv6/zsys_linux_mips64le.go   |   172 +
 vendor/golang.org/x/net/ipv6/zsys_linux_mipsle.go  |   170 +
 vendor/golang.org/x/net/ipv6/zsys_linux_ppc.go     |   170 +
 vendor/golang.org/x/net/ipv6/zsys_linux_ppc64.go   |   172 +
 vendor/golang.org/x/net/ipv6/zsys_linux_ppc64le.go |   172 +
 vendor/golang.org/x/net/ipv6/zsys_linux_s390x.go   |   172 +
 vendor/golang.org/x/net/ipv6/zsys_netbsd.go        |    84 +
 vendor/golang.org/x/net/ipv6/zsys_openbsd.go       |    93 +
 vendor/golang.org/x/net/ipv6/zsys_solaris.go       |   131 +
 vendor/golang.org/x/net/lif/address.go             |   105 +
 vendor/golang.org/x/net/lif/binary.go              |   115 +
 vendor/golang.org/x/net/lif/defs_solaris.go        |    90 +
 vendor/golang.org/x/net/lif/lif.go                 |    43 +
 vendor/golang.org/x/net/lif/link.go                |   126 +
 vendor/golang.org/x/net/lif/sys.go                 |    21 +
 vendor/golang.org/x/net/lif/sys_solaris_amd64.s    |     8 +
 vendor/golang.org/x/net/lif/syscall.go             |    28 +
 vendor/golang.org/x/net/lif/zsys_solaris_amd64.go  |   103 +
 vendor/golang.org/x/net/nettest/conntest.go        |   456 +
 vendor/golang.org/x/net/nettest/conntest_go16.go   |    24 +
 vendor/golang.org/x/net/nettest/conntest_go17.go   |    24 +
 vendor/golang.org/x/net/netutil/listen.go          |    74 +
 vendor/golang.org/x/net/proxy/direct.go            |    18 +
 vendor/golang.org/x/net/proxy/per_host.go          |   140 +
 vendor/golang.org/x/net/proxy/proxy.go             |   134 +
 vendor/golang.org/x/net/proxy/socks5.go            |    36 +
 vendor/golang.org/x/net/publicsuffix/gen.go        |   717 +
 vendor/golang.org/x/net/publicsuffix/list.go       |   177 +
 vendor/golang.org/x/net/publicsuffix/table.go      |  9753 +++
 vendor/golang.org/x/net/route/address.go           |   425 +
 vendor/golang.org/x/net/route/binary.go            |    90 +
 vendor/golang.org/x/net/route/defs_darwin.go       |   114 +
 vendor/golang.org/x/net/route/defs_dragonfly.go    |   113 +
 vendor/golang.org/x/net/route/defs_freebsd.go      |   337 +
 vendor/golang.org/x/net/route/defs_netbsd.go       |   112 +
 vendor/golang.org/x/net/route/defs_openbsd.go      |   116 +
 vendor/golang.org/x/net/route/empty.s              |     7 +
 vendor/golang.org/x/net/route/interface.go         |    64 +
 .../golang.org/x/net/route/interface_announce.go   |    32 +
 vendor/golang.org/x/net/route/interface_classic.go |    66 +
 vendor/golang.org/x/net/route/interface_freebsd.go |    78 +
 .../golang.org/x/net/route/interface_multicast.go  |    30 +
 vendor/golang.org/x/net/route/interface_openbsd.go |    90 +
 vendor/golang.org/x/net/route/message.go           |    72 +
 vendor/golang.org/x/net/route/route.go             |   123 +
 vendor/golang.org/x/net/route/route_classic.go     |    75 +
 vendor/golang.org/x/net/route/route_openbsd.go     |    65 +
 vendor/golang.org/x/net/route/sys.go               |    39 +
 vendor/golang.org/x/net/route/sys_darwin.go        |    87 +
 vendor/golang.org/x/net/route/sys_dragonfly.go     |    76 +
 vendor/golang.org/x/net/route/sys_freebsd.go       |   163 +
 vendor/golang.org/x/net/route/sys_netbsd.go        |    71 +
 vendor/golang.org/x/net/route/sys_openbsd.go       |    80 +
 vendor/golang.org/x/net/route/syscall.go           |    28 +
 .../x/net/route/syscall_go1_11_darwin.go           |    28 +
 .../x/net/route/syscall_go1_12_darwin.go           |    12 +
 vendor/golang.org/x/net/route/zsys_darwin.go       |    99 +
 vendor/golang.org/x/net/route/zsys_dragonfly.go    |    98 +
 vendor/golang.org/x/net/route/zsys_freebsd_386.go  |   126 +
 .../golang.org/x/net/route/zsys_freebsd_amd64.go   |   123 +
 vendor/golang.org/x/net/route/zsys_freebsd_arm.go  |   123 +
 vendor/golang.org/x/net/route/zsys_netbsd.go       |    97 +
 vendor/golang.org/x/net/route/zsys_openbsd.go      |   101 +
 vendor/golang.org/x/net/trace/events.go            |   532 +
 vendor/golang.org/x/net/trace/histogram.go         |   365 +
 vendor/golang.org/x/net/trace/trace.go             |  1124 +
 vendor/golang.org/x/net/webdav/file.go             |   795 +
 vendor/golang.org/x/net/webdav/if.go               |   173 +
 .../x/net/webdav/internal/xml/marshal.go           |  1223 +
 .../golang.org/x/net/webdav/internal/xml/read.go   |   692 +
 .../x/net/webdav/internal/xml/typeinfo.go          |   371 +
 vendor/golang.org/x/net/webdav/internal/xml/xml.go |  1998 +
 .../golang.org/x/net/webdav/litmus_test_server.go  |    94 +
 vendor/golang.org/x/net/webdav/lock.go             |   445 +
 vendor/golang.org/x/net/webdav/prop.go             |   469 +
 vendor/golang.org/x/net/webdav/webdav.go           |   702 +
 vendor/golang.org/x/net/webdav/xml.go              |   519 +
 vendor/golang.org/x/net/websocket/client.go        |   106 +
 vendor/golang.org/x/net/websocket/dial.go          |    24 +
 vendor/golang.org/x/net/websocket/hybi.go          |   583 +
 vendor/golang.org/x/net/websocket/server.go        |   113 +
 vendor/golang.org/x/net/websocket/websocket.go     |   451 +
 vendor/golang.org/x/net/xsrftoken/xsrf.go          |    94 +
 vendor/golang.org/x/oauth2/amazon/amazon.go        |    16 +
 vendor/golang.org/x/oauth2/bitbucket/bitbucket.go  |    16 +
 vendor/golang.org/x/oauth2/cern/cern.go            |    16 +
 .../oauth2/clientcredentials/clientcredentials.go  |   112 +
 vendor/golang.org/x/oauth2/facebook/facebook.go    |    16 +
 vendor/golang.org/x/oauth2/fitbit/fitbit.go        |    16 +
 .../golang.org/x/oauth2/foursquare/foursquare.go   |    16 +
 vendor/golang.org/x/oauth2/github/github.go        |    16 +
 vendor/golang.org/x/oauth2/gitlab/gitlab.go        |    16 +
 vendor/golang.org/x/oauth2/google/appengine.go     |    89 +-
 .../golang.org/x/oauth2/google/appengine_gen1.go   |    77 +
 .../x/oauth2/google/appengine_gen2_flex.go         |    27 +
 .../golang.org/x/oauth2/google/appengine_hook.go   |    14 -
 .../x/oauth2/google/appengineflex_hook.go          |    11 -
 vendor/golang.org/x/oauth2/google/default.go       |    56 +-
 vendor/golang.org/x/oauth2/google/doc.go           |    40 +
 vendor/golang.org/x/oauth2/google/doc_go19.go      |    42 -
 vendor/golang.org/x/oauth2/google/doc_not_go19.go  |    43 -
 vendor/golang.org/x/oauth2/google/go19.go          |    57 -
 vendor/golang.org/x/oauth2/google/google.go        |     2 +-
 vendor/golang.org/x/oauth2/google/not_go19.go      |    54 -
 vendor/golang.org/x/oauth2/google/sdk.go           |     2 +-
 vendor/golang.org/x/oauth2/heroku/heroku.go        |    16 +
 vendor/golang.org/x/oauth2/hipchat/hipchat.go      |    60 +
 vendor/golang.org/x/oauth2/instagram/instagram.go  |    16 +
 vendor/golang.org/x/oauth2/internal/oauth2.go      |     2 +-
 vendor/golang.org/x/oauth2/internal/token.go       |     5 +-
 vendor/golang.org/x/oauth2/internal/transport.go   |     3 +-
 vendor/golang.org/x/oauth2/jira/jira.go            |   167 +
 vendor/golang.org/x/oauth2/jwt/jwt.go              |     2 +-
 vendor/golang.org/x/oauth2/kakao/kakao.go          |    16 +
 vendor/golang.org/x/oauth2/linkedin/linkedin.go    |    16 +
 vendor/golang.org/x/oauth2/mailchimp/mailchimp.go  |    17 +
 vendor/golang.org/x/oauth2/mailru/mailru.go        |    16 +
 vendor/golang.org/x/oauth2/mediamath/mediamath.go  |    22 +
 vendor/golang.org/x/oauth2/microsoft/microsoft.go  |    31 +
 .../golang.org/x/oauth2/nokiahealth/nokiahealth.go |    16 +
 vendor/golang.org/x/oauth2/oauth2.go               |     8 +-
 .../x/oauth2/odnoklassniki/odnoklassniki.go        |    16 +
 vendor/golang.org/x/oauth2/paypal/paypal.go        |    22 +
 vendor/golang.org/x/oauth2/slack/slack.go          |    16 +
 vendor/golang.org/x/oauth2/spotify/spotify.go      |    16 +
 .../x/oauth2/stackoverflow/stackoverflow.go        |    16 +
 vendor/golang.org/x/oauth2/token.go                |     2 +-
 vendor/golang.org/x/oauth2/twitch/twitch.go        |    19 +
 vendor/golang.org/x/oauth2/uber/uber.go            |    16 +
 vendor/golang.org/x/oauth2/vk/vk.go                |    16 +
 vendor/golang.org/x/oauth2/yahoo/yahoo.go          |    17 +
 vendor/golang.org/x/oauth2/yandex/yandex.go        |    16 +
 vendor/golang.org/x/sys/cpu/cpu.go                 |    70 +
 vendor/golang.org/x/sys/cpu/cpu_arm.go             |     9 +
 vendor/golang.org/x/sys/cpu/cpu_arm64.go           |    67 +
 vendor/golang.org/x/sys/cpu/cpu_gc_x86.go          |    16 +
 vendor/golang.org/x/sys/cpu/cpu_gccgo.c            |    43 +
 vendor/golang.org/x/sys/cpu/cpu_gccgo.go           |    26 +
 vendor/golang.org/x/sys/cpu/cpu_linux.go           |    55 +
 vendor/golang.org/x/sys/cpu/cpu_mips64x.go         |    11 +
 vendor/golang.org/x/sys/cpu/cpu_mipsx.go           |    11 +
 vendor/golang.org/x/sys/cpu/cpu_ppc64x.go          |    11 +
 vendor/golang.org/x/sys/cpu/cpu_s390x.go           |     9 +
 vendor/golang.org/x/sys/cpu/cpu_x86.go             |    55 +
 vendor/golang.org/x/sys/cpu/cpu_x86.s              |    27 +
 vendor/golang.org/x/sys/plan9/asm.s                |     8 +
 vendor/golang.org/x/sys/plan9/asm_plan9_386.s      |    30 +
 vendor/golang.org/x/sys/plan9/asm_plan9_amd64.s    |    30 +
 vendor/golang.org/x/sys/plan9/asm_plan9_arm.s      |    25 +
 vendor/golang.org/x/sys/plan9/const_plan9.go       |    70 +
 vendor/golang.org/x/sys/plan9/dir_plan9.go         |   212 +
 vendor/golang.org/x/sys/plan9/env_plan9.go         |    31 +
 vendor/golang.org/x/sys/plan9/errors_plan9.go      |    50 +
 vendor/golang.org/x/sys/plan9/pwd_go15_plan9.go    |    21 +
 vendor/golang.org/x/sys/plan9/pwd_plan9.go         |    23 +
 vendor/golang.org/x/sys/plan9/race.go              |    30 +
 vendor/golang.org/x/sys/plan9/race0.go             |    25 +
 vendor/golang.org/x/sys/plan9/str.go               |    22 +
 vendor/golang.org/x/sys/plan9/syscall.go           |    77 +
 vendor/golang.org/x/sys/plan9/syscall_plan9.go     |   349 +
 .../golang.org/x/sys/plan9/zsyscall_plan9_386.go   |   292 +
 .../golang.org/x/sys/plan9/zsyscall_plan9_amd64.go |   292 +
 .../golang.org/x/sys/plan9/zsyscall_plan9_arm.go   |   284 +
 vendor/golang.org/x/sys/plan9/zsysnum_plan9.go     |    49 +
 vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s   |    29 +
 vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s    |    12 -
 vendor/golang.org/x/sys/unix/linux/mkall.go        |   775 +
 vendor/golang.org/x/sys/unix/linux/mksysnum.go     |   143 +
 vendor/golang.org/x/sys/unix/linux/types.go        |  1664 +
 vendor/golang.org/x/sys/unix/mkasm_darwin.go       |    61 +
 vendor/golang.org/x/sys/unix/mkpost.go             |    14 +-
 vendor/golang.org/x/sys/unix/mksyscall.go          |   398 +
 vendor/golang.org/x/sys/unix/mksysnum.go           |   190 +
 vendor/golang.org/x/sys/unix/openbsd_pledge.go     |    93 +-
 vendor/golang.org/x/sys/unix/sockcmsg_unix.go      |    25 +-
 vendor/golang.org/x/sys/unix/syscall_aix.go        |    16 +-
 vendor/golang.org/x/sys/unix/syscall_darwin.go     |    62 +-
 vendor/golang.org/x/sys/unix/syscall_darwin_386.go |    23 +-
 .../golang.org/x/sys/unix/syscall_darwin_amd64.go  |    23 +-
 vendor/golang.org/x/sys/unix/syscall_darwin_arm.go |    26 +-
 .../golang.org/x/sys/unix/syscall_darwin_arm64.go  |    26 +-
 .../x/sys/unix/syscall_darwin_libSystem.go         |    31 +
 vendor/golang.org/x/sys/unix/syscall_dragonfly.go  |    15 +
 vendor/golang.org/x/sys/unix/syscall_freebsd.go    |     7 +
 .../golang.org/x/sys/unix/syscall_freebsd_arm64.go |    52 +
 vendor/golang.org/x/sys/unix/syscall_linux.go      |    94 +-
 .../golang.org/x/sys/unix/syscall_linux_amd64.go   |    18 +-
 vendor/golang.org/x/sys/unix/syscall_linux_arm.go  |     8 +
 .../golang.org/x/sys/unix/syscall_linux_mips64x.go |     9 +-
 vendor/golang.org/x/sys/unix/syscall_netbsd.go     |    25 +
 vendor/golang.org/x/sys/unix/syscall_openbsd.go    |    27 +-
 vendor/golang.org/x/sys/unix/syscall_solaris.go    |     7 +
 vendor/golang.org/x/sys/unix/syscall_unix.go       |    15 -
 vendor/golang.org/x/sys/unix/syscall_unix_gc.go    |     2 +-
 .../x/sys/unix/syscall_unix_gc_ppc64x.go           |    24 +
 vendor/golang.org/x/sys/unix/types_freebsd.go      |     2 +-
 vendor/golang.org/x/sys/unix/types_netbsd.go       |     2 +
 vendor/golang.org/x/sys/unix/xattr_bsd.go          |    15 +-
 .../golang.org/x/sys/unix/zerrors_freebsd_arm64.go |  1794 +
 vendor/golang.org/x/sys/unix/zerrors_linux_386.go  |    53 +-
 .../golang.org/x/sys/unix/zerrors_linux_amd64.go   |    53 +-
 vendor/golang.org/x/sys/unix/zerrors_linux_arm.go  |    53 +-
 .../golang.org/x/sys/unix/zerrors_linux_arm64.go   |    53 +-
 vendor/golang.org/x/sys/unix/zerrors_linux_mips.go |    53 +-
 .../golang.org/x/sys/unix/zerrors_linux_mips64.go  |    53 +-
 .../x/sys/unix/zerrors_linux_mips64le.go           |    53 +-
 .../golang.org/x/sys/unix/zerrors_linux_mipsle.go  |    53 +-
 .../golang.org/x/sys/unix/zerrors_linux_ppc64.go   |    55 +-
 .../golang.org/x/sys/unix/zerrors_linux_ppc64le.go |    55 +-
 .../golang.org/x/sys/unix/zerrors_linux_riscv64.go |    53 +-
 .../golang.org/x/sys/unix/zerrors_linux_s390x.go   |    53 +-
 .../golang.org/x/sys/unix/zerrors_linux_sparc64.go |  4211 +-
 .../x/sys/unix/zsyscall_darwin_386.1_11.go         |  1810 +
 .../golang.org/x/sys/unix/zsyscall_darwin_386.go   |  1174 +-
 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s |   284 +
 .../x/sys/unix/zsyscall_darwin_amd64.1_11.go       |  1810 +
 .../golang.org/x/sys/unix/zsyscall_darwin_amd64.go |  1174 +-
 .../golang.org/x/sys/unix/zsyscall_darwin_amd64.s  |   284 +
 .../x/sys/unix/zsyscall_darwin_arm.1_11.go         |  1793 +
 .../golang.org/x/sys/unix/zsyscall_darwin_arm.go   |  1152 +-
 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s |   282 +
 .../x/sys/unix/zsyscall_darwin_arm64.1_11.go       |  1793 +
 .../golang.org/x/sys/unix/zsyscall_darwin_arm64.go |  1152 +-
 .../golang.org/x/sys/unix/zsyscall_darwin_arm64.s  |   282 +
 .../x/sys/unix/zsyscall_dragonfly_amd64.go         |   133 +-
 .../golang.org/x/sys/unix/zsyscall_freebsd_386.go  |     2 +-
 .../x/sys/unix/zsyscall_freebsd_amd64.go           |     2 +-
 .../golang.org/x/sys/unix/zsyscall_freebsd_arm.go  |     2 +-
 .../x/sys/unix/zsyscall_freebsd_arm64.go           |  2015 +
 vendor/golang.org/x/sys/unix/zsyscall_linux_386.go |     2 +-
 .../golang.org/x/sys/unix/zsyscall_linux_amd64.go  |    19 +-
 vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go |    12 +-
 .../golang.org/x/sys/unix/zsyscall_linux_arm64.go  |     2 +-
 .../golang.org/x/sys/unix/zsyscall_linux_mips.go   |     2 +-
 .../golang.org/x/sys/unix/zsyscall_linux_mips64.go |    32 +-
 .../x/sys/unix/zsyscall_linux_mips64le.go          |    32 +-
 .../golang.org/x/sys/unix/zsyscall_linux_mipsle.go |     2 +-
 .../golang.org/x/sys/unix/zsyscall_linux_ppc64.go  |     2 +-
 .../x/sys/unix/zsyscall_linux_ppc64le.go           |     2 +-
 .../x/sys/unix/zsyscall_linux_riscv64.go           |     2 +-
 .../golang.org/x/sys/unix/zsyscall_linux_s390x.go  |     2 +-
 .../x/sys/unix/zsyscall_linux_sparc64.go           |   204 +-
 .../golang.org/x/sys/unix/zsyscall_netbsd_386.go   |   175 +-
 .../golang.org/x/sys/unix/zsyscall_netbsd_amd64.go |   175 +-
 .../golang.org/x/sys/unix/zsyscall_netbsd_arm.go   |   175 +-
 .../golang.org/x/sys/unix/zsyscall_openbsd_386.go  |   159 +-
 .../x/sys/unix/zsyscall_openbsd_amd64.go           |   159 +-
 .../golang.org/x/sys/unix/zsyscall_openbsd_arm.go  |   159 +-
 vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go |     2 +-
 .../golang.org/x/sys/unix/zsysnum_darwin_amd64.go  |     2 +-
 vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go |     2 +-
 .../golang.org/x/sys/unix/zsysnum_darwin_arm64.go  |     2 +-
 .../x/sys/unix/zsysnum_dragonfly_amd64.go          |   176 +-
 .../golang.org/x/sys/unix/zsysnum_freebsd_386.go   |   452 +-
 .../golang.org/x/sys/unix/zsysnum_freebsd_amd64.go |   452 +-
 .../golang.org/x/sys/unix/zsysnum_freebsd_arm.go   |   452 +-
 .../golang.org/x/sys/unix/zsysnum_freebsd_arm64.go |   395 +
 vendor/golang.org/x/sys/unix/zsysnum_linux_386.go  |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_amd64.go   |     2 +-
 vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go  |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_arm64.go   |     2 +-
 vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_mips64.go  |     2 +-
 .../x/sys/unix/zsysnum_linux_mips64le.go           |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_mipsle.go  |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_ppc64.go   |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_ppc64le.go |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_riscv64.go |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_s390x.go   |     2 +-
 .../golang.org/x/sys/unix/zsysnum_linux_sparc64.go |     6 +-
 vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go |     4 +-
 .../golang.org/x/sys/unix/zsysnum_netbsd_amd64.go  |     4 +-
 vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go |     4 +-
 .../golang.org/x/sys/unix/zsysnum_openbsd_386.go   |   216 +-
 .../golang.org/x/sys/unix/zsysnum_openbsd_amd64.go |   216 +-
 .../golang.org/x/sys/unix/zsysnum_openbsd_arm.go   |   216 +-
 vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go |     2 +-
 .../golang.org/x/sys/unix/ztypes_freebsd_amd64.go  |     2 +-
 vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go |     2 +-
 .../golang.org/x/sys/unix/ztypes_freebsd_arm64.go  |   602 +
 vendor/golang.org/x/sys/unix/ztypes_linux_386.go   |    14 +-
 vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go |    21 +-
 vendor/golang.org/x/sys/unix/ztypes_linux_arm.go   |    15 +-
 vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go |    21 +-
 vendor/golang.org/x/sys/unix/ztypes_linux_mips.go  |    12 +-
 .../golang.org/x/sys/unix/ztypes_linux_mips64.go   |    21 +-
 .../golang.org/x/sys/unix/ztypes_linux_mips64le.go |    21 +-
 .../golang.org/x/sys/unix/ztypes_linux_mipsle.go   |    12 +-
 vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go |    21 +-
 .../golang.org/x/sys/unix/ztypes_linux_ppc64le.go  |    21 +-
 .../golang.org/x/sys/unix/ztypes_linux_riscv64.go  |    21 +-
 vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go |    26 +-
 .../golang.org/x/sys/unix/ztypes_linux_sparc64.go  |  1489 +-
 vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go  |     7 +
 .../golang.org/x/sys/unix/ztypes_netbsd_amd64.go   |     7 +
 vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go  |     7 +
 vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go |   102 +-
 vendor/golang.org/x/sys/windows/registry/key.go    |   198 +
 .../golang.org/x/sys/windows/registry/mksyscall.go |     7 +
 .../golang.org/x/sys/windows/registry/syscall.go   |    32 +
 vendor/golang.org/x/sys/windows/registry/value.go  |   384 +
 .../x/sys/windows/registry/zsyscall_windows.go     |   120 +
 vendor/golang.org/x/sys/windows/svc/debug/log.go   |    56 +
 .../golang.org/x/sys/windows/svc/debug/service.go  |    45 +
 vendor/golang.org/x/sys/windows/svc/event.go       |    48 +
 .../x/sys/windows/svc/eventlog/install.go          |    80 +
 .../golang.org/x/sys/windows/svc/eventlog/log.go   |    70 +
 .../golang.org/x/sys/windows/svc/example/beep.go   |    22 +
 .../x/sys/windows/svc/example/install.go           |    92 +
 .../golang.org/x/sys/windows/svc/example/main.go   |    76 +
 .../golang.org/x/sys/windows/svc/example/manage.go |    62 +
 .../x/sys/windows/svc/example/service.go           |    84 +
 vendor/golang.org/x/sys/windows/svc/go12.c         |    24 +
 vendor/golang.org/x/sys/windows/svc/go12.go        |    11 +
 vendor/golang.org/x/sys/windows/svc/go13.go        |    31 +
 vendor/golang.org/x/sys/windows/svc/mgr/config.go  |   145 +
 vendor/golang.org/x/sys/windows/svc/mgr/mgr.go     |   162 +
 .../golang.org/x/sys/windows/svc/mgr/recovery.go   |   135 +
 vendor/golang.org/x/sys/windows/svc/mgr/service.go |    72 +
 vendor/golang.org/x/sys/windows/svc/security.go    |    62 +
 vendor/golang.org/x/sys/windows/svc/service.go     |   363 +
 vendor/golang.org/x/sys/windows/svc/sys_386.s      |    68 +
 vendor/golang.org/x/sys/windows/svc/sys_amd64.s    |    42 +
 vendor/golang.org/x/sys/windows/svc/sys_arm.s      |    38 +
 vendor/golang.org/x/text/cases/cases.go            |   162 +
 vendor/golang.org/x/text/cases/context.go          |   376 +
 vendor/golang.org/x/text/cases/fold.go             |    34 +
 vendor/golang.org/x/text/cases/gen.go              |   839 +
 vendor/golang.org/x/text/cases/gen_trieval.go      |   219 +
 vendor/golang.org/x/text/cases/icu.go              |    61 +
 vendor/golang.org/x/text/cases/info.go             |    82 +
 vendor/golang.org/x/text/cases/map.go              |   816 +
 vendor/golang.org/x/text/cases/tables10.0.0.go     |  2253 +
 vendor/golang.org/x/text/cases/tables9.0.0.go      |  2213 +
 vendor/golang.org/x/text/cases/trieval.go          |   215 +
 vendor/golang.org/x/text/cmd/gotext/common.go      |    46 +
 vendor/golang.org/x/text/cmd/gotext/doc.go         |    53 +
 .../x/text/cmd/gotext/examples/extract/catalog.go  |    76 +
 .../x/text/cmd/gotext/examples/extract/main.go     |    87 +
 .../text/cmd/gotext/examples/extract_http/main.go  |    17 +
 .../cmd/gotext/examples/extract_http/pkg/pkg.go    |    25 +
 .../x/text/cmd/gotext/examples/rewrite/main.go     |    37 +
 .../x/text/cmd/gotext/examples/rewrite/printer.go  |    16 +
 vendor/golang.org/x/text/cmd/gotext/extract.go     |    81 +
 vendor/golang.org/x/text/cmd/gotext/generate.go    |   104 +
 vendor/golang.org/x/text/cmd/gotext/main.go        |   352 +
 vendor/golang.org/x/text/cmd/gotext/rewrite.go     |    55 +
 .../x/text/collate/tools/colcmp/chars.go           |  1156 +
 .../golang.org/x/text/collate/tools/colcmp/col.go  |    97 +
 .../x/text/collate/tools/colcmp/colcmp.go          |   529 +
 .../x/text/collate/tools/colcmp/darwin.go          |   111 +
 .../golang.org/x/text/collate/tools/colcmp/gen.go  |   183 +
 .../golang.org/x/text/collate/tools/colcmp/icu.go  |   209 +
 vendor/golang.org/x/text/currency/common.go        |    67 +
 vendor/golang.org/x/text/currency/currency.go      |   185 +
 vendor/golang.org/x/text/currency/format.go        |   215 +
 vendor/golang.org/x/text/currency/gen.go           |   400 +
 vendor/golang.org/x/text/currency/gen_common.go    |    71 +
 vendor/golang.org/x/text/currency/query.go         |   152 +
 vendor/golang.org/x/text/currency/tables.go        |  2629 +
 vendor/golang.org/x/text/date/gen.go               |   329 +
 vendor/golang.org/x/text/date/tables.go            | 64522 +++++++++++++++++++
 vendor/golang.org/x/text/doc.go                    |    13 +
 .../golang.org/x/text/encoding/charmap/charmap.go  |   249 +
 .../x/text/encoding/charmap/maketables.go          |   556 +
 .../golang.org/x/text/encoding/charmap/tables.go   |  7410 +++
 vendor/golang.org/x/text/encoding/encoding.go      |   335 +
 vendor/golang.org/x/text/encoding/htmlindex/gen.go |   173 +
 .../x/text/encoding/htmlindex/htmlindex.go         |    86 +
 vendor/golang.org/x/text/encoding/htmlindex/map.go |   105 +
 .../golang.org/x/text/encoding/htmlindex/tables.go |   352 +
 vendor/golang.org/x/text/encoding/ianaindex/gen.go |   192 +
 .../x/text/encoding/ianaindex/ianaindex.go         |   209 +
 .../golang.org/x/text/encoding/ianaindex/tables.go |  2348 +
 .../x/text/encoding/internal/enctest/enctest.go    |   180 +
 .../x/text/encoding/internal/identifier/gen.go     |   137 +
 .../encoding/internal/identifier/identifier.go     |    81 +
 .../x/text/encoding/internal/identifier/mib.go     |  1621 +
 .../x/text/encoding/internal/internal.go           |    75 +
 vendor/golang.org/x/text/encoding/japanese/all.go  |    12 +
 .../golang.org/x/text/encoding/japanese/eucjp.go   |   225 +
 .../x/text/encoding/japanese/iso2022jp.go          |   299 +
 .../x/text/encoding/japanese/maketables.go         |   161 +
 .../x/text/encoding/japanese/shiftjis.go           |   189 +
 .../golang.org/x/text/encoding/japanese/tables.go  | 26971 ++++++++
 vendor/golang.org/x/text/encoding/korean/euckr.go  |   177 +
 .../x/text/encoding/korean/maketables.go           |   143 +
 vendor/golang.org/x/text/encoding/korean/tables.go | 34152 ++++++++++
 .../x/text/encoding/simplifiedchinese/all.go       |    12 +
 .../x/text/encoding/simplifiedchinese/gbk.go       |   269 +
 .../x/text/encoding/simplifiedchinese/hzgb2312.go  |   245 +
 .../text/encoding/simplifiedchinese/maketables.go  |   161 +
 .../x/text/encoding/simplifiedchinese/tables.go    | 43999 +++++++++++++
 .../x/text/encoding/traditionalchinese/big5.go     |   199 +
 .../text/encoding/traditionalchinese/maketables.go |   140 +
 .../x/text/encoding/traditionalchinese/tables.go   | 37142 +++++++++++
 .../golang.org/x/text/encoding/unicode/override.go |    82 +
 .../golang.org/x/text/encoding/unicode/unicode.go  |   434 +
 .../x/text/encoding/unicode/utf32/utf32.go         |   296 +
 vendor/golang.org/x/text/feature/plural/common.go  |    70 +
 vendor/golang.org/x/text/feature/plural/gen.go     |   513 +
 .../golang.org/x/text/feature/plural/gen_common.go |    74 +
 vendor/golang.org/x/text/feature/plural/message.go |   244 +
 vendor/golang.org/x/text/feature/plural/plural.go  |   258 +
 vendor/golang.org/x/text/feature/plural/tables.go  |   548 +
 vendor/golang.org/x/text/gen.go                    |   319 +
 vendor/golang.org/x/text/internal/catmsg/catmsg.go |   376 +
 vendor/golang.org/x/text/internal/catmsg/codec.go  |   407 +
 vendor/golang.org/x/text/internal/catmsg/varint.go |    62 +
 .../x/text/internal/cldrtree/cldrtree.go           |   353 +
 .../x/text/internal/cldrtree/generate.go           |   208 +
 .../golang.org/x/text/internal/cldrtree/option.go  |    86 +
 .../internal/cldrtree/testdata/test1/output.go     |   350 +
 .../internal/cldrtree/testdata/test2/output.go     |   889 +
 vendor/golang.org/x/text/internal/cldrtree/tree.go |   181 +
 vendor/golang.org/x/text/internal/cldrtree/type.go |   139 +
 .../golang.org/x/text/internal/export/idna/gen.go  |   276 +
 .../x/text/internal/export/idna/gen_common.go      |    59 +
 .../x/text/internal/export/idna/gen_trieval.go     |   123 +
 .../x/text/internal/export/idna/idna10.0.0.go      |   733 +
 .../x/text/internal/export/idna/idna9.0.0.go       |   681 +
 .../x/text/internal/export/idna/punycode.go        |   201 +
 .../x/text/internal/export/idna/tables10.0.0.go    |  4559 ++
 .../x/text/internal/export/idna/tables9.0.0.go     |  4486 ++
 .../golang.org/x/text/internal/export/idna/trie.go |    70 +
 .../x/text/internal/export/idna/trieval.go         |   119 +
 vendor/golang.org/x/text/internal/format/format.go |    41 +
 vendor/golang.org/x/text/internal/format/parser.go |   357 +
 vendor/golang.org/x/text/internal/gen.go           |    52 +
 vendor/golang.org/x/text/internal/internal.go      |    51 +
 vendor/golang.org/x/text/internal/match.go         |    67 +
 vendor/golang.org/x/text/internal/number/common.go |    51 +
 .../golang.org/x/text/internal/number/decimal.go   |   498 +
 vendor/golang.org/x/text/internal/number/format.go |   540 +
 vendor/golang.org/x/text/internal/number/gen.go    |   458 +
 .../x/text/internal/number/gen_common.go           |    55 +
 vendor/golang.org/x/text/internal/number/number.go |   156 +
 .../golang.org/x/text/internal/number/pattern.go   |   485 +
 .../x/text/internal/number/roundingmode_string.go  |    16 +
 vendor/golang.org/x/text/internal/number/tables.go |  1211 +
 vendor/golang.org/x/text/internal/stringset/set.go |    86 +
 vendor/golang.org/x/text/internal/tables.go        |   118 +
 .../x/text/internal/testtext/codesize.go           |    53 +
 vendor/golang.org/x/text/internal/testtext/flag.go |    22 +
 vendor/golang.org/x/text/internal/testtext/gc.go   |    14 +
 .../golang.org/x/text/internal/testtext/gccgo.go   |    11 +
 .../golang.org/x/text/internal/testtext/go1_6.go   |    23 +
 .../golang.org/x/text/internal/testtext/go1_7.go   |    17 +
 vendor/golang.org/x/text/internal/testtext/text.go |   105 +
 .../x/text/internal/utf8internal/utf8internal.go   |    87 +
 vendor/golang.org/x/text/language/display/dict.go  |    92 +
 .../golang.org/x/text/language/display/display.go  |   420 +
 .../golang.org/x/text/language/display/lookup.go   |   251 +
 .../x/text/language/display/maketables.go          |   602 +
 .../golang.org/x/text/language/display/tables.go   | 53114 +++++++++++++++
 vendor/golang.org/x/text/message/catalog.go        |    36 +
 .../golang.org/x/text/message/catalog/catalog.go   |   369 +
 vendor/golang.org/x/text/message/catalog/dict.go   |   129 +
 vendor/golang.org/x/text/message/catalog/go19.go   |    15 +
 .../golang.org/x/text/message/catalog/gopre19.go   |    23 +
 vendor/golang.org/x/text/message/doc.go            |   100 +
 vendor/golang.org/x/text/message/format.go         |   510 +
 vendor/golang.org/x/text/message/message.go        |   186 +
 .../golang.org/x/text/message/pipeline/extract.go  |   305 +
 .../golang.org/x/text/message/pipeline/generate.go |   251 +
 .../golang.org/x/text/message/pipeline/message.go  |   241 +
 .../golang.org/x/text/message/pipeline/pipeline.go |    57 +
 .../golang.org/x/text/message/pipeline/rewrite.go  |   268 +
 vendor/golang.org/x/text/message/print.go          |   979 +
 vendor/golang.org/x/text/number/doc.go             |    28 +
 vendor/golang.org/x/text/number/format.go          |   122 +
 vendor/golang.org/x/text/number/number.go          |    77 +
 vendor/golang.org/x/text/number/option.go          |   177 +
 vendor/golang.org/x/text/runes/cond.go             |   187 +
 vendor/golang.org/x/text/runes/runes.go            |   355 +
 vendor/golang.org/x/text/search/index.go           |    35 +
 vendor/golang.org/x/text/search/pattern.go         |   155 +
 vendor/golang.org/x/text/search/search.go          |   237 +
 vendor/golang.org/x/text/search/tables.go          | 12448 ++++
 vendor/golang.org/x/text/secure/doc.go             |     6 +
 vendor/golang.org/x/text/secure/precis/class.go    |    36 +
 vendor/golang.org/x/text/secure/precis/context.go  |   139 +
 vendor/golang.org/x/text/secure/precis/doc.go      |    14 +
 vendor/golang.org/x/text/secure/precis/gen.go      |   310 +
 .../golang.org/x/text/secure/precis/gen_trieval.go |    68 +
 vendor/golang.org/x/text/secure/precis/nickname.go |    72 +
 vendor/golang.org/x/text/secure/precis/options.go  |   157 +
 vendor/golang.org/x/text/secure/precis/profile.go  |   402 +
 vendor/golang.org/x/text/secure/precis/profiles.go |    78 +
 .../x/text/secure/precis/tables10.0.0.go           |  3889 ++
 .../golang.org/x/text/secure/precis/tables9.0.0.go |  3790 ++
 .../golang.org/x/text/secure/precis/transformer.go |    32 +
 vendor/golang.org/x/text/secure/precis/trieval.go  |    64 +
 vendor/golang.org/x/text/unicode/doc.go            |     8 +
 vendor/golang.org/x/text/unicode/runenames/bits.go |    59 +
 vendor/golang.org/x/text/unicode/runenames/gen.go  |   195 +
 .../x/text/unicode/runenames/gen_bits.go           |    63 +
 .../x/text/unicode/runenames/runenames.go          |    48 +
 .../golang.org/x/text/unicode/runenames/tables.go  | 15514 +++++
 vendor/golang.org/x/time/rate/rate.go              |    16 +-
 vendor/golang.org/x/time/rate/rate_go16.go         |    21 -
 vendor/golang.org/x/time/rate/rate_go17.go         |    21 -
 vendor/golang.org/x/tools/benchmark/parse/parse.go |   131 +
 vendor/golang.org/x/tools/blog/atom/atom.go        |    61 +
 vendor/golang.org/x/tools/blog/blog.go             |   456 +
 vendor/golang.org/x/tools/cmd/benchcmp/benchcmp.go |   184 +
 vendor/golang.org/x/tools/cmd/benchcmp/compare.go  |   156 +
 vendor/golang.org/x/tools/cmd/benchcmp/doc.go      |    37 +
 vendor/golang.org/x/tools/cmd/bundle/main.go       |   467 +
 .../testdata/src/domain.name/importdecl/p.go       |     3 +
 .../x/tools/cmd/bundle/testdata/src/initial/a.go   |    27 +
 .../x/tools/cmd/bundle/testdata/src/initial/b.go   |    23 +
 .../x/tools/cmd/bundle/testdata/src/initial/c.go   |    12 +
 vendor/golang.org/x/tools/cmd/callgraph/main.go    |   349 +
 .../x/tools/cmd/callgraph/testdata/src/pkg/pkg.go  |    25 +
 vendor/golang.org/x/tools/cmd/compilebench/main.go |   378 +
 vendor/golang.org/x/tools/cmd/cover/cover.go       |   722 +
 vendor/golang.org/x/tools/cmd/cover/doc.go         |    27 +
 vendor/golang.org/x/tools/cmd/cover/func.go        |   166 +
 vendor/golang.org/x/tools/cmd/cover/html.go        |   284 +
 .../golang.org/x/tools/cmd/cover/testdata/main.go  |   112 +
 .../golang.org/x/tools/cmd/cover/testdata/test.go  |   218 +
 vendor/golang.org/x/tools/cmd/digraph/digraph.go   |   541 +
 vendor/golang.org/x/tools/cmd/eg/eg.go             |   150 +
 vendor/golang.org/x/tools/cmd/fiximports/main.go   |   514 +
 .../testdata/src/fruit.io/banana/banana.go         |     7 +
 .../testdata/src/fruit.io/orange/orange.go         |     3 +
 .../fiximports/testdata/src/fruit.io/pear/pear.go  |     3 +
 .../cmd/fiximports/testdata/src/new.com/one/one.go |     1 +
 .../cmd/fiximports/testdata/src/old.com/bad/bad.go |     2 +
 .../cmd/fiximports/testdata/src/old.com/one/one.go |     1 +
 .../fiximports/testdata/src/titanic.biz/bar/bar.go |     2 +
 .../fiximports/testdata/src/titanic.biz/foo/foo.go |     2 +
 vendor/golang.org/x/tools/cmd/getgo/download.go    |   184 +
 vendor/golang.org/x/tools/cmd/getgo/main.go        |   117 +
 vendor/golang.org/x/tools/cmd/getgo/path.go        |   155 +
 vendor/golang.org/x/tools/cmd/getgo/server/main.go |    61 +
 vendor/golang.org/x/tools/cmd/getgo/steps.go       |   133 +
 vendor/golang.org/x/tools/cmd/getgo/system.go      |    38 +
 vendor/golang.org/x/tools/cmd/getgo/system_unix.go |    55 +
 .../golang.org/x/tools/cmd/getgo/system_windows.go |    86 +
 .../x/tools/cmd/go-contrib-init/contrib.go         |   289 +
 vendor/golang.org/x/tools/cmd/godex/doc.go         |    69 +
 vendor/golang.org/x/tools/cmd/godex/gc.go          |    13 +
 vendor/golang.org/x/tools/cmd/godex/gccgo.go       |    34 +
 vendor/golang.org/x/tools/cmd/godex/godex.go       |   211 +
 vendor/golang.org/x/tools/cmd/godex/isAlias18.go   |    13 +
 vendor/golang.org/x/tools/cmd/godex/isAlias19.go   |    13 +
 vendor/golang.org/x/tools/cmd/godex/print.go       |   373 +
 vendor/golang.org/x/tools/cmd/godex/source.go      |    19 +
 vendor/golang.org/x/tools/cmd/godex/writetype.go   |   242 +
 vendor/golang.org/x/tools/cmd/godoc/appinit.go     |   155 +
 vendor/golang.org/x/tools/cmd/godoc/autocert.go    |    88 +
 vendor/golang.org/x/tools/cmd/godoc/blog.go        |    85 +
 vendor/golang.org/x/tools/cmd/godoc/codewalk.go    |   523 +
 vendor/golang.org/x/tools/cmd/godoc/dl.go          |    16 +
 vendor/golang.org/x/tools/cmd/godoc/doc.go         |   118 +
 vendor/golang.org/x/tools/cmd/godoc/goroot.go      |    74 +
 vendor/golang.org/x/tools/cmd/godoc/handlers.go    |   151 +
 vendor/golang.org/x/tools/cmd/godoc/index.go       |    11 +
 vendor/golang.org/x/tools/cmd/godoc/main.go        |   340 +
 vendor/golang.org/x/tools/cmd/godoc/play.go        |    11 +
 vendor/golang.org/x/tools/cmd/godoc/x.go           |    92 +
 vendor/golang.org/x/tools/cmd/goimports/doc.go     |    43 +
 .../golang.org/x/tools/cmd/goimports/goimports.go  |   369 +
 .../x/tools/cmd/goimports/goimports_gc.go          |    26 +
 .../x/tools/cmd/goimports/goimports_not_gc.go      |    11 +
 vendor/golang.org/x/tools/cmd/golsp/main.go        |    21 +
 vendor/golang.org/x/tools/cmd/gomvpkg/main.go      |    94 +
 vendor/golang.org/x/tools/cmd/gorename/main.go     |    55 +
 vendor/golang.org/x/tools/cmd/gotype/gotype.go     |   341 +
 vendor/golang.org/x/tools/cmd/gotype/sizesFor18.go |    40 +
 vendor/golang.org/x/tools/cmd/gotype/sizesFor19.go |    15 +
 vendor/golang.org/x/tools/cmd/goyacc/doc.go        |    70 +
 .../x/tools/cmd/goyacc/testdata/expr/main.go       |    14 +
 vendor/golang.org/x/tools/cmd/goyacc/yacc.go       |  3592 ++
 vendor/golang.org/x/tools/cmd/guru/callees.go      |   257 +
 vendor/golang.org/x/tools/cmd/guru/callers.go      |   195 +
 vendor/golang.org/x/tools/cmd/guru/callstack.go    |   141 +
 vendor/golang.org/x/tools/cmd/guru/definition.go   |   205 +
 vendor/golang.org/x/tools/cmd/guru/describe.go     |   947 +
 vendor/golang.org/x/tools/cmd/guru/freevars.go     |   223 +
 vendor/golang.org/x/tools/cmd/guru/guru.go         |   401 +
 vendor/golang.org/x/tools/cmd/guru/implements.go   |   364 +
 vendor/golang.org/x/tools/cmd/guru/isAlias18.go    |    15 +
 vendor/golang.org/x/tools/cmd/guru/isAlias19.go    |    15 +
 vendor/golang.org/x/tools/cmd/guru/main.go         |   225 +
 vendor/golang.org/x/tools/cmd/guru/peers.go        |   252 +
 vendor/golang.org/x/tools/cmd/guru/pointsto.go     |   290 +
 vendor/golang.org/x/tools/cmd/guru/pos.go          |   142 +
 vendor/golang.org/x/tools/cmd/guru/referrers.go    |   802 +
 .../golang.org/x/tools/cmd/guru/serial/serial.go   |   260 +
 .../x/tools/cmd/guru/testdata/src/alias/alias.go   |    23 +
 .../tools/cmd/guru/testdata/src/calls-json/main.go |    16 +
 .../x/tools/cmd/guru/testdata/src/calls/main.go    |   129 +
 .../cmd/guru/testdata/src/definition-json/main.go  |    66 +
 .../guru/testdata/src/definition-json/main19.go    |     5 +
 .../cmd/guru/testdata/src/definition-json/type.go  |     3 +
 .../cmd/guru/testdata/src/describe-json/main.go    |    29 +
 .../x/tools/cmd/guru/testdata/src/describe/main.go |   111 +
 .../tools/cmd/guru/testdata/src/describe/main19.go |    13 +
 .../x/tools/cmd/guru/testdata/src/freevars/main.go |    40 +
 .../cmd/guru/testdata/src/implements-json/main.go  |    27 +
 .../testdata/src/implements-methods-json/main.go   |    37 +
 .../guru/testdata/src/implements-methods/main.go   |    37 +
 .../tools/cmd/guru/testdata/src/implements/main.go |    44 +
 .../x/tools/cmd/guru/testdata/src/imports/main.go  |    29 +
 .../x/tools/cmd/guru/testdata/src/lib/lib.go       |    37 +
 .../cmd/guru/testdata/src/lib/sublib/sublib.go     |     3 +
 .../x/tools/cmd/guru/testdata/src/main/multi.go    |    13 +
 .../tools/cmd/guru/testdata/src/peers-json/main.go |    13 +
 .../x/tools/cmd/guru/testdata/src/peers/main.go    |    52 +
 .../cmd/guru/testdata/src/pointsto-json/main.go    |    27 +
 .../x/tools/cmd/guru/testdata/src/pointsto/main.go |    75 +
 .../cmd/guru/testdata/src/referrers-json/main.go   |    24 +
 .../tools/cmd/guru/testdata/src/referrers/main.go  |    36 +
 .../tools/cmd/guru/testdata/src/reflection/main.go |    30 +
 .../x/tools/cmd/guru/testdata/src/softerrs/main.go |    15 +
 .../tools/cmd/guru/testdata/src/what-json/main.go  |    14 +
 .../x/tools/cmd/guru/testdata/src/what/main.go     |    11 +
 .../tools/cmd/guru/testdata/src/whicherrs/main.go  |    32 +
 vendor/golang.org/x/tools/cmd/guru/what.go         |   282 +
 vendor/golang.org/x/tools/cmd/guru/whicherrs.go    |   327 +
 .../x/tools/cmd/heapview/internal/core/mmapfile.go |   145 +
 .../cmd/heapview/internal/core/mmapfile_other.go   |    14 +
 .../x/tools/cmd/heapview/internal/core/raw.go      |   308 +
 vendor/golang.org/x/tools/cmd/heapview/main.go     |    83 +
 vendor/golang.org/x/tools/cmd/html2article/conv.go |   331 +
 vendor/golang.org/x/tools/cmd/present/dir.go       |   217 +
 vendor/golang.org/x/tools/cmd/present/doc.go       |    52 +
 vendor/golang.org/x/tools/cmd/present/main.go      |   150 +
 vendor/golang.org/x/tools/cmd/present/play.go      |    89 +
 vendor/golang.org/x/tools/cmd/ssadump/main.go      |   190 +
 vendor/golang.org/x/tools/cmd/stress/stress.go     |   141 +
 .../golang.org/x/tools/cmd/stringer/importer18.go  |    16 +
 .../golang.org/x/tools/cmd/stringer/importer19.go  |    16 +
 vendor/golang.org/x/tools/cmd/stringer/stringer.go |   686 +
 .../x/tools/cmd/stringer/testdata/cgo.go           |    32 +
 .../x/tools/cmd/stringer/testdata/conv.go          |    41 +
 .../x/tools/cmd/stringer/testdata/day.go           |    39 +
 .../x/tools/cmd/stringer/testdata/gap.go           |    44 +
 .../x/tools/cmd/stringer/testdata/num.go           |    35 +
 .../x/tools/cmd/stringer/testdata/number.go        |    34 +
 .../x/tools/cmd/stringer/testdata/prime.go         |    56 +
 .../x/tools/cmd/stringer/testdata/tag_main.go      |    11 +
 .../x/tools/cmd/stringer/testdata/tag_tag.go       |     7 +
 .../x/tools/cmd/stringer/testdata/unum.go          |    38 +
 .../x/tools/cmd/stringer/testdata/unum2.go         |    31 +
 vendor/golang.org/x/tools/cmd/tip/cert.go          |    64 +
 vendor/golang.org/x/tools/cmd/tip/godoc.go         |    93 +
 vendor/golang.org/x/tools/cmd/tip/talks.go         |    74 +
 vendor/golang.org/x/tools/cmd/tip/tip.go           |   441 +
 vendor/golang.org/x/tools/cmd/toolstash/cmp.go     |   157 +
 vendor/golang.org/x/tools/cmd/toolstash/main.go    |   637 +
 .../x/tools/container/intsets/popcnt_amd64.go      |    20 +
 .../x/tools/container/intsets/popcnt_amd64.s       |    30 +
 .../x/tools/container/intsets/popcnt_gccgo.go      |     9 +
 .../x/tools/container/intsets/popcnt_gccgo_c.c     |    19 +
 .../x/tools/container/intsets/popcnt_generic.go    |    33 +
 .../golang.org/x/tools/container/intsets/sparse.go |  1091 +
 .../golang.org/x/tools/container/intsets/util.go   |    84 +
 vendor/golang.org/x/tools/cover/profile.go         |   213 +
 vendor/golang.org/x/tools/go/analysis/analysis.go  |   192 +
 .../tools/go/analysis/analysistest/analysistest.go |   387 +
 .../golang.org/x/tools/go/analysis/cmd/vet/vet.go  |    80 +
 vendor/golang.org/x/tools/go/analysis/doc.go       |   336 +
 .../go/analysis/internal/analysisflags/flags.go    |   343 +
 .../go/analysis/internal/analysisflags/help.go     |    89 +
 .../tools/go/analysis/internal/checker/checker.go  |   701 +
 .../x/tools/go/analysis/internal/facts/facts.go    |   299 +
 .../x/tools/go/analysis/internal/facts/imports.go  |    88 +
 .../tools/go/analysis/multichecker/multichecker.go |    60 +
 .../x/tools/go/analysis/passes/asmdecl/asmdecl.go  |   760 +
 .../analysis/passes/asmdecl/testdata/src/a/asm.go  |    49 +
 .../analysis/passes/asmdecl/testdata/src/a/asm1.s  |   320 +
 .../analysis/passes/asmdecl/testdata/src/a/asm2.s  |   256 +
 .../analysis/passes/asmdecl/testdata/src/a/asm3.s  |   191 +
 .../analysis/passes/asmdecl/testdata/src/a/asm4.s  |    25 +
 .../analysis/passes/asmdecl/testdata/src/a/asm5.s  |   192 +
 .../analysis/passes/asmdecl/testdata/src/a/asm6.s  |   192 +
 .../analysis/passes/asmdecl/testdata/src/a/asm7.s  |   192 +
 .../analysis/passes/asmdecl/testdata/src/a/asm8.s  |   164 +
 .../x/tools/go/analysis/passes/assign/assign.go    |    68 +
 .../go/analysis/passes/assign/testdata/src/a/a.go  |    31 +
 .../x/tools/go/analysis/passes/atomic/atomic.go    |    96 +
 .../go/analysis/passes/atomic/testdata/src/a/a.go  |    62 +
 .../x/tools/go/analysis/passes/bools/bools.go      |   214 +
 .../go/analysis/passes/bools/testdata/src/a/a.go   |   137 +
 .../tools/go/analysis/passes/buildssa/buildssa.go  |   117 +
 .../analysis/passes/buildssa/testdata/src/a/a.go   |    16 +
 .../tools/go/analysis/passes/buildtag/buildtag.go  |   159 +
 .../passes/buildtag/testdata/src/a/buildtag.go     |    21 +
 .../x/tools/go/analysis/passes/cgocall/cgocall.go  |   390 +
 .../analysis/passes/cgocall/testdata/src/a/cgo.go  |    71 +
 .../analysis/passes/cgocall/testdata/src/a/cgo3.go |    21 +
 .../go/analysis/passes/cgocall/testdata/src/b/b.go |    20 +
 .../go/analysis/passes/cgocall/testdata/src/c/c.go |    14 +
 .../go/analysis/passes/composite/composite.go      |   108 +
 .../analysis/passes/composite/testdata/src/a/a.go  |   121 +
 .../go/analysis/passes/composite/whitelist.go      |    33 +
 .../tools/go/analysis/passes/copylock/copylock.go  |   300 +
 .../passes/copylock/testdata/src/a/copylock.go     |   188 +
 .../copylock/testdata/src/a/copylock_func.go       |   136 +
 .../copylock/testdata/src/a/copylock_range.go      |    67 +
 .../tools/go/analysis/passes/ctrlflow/ctrlflow.go  |   225 +
 .../analysis/passes/ctrlflow/testdata/src/a/a.go   |   109 +
 .../passes/ctrlflow/testdata/src/lib/lib.go        |     8 +
 .../analysis/passes/findcall/cmd/findcall/main.go  |     9 +
 .../tools/go/analysis/passes/findcall/findcall.go  |    80 +
 .../analysis/passes/findcall/testdata/src/a/a.go   |     6 +
 .../analysis/passes/httpresponse/httpresponse.go   |   177 +
 .../passes/httpresponse/testdata/src/a/a.go        |    85 +
 .../x/tools/go/analysis/passes/inspect/inspect.go  |    45 +
 .../analysis/passes/internal/analysisutil/util.go  |   106 +
 .../go/analysis/passes/loopclosure/loopclosure.go  |   130 +
 .../passes/loopclosure/testdata/src/a/a.go         |    90 +
 .../passes/lostcancel/cmd/lostcancel/main.go       |    10 +
 .../go/analysis/passes/lostcancel/lostcancel.go    |   315 +
 .../analysis/passes/lostcancel/testdata/src/a/a.go |   173 +
 .../analysis/passes/lostcancel/testdata/src/b/b.go |    26 +
 .../x/tools/go/analysis/passes/nilfunc/nilfunc.go  |    74 +
 .../go/analysis/passes/nilfunc/testdata/src/a/a.go |    35 +
 .../go/analysis/passes/nilness/cmd/nilness/main.go |    10 +
 .../x/tools/go/analysis/passes/nilness/nilness.go  |   271 +
 .../go/analysis/passes/nilness/testdata/src/a/a.go |    91 +
 .../x/tools/go/analysis/passes/pkgfact/pkgfact.go  |   127 +
 .../go/analysis/passes/pkgfact/testdata/src/a/a.go |     4 +
 .../go/analysis/passes/pkgfact/testdata/src/b/b.go |     5 +
 .../go/analysis/passes/pkgfact/testdata/src/c/c.go |     5 +
 .../x/tools/go/analysis/passes/printf/printf.go    |  1017 +
 .../go/analysis/passes/printf/testdata/src/a/a.go  |   777 +
 .../go/analysis/passes/printf/testdata/src/b/b.go  |    33 +
 .../x/tools/go/analysis/passes/printf/types.go     |   239 +
 .../go/analysis/passes/shadow/cmd/shadow/main.go   |     9 +
 .../x/tools/go/analysis/passes/shadow/shadow.go    |   288 +
 .../go/analysis/passes/shadow/testdata/src/a/a.go  |    91 +
 .../x/tools/go/analysis/passes/shift/dead.go       |   101 +
 .../x/tools/go/analysis/passes/shift/shift.go      |   128 +
 .../go/analysis/passes/shift/testdata/src/a/a.go   |   155 +
 .../go/analysis/passes/stdmethods/stdmethods.go    |   186 +
 .../analysis/passes/stdmethods/testdata/src/a/a.go |    33 +
 .../go/analysis/passes/structtag/structtag.go      |   260 +
 .../analysis/passes/structtag/testdata/src/a/a.go  |   113 +
 .../go/analysis/passes/tests/testdata/src/a/a.go   |     3 +
 .../passes/tests/testdata/src/divergent/buf.go     |    17 +
 .../x/tools/go/analysis/passes/tests/tests.go      |   175 +
 .../passes/unmarshal/cmd/unmarshal/main.go         |     9 +
 .../analysis/passes/unmarshal/testdata/src/a/a.go  |    58 +
 .../go/analysis/passes/unmarshal/unmarshal.go      |    92 +
 .../passes/unreachable/testdata/src/a/a.go         |  2133 +
 .../go/analysis/passes/unreachable/unreachable.go  |   314 +
 .../analysis/passes/unsafeptr/testdata/src/a/a.go  |    63 +
 .../go/analysis/passes/unsafeptr/unsafeptr.go      |   130 +
 .../passes/unusedresult/testdata/src/a/a.go        |    27 +
 .../analysis/passes/unusedresult/unusedresult.go   |   131 +
 .../go/analysis/singlechecker/singlechecker.go     |    77 +
 .../x/tools/go/analysis/unitchecker/main.go        |    64 +
 .../go/analysis/unitchecker/testdata/src/a/a.go    |     7 +
 .../go/analysis/unitchecker/testdata/src/b/b.go    |    10 +
 .../x/tools/go/analysis/unitchecker/unitchecker.go |   387 +
 .../go/analysis/unitchecker/unitchecker112.go      |     9 +
 vendor/golang.org/x/tools/go/analysis/validate.go  |   104 +
 .../golang.org/x/tools/go/ast/astutil/imports.go   |    54 +-
 .../x/tools/go/ast/inspector/inspector.go          |   182 +
 .../golang.org/x/tools/go/ast/inspector/typeof.go  |   216 +
 .../golang.org/x/tools/go/buildutil/allpackages.go |   198 +
 .../golang.org/x/tools/go/buildutil/fakecontext.go |   109 +
 vendor/golang.org/x/tools/go/buildutil/overlay.go  |   103 +
 vendor/golang.org/x/tools/go/buildutil/tags.go     |    75 +
 vendor/golang.org/x/tools/go/buildutil/util.go     |   212 +
 .../golang.org/x/tools/go/callgraph/callgraph.go   |   129 +
 vendor/golang.org/x/tools/go/callgraph/cha/cha.go  |   139 +
 .../x/tools/go/callgraph/cha/testdata/func.go      |    23 +
 .../x/tools/go/callgraph/cha/testdata/iface.go     |    65 +
 .../tools/go/callgraph/cha/testdata/issue23925.go  |    38 +
 .../x/tools/go/callgraph/cha/testdata/recv.go      |    37 +
 vendor/golang.org/x/tools/go/callgraph/rta/rta.go  |   459 +
 .../x/tools/go/callgraph/rta/testdata/func.go      |    37 +
 .../x/tools/go/callgraph/rta/testdata/iface.go     |    79 +
 .../x/tools/go/callgraph/rta/testdata/rtype.go     |    35 +
 .../x/tools/go/callgraph/static/static.go          |    35 +
 vendor/golang.org/x/tools/go/callgraph/util.go     |   181 +
 vendor/golang.org/x/tools/go/cfg/builder.go        |   510 +
 vendor/golang.org/x/tools/go/cfg/cfg.go            |   150 +
 vendor/golang.org/x/tools/go/expect/expect.go      |   149 +
 vendor/golang.org/x/tools/go/expect/extract.go     |   263 +
 .../golang.org/x/tools/go/expect/testdata/test.go  |    37 +
 .../x/tools/go/gccgoexportdata/gccgoexportdata.go  |   129 +
 .../x/tools/go/gcexportdata/gcexportdata.go        |   109 +
 .../golang.org/x/tools/go/gcexportdata/importer.go |    73 +
 vendor/golang.org/x/tools/go/gcexportdata/main.go  |    99 +
 vendor/golang.org/x/tools/go/internal/cgo/cgo.go   |   220 +
 .../x/tools/go/internal/cgo/cgo_pkgconfig.go       |    39 +
 .../x/tools/go/internal/gccgoimporter/ar.go        |   151 +
 .../x/tools/go/internal/gccgoimporter/backdoor.go  |    32 +
 .../go/internal/gccgoimporter/gccgoinstallation.go |   100 +
 .../x/tools/go/internal/gccgoimporter/importer.go  |   250 +
 .../go/internal/gccgoimporter/newInterface10.go    |    21 +
 .../go/internal/gccgoimporter/newInterface11.go    |    13 +
 .../x/tools/go/internal/gccgoimporter/parser.go    |  1230 +
 .../go/internal/gccgoimporter/testdata/aliases.go  |    65 +
 .../internal/gccgoimporter/testdata/complexnums.go |     6 +
 .../internal/gccgoimporter/testdata/conversions.go |     5 +
 .../internal/gccgoimporter/testdata/escapeinfo.go  |    13 +
 .../go/internal/gccgoimporter/testdata/imports.go  |     5 +
 .../internal/gccgoimporter/testdata/issue27856.go  |     9 +
 .../internal/gccgoimporter/testdata/issue29198.go  |    37 +
 .../internal/gccgoimporter/testdata/nointerface.go |    12 +
 .../go/internal/gccgoimporter/testdata/pointer.go  |     3 +
 .../x/tools/go/internal/gcimporter/bexport.go      |   852 +
 .../x/tools/go/internal/gcimporter/bimport.go      |  1028 +
 .../x/tools/go/internal/gcimporter/exportdata.go   |    93 +
 .../x/tools/go/internal/gcimporter/gcimporter.go   |  1078 +
 .../x/tools/go/internal/gcimporter/iimport.go      |   598 +
 .../tools/go/internal/gcimporter/newInterface10.go |    21 +
 .../tools/go/internal/gcimporter/newInterface11.go |    13 +
 .../x/tools/go/internal/gcimporter/testdata/a.go   |    14 +
 .../x/tools/go/internal/gcimporter/testdata/b.go   |    11 +
 .../go/internal/gcimporter/testdata/exports.go     |    89 +
 .../go/internal/gcimporter/testdata/issue15920.go  |    11 +
 .../go/internal/gcimporter/testdata/issue20046.go  |     9 +
 .../go/internal/gcimporter/testdata/issue25301.go  |    17 +
 .../x/tools/go/internal/gcimporter/testdata/p.go   |    13 +
 .../internal/gcimporter/testdata/versions/test.go  |    30 +
 .../x/tools/go/internal/packagesdriver/sizes.go    |   157 +
 vendor/golang.org/x/tools/go/loader/doc.go         |   205 +
 vendor/golang.org/x/tools/go/loader/loader.go      |  1078 +
 vendor/golang.org/x/tools/go/loader/testdata/a.go  |     1 +
 vendor/golang.org/x/tools/go/loader/testdata/b.go  |     1 +
 .../x/tools/go/loader/testdata/badpkgdecl.go       |     1 +
 vendor/golang.org/x/tools/go/loader/util.go        |   124 +
 vendor/golang.org/x/tools/go/packages/doc.go       |   232 +
 vendor/golang.org/x/tools/go/packages/external.go  |    79 +
 vendor/golang.org/x/tools/go/packages/golist.go    |   805 +
 .../x/tools/go/packages/golist_fallback.go         |   450 +
 .../tools/go/packages/golist_fallback_testmain.go  |   318 +
 .../x/tools/go/packages/golist_overlay.go          |   104 +
 .../x/tools/go/packages/gopackages/main.go         |   272 +
 vendor/golang.org/x/tools/go/packages/packages.go  |   945 +
 .../x/tools/go/packages/packagestest/expect.go     |   364 +
 .../x/tools/go/packages/packagestest/export.go     |   309 +
 .../x/tools/go/packages/packagestest/gopath.go     |    74 +
 .../x/tools/go/packages/packagestest/modules.go    |   210 +
 .../tools/go/packages/packagestest/modules_111.go  |     7 +
 .../go/packages/packagestest/testdata/test.go      |    24 +
 .../heschik/tools-testrepo/v2@v2.0.0/pkg/pkg.go    |     1 +
 .../heschik/tools-testrepo@v1.0.0/pkg/pkg.go       |     1 +
 .../testdata/TestName_Modules/src/b/pkg/pkg.go     |     1 +
 .../heschik/tools-testrepo/v2@v2.0.1/pkg/pkg.go    |     1 +
 .../heschik/tools-testrepo/v2@v2.0.2/pkg/pkg.go    |     1 +
 .../heschik/tools-testrepo@v1.0.0/pkg/pkg.go       |     1 +
 vendor/golang.org/x/tools/go/packages/visit.go     |    55 +
 vendor/golang.org/x/tools/go/pointer/analysis.go   |   452 +
 vendor/golang.org/x/tools/go/pointer/api.go        |   285 +
 vendor/golang.org/x/tools/go/pointer/callgraph.go  |    61 +
 vendor/golang.org/x/tools/go/pointer/constraint.go |   149 +
 vendor/golang.org/x/tools/go/pointer/doc.go        |   610 +
 vendor/golang.org/x/tools/go/pointer/gen.go        |  1325 +
 vendor/golang.org/x/tools/go/pointer/hvn.go        |   973 +
 vendor/golang.org/x/tools/go/pointer/intrinsics.go |   361 +
 vendor/golang.org/x/tools/go/pointer/labels.go     |   152 +
 vendor/golang.org/x/tools/go/pointer/opt.go        |   132 +
 vendor/golang.org/x/tools/go/pointer/print.go      |    43 +
 vendor/golang.org/x/tools/go/pointer/query.go      |   221 +
 vendor/golang.org/x/tools/go/pointer/reflect.go    |  1975 +
 vendor/golang.org/x/tools/go/pointer/solve.go      |   370 +
 .../x/tools/go/pointer/testdata/another.go         |    36 +
 .../x/tools/go/pointer/testdata/arrayreflect.go    |   191 +
 .../x/tools/go/pointer/testdata/arrays.go          |    97 +
 .../x/tools/go/pointer/testdata/channels.go        |   118 +
 .../x/tools/go/pointer/testdata/chanreflect.go     |    85 +
 .../x/tools/go/pointer/testdata/chanreflect1.go    |    35 +
 .../x/tools/go/pointer/testdata/context.go         |    48 +
 .../golang.org/x/tools/go/pointer/testdata/conv.go |    63 +
 .../x/tools/go/pointer/testdata/extended.go        |    21 +
 .../x/tools/go/pointer/testdata/finalizer.go       |    89 +
 .../golang.org/x/tools/go/pointer/testdata/flow.go |    63 +
 .../x/tools/go/pointer/testdata/fmtexcerpt.go      |    42 +
 .../golang.org/x/tools/go/pointer/testdata/func.go |   205 +
 .../x/tools/go/pointer/testdata/funcreflect.go     |   130 +
 .../x/tools/go/pointer/testdata/hello.go           |    27 +
 .../x/tools/go/pointer/testdata/interfaces.go      |   152 +
 .../x/tools/go/pointer/testdata/issue9002.go       |    17 +
 .../x/tools/go/pointer/testdata/mapreflect.go      |   117 +
 .../golang.org/x/tools/go/pointer/testdata/maps.go |    74 +
 .../x/tools/go/pointer/testdata/panic.go           |    36 +
 .../x/tools/go/pointer/testdata/recur.go           |    11 +
 .../x/tools/go/pointer/testdata/reflect.go         |   115 +
 .../golang.org/x/tools/go/pointer/testdata/rtti.go |    29 +
 .../x/tools/go/pointer/testdata/structreflect.go   |    45 +
 .../x/tools/go/pointer/testdata/structs.go         |   100 +
 .../x/tools/go/pointer/testdata/timer.go           |    24 +
 vendor/golang.org/x/tools/go/pointer/util.go       |   313 +
 vendor/golang.org/x/tools/go/ssa/blockopt.go       |   187 +
 vendor/golang.org/x/tools/go/ssa/builder.go        |  2379 +
 vendor/golang.org/x/tools/go/ssa/const.go          |   169 +
 vendor/golang.org/x/tools/go/ssa/create.go         |   270 +
 vendor/golang.org/x/tools/go/ssa/doc.go            |   125 +
 vendor/golang.org/x/tools/go/ssa/dom.go            |   341 +
 vendor/golang.org/x/tools/go/ssa/emit.go           |   468 +
 vendor/golang.org/x/tools/go/ssa/func.go           |   689 +
 vendor/golang.org/x/tools/go/ssa/identical.go      |     7 +
 vendor/golang.org/x/tools/go/ssa/identical_17.go   |     7 +
 .../golang.org/x/tools/go/ssa/interp/external.go   |   562 +
 .../x/tools/go/ssa/interp/external_darwin.go       |    35 +
 .../x/tools/go/ssa/interp/external_unix.go         |   256 +
 vendor/golang.org/x/tools/go/ssa/interp/interp.go  |   764 +
 vendor/golang.org/x/tools/go/ssa/interp/map.go     |   121 +
 vendor/golang.org/x/tools/go/ssa/interp/ops.go     |  1396 +
 vendor/golang.org/x/tools/go/ssa/interp/reflect.go |   574 +
 .../x/tools/go/ssa/interp/testdata/boundmeth.go    |   144 +
 .../x/tools/go/ssa/interp/testdata/callstack.go    |    52 +
 .../x/tools/go/ssa/interp/testdata/complit.go      |   186 +
 .../x/tools/go/ssa/interp/testdata/coverage.go     |   534 +
 .../x/tools/go/ssa/interp/testdata/defer.go        |    53 +
 .../x/tools/go/ssa/interp/testdata/fieldprom.go    |   114 +
 .../x/tools/go/ssa/interp/testdata/ifaceconv.go    |    83 +
 .../x/tools/go/ssa/interp/testdata/ifaceprom.go    |    58 +
 .../x/tools/go/ssa/interp/testdata/initorder.go    |    67 +
 .../x/tools/go/ssa/interp/testdata/methprom.go     |    93 +
 .../x/tools/go/ssa/interp/testdata/mrvchain.go     |    75 +
 .../x/tools/go/ssa/interp/testdata/range.go        |    55 +
 .../x/tools/go/ssa/interp/testdata/recover.go      |    34 +
 .../x/tools/go/ssa/interp/testdata/reflect.go      |    11 +
 .../x/tools/go/ssa/interp/testdata/static.go       |    58 +
 vendor/golang.org/x/tools/go/ssa/interp/value.go   |   497 +
 vendor/golang.org/x/tools/go/ssa/lift.go           |   653 +
 vendor/golang.org/x/tools/go/ssa/lvalue.go         |   120 +
 vendor/golang.org/x/tools/go/ssa/methods.go        |   239 +
 vendor/golang.org/x/tools/go/ssa/mode.go           |   100 +
 vendor/golang.org/x/tools/go/ssa/print.go          |   431 +
 vendor/golang.org/x/tools/go/ssa/sanity.go         |   532 +
 vendor/golang.org/x/tools/go/ssa/source.go         |   293 +
 vendor/golang.org/x/tools/go/ssa/ssa.go            |  1695 +
 vendor/golang.org/x/tools/go/ssa/ssautil/load.go   |   175 +
 vendor/golang.org/x/tools/go/ssa/ssautil/switch.go |   234 +
 .../x/tools/go/ssa/ssautil/testdata/switches.go    |   357 +
 vendor/golang.org/x/tools/go/ssa/ssautil/visit.go  |    79 +
 .../x/tools/go/ssa/testdata/objlookup.go           |   160 +
 .../x/tools/go/ssa/testdata/structconv.go          |    24 +
 .../x/tools/go/ssa/testdata/valueforexpr.go        |   153 +
 vendor/golang.org/x/tools/go/ssa/testmain.go       |   271 +
 vendor/golang.org/x/tools/go/ssa/util.go           |   119 +
 vendor/golang.org/x/tools/go/ssa/wrappers.go       |   290 +
 .../x/tools/go/types/objectpath/objectpath.go      |   523 +
 .../golang.org/x/tools/go/types/typeutil/callee.go |    46 +
 .../x/tools/go/types/typeutil/imports.go           |    31 +
 vendor/golang.org/x/tools/go/types/typeutil/map.go |   313 +
 .../x/tools/go/types/typeutil/methodsetcache.go    |    72 +
 vendor/golang.org/x/tools/go/types/typeutil/ui.go  |    52 +
 vendor/golang.org/x/tools/go/vcs/discovery.go      |    76 +
 vendor/golang.org/x/tools/go/vcs/env.go            |    39 +
 vendor/golang.org/x/tools/go/vcs/http.go           |    80 +
 vendor/golang.org/x/tools/go/vcs/vcs.go            |   768 +
 .../golang.org/x/tools/godoc/analysis/analysis.go  |   613 +
 .../golang.org/x/tools/godoc/analysis/callgraph.go |   351 +
 .../x/tools/godoc/analysis/implements.go           |   195 +
 vendor/golang.org/x/tools/godoc/analysis/json.go   |    69 +
 vendor/golang.org/x/tools/godoc/analysis/peers.go  |   154 +
 .../golang.org/x/tools/godoc/analysis/typeinfo.go  |   234 +
 vendor/golang.org/x/tools/godoc/corpus.go          |   168 +
 vendor/golang.org/x/tools/godoc/dirtrees.go        |   383 +
 vendor/golang.org/x/tools/godoc/dl/dl.go           |   352 +
 vendor/golang.org/x/tools/godoc/dl/server.go       |   266 +
 vendor/golang.org/x/tools/godoc/dl/tmpl.go         |   277 +
 vendor/golang.org/x/tools/godoc/env/env.go         |    41 +
 vendor/golang.org/x/tools/godoc/format.go          |   371 +
 vendor/golang.org/x/tools/godoc/godoc.go           |   959 +
 vendor/golang.org/x/tools/godoc/index.go           |  1580 +
 vendor/golang.org/x/tools/godoc/linkify.go         |   195 +
 vendor/golang.org/x/tools/godoc/meta.go            |   144 +
 vendor/golang.org/x/tools/godoc/page.go            |    80 +
 vendor/golang.org/x/tools/godoc/parser.go          |    74 +
 vendor/golang.org/x/tools/godoc/pres.go            |   169 +
 vendor/golang.org/x/tools/godoc/proxy/proxy.go     |   170 +
 vendor/golang.org/x/tools/godoc/redirect/hash.go   |   138 +
 .../golang.org/x/tools/godoc/redirect/redirect.go  |   254 +
 .../golang.org/x/tools/godoc/redirect/rietveld.go  |  1093 +
 vendor/golang.org/x/tools/godoc/search.go          |   186 +
 vendor/golang.org/x/tools/godoc/server.go          |   836 +
 vendor/golang.org/x/tools/godoc/short/short.go     |   186 +
 vendor/golang.org/x/tools/godoc/short/tmpl.go      |   119 +
 vendor/golang.org/x/tools/godoc/snippet.go         |   123 +
 vendor/golang.org/x/tools/godoc/spec.go            |   179 +
 vendor/golang.org/x/tools/godoc/spot.go            |    83 +
 vendor/golang.org/x/tools/godoc/static/doc.go      |     8 +
 vendor/golang.org/x/tools/godoc/static/gen.go      |   109 +
 .../golang.org/x/tools/godoc/static/makestatic.go  |    36 +
 vendor/golang.org/x/tools/godoc/static/static.go   |   105 +
 vendor/golang.org/x/tools/godoc/tab.go             |    82 +
 vendor/golang.org/x/tools/godoc/template.go        |   179 +
 vendor/golang.org/x/tools/godoc/util/throttle.go   |    88 +
 vendor/golang.org/x/tools/godoc/util/util.go       |    89 +
 vendor/golang.org/x/tools/godoc/versions.go        |   224 +
 vendor/golang.org/x/tools/godoc/vfs/emptyvfs.go    |    89 +
 .../golang.org/x/tools/godoc/vfs/gatefs/gatefs.go  |    93 +
 .../golang.org/x/tools/godoc/vfs/httpfs/httpfs.go  |    94 +
 vendor/golang.org/x/tools/godoc/vfs/mapfs/mapfs.go |   156 +
 vendor/golang.org/x/tools/godoc/vfs/namespace.go   |   403 +
 vendor/golang.org/x/tools/godoc/vfs/os.go          |   105 +
 vendor/golang.org/x/tools/godoc/vfs/vfs.go         |    58 +
 vendor/golang.org/x/tools/godoc/vfs/zipfs/zipfs.go |   291 +
 vendor/golang.org/x/tools/imports/fix.go           |   784 +-
 vendor/golang.org/x/tools/imports/imports.go       |     3 +-
 vendor/golang.org/x/tools/imports/mkstdlib.go      |    51 +-
 vendor/golang.org/x/tools/imports/zstdlib.go       | 20230 +++---
 .../fastwalk/fastwalk_dirent_namlen_linux.go       |     7 +-
 .../golang.org/x/tools/internal/gopathwalk/walk.go |     7 +-
 .../x/tools/internal/jsonrpc2/jsonrpc2.go          |   358 +
 vendor/golang.org/x/tools/internal/jsonrpc2/log.go |    59 +
 .../golang.org/x/tools/internal/jsonrpc2/stream.go |   146 +
 .../golang.org/x/tools/internal/jsonrpc2/wire.go   |   139 +
 .../golang.org/x/tools/internal/lsp/cache/file.go  |    94 +
 .../golang.org/x/tools/internal/lsp/cache/view.go  |   120 +
 vendor/golang.org/x/tools/internal/lsp/cmd/cmd.go  |    81 +
 .../golang.org/x/tools/internal/lsp/cmd/server.go  |   111 +
 .../golang.org/x/tools/internal/lsp/completion.go  |   138 +
 .../golang.org/x/tools/internal/lsp/diagnostics.go |    71 +
 vendor/golang.org/x/tools/internal/lsp/format.go   |    62 +
 vendor/golang.org/x/tools/internal/lsp/imports.go  |    36 +
 vendor/golang.org/x/tools/internal/lsp/position.go |   133 +
 .../x/tools/internal/lsp/protocol/basic.go         |   362 +
 .../x/tools/internal/lsp/protocol/client.go        |   187 +
 .../x/tools/internal/lsp/protocol/diagnostics.go   |    20 +
 .../x/tools/internal/lsp/protocol/doc.go           |    16 +
 .../x/tools/internal/lsp/protocol/general.go       |   849 +
 .../x/tools/internal/lsp/protocol/language.go      |  1020 +
 .../x/tools/internal/lsp/protocol/printers.go      |    83 +
 .../x/tools/internal/lsp/protocol/protocol.go      |    49 +
 .../x/tools/internal/lsp/protocol/registration.go  |    61 +
 .../x/tools/internal/lsp/protocol/server.go        |   646 +
 .../x/tools/internal/lsp/protocol/text.go          |   130 +
 .../x/tools/internal/lsp/protocol/window.go        |    77 +
 .../x/tools/internal/lsp/protocol/workspace.go     |   203 +
 vendor/golang.org/x/tools/internal/lsp/server.go   |   341 +
 .../x/tools/internal/lsp/signature_help.go         |    33 +
 .../x/tools/internal/lsp/source/completion.go      |   737 +
 .../x/tools/internal/lsp/source/definition.go      |   200 +
 .../x/tools/internal/lsp/source/diagnostics.go     |   144 +
 .../x/tools/internal/lsp/source/format.go          |    78 +
 .../x/tools/internal/lsp/source/hover.go           |    50 +
 .../x/tools/internal/lsp/source/signature_help.go  |   118 +
 .../golang.org/x/tools/internal/lsp/source/uri.go  |    89 +
 .../golang.org/x/tools/internal/lsp/source/view.go |    50 +
 .../x/tools/internal/lsp/testdata/bad/bad0.go      |    21 +
 .../x/tools/internal/lsp/testdata/bad/bad1.go      |    27 +
 .../internal/lsp/testdata/builtins/builtins.go     |     6 +
 .../x/tools/internal/lsp/testdata/errors/errors.go |     5 +
 .../x/tools/internal/lsp/testdata/foo/foo.go       |    23 +
 .../internal/lsp/testdata/format/bad_format.go     |    21 +
 .../internal/lsp/testdata/format/good_format.go    |     9 +
 .../x/tools/internal/lsp/testdata/godef/a/a.go     |    11 +
 .../tools/internal/lsp/testdata/godef/a/random.go  |    23 +
 .../x/tools/internal/lsp/testdata/godef/b/b.go     |    23 +
 .../x/tools/internal/lsp/testdata/godef/b/c.go     |     8 +
 .../x/tools/internal/lsp/testdata/good/good0.go    |     6 +
 .../x/tools/internal/lsp/testdata/good/good1.go    |    19 +
 .../x/tools/internal/lsp/testdata/types/types.go   |    16 +
 .../x/tools/internal/memcache/memcache.go          |   159 +
 .../golang.org/x/tools/internal/semver/semver.go   |   388 +
 vendor/golang.org/x/tools/internal/tool/tool.go    |   196 +
 vendor/golang.org/x/tools/playground/appengine.go  |    34 +
 vendor/golang.org/x/tools/playground/common.go     |    67 +
 vendor/golang.org/x/tools/playground/local.go      |    32 +
 .../golang.org/x/tools/playground/socket/socket.go |   524 +
 vendor/golang.org/x/tools/present/args.go          |   229 +
 vendor/golang.org/x/tools/present/caption.go       |    22 +
 vendor/golang.org/x/tools/present/code.go          |   267 +
 vendor/golang.org/x/tools/present/doc.go           |   261 +
 vendor/golang.org/x/tools/present/html.go          |    31 +
 vendor/golang.org/x/tools/present/iframe.go        |    45 +
 vendor/golang.org/x/tools/present/image.go         |    50 +
 vendor/golang.org/x/tools/present/link.go          |   100 +
 vendor/golang.org/x/tools/present/parse.go         |   568 +
 vendor/golang.org/x/tools/present/style.go         |   167 +
 vendor/golang.org/x/tools/present/video.go         |    51 +
 vendor/golang.org/x/tools/refactor/eg/eg.go        |   373 +
 vendor/golang.org/x/tools/refactor/eg/match.go     |   249 +
 vendor/golang.org/x/tools/refactor/eg/rewrite.go   |   401 +
 .../golang.org/x/tools/refactor/eg/testdata/A1.go  |    51 +
 .../golang.org/x/tools/refactor/eg/testdata/A2.go  |    12 +
 .../golang.org/x/tools/refactor/eg/testdata/B1.go  |    17 +
 .../golang.org/x/tools/refactor/eg/testdata/C1.go  |    22 +
 .../golang.org/x/tools/refactor/eg/testdata/D1.go  |    12 +
 .../golang.org/x/tools/refactor/eg/testdata/E1.go  |     9 +
 .../golang.org/x/tools/refactor/eg/testdata/F1.go  |    48 +
 .../golang.org/x/tools/refactor/eg/testdata/G1.go  |    12 +
 .../golang.org/x/tools/refactor/eg/testdata/H1.go  |    12 +
 .../golang.org/x/tools/refactor/eg/testdata/I1.go  |     9 +
 .../golang.org/x/tools/refactor/eg/testdata/J1.go  |    10 +
 .../x/tools/refactor/importgraph/graph.go          |   167 +
 vendor/golang.org/x/tools/refactor/rename/check.go |   858 +
 vendor/golang.org/x/tools/refactor/rename/mvpkg.go |   375 +
 .../golang.org/x/tools/refactor/rename/rename.go   |   603 +
 vendor/golang.org/x/tools/refactor/rename/spec.go  |   593 +
 vendor/golang.org/x/tools/refactor/rename/util.go  |   105 +
 vendor/golang.org/x/tools/refactor/satisfy/find.go |   705 +
 vendor/google.golang.org/appengine/aetest/doc.go   |    42 +
 .../google.golang.org/appengine/aetest/instance.go |    61 +
 .../appengine/aetest/instance_classic.go           |    21 +
 .../appengine/aetest/instance_vm.go                |   287 +
 vendor/google.golang.org/appengine/aetest/user.go  |    36 +
 vendor/google.golang.org/appengine/appengine.go    |    24 +
 .../appengine/blobstore/blobstore.go               |   306 +
 .../google.golang.org/appengine/blobstore/read.go  |   160 +
 .../appengine/capability/capability.go             |    52 +
 .../google.golang.org/appengine/channel/channel.go |    87 +
 .../appengine/cloudsql/cloudsql.go                 |    62 +
 .../appengine/cloudsql/cloudsql_classic.go         |    17 +
 .../appengine/cloudsql/cloudsql_vm.go              |    16 +
 .../appengine/cmd/aebundler/aebundler.go           |   342 +
 .../appengine/cmd/aedeploy/aedeploy.go             |    72 +
 vendor/google.golang.org/appengine/cmd/aefix/ae.go |   185 +
 .../google.golang.org/appengine/cmd/aefix/fix.go   |   848 +
 .../google.golang.org/appengine/cmd/aefix/main.go  |   258 +
 .../appengine/cmd/aefix/typecheck.go               |   673 +
 .../appengine/datastore/datastore.go               |   407 +
 .../google.golang.org/appengine/datastore/doc.go   |   361 +
 .../google.golang.org/appengine/datastore/key.go   |   396 +
 .../google.golang.org/appengine/datastore/load.go  |   429 +
 .../appengine/datastore/metadata.go                |    78 +
 .../google.golang.org/appengine/datastore/prop.go  |   330 +
 .../google.golang.org/appengine/datastore/query.go |   757 +
 .../google.golang.org/appengine/datastore/save.go  |   333 +
 .../appengine/datastore/transaction.go             |    96 +
 vendor/google.golang.org/appengine/delay/delay.go  |   360 +
 .../appengine/demos/guestbook/guestbook.go         |   109 +
 .../appengine/demos/helloworld/helloworld.go       |    50 +
 vendor/google.golang.org/appengine/file/file.go    |    28 +
 vendor/google.golang.org/appengine/image/image.go  |    67 +
 .../appengine/internal/aetesting/fake.go           |    81 +
 vendor/google.golang.org/appengine/internal/api.go |    17 +-
 .../appengine/internal/api_pre17.go                |   682 -
 .../internal/blobstore/blobstore_service.pb.go     |   666 +
 .../internal/capability/capability_service.pb.go   |   203 +
 .../internal/channel/channel_service.pb.go         |   273 +
 .../appengine/internal/identity.go                 |    47 +-
 .../appengine/internal/identity_classic.go         |     4 +
 .../appengine/internal/identity_flex.go            |    11 +
 .../appengine/internal/image/images_service.pb.go  |  1375 +
 .../appengine/internal/mail/mail_service.pb.go     |   355 +
 .../google.golang.org/appengine/internal/main.go   |     1 +
 .../appengine/internal/main_common.go              |     7 +
 .../appengine/internal/main_vm.go                  |    21 +
 .../internal/memcache/memcache_service.pb.go       |  1562 +
 .../appengine/internal/search/search.pb.go         |  3459 +
 .../appengine/internal/socket/socket_service.pb.go |  2822 +
 .../appengine/internal/system/system_service.pb.go |   362 +
 .../internal/taskqueue/taskqueue_service.pb.go     |  3149 +
 .../appengine/internal/user/user_service.pb.go     |   531 +
 .../appengine/internal/xmpp/xmpp_service.pb.go     |   726 +
 vendor/google.golang.org/appengine/log/api.go      |    40 +
 vendor/google.golang.org/appengine/log/log.go      |   323 +
 vendor/google.golang.org/appengine/mail/mail.go    |   123 +
 .../appengine/memcache/memcache.go                 |   526 +
 .../google.golang.org/appengine/module/module.go   |   113 +
 .../appengine/remote_api/client.go                 |   194 +
 .../appengine/remote_api/remote_api.go             |   152 +
 .../google.golang.org/appengine/runtime/runtime.go |   148 +
 vendor/google.golang.org/appengine/search/doc.go   |   209 +
 vendor/google.golang.org/appengine/search/field.go |    82 +
 .../google.golang.org/appengine/search/search.go   |  1189 +
 .../google.golang.org/appengine/search/struct.go   |   251 +
 vendor/google.golang.org/appengine/socket/doc.go   |    10 +
 .../appengine/socket/socket_classic.go             |   290 +
 .../appengine/socket/socket_vm.go                  |    64 +
 .../appengine/taskqueue/taskqueue.go               |   541 +
 vendor/google.golang.org/appengine/user/oauth.go   |    52 +
 vendor/google.golang.org/appengine/user/user.go    |    84 +
 .../appengine/user/user_classic.go                 |    44 +
 vendor/google.golang.org/appengine/user/user_vm.go |    38 +
 vendor/google.golang.org/appengine/xmpp/xmpp.go    |   253 +
 vendor/gopkg.in/yaml.v2/encode.go                  |    28 +
 .../k8s.io/api/admission/v1beta1/generated.pb.go   |   295 +-
 vendor/k8s.io/api/admission/v1beta1/types.go       |    11 +
 .../v1beta1/types_swagger_doc_generated.go         |    14 +-
 .../api/admission/v1beta1/zz_generated.deepcopy.go |    42 +-
 .../admissionregistration/v1alpha1/generated.pb.go |    71 +-
 .../admissionregistration/v1beta1/generated.pb.go  |   158 +-
 .../api/admissionregistration/v1beta1/types.go     |    25 +
 .../v1beta1/types_swagger_doc_generated.go         |     1 +
 .../v1beta1/zz_generated.deepcopy.go               |    45 +-
 vendor/k8s.io/api/apps/v1/generated.pb.go          |   256 +-
 vendor/k8s.io/api/apps/v1/zz_generated.deepcopy.go |   174 +-
 vendor/k8s.io/api/apps/v1beta1/generated.pb.go     |   237 +-
 .../api/apps/v1beta1/zz_generated.deepcopy.go      |   132 +-
 vendor/k8s.io/api/apps/v1beta2/generated.pb.go     |   266 +-
 .../api/apps/v1beta2/zz_generated.deepcopy.go      |   172 +-
 .../k8s.io/api/authentication/v1/generated.pb.go   |   115 +-
 .../api/authentication/v1/zz_generated.deepcopy.go |    23 +-
 .../api/authentication/v1beta1/generated.pb.go     |    83 +-
 .../v1beta1/zz_generated.deepcopy.go               |     7 +-
 vendor/k8s.io/api/authorization/v1/generated.pb.go |   146 +-
 .../api/authorization/v1/zz_generated.deepcopy.go  |    39 +-
 .../api/authorization/v1beta1/generated.pb.go      |   147 +-
 .../authorization/v1beta1/zz_generated.deepcopy.go |    39 +-
 vendor/k8s.io/api/autoscaling/v1/generated.pb.go   |   514 +-
 vendor/k8s.io/api/autoscaling/v1/types.go          |    32 +
 .../autoscaling/v1/types_swagger_doc_generated.go  |    14 +-
 .../api/autoscaling/v1/zz_generated.deepcopy.go    |   198 +-
 .../k8s.io/api/autoscaling/v2beta1/generated.pb.go |   498 +-
 vendor/k8s.io/api/autoscaling/v2beta1/types.go     |    33 +
 .../v2beta1/types_swagger_doc_generated.go         |    14 +-
 .../autoscaling/v2beta1/zz_generated.deepcopy.go   |   180 +-
 vendor/k8s.io/api/autoscaling/v2beta2/doc.go       |    20 +
 .../k8s.io/api/autoscaling/v2beta2/generated.pb.go |  4438 ++
 vendor/k8s.io/api/autoscaling/v2beta2/register.go  |    50 +
 vendor/k8s.io/api/autoscaling/v2beta2/types.go     |   393 +
 .../v2beta2/types_swagger_doc_generated.go         |   240 +
 .../autoscaling/v2beta2/zz_generated.deepcopy.go   |   487 +
 vendor/k8s.io/api/batch/v1/generated.pb.go         |   147 +-
 vendor/k8s.io/api/batch/v1/types.go                |    12 +
 .../api/batch/v1/types_swagger_doc_generated.go    |    17 +-
 .../k8s.io/api/batch/v1/zz_generated.deepcopy.go   |    67 +-
 vendor/k8s.io/api/batch/v1beta1/generated.pb.go    |    96 +-
 .../api/batch/v1beta1/zz_generated.deepcopy.go     |    38 +-
 vendor/k8s.io/api/batch/v2alpha1/generated.pb.go   |   101 +-
 .../api/batch/v2alpha1/zz_generated.deepcopy.go    |    38 +-
 .../api/certificates/v1beta1/generated.pb.go       |   104 +-
 .../certificates/v1beta1/zz_generated.deepcopy.go  |     7 +-
 vendor/k8s.io/api/coordination/v1beta1/doc.go      |    21 +
 .../api/coordination/v1beta1/generated.pb.go       |   883 +
 vendor/k8s.io/api/coordination/v1beta1/register.go |    53 +
 vendor/k8s.io/api/coordination/v1beta1/types.go    |    74 +
 .../v1beta1/types_swagger_doc_generated.go         |    63 +
 .../coordination/v1beta1/zz_generated.deepcopy.go  |   124 +
 vendor/k8s.io/api/core/v1/generated.pb.go          |  2612 +-
 vendor/k8s.io/api/core/v1/types.go                 |    84 +-
 .../api/core/v1/types_swagger_doc_generated.go     |    37 +-
 vendor/k8s.io/api/core/v1/zz_generated.deepcopy.go |  1467 +-
 vendor/k8s.io/api/events/v1beta1/generated.pb.go   |   102 +-
 .../api/events/v1beta1/zz_generated.deepcopy.go    |    16 +-
 .../k8s.io/api/extensions/v1beta1/generated.pb.go  |   513 +-
 vendor/k8s.io/api/extensions/v1beta1/types.go      |    11 +-
 .../v1beta1/types_swagger_doc_generated.go         |     5 +-
 .../extensions/v1beta1/zz_generated.deepcopy.go    |   221 +-
 vendor/k8s.io/api/imagepolicy/v1alpha1/doc.go      |    21 +
 .../api/imagepolicy/v1alpha1/generated.pb.go       |  1235 +
 vendor/k8s.io/api/imagepolicy/v1alpha1/register.go |    51 +
 vendor/k8s.io/api/imagepolicy/v1alpha1/types.go    |    80 +
 .../v1alpha1/types_swagger_doc_generated.go        |    71 +
 .../imagepolicy/v1alpha1/zz_generated.deepcopy.go  |   120 +
 vendor/k8s.io/api/networking/v1/generated.pb.go    |   105 +-
 vendor/k8s.io/api/networking/v1/types.go           |     2 +-
 .../networking/v1/types_swagger_doc_generated.go   |     2 +-
 .../api/networking/v1/zz_generated.deepcopy.go     |    44 +-
 vendor/k8s.io/api/policy/v1beta1/generated.pb.go   |   268 +-
 vendor/k8s.io/api/policy/v1beta1/types.go          |     8 +-
 .../policy/v1beta1/types_swagger_doc_generated.go  |     1 +
 .../api/policy/v1beta1/zz_generated.deepcopy.go    |    69 +-
 vendor/k8s.io/api/rbac/v1/generated.pb.go          |   105 +-
 vendor/k8s.io/api/rbac/v1/zz_generated.deepcopy.go |    12 +-
 vendor/k8s.io/api/rbac/v1alpha1/generated.pb.go    |   105 +-
 .../api/rbac/v1alpha1/zz_generated.deepcopy.go     |     8 +-
 vendor/k8s.io/api/rbac/v1beta1/generated.pb.go     |   106 +-
 .../api/rbac/v1beta1/zz_generated.deepcopy.go      |     8 +-
 .../k8s.io/api/scheduling/v1alpha1/generated.pb.go |    55 +-
 .../k8s.io/api/scheduling/v1beta1/generated.pb.go  |    59 +-
 .../k8s.io/api/settings/v1alpha1/generated.pb.go   |    71 +-
 vendor/k8s.io/api/storage/v1/generated.pb.go       |    86 +-
 vendor/k8s.io/api/storage/v1/types.go              |     6 +-
 .../api/storage/v1/types_swagger_doc_generated.go  |     4 +-
 .../k8s.io/api/storage/v1/zz_generated.deepcopy.go |    28 +-
 vendor/k8s.io/api/storage/v1alpha1/generated.pb.go |    93 +-
 .../api/storage/v1alpha1/zz_generated.deepcopy.go  |    24 +-
 vendor/k8s.io/api/storage/v1beta1/generated.pb.go  |   126 +-
 vendor/k8s.io/api/storage/v1beta1/types.go         |     6 +-
 .../storage/v1beta1/types_swagger_doc_generated.go |     4 +-
 .../api/storage/v1beta1/zz_generated.deepcopy.go   |    48 +-
 .../apimachinery/pkg/api/apitesting/codec.go       |   116 +
 .../pkg/api/apitesting/fuzzer/fuzzer.go            |    52 +
 .../pkg/api/apitesting/fuzzer/valuefuzz.go         |    86 +
 .../pkg/api/apitesting/roundtrip/roundtrip.go      |   415 +
 .../apimachinery/pkg/api/meta/table/table.go       |    71 +
 .../pkg/api/meta/testrestmapper/test_restmapper.go |   171 +
 .../apimachinery/pkg/api/resource/generated.pb.go  |    43 +-
 .../apimachinery/pkg/api/resource/quantity.go      |    11 +-
 .../k8s.io/apimachinery/pkg/api/validation/doc.go  |    18 +
 .../apimachinery/pkg/api/validation/generic.go     |    85 +
 .../apimachinery/pkg/api/validation/objectmeta.go  |   308 +
 .../apimachinery/pkg/api/validation/path/name.go   |    68 +
 vendor/k8s.io/apimachinery/pkg/apis/config/doc.go  |    19 +
 .../k8s.io/apimachinery/pkg/apis/config/types.go   |    33 +
 .../pkg/apis/config/v1alpha1/conversion.go         |    37 +
 .../pkg/apis/config/v1alpha1/defaults.go           |    38 +
 .../apimachinery/pkg/apis/config/v1alpha1/doc.go   |    20 +
 .../pkg/apis/config/v1alpha1/register.go           |    31 +
 .../apimachinery/pkg/apis/config/v1alpha1/types.go |    33 +
 .../config/v1alpha1/zz_generated.conversion.go     |    75 +
 .../apis/config/v1alpha1/zz_generated.deepcopy.go  |    37 +
 .../pkg/apis/config/validation/validation.go       |    31 +
 .../pkg/apis/config/zz_generated.deepcopy.go       |    37 +
 .../apimachinery/pkg/apis/meta/fuzzer/fuzzer.go    |   327 +
 .../pkg/apis/meta/internalversion/conversion.go    |    23 -
 .../pkg/apis/meta/internalversion/register.go      |    16 +-
 .../internalversion/zz_generated.conversion.go     |    39 +-
 .../meta/internalversion/zz_generated.deepcopy.go  |    20 +-
 .../apimachinery/pkg/apis/meta/v1/conversion.go    |    39 +-
 .../apimachinery/pkg/apis/meta/v1/generated.pb.go  |   733 +-
 .../k8s.io/apimachinery/pkg/apis/meta/v1/meta.go   |    54 +-
 .../apimachinery/pkg/apis/meta/v1/register.go      |    24 +-
 .../k8s.io/apimachinery/pkg/apis/meta/v1/types.go  |    77 +-
 .../apis/meta/v1/types_swagger_doc_generated.go    |    24 +-
 .../pkg/apis/meta/v1/unstructured/unstructured.go  |    61 +-
 .../v1/unstructured/unstructuredscheme/scheme.go   |   129 +
 .../pkg/apis/meta/v1/validation/validation.go      |   110 +
 .../k8s.io/apimachinery/pkg/apis/meta/v1/watch.go  |    12 +-
 .../pkg/apis/meta/v1/zz_generated.deepcopy.go      |   171 +-
 .../pkg/apis/meta/v1beta1/generated.pb.go          |    51 +-
 .../pkg/apis/meta/v1beta1/zz_generated.deepcopy.go |     9 +-
 .../apimachinery/pkg/apis/testapigroup/doc.go      |    22 +
 .../pkg/apis/testapigroup/fuzzer/fuzzer.go         |    99 +
 .../pkg/apis/testapigroup/install/install.go       |    33 +
 .../apimachinery/pkg/apis/testapigroup/register.go |    51 +
 .../apimachinery/pkg/apis/testapigroup/types.go    |   138 +
 .../pkg/apis/testapigroup/v1/conversion.go         |    26 +
 .../pkg/apis/testapigroup/v1/defaults.go           |    26 +
 .../apimachinery/pkg/apis/testapigroup/v1/doc.go   |    23 +
 .../pkg/apis/testapigroup/v1/generated.pb.go       |  2008 +
 .../pkg/apis/testapigroup/v1/register.go           |    63 +
 .../apimachinery/pkg/apis/testapigroup/v1/types.go |   196 +
 .../testapigroup/v1/zz_generated.conversion.go     |   266 +
 .../apis/testapigroup/v1/zz_generated.deepcopy.go  |   164 +
 .../apis/testapigroup/v1/zz_generated.defaults.go  |    32 +
 .../pkg/apis/testapigroup/zz_generated.deepcopy.go |   164 +
 .../apimachinery/pkg/conversion/converter.go       |   132 +-
 vendor/k8s.io/apimachinery/pkg/labels/selector.go  |    16 +-
 vendor/k8s.io/apimachinery/pkg/runtime/codec.go    |    18 -
 .../k8s.io/apimachinery/pkg/runtime/conversion.go  |     6 +-
 vendor/k8s.io/apimachinery/pkg/runtime/doc.go      |    22 +-
 vendor/k8s.io/apimachinery/pkg/runtime/embedded.go |    28 +-
 vendor/k8s.io/apimachinery/pkg/runtime/error.go    |    35 +-
 .../k8s.io/apimachinery/pkg/runtime/extension.go   |     2 +-
 .../apimachinery/pkg/runtime/generated.pb.go       |    51 +-
 vendor/k8s.io/apimachinery/pkg/runtime/helper.go   |     2 +-
 .../k8s.io/apimachinery/pkg/runtime/interfaces.go  |     8 +-
 .../pkg/runtime/schema/generated.pb.go             |    35 +-
 .../pkg/runtime/schema/group_version.go            |     5 +-
 vendor/k8s.io/apimachinery/pkg/runtime/scheme.go   |   104 +-
 .../pkg/runtime/serializer/json/json.go            |    64 +-
 .../pkg/runtime/serializer/protobuf/protobuf.go    |    11 +
 .../pkg/runtime/serializer/testing/doc.go          |    19 +
 .../pkg/runtime/serializer/testing/types.go        |   114 +
 .../serializer/testing/zz_generated.deepcopy.go    |   197 +
 .../runtime/serializer/versioning/versioning.go    |    22 +-
 .../pkg/runtime/serializer/yaml/yaml.go            |    46 +
 .../k8s.io/apimachinery/pkg/runtime/testing/doc.go |    19 +
 .../apimachinery/pkg/runtime/testing/types.go      |   323 +
 .../pkg/runtime/testing/zz_generated.deepcopy.go   |   629 +
 .../pkg/runtime/zz_generated.deepcopy.go           |     8 +-
 vendor/k8s.io/apimachinery/pkg/test/util.go        |    70 +
 .../apimachinery/pkg/test/zz_generated.deepcopy.go |    93 +
 vendor/k8s.io/apimachinery/pkg/util/diff/diff.go   |     8 +
 .../apimachinery/pkg/util/duration/duration.go     |    89 +
 .../k8s.io/apimachinery/pkg/util/httpstream/doc.go |    19 +
 .../apimachinery/pkg/util/httpstream/httpstream.go |   149 +
 .../pkg/util/httpstream/spdy/connection.go         |   145 +
 .../pkg/util/httpstream/spdy/roundtripper.go       |   335 +
 .../pkg/util/httpstream/spdy/upgrade.go            |   107 +
 .../pkg/util/initialization/initialization.go      |    48 +
 .../k8s.io/apimachinery/pkg/util/intstr/intstr.go  |    11 +
 .../apimachinery/pkg/util/jsonmergepatch/patch.go  |   160 +
 .../apimachinery/pkg/util/mergepatch/errors.go     |   102 +
 .../apimachinery/pkg/util/mergepatch/util.go       |   133 +
 .../apimachinery/pkg/util/naming/from_stack.go     |    93 +
 vendor/k8s.io/apimachinery/pkg/util/net/http.go    |    40 +-
 .../k8s.io/apimachinery/pkg/util/net/interface.go  |    26 +-
 vendor/k8s.io/apimachinery/pkg/util/proxy/dial.go  |   117 +
 vendor/k8s.io/apimachinery/pkg/util/proxy/doc.go   |    18 +
 .../apimachinery/pkg/util/proxy/transport.go       |   259 +
 .../apimachinery/pkg/util/proxy/upgradeaware.go    |   461 +
 vendor/k8s.io/apimachinery/pkg/util/rand/rand.go   |   120 +
 .../pkg/util/remotecommand/constants.go            |    53 +
 .../apimachinery/pkg/util/sets/types/types.go      |    32 +
 .../apimachinery/pkg/util/strategicpatch/errors.go |    49 +
 .../apimachinery/pkg/util/strategicpatch/meta.go   |   194 +
 .../apimachinery/pkg/util/strategicpatch/patch.go  |  2174 +
 .../pkg/util/strategicpatch/testing/openapi.go     |    84 +
 .../apimachinery/pkg/util/strategicpatch/types.go  |   193 +
 vendor/k8s.io/apimachinery/pkg/util/uuid/uuid.go   |    43 +
 .../pkg/util/validation/field/errors.go            |     2 +-
 .../apimachinery/pkg/util/validation/validation.go |    16 +
 vendor/k8s.io/apimachinery/pkg/util/wait/wait.go   |     4 +-
 .../k8s.io/apimachinery/pkg/util/waitgroup/doc.go  |    19 +
 .../apimachinery/pkg/util/waitgroup/waitgroup.go   |    57 +
 vendor/k8s.io/apimachinery/pkg/watch/until.go      |    87 -
 vendor/k8s.io/apimachinery/pkg/watch/watch.go      |    47 +
 .../pkg/watch/zz_generated.deepcopy.go             |     4 +-
 .../third_party/forked/golang/json/fields.go       |   513 +
 .../third_party/forked/golang/netutil/addr.go      |    27 +
 .../client-go/deprecated-dynamic/bad_debt.go       |    79 +
 .../k8s.io/client-go/deprecated-dynamic/client.go  |   131 +
 .../client-go/deprecated-dynamic/client_pool.go    |   122 +
 .../k8s.io/client-go/discovery/cached/memcache.go  |    15 +-
 .../k8s.io/client-go/discovery/cached_discovery.go |     4 +-
 vendor/k8s.io/client-go/discovery/doc.go           |    19 +
 .../k8s.io/client-go/discovery/fake/discovery.go   |   131 +
 vendor/k8s.io/client-go/discovery/round_tripper.go |    13 +-
 vendor/k8s.io/client-go/discovery/unstructured.go  |    81 -
 vendor/k8s.io/client-go/dynamic/fake/simple.go     |   368 +
 vendor/k8s.io/client-go/dynamic/interface.go       |     8 +-
 vendor/k8s.io/client-go/dynamic/simple.go          |    59 +-
 .../create-update-delete-deployment/main.go        |   171 +
 .../k8s.io/client-go/examples/fake-client/doc.go   |    20 +
 .../in-cluster-client-configuration/main.go        |    64 +
 .../out-of-cluster-client-configuration/main.go    |    88 +
 vendor/k8s.io/client-go/examples/workqueue/main.go |   217 +
 .../informers/admissionregistration/interface.go   |    54 +
 .../v1alpha1/initializerconfiguration.go           |    88 +
 .../admissionregistration/v1alpha1/interface.go    |    45 +
 .../admissionregistration/v1beta1/interface.go     |    52 +
 .../v1beta1/mutatingwebhookconfiguration.go        |    88 +
 .../v1beta1/validatingwebhookconfiguration.go      |    88 +
 .../k8s.io/client-go/informers/apps/interface.go   |    62 +
 .../informers/apps/v1/controllerrevision.go        |    89 +
 .../client-go/informers/apps/v1/daemonset.go       |    89 +
 .../client-go/informers/apps/v1/deployment.go      |    89 +
 .../client-go/informers/apps/v1/interface.go       |    73 +
 .../client-go/informers/apps/v1/replicaset.go      |    89 +
 .../client-go/informers/apps/v1/statefulset.go     |    89 +
 .../informers/apps/v1beta1/controllerrevision.go   |    89 +
 .../client-go/informers/apps/v1beta1/deployment.go |    89 +
 .../client-go/informers/apps/v1beta1/interface.go  |    59 +
 .../informers/apps/v1beta1/statefulset.go          |    89 +
 .../informers/apps/v1beta2/controllerrevision.go   |    89 +
 .../client-go/informers/apps/v1beta2/daemonset.go  |    89 +
 .../client-go/informers/apps/v1beta2/deployment.go |    89 +
 .../client-go/informers/apps/v1beta2/interface.go  |    73 +
 .../client-go/informers/apps/v1beta2/replicaset.go |    89 +
 .../informers/apps/v1beta2/statefulset.go          |    89 +
 .../client-go/informers/autoscaling/interface.go   |    62 +
 .../autoscaling/v1/horizontalpodautoscaler.go      |    89 +
 .../informers/autoscaling/v1/interface.go          |    45 +
 .../autoscaling/v2beta1/horizontalpodautoscaler.go |    89 +
 .../informers/autoscaling/v2beta1/interface.go     |    45 +
 .../autoscaling/v2beta2/horizontalpodautoscaler.go |    89 +
 .../informers/autoscaling/v2beta2/interface.go     |    45 +
 .../k8s.io/client-go/informers/batch/interface.go  |    62 +
 .../client-go/informers/batch/v1/interface.go      |    45 +
 vendor/k8s.io/client-go/informers/batch/v1/job.go  |    89 +
 .../client-go/informers/batch/v1beta1/cronjob.go   |    89 +
 .../client-go/informers/batch/v1beta1/interface.go |    45 +
 .../client-go/informers/batch/v2alpha1/cronjob.go  |    89 +
 .../informers/batch/v2alpha1/interface.go          |    45 +
 .../client-go/informers/certificates/interface.go  |    46 +
 .../v1beta1/certificatesigningrequest.go           |    88 +
 .../informers/certificates/v1beta1/interface.go    |    45 +
 .../client-go/informers/coordination/interface.go  |    46 +
 .../informers/coordination/v1beta1/interface.go    |    45 +
 .../informers/coordination/v1beta1/lease.go        |    89 +
 .../k8s.io/client-go/informers/core/interface.go   |    46 +
 .../client-go/informers/core/v1/componentstatus.go |    88 +
 .../client-go/informers/core/v1/configmap.go       |    89 +
 .../client-go/informers/core/v1/endpoints.go       |    89 +
 vendor/k8s.io/client-go/informers/core/v1/event.go |    89 +
 .../client-go/informers/core/v1/interface.go       |   150 +
 .../client-go/informers/core/v1/limitrange.go      |    89 +
 .../client-go/informers/core/v1/namespace.go       |    88 +
 vendor/k8s.io/client-go/informers/core/v1/node.go  |    88 +
 .../informers/core/v1/persistentvolume.go          |    88 +
 .../informers/core/v1/persistentvolumeclaim.go     |    89 +
 vendor/k8s.io/client-go/informers/core/v1/pod.go   |    89 +
 .../client-go/informers/core/v1/podtemplate.go     |    89 +
 .../informers/core/v1/replicationcontroller.go     |    89 +
 .../client-go/informers/core/v1/resourcequota.go   |    89 +
 .../k8s.io/client-go/informers/core/v1/secret.go   |    89 +
 .../k8s.io/client-go/informers/core/v1/service.go  |    89 +
 .../client-go/informers/core/v1/serviceaccount.go  |    89 +
 .../k8s.io/client-go/informers/events/interface.go |    46 +
 .../client-go/informers/events/v1beta1/event.go    |    89 +
 .../informers/events/v1beta1/interface.go          |    45 +
 .../client-go/informers/extensions/interface.go    |    46 +
 .../informers/extensions/v1beta1/daemonset.go      |    89 +
 .../informers/extensions/v1beta1/deployment.go     |    89 +
 .../informers/extensions/v1beta1/ingress.go        |    89 +
 .../informers/extensions/v1beta1/interface.go      |    73 +
 .../extensions/v1beta1/podsecuritypolicy.go        |    88 +
 .../informers/extensions/v1beta1/replicaset.go     |    89 +
 vendor/k8s.io/client-go/informers/factory.go       |   264 +
 vendor/k8s.io/client-go/informers/generic.go       |   274 +
 .../internalinterfaces/factory_interfaces.go       |    38 +
 .../client-go/informers/networking/interface.go    |    46 +
 .../client-go/informers/networking/v1/interface.go |    45 +
 .../informers/networking/v1/networkpolicy.go       |    89 +
 .../k8s.io/client-go/informers/policy/interface.go |    46 +
 .../informers/policy/v1beta1/interface.go          |    52 +
 .../policy/v1beta1/poddisruptionbudget.go          |    89 +
 .../informers/policy/v1beta1/podsecuritypolicy.go  |    88 +
 .../k8s.io/client-go/informers/rbac/interface.go   |    62 +
 .../client-go/informers/rbac/v1/clusterrole.go     |    88 +
 .../informers/rbac/v1/clusterrolebinding.go        |    88 +
 .../client-go/informers/rbac/v1/interface.go       |    66 +
 vendor/k8s.io/client-go/informers/rbac/v1/role.go  |    89 +
 .../client-go/informers/rbac/v1/rolebinding.go     |    89 +
 .../informers/rbac/v1alpha1/clusterrole.go         |    88 +
 .../informers/rbac/v1alpha1/clusterrolebinding.go  |    88 +
 .../client-go/informers/rbac/v1alpha1/interface.go |    66 +
 .../client-go/informers/rbac/v1alpha1/role.go      |    89 +
 .../informers/rbac/v1alpha1/rolebinding.go         |    89 +
 .../informers/rbac/v1beta1/clusterrole.go          |    88 +
 .../informers/rbac/v1beta1/clusterrolebinding.go   |    88 +
 .../client-go/informers/rbac/v1beta1/interface.go  |    66 +
 .../client-go/informers/rbac/v1beta1/role.go       |    89 +
 .../informers/rbac/v1beta1/rolebinding.go          |    89 +
 .../client-go/informers/scheduling/interface.go    |    54 +
 .../informers/scheduling/v1alpha1/interface.go     |    45 +
 .../informers/scheduling/v1alpha1/priorityclass.go |    88 +
 .../informers/scheduling/v1beta1/interface.go      |    45 +
 .../informers/scheduling/v1beta1/priorityclass.go  |    88 +
 .../client-go/informers/settings/interface.go      |    46 +
 .../informers/settings/v1alpha1/interface.go       |    45 +
 .../informers/settings/v1alpha1/podpreset.go       |    89 +
 .../client-go/informers/storage/interface.go       |    62 +
 .../client-go/informers/storage/v1/interface.go    |    45 +
 .../client-go/informers/storage/v1/storageclass.go |    88 +
 .../informers/storage/v1alpha1/interface.go        |    45 +
 .../informers/storage/v1alpha1/volumeattachment.go |    88 +
 .../informers/storage/v1beta1/interface.go         |    52 +
 .../informers/storage/v1beta1/storageclass.go      |    88 +
 .../informers/storage/v1beta1/volumeattachment.go  |    88 +
 vendor/k8s.io/client-go/kubernetes/clientset.go    |    36 +
 .../kubernetes/fake/clientset_generated.go         |   372 +
 vendor/k8s.io/client-go/kubernetes/fake/doc.go     |    20 +
 .../k8s.io/client-go/kubernetes/fake/register.go   |   116 +
 .../k8s.io/client-go/kubernetes/scheme/register.go |    76 +-
 .../admissionregistration/v1alpha1/fake/doc.go     |    20 +
 .../fake/fake_admissionregistration_client.go      |    40 +
 .../v1alpha1/fake/fake_initializerconfiguration.go |   120 +
 .../admissionregistration/v1beta1/fake/doc.go      |    20 +
 .../fake/fake_admissionregistration_client.go      |    44 +
 .../fake/fake_mutatingwebhookconfiguration.go      |   120 +
 .../fake/fake_validatingwebhookconfiguration.go    |   120 +
 .../kubernetes/typed/apps/v1/controllerrevision.go |    22 +-
 .../kubernetes/typed/apps/v1/daemonset.go          |    22 +-
 .../kubernetes/typed/apps/v1/deployment.go         |    22 +-
 .../client-go/kubernetes/typed/apps/v1/fake/doc.go |    20 +
 .../typed/apps/v1/fake/fake_apps_client.go         |    56 +
 .../typed/apps/v1/fake/fake_controllerrevision.go  |   128 +
 .../typed/apps/v1/fake/fake_daemonset.go           |   140 +
 .../typed/apps/v1/fake/fake_deployment.go          |   140 +
 .../typed/apps/v1/fake/fake_replicaset.go          |   140 +
 .../typed/apps/v1/fake/fake_statefulset.go         |   140 +
 .../kubernetes/typed/apps/v1/replicaset.go         |    22 +-
 .../kubernetes/typed/apps/v1/statefulset.go        |    22 +-
 .../kubernetes/typed/apps/v1beta1/fake/doc.go      |    20 +
 .../typed/apps/v1beta1/fake/fake_apps_client.go    |    52 +
 .../apps/v1beta1/fake/fake_controllerrevision.go   |   128 +
 .../typed/apps/v1beta1/fake/fake_deployment.go     |   140 +
 .../typed/apps/v1beta1/fake/fake_scale.go          |    25 +
 .../typed/apps/v1beta1/fake/fake_statefulset.go    |   140 +
 .../kubernetes/typed/apps/v1beta2/fake/doc.go      |    20 +
 .../typed/apps/v1beta2/fake/fake_apps_client.go    |    60 +
 .../apps/v1beta2/fake/fake_controllerrevision.go   |   128 +
 .../typed/apps/v1beta2/fake/fake_daemonset.go      |   140 +
 .../typed/apps/v1beta2/fake/fake_deployment.go     |   140 +
 .../typed/apps/v1beta2/fake/fake_replicaset.go     |   140 +
 .../typed/apps/v1beta2/fake/fake_scale.go          |    25 +
 .../typed/apps/v1beta2/fake/fake_statefulset.go    |   162 +
 .../kubernetes/typed/authentication/v1/fake/doc.go |    20 +
 .../v1/fake/fake_authentication_client.go          |    40 +
 .../authentication/v1/fake/fake_tokenreview.go     |    24 +
 .../v1/fake/fake_tokenreview_expansion.go          |    27 +
 .../typed/authentication/v1beta1/fake/doc.go       |    20 +
 .../v1beta1/fake/fake_authentication_client.go     |    40 +
 .../v1beta1/fake/fake_tokenreview.go               |    24 +
 .../v1beta1/fake/fake_tokenreview_expansion.go     |    27 +
 .../kubernetes/typed/authorization/v1/fake/doc.go  |    20 +
 .../v1/fake/fake_authorization_client.go           |    52 +
 .../v1/fake/fake_localsubjectaccessreview.go       |    25 +
 .../fake_localsubjectaccessreview_expansion.go     |    27 +
 .../v1/fake/fake_selfsubjectaccessreview.go        |    24 +
 .../fake/fake_selfsubjectaccessreview_expansion.go |    27 +
 .../v1/fake/fake_selfsubjectrulesreview.go         |    24 +
 .../fake/fake_selfsubjectrulesreview_expansion.go  |    27 +
 .../v1/fake/fake_subjectaccessreview.go            |    24 +
 .../v1/fake/fake_subjectaccessreview_expansion.go  |    30 +
 .../typed/authorization/v1beta1/fake/doc.go        |    20 +
 .../v1beta1/fake/fake_authorization_client.go      |    52 +
 .../v1beta1/fake/fake_generated_expansion.go       |    17 +
 .../v1beta1/fake/fake_localsubjectaccessreview.go  |    25 +
 .../fake_localsubjectaccessreview_expansion.go     |    27 +
 .../v1beta1/fake/fake_selfsubjectaccessreview.go   |    24 +
 .../fake/fake_selfsubjectaccessreview_expansion.go |    27 +
 .../v1beta1/fake/fake_selfsubjectrulesreview.go    |    24 +
 .../fake/fake_selfsubjectrulesreview_expansion.go  |    27 +
 .../v1beta1/fake/fake_subjectaccessreview.go       |    24 +
 .../fake/fake_subjectaccessreview_expansion.go     |    27 +
 .../kubernetes/typed/autoscaling/v1/fake/doc.go    |    20 +
 .../autoscaling/v1/fake/fake_autoscaling_client.go |    40 +
 .../v1/fake/fake_horizontalpodautoscaler.go        |   140 +
 .../autoscaling/v1/horizontalpodautoscaler.go      |    22 +-
 .../typed/autoscaling/v2beta1/fake/doc.go          |    20 +
 .../v2beta1/fake/fake_autoscaling_client.go        |    40 +
 .../v2beta1/fake/fake_horizontalpodautoscaler.go   |   140 +
 .../autoscaling/v2beta2/autoscaling_client.go      |    90 +
 .../kubernetes/typed/autoscaling/v2beta2/doc.go    |    20 +
 .../typed/autoscaling/v2beta2/fake/doc.go          |    20 +
 .../v2beta2/fake/fake_autoscaling_client.go        |    40 +
 .../v2beta2/fake/fake_horizontalpodautoscaler.go   |   140 +
 .../autoscaling/v2beta2/generated_expansion.go     |    21 +
 .../autoscaling/v2beta2/horizontalpodautoscaler.go |   174 +
 .../kubernetes/typed/batch/v1/fake/doc.go          |    20 +
 .../typed/batch/v1/fake/fake_batch_client.go       |    40 +
 .../kubernetes/typed/batch/v1/fake/fake_job.go     |   140 +
 .../client-go/kubernetes/typed/batch/v1/job.go     |    22 +-
 .../kubernetes/typed/batch/v1beta1/fake/doc.go     |    20 +
 .../typed/batch/v1beta1/fake/fake_batch_client.go  |    40 +
 .../typed/batch/v1beta1/fake/fake_cronjob.go       |   140 +
 .../kubernetes/typed/batch/v2alpha1/fake/doc.go    |    20 +
 .../typed/batch/v2alpha1/fake/fake_batch_client.go |    40 +
 .../typed/batch/v2alpha1/fake/fake_cronjob.go      |   140 +
 .../typed/certificates/v1beta1/fake/doc.go         |    20 +
 .../v1beta1/fake/fake_certificates_client.go       |    40 +
 .../v1beta1/fake/fake_certificatesigningrequest.go |   131 +
 .../fake_certificatesigningrequest_expansion.go    |    31 +
 .../coordination/v1beta1/coordination_client.go    |    90 +
 .../kubernetes/typed/coordination/v1beta1/doc.go   |    20 +
 .../typed/coordination/v1beta1/fake/doc.go         |    20 +
 .../v1beta1/fake/fake_coordination_client.go       |    40 +
 .../typed/coordination/v1beta1/fake/fake_lease.go  |   128 +
 .../coordination/v1beta1/generated_expansion.go    |    21 +
 .../kubernetes/typed/coordination/v1beta1/lease.go |   157 +
 .../kubernetes/typed/core/v1/componentstatus.go    |    22 +-
 .../kubernetes/typed/core/v1/configmap.go          |    22 +-
 .../kubernetes/typed/core/v1/endpoints.go          |    22 +-
 .../client-go/kubernetes/typed/core/v1/event.go    |    22 +-
 .../client-go/kubernetes/typed/core/v1/fake/doc.go |    20 +
 .../typed/core/v1/fake/fake_componentstatus.go     |   120 +
 .../typed/core/v1/fake/fake_configmap.go           |   128 +
 .../typed/core/v1/fake/fake_core_client.go         |   100 +
 .../typed/core/v1/fake/fake_endpoints.go           |   128 +
 .../kubernetes/typed/core/v1/fake/fake_event.go    |   128 +
 .../typed/core/v1/fake/fake_event_expansion.go     |    89 +
 .../typed/core/v1/fake/fake_limitrange.go          |   128 +
 .../typed/core/v1/fake/fake_namespace.go           |   123 +
 .../typed/core/v1/fake/fake_namespace_expansion.go |    37 +
 .../kubernetes/typed/core/v1/fake/fake_node.go     |   131 +
 .../typed/core/v1/fake/fake_node_expansion.go      |    32 +
 .../typed/core/v1/fake/fake_persistentvolume.go    |   131 +
 .../core/v1/fake/fake_persistentvolumeclaim.go     |   140 +
 .../kubernetes/typed/core/v1/fake/fake_pod.go      |   140 +
 .../typed/core/v1/fake/fake_pod_expansion.go       |    58 +
 .../typed/core/v1/fake/fake_podtemplate.go         |   128 +
 .../core/v1/fake/fake_replicationcontroller.go     |   163 +
 .../typed/core/v1/fake/fake_resourcequota.go       |   140 +
 .../kubernetes/typed/core/v1/fake/fake_secret.go   |   128 +
 .../kubernetes/typed/core/v1/fake/fake_service.go  |   132 +
 .../typed/core/v1/fake/fake_service_expansion.go   |    26 +
 .../typed/core/v1/fake/fake_serviceaccount.go      |   128 +
 .../core/v1/fake/fake_serviceaccount_expansion.go  |    31 +
 .../kubernetes/typed/core/v1/limitrange.go         |    22 +-
 .../kubernetes/typed/core/v1/namespace.go          |    18 +-
 .../client-go/kubernetes/typed/core/v1/node.go     |    22 +-
 .../kubernetes/typed/core/v1/persistentvolume.go   |    22 +-
 .../typed/core/v1/persistentvolumeclaim.go         |    22 +-
 .../client-go/kubernetes/typed/core/v1/pod.go      |    22 +-
 .../kubernetes/typed/core/v1/podtemplate.go        |    22 +-
 .../typed/core/v1/replicationcontroller.go         |    26 +-
 .../kubernetes/typed/core/v1/resourcequota.go      |    22 +-
 .../client-go/kubernetes/typed/core/v1/secret.go   |    22 +-
 .../client-go/kubernetes/typed/core/v1/service.go  |    18 +-
 .../kubernetes/typed/core/v1/serviceaccount.go     |    22 +-
 .../kubernetes/typed/events/v1beta1/fake/doc.go    |    20 +
 .../typed/events/v1beta1/fake/fake_event.go        |   128 +
 .../events/v1beta1/fake/fake_events_client.go      |    40 +
 .../typed/extensions/v1beta1/fake/doc.go           |    20 +
 .../extensions/v1beta1/fake/fake_daemonset.go      |   140 +
 .../extensions/v1beta1/fake/fake_deployment.go     |   162 +
 .../v1beta1/fake/fake_deployment_expansion.go      |    33 +
 .../v1beta1/fake/fake_extensions_client.go         |    60 +
 .../typed/extensions/v1beta1/fake/fake_ingress.go  |   140 +
 .../v1beta1/fake/fake_podsecuritypolicy.go         |   120 +
 .../extensions/v1beta1/fake/fake_replicaset.go     |   162 +
 .../typed/extensions/v1beta1/fake/fake_scale.go    |    25 +
 .../v1beta1/fake/fake_scale_expansion.go           |    47 +
 .../kubernetes/typed/networking/v1/fake/doc.go     |    20 +
 .../networking/v1/fake/fake_networking_client.go   |    40 +
 .../typed/networking/v1/fake/fake_networkpolicy.go |   128 +
 .../typed/networking/v1/networkpolicy.go           |    22 +-
 .../kubernetes/typed/policy/v1beta1/fake/doc.go    |    20 +
 .../typed/policy/v1beta1/fake/fake_eviction.go     |    25 +
 .../policy/v1beta1/fake/fake_eviction_expansion.go |    33 +
 .../v1beta1/fake/fake_poddisruptionbudget.go       |   140 +
 .../policy/v1beta1/fake/fake_podsecuritypolicy.go  |   120 +
 .../policy/v1beta1/fake/fake_policy_client.go      |    48 +
 .../kubernetes/typed/rbac/v1/clusterrole.go        |    22 +-
 .../kubernetes/typed/rbac/v1/clusterrolebinding.go |    22 +-
 .../client-go/kubernetes/typed/rbac/v1/fake/doc.go |    20 +
 .../typed/rbac/v1/fake/fake_clusterrole.go         |   120 +
 .../typed/rbac/v1/fake/fake_clusterrolebinding.go  |   120 +
 .../typed/rbac/v1/fake/fake_rbac_client.go         |    52 +
 .../kubernetes/typed/rbac/v1/fake/fake_role.go     |   128 +
 .../typed/rbac/v1/fake/fake_rolebinding.go         |   128 +
 .../client-go/kubernetes/typed/rbac/v1/role.go     |    22 +-
 .../kubernetes/typed/rbac/v1/rolebinding.go        |    22 +-
 .../kubernetes/typed/rbac/v1alpha1/fake/doc.go     |    20 +
 .../typed/rbac/v1alpha1/fake/fake_clusterrole.go   |   120 +
 .../rbac/v1alpha1/fake/fake_clusterrolebinding.go  |   120 +
 .../typed/rbac/v1alpha1/fake/fake_rbac_client.go   |    52 +
 .../typed/rbac/v1alpha1/fake/fake_role.go          |   128 +
 .../typed/rbac/v1alpha1/fake/fake_rolebinding.go   |   128 +
 .../kubernetes/typed/rbac/v1beta1/fake/doc.go      |    20 +
 .../typed/rbac/v1beta1/fake/fake_clusterrole.go    |   120 +
 .../rbac/v1beta1/fake/fake_clusterrolebinding.go   |   120 +
 .../typed/rbac/v1beta1/fake/fake_rbac_client.go    |    52 +
 .../typed/rbac/v1beta1/fake/fake_role.go           |   128 +
 .../typed/rbac/v1beta1/fake/fake_rolebinding.go    |   128 +
 .../typed/scheduling/v1alpha1/fake/doc.go          |    20 +
 .../scheduling/v1alpha1/fake/fake_priorityclass.go |   120 +
 .../v1alpha1/fake/fake_scheduling_client.go        |    40 +
 .../typed/scheduling/v1beta1/fake/doc.go           |    20 +
 .../scheduling/v1beta1/fake/fake_priorityclass.go  |   120 +
 .../v1beta1/fake/fake_scheduling_client.go         |    40 +
 .../kubernetes/typed/settings/v1alpha1/fake/doc.go |    20 +
 .../typed/settings/v1alpha1/fake/fake_podpreset.go |   128 +
 .../settings/v1alpha1/fake/fake_settings_client.go |    40 +
 .../kubernetes/typed/storage/v1/fake/doc.go        |    20 +
 .../typed/storage/v1/fake/fake_storage_client.go   |    40 +
 .../typed/storage/v1/fake/fake_storageclass.go     |   120 +
 .../kubernetes/typed/storage/v1/storageclass.go    |    22 +-
 .../kubernetes/typed/storage/v1alpha1/fake/doc.go  |    20 +
 .../storage/v1alpha1/fake/fake_storage_client.go   |    40 +
 .../storage/v1alpha1/fake/fake_volumeattachment.go |   131 +
 .../kubernetes/typed/storage/v1beta1/fake/doc.go   |    20 +
 .../storage/v1beta1/fake/fake_storage_client.go    |    44 +
 .../storage/v1beta1/fake/fake_storageclass.go      |   120 +
 .../storage/v1beta1/fake/fake_volumeattachment.go  |   131 +
 .../v1alpha1/expansion_generated.go                |    23 +
 .../v1alpha1/initializerconfiguration.go           |    65 +
 .../v1beta1/expansion_generated.go                 |    27 +
 .../v1beta1/mutatingwebhookconfiguration.go        |    65 +
 .../v1beta1/validatingwebhookconfiguration.go      |    65 +
 .../listers/apps/v1/controllerrevision.go          |    94 +
 .../k8s.io/client-go/listers/apps/v1/daemonset.go  |    94 +
 .../listers/apps/v1/daemonset_expansion.go         |   113 +
 .../k8s.io/client-go/listers/apps/v1/deployment.go |    94 +
 .../listers/apps/v1/deployment_expansion.go        |    70 +
 .../listers/apps/v1/expansion_generated.go         |    27 +
 .../k8s.io/client-go/listers/apps/v1/replicaset.go |    94 +
 .../listers/apps/v1/replicaset_expansion.go        |    73 +
 .../client-go/listers/apps/v1/statefulset.go       |    94 +
 .../listers/apps/v1/statefulset_expansion.go       |    77 +
 .../listers/apps/v1beta1/controllerrevision.go     |    94 +
 .../client-go/listers/apps/v1beta1/deployment.go   |    94 +
 .../listers/apps/v1beta1/expansion_generated.go    |    43 +
 .../k8s.io/client-go/listers/apps/v1beta1/scale.go |    94 +
 .../client-go/listers/apps/v1beta1/statefulset.go  |    94 +
 .../listers/apps/v1beta1/statefulset_expansion.go  |    77 +
 .../listers/apps/v1beta2/controllerrevision.go     |    94 +
 .../client-go/listers/apps/v1beta2/daemonset.go    |    94 +
 .../listers/apps/v1beta2/daemonset_expansion.go    |   113 +
 .../client-go/listers/apps/v1beta2/deployment.go   |    94 +
 .../listers/apps/v1beta2/deployment_expansion.go   |    70 +
 .../listers/apps/v1beta2/expansion_generated.go    |    35 +
 .../client-go/listers/apps/v1beta2/replicaset.go   |    94 +
 .../listers/apps/v1beta2/replicaset_expansion.go   |    73 +
 .../k8s.io/client-go/listers/apps/v1beta2/scale.go |    94 +
 .../client-go/listers/apps/v1beta2/statefulset.go  |    94 +
 .../listers/apps/v1beta2/statefulset_expansion.go  |    77 +
 .../authentication/v1/expansion_generated.go       |    23 +
 .../listers/authentication/v1/tokenreview.go       |    65 +
 .../authentication/v1beta1/expansion_generated.go  |    23 +
 .../listers/authentication/v1beta1/tokenreview.go  |    65 +
 .../authorization/v1/expansion_generated.go        |    39 +
 .../authorization/v1/localsubjectaccessreview.go   |    94 +
 .../authorization/v1/selfsubjectaccessreview.go    |    65 +
 .../authorization/v1/selfsubjectrulesreview.go     |    65 +
 .../authorization/v1/subjectaccessreview.go        |    65 +
 .../authorization/v1beta1/expansion_generated.go   |    39 +
 .../v1beta1/localsubjectaccessreview.go            |    94 +
 .../v1beta1/selfsubjectaccessreview.go             |    65 +
 .../v1beta1/selfsubjectrulesreview.go              |    65 +
 .../authorization/v1beta1/subjectaccessreview.go   |    65 +
 .../listers/autoscaling/v1/expansion_generated.go  |    27 +
 .../autoscaling/v1/horizontalpodautoscaler.go      |    94 +
 .../autoscaling/v2beta1/expansion_generated.go     |    27 +
 .../autoscaling/v2beta1/horizontalpodautoscaler.go |    94 +
 .../autoscaling/v2beta2/expansion_generated.go     |    27 +
 .../autoscaling/v2beta2/horizontalpodautoscaler.go |    94 +
 .../listers/batch/v1/expansion_generated.go        |    19 +
 vendor/k8s.io/client-go/listers/batch/v1/job.go    |    94 +
 .../client-go/listers/batch/v1/job_expansion.go    |    68 +
 .../client-go/listers/batch/v1beta1/cronjob.go     |    94 +
 .../listers/batch/v1beta1/expansion_generated.go   |    27 +
 .../client-go/listers/batch/v2alpha1/cronjob.go    |    94 +
 .../listers/batch/v2alpha1/expansion_generated.go  |    27 +
 .../v1beta1/certificatesigningrequest.go           |    65 +
 .../certificates/v1beta1/expansion_generated.go    |    23 +
 .../coordination/v1beta1/expansion_generated.go    |    27 +
 .../listers/coordination/v1beta1/lease.go          |    94 +
 .../client-go/listers/core/v1/componentstatus.go   |    65 +
 .../k8s.io/client-go/listers/core/v1/configmap.go  |    94 +
 .../k8s.io/client-go/listers/core/v1/endpoints.go  |    94 +
 vendor/k8s.io/client-go/listers/core/v1/event.go   |    94 +
 .../listers/core/v1/expansion_generated.go         |   111 +
 .../k8s.io/client-go/listers/core/v1/limitrange.go |    94 +
 .../k8s.io/client-go/listers/core/v1/namespace.go  |    65 +
 vendor/k8s.io/client-go/listers/core/v1/node.go    |    65 +
 .../client-go/listers/core/v1/node_expansion.go    |    48 +
 .../client-go/listers/core/v1/persistentvolume.go  |    65 +
 .../listers/core/v1/persistentvolumeclaim.go       |    94 +
 vendor/k8s.io/client-go/listers/core/v1/pod.go     |    94 +
 .../client-go/listers/core/v1/podtemplate.go       |    94 +
 .../listers/core/v1/replicationcontroller.go       |    94 +
 .../core/v1/replicationcontroller_expansion.go     |    66 +
 .../client-go/listers/core/v1/resourcequota.go     |    94 +
 vendor/k8s.io/client-go/listers/core/v1/secret.go  |    94 +
 vendor/k8s.io/client-go/listers/core/v1/service.go |    94 +
 .../client-go/listers/core/v1/service_expansion.go |    56 +
 .../client-go/listers/core/v1/serviceaccount.go    |    94 +
 .../client-go/listers/events/v1beta1/event.go      |    94 +
 .../listers/events/v1beta1/expansion_generated.go  |    27 +
 .../listers/extensions/v1beta1/daemonset.go        |    94 +
 .../extensions/v1beta1/daemonset_expansion.go      |   114 +
 .../listers/extensions/v1beta1/deployment.go       |    94 +
 .../extensions/v1beta1/deployment_expansion.go     |    70 +
 .../extensions/v1beta1/expansion_generated.go      |    39 +
 .../listers/extensions/v1beta1/ingress.go          |    94 +
 .../extensions/v1beta1/podsecuritypolicy.go        |    65 +
 .../listers/extensions/v1beta1/replicaset.go       |    94 +
 .../extensions/v1beta1/replicaset_expansion.go     |    73 +
 .../client-go/listers/extensions/v1beta1/scale.go  |    94 +
 .../imagepolicy/v1alpha1/expansion_generated.go    |    23 +
 .../listers/imagepolicy/v1alpha1/imagereview.go    |    65 +
 .../listers/networking/v1/expansion_generated.go   |    27 +
 .../listers/networking/v1/networkpolicy.go         |    94 +
 .../client-go/listers/policy/v1beta1/eviction.go   |    94 +
 .../listers/policy/v1beta1/expansion_generated.go  |    31 +
 .../listers/policy/v1beta1/poddisruptionbudget.go  |    94 +
 .../v1beta1/poddisruptionbudget_expansion.go       |    74 +
 .../listers/policy/v1beta1/podsecuritypolicy.go    |    65 +
 .../client-go/listers/rbac/v1/clusterrole.go       |    65 +
 .../listers/rbac/v1/clusterrolebinding.go          |    65 +
 .../listers/rbac/v1/expansion_generated.go         |    43 +
 vendor/k8s.io/client-go/listers/rbac/v1/role.go    |    94 +
 .../client-go/listers/rbac/v1/rolebinding.go       |    94 +
 .../client-go/listers/rbac/v1alpha1/clusterrole.go |    65 +
 .../listers/rbac/v1alpha1/clusterrolebinding.go    |    65 +
 .../listers/rbac/v1alpha1/expansion_generated.go   |    43 +
 .../k8s.io/client-go/listers/rbac/v1alpha1/role.go |    94 +
 .../client-go/listers/rbac/v1alpha1/rolebinding.go |    94 +
 .../client-go/listers/rbac/v1beta1/clusterrole.go  |    65 +
 .../listers/rbac/v1beta1/clusterrolebinding.go     |    65 +
 .../listers/rbac/v1beta1/expansion_generated.go    |    43 +
 .../k8s.io/client-go/listers/rbac/v1beta1/role.go  |    94 +
 .../client-go/listers/rbac/v1beta1/rolebinding.go  |    94 +
 .../scheduling/v1alpha1/expansion_generated.go     |    23 +
 .../listers/scheduling/v1alpha1/priorityclass.go   |    65 +
 .../scheduling/v1beta1/expansion_generated.go      |    23 +
 .../listers/scheduling/v1beta1/priorityclass.go    |    65 +
 .../settings/v1alpha1/expansion_generated.go       |    27 +
 .../listers/settings/v1alpha1/podpreset.go         |    94 +
 .../listers/storage/v1/expansion_generated.go      |    23 +
 .../client-go/listers/storage/v1/storageclass.go   |    65 +
 .../storage/v1alpha1/expansion_generated.go        |    23 +
 .../listers/storage/v1alpha1/volumeattachment.go   |    65 +
 .../listers/storage/v1beta1/expansion_generated.go |    27 +
 .../listers/storage/v1beta1/storageclass.go        |    65 +
 .../listers/storage/v1beta1/volumeattachment.go    |    65 +
 .../apis/clientauthentication/install/install.go   |    33 +
 .../v1alpha1/zz_generated.conversion.go            |    53 +-
 .../v1alpha1/zz_generated.deepcopy.go              |    29 +-
 .../v1beta1/zz_generated.conversion.go             |    46 +-
 .../v1beta1/zz_generated.deepcopy.go               |    14 +-
 .../clientauthentication/zz_generated.deepcopy.go  |    29 +-
 .../plugin/pkg/client/auth/azure/azure.go          |   359 +
 .../client-go/plugin/pkg/client/auth/exec/exec.go  |     7 +-
 .../client-go/plugin/pkg/client/auth/gcp/gcp.go    |    25 +-
 .../client-go/plugin/pkg/client/auth/oidc/oidc.go  |   379 +
 .../plugin/pkg/client/auth/openstack/openstack.go  |   193 +
 .../client-go/plugin/pkg/client/auth/plugins.go    |    25 +
 vendor/k8s.io/client-go/rest/config.go             |    26 +-
 vendor/k8s.io/client-go/rest/fake/fake.go          |   118 +
 vendor/k8s.io/client-go/rest/request.go            |    69 +-
 vendor/k8s.io/client-go/rest/token_source.go       |   138 +
 vendor/k8s.io/client-go/restmapper/discovery.go    |    14 +-
 vendor/k8s.io/client-go/scale/client.go            |   221 +
 vendor/k8s.io/client-go/scale/doc.go               |    21 +
 vendor/k8s.io/client-go/scale/fake/client.go       |    67 +
 vendor/k8s.io/client-go/scale/interfaces.go        |    39 +
 .../k8s.io/client-go/scale/scheme/appsint/doc.go   |    22 +
 .../client-go/scale/scheme/appsint/register.go     |    53 +
 .../scale/scheme/appsv1beta1/conversion.go         |    87 +
 .../client-go/scale/scheme/appsv1beta1/doc.go      |    20 +
 .../client-go/scale/scheme/appsv1beta1/register.go |    45 +
 .../scheme/appsv1beta1/zz_generated.conversion.go  |   143 +
 .../scale/scheme/appsv1beta2/conversion.go         |    87 +
 .../client-go/scale/scheme/appsv1beta2/doc.go      |    20 +
 .../client-go/scale/scheme/appsv1beta2/register.go |    45 +
 .../scheme/appsv1beta2/zz_generated.conversion.go  |   143 +
 .../scale/scheme/autoscalingv1/conversion.go       |    69 +
 .../client-go/scale/scheme/autoscalingv1/doc.go    |    20 +
 .../scale/scheme/autoscalingv1/register.go         |    45 +
 .../autoscalingv1/zz_generated.conversion.go       |   142 +
 vendor/k8s.io/client-go/scale/scheme/doc.go        |    22 +
 .../client-go/scale/scheme/extensionsint/doc.go    |    22 +
 .../scale/scheme/extensionsint/register.go         |    53 +
 .../scale/scheme/extensionsv1beta1/conversion.go   |    87 +
 .../scale/scheme/extensionsv1beta1/doc.go          |    20 +
 .../scale/scheme/extensionsv1beta1/register.go     |    45 +
 .../extensionsv1beta1/zz_generated.conversion.go   |   143 +
 vendor/k8s.io/client-go/scale/scheme/register.go   |    52 +
 vendor/k8s.io/client-go/scale/scheme/types.go      |    60 +
 .../scale/scheme/zz_generated.deepcopy.go          |    91 +
 vendor/k8s.io/client-go/scale/util.go              |   197 +
 vendor/k8s.io/client-go/testing/actions.go         |   659 +
 vendor/k8s.io/client-go/testing/fake.go            |   213 +
 vendor/k8s.io/client-go/testing/fixture.go         |   530 +
 .../client-go/tools/bootstrap/token/api/doc.go     |    20 +
 .../client-go/tools/bootstrap/token/api/types.go   |   112 +
 .../tools/bootstrap/token/util/helpers.go          |   133 +
 vendor/k8s.io/client-go/tools/cache/listwatch.go   |    83 -
 vendor/k8s.io/client-go/tools/cache/reflector.go   |    77 +-
 .../tools/cache/testing/fake_controller_source.go  |   255 +
 .../client-go/tools/clientcmd/api/helpers.go       |     9 +-
 .../client-go/tools/clientcmd/api/latest/latest.go |    11 +-
 .../clientcmd/api/v1/zz_generated.deepcopy.go      |    23 +-
 .../tools/clientcmd/api/zz_generated.deepcopy.go   |    44 +-
 .../client-go/tools/clientcmd/client_config.go     |    28 +-
 vendor/k8s.io/client-go/tools/clientcmd/config.go  |    28 +-
 vendor/k8s.io/client-go/tools/clientcmd/loader.go  |     8 +-
 .../tools/leaderelection/leaderelection.go         |   302 +
 .../leaderelection/resourcelock/configmaplock.go   |   109 +
 .../leaderelection/resourcelock/endpointslock.go   |   104 +
 .../tools/leaderelection/resourcelock/interface.go |   102 +
 vendor/k8s.io/client-go/tools/portforward/doc.go   |    19 +
 .../client-go/tools/portforward/portforward.go     |   342 +
 vendor/k8s.io/client-go/tools/record/doc.go        |    18 +
 vendor/k8s.io/client-go/tools/record/event.go      |   322 +
 .../k8s.io/client-go/tools/record/events_cache.go  |   462 +
 vendor/k8s.io/client-go/tools/record/fake.go       |    58 +
 vendor/k8s.io/client-go/tools/remotecommand/doc.go |    20 +
 .../client-go/tools/remotecommand/errorstream.go   |    55 +
 .../client-go/tools/remotecommand/remotecommand.go |   142 +
 .../k8s.io/client-go/tools/remotecommand/resize.go |    33 +
 vendor/k8s.io/client-go/tools/remotecommand/v1.go  |   160 +
 vendor/k8s.io/client-go/tools/remotecommand/v2.go  |   195 +
 vendor/k8s.io/client-go/tools/remotecommand/v3.go  |   111 +
 vendor/k8s.io/client-go/tools/remotecommand/v4.go  |   119 +
 .../client-go/tools/watch/informerwatcher.go       |   114 +
 vendor/k8s.io/client-go/tools/watch/until.go       |   225 +
 .../k8s.io/client-go/transport/round_trippers.go   |   123 +-
 vendor/k8s.io/client-go/transport/spdy/spdy.go     |    94 +
 vendor/k8s.io/client-go/util/cert/cert.go          |    63 +-
 vendor/k8s.io/client-go/util/cert/triple/triple.go |   116 +
 .../util/certificate/certificate_manager.go        |   527 +
 .../util/certificate/certificate_store.go          |   338 +
 .../k8s.io/client-go/util/certificate/csr/csr.go   |   263 +
 vendor/k8s.io/client-go/util/exec/exec.go          |    52 +
 vendor/k8s.io/client-go/util/jsonpath/node.go      |     8 +-
 vendor/k8s.io/client-go/util/jsonpath/parser.go    |     6 +-
 .../k8s.io/client-go/util/testing/fake_handler.go  |   139 +
 vendor/k8s.io/client-go/util/testing/tmpdir.go     |    44 +
 .../client-go/util/workqueue/parallelizer.go       |    21 +-
 vendor/k8s.io/code-generator/Godeps/Godeps.json    |    38 +-
 vendor/k8s.io/code-generator/OWNERS                |     3 +
 .../apis/example/v1/zz_generated.conversion.go     |    41 +-
 .../apis/example2/v1/zz_generated.conversion.go    |    41 +-
 .../clientset/internalversion/fake/register.go     |    18 +-
 .../apiserver/clientset/versioned/fake/register.go |    18 +-
 .../clientset/versioned/scheme/register.go         |    18 +-
 .../typed/example/v1/fake/fake_testtype.go         |    44 +-
 .../versioned/typed/example/v1/testtype.go         |    22 +-
 .../typed/example2/v1/fake/fake_testtype.go        |    44 +-
 .../versioned/typed/example2/v1/testtype.go        |    22 +-
 .../externalversions/example/v1/testtype.go        |    12 +-
 .../externalversions/example2/v1/testtype.go       |    12 +-
 .../informers/externalversions/generic.go          |     4 +-
 .../example/internalversion/testtype.go            |     8 +-
 .../example2/internalversion/testtype.go           |     8 +-
 .../crd/clientset/versioned/fake/register.go       |    18 +-
 .../crd/clientset/versioned/scheme/register.go     |    18 +-
 .../versioned/typed/example/v1/clustertesttype.go  |    26 +-
 .../typed/example/v1/fake/fake_clustertesttype.go  |    44 +-
 .../typed/example/v1/fake/fake_testtype.go         |    44 +-
 .../versioned/typed/example/v1/testtype.go         |    22 +-
 .../typed/example2/v1/fake/fake_testtype.go        |    44 +-
 .../versioned/typed/example2/v1/testtype.go        |    22 +-
 .../externalversions/example/v1/clustertesttype.go |    12 +-
 .../externalversions/example/v1/testtype.go        |    12 +-
 .../externalversions/example2/v1/testtype.go       |    12 +-
 .../crd/informers/externalversions/generic.go      |     4 +-
 .../generators/scheme/generator_for_scheme.go      |    32 +-
 .../cmd/conversion-gen/generators/conversion.go    |    36 +-
 .../cmd/go-to-protobuf/protobuf/namer.go           |     5 +-
 .../code-generator/cmd/register-gen/args/args.go   |    39 +
 .../cmd/register-gen/generators/packages.go        |   137 +
 .../register-gen/generators/register_external.go   |   117 +
 .../k8s.io/code-generator/cmd/register-gen/main.go |    52 +
 vendor/k8s.io/code-generator/generate-groups.sh    |     4 +-
 .../code-generator/generate-internal-groups.sh     |     8 +-
 .../examples/deepcopy-gen/generators/deepcopy.go   |   101 +-
 vendor/k8s.io/gengo/examples/deepcopy-gen/main.go  |    88 +
 .../deepcopy-gen/output_tests/aliases/doc.go       |    89 +
 .../output_tests/aliases/zz_generated.go           |   412 +
 .../deepcopy-gen/output_tests/builtins/doc.go      |    35 +
 .../output_tests/builtins/zz_generated.go          |    37 +
 .../deepcopy-gen/output_tests/interface_fuzzer.go  |   131 +
 .../deepcopy-gen/output_tests/interfaces/doc.go    |    29 +
 .../output_tests/interfaces/zz_generated.go        |    46 +
 .../examples/deepcopy-gen/output_tests/maps/doc.go |    43 +
 .../deepcopy-gen/output_tests/maps/zz_generated.go |   242 +
 .../output_tests/otherpkg/interfaces.go            |    25 +
 .../deepcopy-gen/output_tests/pointer/doc.go       |    31 +
 .../output_tests/pointer/zz_generated.go           |   113 +
 .../deepcopy-gen/output_tests/reflect_deepcopy.go  |    81 +
 .../deepcopy-gen/output_tests/slices/doc.go        |    43 +
 .../output_tests/slices/zz_generated.go            |   192 +
 .../deepcopy-gen/output_tests/structs/doc.go       |    40 +
 .../output_tests/structs/zz_generated.go           |    55 +
 .../deepcopy-gen/output_tests/value_fuzzer.go      |    86 +
 .../deepcopy-gen/output_tests/wholepkg/a.go        |   171 +
 .../deepcopy-gen/output_tests/wholepkg/b.go        |    20 +
 .../deepcopy-gen/output_tests/wholepkg/doc.go      |    20 +
 .../output_tests/wholepkg/interfaces.go            |    21 +
 .../output_tests/wholepkg/zz_generated.go          |   760 +
 .../defaulter-gen/_output_tests/empty/doc.go       |    20 +
 .../defaulter-gen/_output_tests/empty/type.go      |    29 +
 .../_output_tests/empty/zz_generated.go            |    32 +
 .../_output_tests/pointer/defaults.go              |    32 +
 .../defaulter-gen/_output_tests/pointer/doc.go     |    20 +
 .../defaulter-gen/_output_tests/pointer/type.go    |    33 +
 .../_output_tests/pointer/zz_generated.go          |    45 +
 .../defaulter-gen/_output_tests/slices/defaults.go |    32 +
 .../defaulter-gen/_output_tests/slices/doc.go      |    20 +
 .../defaulter-gen/_output_tests/slices/type.go     |    37 +
 .../_output_tests/slices/zz_generated.go           |    55 +
 .../_output_tests/wholepkg/defaults.go             |    32 +
 .../defaulter-gen/_output_tests/wholepkg/doc.go    |    20 +
 .../defaulter-gen/_output_tests/wholepkg/type.go   |    74 +
 .../_output_tests/wholepkg/zz_generated.go         |    84 +
 .../examples/defaulter-gen/generators/defaulter.go |    38 +-
 vendor/k8s.io/gengo/examples/defaulter-gen/main.go |    75 +
 .../import-boss/generators/import_restrict.go      |   272 +
 vendor/k8s.io/gengo/examples/import-boss/main.go   |    78 +
 .../gengo/examples/set-gen/generators/sets.go      |   360 +
 .../gengo/examples/set-gen/generators/tags.go      |    33 +
 vendor/k8s.io/gengo/examples/set-gen/main.go       |    47 +
 .../gengo/examples/set-gen/sets/types/types.go     |    30 +
 vendor/k8s.io/gengo/generator/execute.go           |     8 +-
 vendor/k8s.io/gengo/generator/import_tracker.go    |     4 +-
 vendor/k8s.io/gengo/parser/parse.go                |    42 +-
 vendor/k8s.io/gengo/testdata/a/a.go                |    20 +
 vendor/k8s.io/gengo/testdata/a/b/b.go              |    20 +
 vendor/k8s.io/gengo/types/types.go                 |     4 +-
 vendor/k8s.io/klog/LICENSE                         |   191 +
 .../klog/examples/coexist_glog/coexist_glog.go     |    28 +
 .../klog/examples/log_file/usage_log_file.go       |    14 +
 .../klog/examples/set_output/usage_set_output.go   |    22 +
 vendor/k8s.io/klog/glog/glog.go                    |   160 +
 vendor/k8s.io/klog/klog.go                         |  1239 +
 vendor/k8s.io/klog/klog_file.go                    |   126 +
 .../kube-openapi/cmd/openapi-gen/openapi-gen.go    |    58 +
 .../kube-openapi/cmd/openapi2smd/openapi2smd.go    |    60 +
 .../kube-openapi/pkg/aggregator/aggregator.go      |   391 +
 vendor/k8s.io/kube-openapi/pkg/builder/doc.go      |    20 +
 vendor/k8s.io/kube-openapi/pkg/builder/openapi.go  |   442 +
 vendor/k8s.io/kube-openapi/pkg/builder/util.go     |    61 +
 .../kube-openapi/pkg/generators/api_linter.go      |    30 +-
 .../k8s.io/kube-openapi/pkg/generators/config.go   |    29 +-
 .../k8s.io/kube-openapi/pkg/generators/openapi.go  |    10 +-
 vendor/k8s.io/kube-openapi/pkg/handler/handler.go  |   272 +
 vendor/k8s.io/kube-openapi/pkg/idl/doc.go          |   140 +
 vendor/k8s.io/kube-openapi/pkg/schemaconv/smd.go   |   242 +
 vendor/k8s.io/kube-openapi/pkg/util/proto/doc.go   |    19 +
 .../k8s.io/kube-openapi/pkg/util/proto/document.go |   303 +
 .../k8s.io/kube-openapi/pkg/util/proto/openapi.go  |   278 +
 .../kube-openapi/pkg/util/proto/testing/openapi.go |    68 +
 .../pkg/util/proto/validation/errors.go            |    79 +
 .../pkg/util/proto/validation/types.go             |   298 +
 .../pkg/util/proto/validation/validation.go        |    30 +
 vendor/k8s.io/kube-openapi/pkg/util/trie.go        |    79 +
 vendor/k8s.io/kube-openapi/pkg/util/util.go        |    59 +
 .../kube-openapi/test/integration/builder/main.go  |   116 +
 .../integration/pkg/generated/openapi_generated.go |   278 +
 .../test/integration/testdata/dummytype/alpha.go   |    36 +
 .../test/integration/testdata/dummytype/beta.go    |    24 +
 .../integration/testdata/listtype/atomic-list.go   |     7 +
 .../test/integration/testdata/listtype/map-list.go |    20 +
 .../test/integration/testdata/listtype/set-list.go |     7 +
 vendor/sigs.k8s.io/controller-runtime/LICENSE      |   201 +
 .../controller-runtime/example/controller.go       |    77 +
 .../sigs.k8s.io/controller-runtime/example/main.go |   147 +
 .../controller-runtime/example/mutatingwebhook.go  |    83 +
 .../example/validatingwebhook.go                   |    89 +
 .../controller-runtime/pkg/builder/build.go        |   176 +
 .../controller-runtime/pkg/builder/doc.go          |    22 +
 .../controller-runtime/pkg/cache/cache.go          |   121 +
 .../controller-runtime/pkg/cache/informer_cache.go |   178 +
 .../pkg/cache/informertest/fake_cache.go           |   141 +
 .../pkg/cache/internal/cache_reader.go             |   187 +
 .../pkg/cache/internal/deleg_map.go                |    96 +
 .../pkg/cache/internal/informers_map.go            |   281 +
 .../pkg/client/apiutil/apimachinery.go             |    88 +
 .../controller-runtime/pkg/client/client.go        |   162 +
 .../controller-runtime/pkg/client/client_cache.go  |   145 +
 .../controller-runtime/pkg/client/config/config.go |    94 +
 .../controller-runtime/pkg/client/config/doc.go    |    18 +
 .../controller-runtime/pkg/client/fake/client.go   |   192 +
 .../controller-runtime/pkg/client/fake/doc.go      |    27 +
 .../controller-runtime/pkg/client/interfaces.go    |   292 +
 .../controller-runtime/pkg/client/split.go         |    59 +
 .../controller-runtime/pkg/client/typed_client.go  |   133 +
 .../pkg/client/unstructured_client.go              |   162 +
 .../pkg/controller/controller.go                   |    94 +
 .../pkg/controller/controllertest/doc.go           |    18 +
 .../pkg/controller/controllertest/testing.go       |    62 +
 .../pkg/controller/controllertest/util.go          |   108 +
 .../controller/controllerutil/controllerutil.go    |   178 +
 .../pkg/controller/controllerutil/doc.go           |    20 +
 .../controller-runtime/pkg/controller/doc.go       |    25 +
 vendor/sigs.k8s.io/controller-runtime/pkg/doc.go   |   207 +
 .../controller-runtime/pkg/envtest/crd.go          |   221 +
 .../controller-runtime/pkg/envtest/doc.go          |    18 +
 .../controller-runtime/pkg/envtest/ginkgo.go       |    11 +
 .../pkg/envtest/printer/ginkgo.go                  |    51 +
 .../controller-runtime/pkg/envtest/server.go       |   212 +
 .../controller-runtime/pkg/event/doc.go            |    25 +
 .../controller-runtime/pkg/event/event.go          |    73 +
 .../controller-runtime/pkg/handler/doc.go          |    36 +
 .../controller-runtime/pkg/handler/enqueue.go      |    91 +
 .../pkg/handler/enqueue_mapped.go                  |    94 +
 .../pkg/handler/enqueue_owner.go                   |   165 +
 .../controller-runtime/pkg/handler/eventhandler.go |   104 +
 .../pkg/internal/admission/decode.go               |    48 +
 .../pkg/internal/admission/doc.go                  |    18 +
 .../pkg/internal/admission/handler.go              |    72 +
 .../pkg/internal/admission/http.go                 |    80 +
 .../pkg/internal/admission/response.go             |    48 +
 .../pkg/internal/admission/tls.go                  |    42 +
 .../pkg/internal/controller/controller.go          |   248 +
 .../pkg/internal/controller/metrics/metrics.go     |    57 +
 .../pkg/internal/recorder/recorder.go              |    61 +
 .../controller-runtime/pkg/leaderelection/doc.go   |    20 +
 .../pkg/leaderelection/fake/doc.go                 |    21 +
 .../pkg/leaderelection/fake/leader_election.go     |    90 +
 .../pkg/leaderelection/leader_election.go          |   109 +
 .../controller-runtime/pkg/manager/doc.go          |    21 +
 .../controller-runtime/pkg/manager/internal.go     |   291 +
 .../controller-runtime/pkg/manager/manager.go      |   269 +
 .../controller-runtime/pkg/manager/testutil.go     |    25 +
 .../controller-runtime/pkg/metrics/doc.go          |    20 +
 .../controller-runtime/pkg/metrics/listener.go     |    47 +
 .../controller-runtime/pkg/metrics/registry.go     |    23 +
 .../controller-runtime/pkg/patch/doc.go            |    33 +
 .../controller-runtime/pkg/patch/patch.go          |    45 +
 .../pkg/patterns/application/doc.go                |    28 +
 .../pkg/patterns/operator/doc.go                   |    23 +
 .../controller-runtime/pkg/predicate/doc.go        |    20 +
 .../controller-runtime/pkg/predicate/predicate.go  |   118 +
 .../controller-runtime/pkg/reconcile/doc.go        |    21 +
 .../controller-runtime/pkg/reconcile/reconcile.go  |    92 +
 .../pkg/reconcile/reconciletest/reconcile.go       |    41 +
 .../controller-runtime/pkg/recorder/recorder.go    |    27 +
 .../controller-runtime/pkg/runtime/inject/doc.go   |    22 +
 .../pkg/runtime/inject/inject.go                   |   131 +
 .../controller-runtime/pkg/runtime/log/deleg.go    |   126 +
 .../pkg/runtime/log/kube_helpers.go                |   129 +
 .../controller-runtime/pkg/runtime/log/log.go      |    85 +
 .../controller-runtime/pkg/runtime/log/null.go     |    60 +
 .../pkg/runtime/scheme/scheme.go                   |    56 +
 .../controller-runtime/pkg/runtime/signals/doc.go  |    18 +
 .../pkg/runtime/signals/signal.go                  |    43 +
 .../pkg/runtime/signals/signal_posix.go            |    26 +
 .../pkg/runtime/signals/signal_windows.go          |    23 +
 .../controller-runtime/pkg/source/doc.go           |    22 +
 .../pkg/source/internal/eventsource.go             |   177 +
 .../controller-runtime/pkg/source/source.go        |   281 +
 .../pkg/webhook/admission/builder/builder.go       |   223 +
 .../pkg/webhook/admission/builder/doc.go           |   107 +
 .../pkg/webhook/admission/decode.go                |    48 +
 .../pkg/webhook/admission/doc.go                   |   101 +
 .../pkg/webhook/admission/http.go                  |   102 +
 .../pkg/webhook/admission/response.go              |    70 +
 .../pkg/webhook/admission/types/types.go           |    44 +
 .../pkg/webhook/admission/webhook.go               |   239 +
 .../controller-runtime/pkg/webhook/bootstrap.go    |   345 +
 .../controller-runtime/pkg/webhook/doc.go          |    94 +
 .../pkg/webhook/internal/cert/doc.go               |    36 +
 .../internal/cert/generator/certgenerator.go       |    38 +
 .../pkg/webhook/internal/cert/generator/doc.go     |    30 +
 .../internal/cert/generator/fake/certgenerator.go  |    53 +
 .../webhook/internal/cert/generator/selfsigned.go  |   117 +
 .../pkg/webhook/internal/cert/generator/util.go    |    61 +
 .../pkg/webhook/internal/cert/provisioner.go       |   137 +
 .../internal/cert/writer/atomic/atomic_writer.go   |   453 +
 .../pkg/webhook/internal/cert/writer/certwriter.go |   137 +
 .../pkg/webhook/internal/cert/writer/doc.go        |    64 +
 .../pkg/webhook/internal/cert/writer/error.go      |    43 +
 .../pkg/webhook/internal/cert/writer/fs.go         |   216 +
 .../pkg/webhook/internal/cert/writer/secret.go     |   184 +
 .../controller-runtime/pkg/webhook/server.go       |   292 +
 .../pkg/webhook/types/webhook.go                   |    28 +
 .../controller-runtime/pkg/webhook/util.go         |   115 +
 4554 files changed, 1482596 insertions(+), 28498 deletions(-)

diff --git a/Gopkg.lock b/Gopkg.lock
index a097acd..f9ea74a 100644
--- a/Gopkg.lock
+++ b/Gopkg.lock
@@ -2,18 +2,18 @@
 
 
 [[projects]]
-  digest = "1:5c3894b2aa4d6bead0ceeea6831b305d62879c871780e7b76296ded1b004bc57"
+  digest = "1:fd1a7ca82682444a45424f6af37b1e0373f632e5a303441b111558ae8656a9b7"
   name = "cloud.google.com/go"
   packages = ["compute/metadata"]
-  pruneopts = "NUT"
-  revision = "debcad1964693daf8ef4bc06292d7e828e075130"
-  version = "v0.31.0"
+  pruneopts = "NT"
+  revision = "0ebda48a7f143b1cce9eb37a8c1106ac762a3430"
+  version = "v0.34.0"
 
 [[projects]]
   digest = "1:d8ebbd207f3d3266d4423ce4860c9f3794956306ded6c7ba312ecc69cdfbf04c"
   name = "github.com/PuerkitoBio/purell"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "0bcb03f4b4d0a9428594752bd2a3b9aa0a9d4bd4"
   version = "v1.1.0"
 
@@ -22,41 +22,41 @@
   digest = "1:8098cd40cd09879efbf12e33bcd51ead4a66006ac802cd563a66c4f3373b9727"
   name = "github.com/PuerkitoBio/urlesc"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "de5bf2ad457846296e2031421a34e2568e304e35"
 
 [[projects]]
   branch = "master"
-  digest = "1:707ebe952a8b3d00b343c01536c79c73771d100f63ec6babeaed5c79e2b8a8dd"
+  digest = "1:c819830f4f5ef85874a90ac3cbcc96cd322c715f5c96fbe4722eacd3dafbaa07"
   name = "github.com/beorn7/perks"
   packages = ["quantile"]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "3a771d992973f24aa725d07868b467d1ddfceafb"
 
 [[projects]]
-  digest = "1:ffe9824d294da03b391f44e1ae8281281b4afc1bdaa9588c9097785e3af10cec"
+  digest = "1:4b8b5811da6970495e04d1f4e98bb89518cc3cfc3b3f456bdb876ed7b6c74049"
   name = "github.com/davecgh/go-spew"
   packages = ["spew"]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "8991bc29aa16c548c550c7ff78260e27b9ab7c73"
   version = "v1.1.1"
 
 [[projects]]
-  digest = "1:3537d33c077a9666720dc987fddfecb07270606ac0a58f67abd08e3b252c0a45"
+  digest = "1:e6f888d4be8ec0f05c50e2aba83da4948b58045dee54d03be81fa74ea673302c"
   name = "github.com/emicklei/go-restful"
   packages = [
     ".",
     "log",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "3eb9738c1697594ea6e71a7156a9bb32ed216cf0"
   version = "v2.8.0"
 
 [[projects]]
-  digest = "1:32598368f409bbee79deb9d43569fcd92b9fb27f39155f5e166b3371217f051f"
+  digest = "1:820227d03dc661d34f837f3704626d2837dbfbf9f0ec8fdf1f58e683dc5f56fc"
   name = "github.com/evanphx/json-patch"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "72bf35d0ff611848c1dc9df0f976c81192392fa5"
   version = "v4.1.0"
 
@@ -64,7 +64,7 @@
   digest = "1:aa3ed0a71c4e66e4ae6486bf97a3f4cab28edc78df2e50c5ad01dc7d91604b88"
   name = "github.com/fatih/structs"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "4966fc68f5b7593aafa6cbbba2d65ec6e1416047"
   version = "v1.1.0"
 
@@ -72,71 +72,95 @@
   digest = "1:81466b4218bf6adddac2572a30ac733a9255919bc2f470b4827a317bd4ee1756"
   name = "github.com/ghodss/yaml"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "0ca9ea5df5451ffdf184b4428c902747c2c11cd7"
   version = "v1.0.0"
 
 [[projects]]
+  branch = "master"
+  digest = "1:d421af4c4fe51d399667d573982d663fe1fa67020a88d3ae43466ebfe8e2b5c9"
+  name = "github.com/go-logr/logr"
+  packages = ["."]
+  pruneopts = "NT"
+  revision = "9fb12b3b21c5415d16ac18dc5cd42c1cfdd40c4e"
+
+[[projects]]
+  digest = "1:340497a512995aa69c0add901d79a2096b3449d35a44a6f1f1115091a9f8c687"
+  name = "github.com/go-logr/zapr"
+  packages = ["."]
+  pruneopts = "NT"
+  revision = "7536572e8d55209135cd5e7ccf7fce43dca217ab"
+  version = "v0.1.0"
+
+[[projects]]
   digest = "1:260f7ebefc63024c8dfe2c9f1a2935a89fa4213637a1f522f592f80c001cc441"
   name = "github.com/go-openapi/jsonpointer"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "ef5f0afec364d3b9396b7b77b43dbe26bf1f8004"
-  version = "v0.17.2"
+  version = "v0.18.0"
 
 [[projects]]
   digest = "1:98abd61947ff5c7c6fcfec5473d02a4821ed3a2dd99a4fbfdb7925b0dd745546"
   name = "github.com/go-openapi/jsonreference"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "8483a886a90412cd6858df4ea3483dce9c8e35a3"
-  version = "v0.17.2"
+  version = "v0.18.0"
 
 [[projects]]
-  digest = "1:dfab391de021809e0041f0ab5648da6b74dd16a685472a1b8c3dc06b3dca1ee2"
+  digest = "1:4da4ea0a664ba528965683d350f602d0f11464e6bb2e17aad0914723bc25d163"
   name = "github.com/go-openapi/spec"
   packages = ["."]
-  pruneopts = "NUT"
-  revision = "5bae59e25b21498baea7f9d46e9c147ec106a42e"
-  version = "v0.17.2"
+  pruneopts = "NT"
+  revision = "5b6cdde3200976e3ecceb2868706ee39b6aff3e4"
+  version = "v0.18.0"
 
 [[projects]]
-  digest = "1:983f95b2fae6fe8fdd361738325ed6090f4f3bd15ce4db745e899fb5b0fdfc46"
+  digest = "1:dc0f590770e5a6c70ea086232324f7b7dc4857c60eca63ab8ff78e0a5cfcdbf3"
   name = "github.com/go-openapi/swag"
   packages = ["."]
-  pruneopts = "NUT"
-  revision = "5899d5c5e619fda5fa86e14795a835f473ca284c"
-  version = "v0.17.2"
+  pruneopts = "NT"
+  revision = "1d29f06aebd59ccdf11ae04aa0334ded96e2d909"
+  version = "v0.18.0"
 
 [[projects]]
-  digest = "1:ea634ab47d5c1f363bac9f8e0ff0ff0a29bcf291c5e470bd7489f05f099f9c56"
+  digest = "1:4fb6ac9e2e67130ed8c5db4154684b390c1c0ce213ba3f4532b7edc614f78999"
   name = "github.com/gobuffalo/envy"
   packages = ["."]
-  pruneopts = "NUT"
-  revision = "910ef88c9d32c6e779231577dfcf6ed8959bea2f"
-  version = "v1.6.8"
+  pruneopts = "NT"
+  revision = "801d7253ade1f895f74596b9a96147ed2d3b087e"
+  version = "v1.6.11"
 
 [[projects]]
-  digest = "1:8679b8a64f3613e9749c5640c3535c83399b8e69f67ce54d91dc73f6d77373af"
+  digest = "1:932970e69f16e127aa0653b8263ae588cd127fa53273e19ba44332902c9826f2"
   name = "github.com/gogo/protobuf"
   packages = [
     "proto",
     "sortkeys",
   ]
-  pruneopts = "NUT"
-  revision = "636bf0302bc95575d69441b25a2603156ffdddf1"
-  version = "v1.1.1"
+  pruneopts = "NT"
+  revision = "4cbf7e384e768b4e01799441fdf2a706a5635ae7"
+  version = "v1.2.0"
 
 [[projects]]
   branch = "master"
   digest = "1:e2b86e41f3d669fc36b50d31d32d22c8ac656c75aa5ea89717ce7177e134ff2a"
   name = "github.com/golang/glog"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "23def4e6c14b4da8ac2ed8007337bc5eb5007998"
 
 [[projects]]
-  digest = "1:63ccdfbd20f7ccd2399d0647a7d100b122f79c13bb83da9660b1598396fd9f62"
+  branch = "master"
+  digest = "1:aaedc94233e56ed57cdb04e3abfacc85c90c14082b62e3cdbe8ea72fc06ee035"
+  name = "github.com/golang/groupcache"
+  packages = ["lru"]
+  pruneopts = "NT"
+  revision = "c65c006176ff7ff98bb916961c7abbc6b0afc0aa"
+
+[[projects]]
+  digest = "1:d7cb4458ea8782e6efacd8f4940796ec559c90833509c436f40c4085b98156dd"
   name = "github.com/golang/protobuf"
   packages = [
     "proto",
@@ -145,7 +169,7 @@
     "ptypes/duration",
     "ptypes/timestamp",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "aa810b61a9c79d51363740d207bb46cf8e620ed5"
   version = "v1.2.0"
 
@@ -154,11 +178,11 @@
   digest = "1:05f95ffdfcf651bdb0f05b40b69e7f5663047f8da75c72d58728acb59b5cc107"
   name = "github.com/google/btree"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "4030bb1f1f0c35b30ca7009e9ebd06849dd45306"
 
 [[projects]]
-  digest = "1:d2754cafcab0d22c13541618a8029a70a8959eb3525ff201fe971637e2274cd0"
+  digest = "1:2ddc4fb22e0f7c7f6ce615f8b453aeb1c7d0eec746c1a5a62244363e1a836462"
   name = "github.com/google/go-cmp"
   packages = [
     "cmp",
@@ -167,7 +191,7 @@
     "cmp/internal/function",
     "cmp/internal/value",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "3af367b6b30c263d47e8895973edcca9a49cf029"
   version = "v0.2.0"
 
@@ -176,31 +200,39 @@
   digest = "1:52c5834e2bebac9030c97cc0798ac11c3aa8a39f098aeb419f142533da6cd3cc"
   name = "github.com/google/gofuzz"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "24818f796faf91cd76ec7bddd72458fbced7a6c1"
 
 [[projects]]
-  digest = "1:06a7dadb7b760767341ffb6c8d377238d68a1226f2b21b5d497d2e3f6ecf6b4e"
+  digest = "1:56a1f3949ebb7fa22fa6b4e4ac0fe0f77cc4faee5b57413e6fa9199a8458faf1"
+  name = "github.com/google/uuid"
+  packages = ["."]
+  pruneopts = "NT"
+  revision = "9b3b1e0f5f99ae461456d768e7d301a7acdaa2d8"
+  version = "v1.1.0"
+
+[[projects]]
+  digest = "1:289332c13b80edfefc88397cce5266c16845dcf204fa2f6ac7e464ee4c7f6e96"
   name = "github.com/googleapis/gnostic"
   packages = [
     "OpenAPIv2",
     "compiler",
     "extensions",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "7c663266750e7d82587642f65e60bc4083f1f84e"
   version = "v0.2.0"
 
 [[projects]]
   branch = "master"
-  digest = "1:7fdf3223c7372d1ced0b98bf53457c5e89d89aecbad9a77ba9fcc6e01f9e5621"
+  digest = "1:97972f03fbf34ec4247ddc78ddb681389c468c020492aa32b109744a54fc0c14"
   name = "github.com/gregjones/httpcache"
   packages = [
     ".",
     "diskcache",
   ]
-  pruneopts = "NUT"
-  revision = "9cad4c3443a7200dd6400aef47183728de563a38"
+  pruneopts = "NT"
+  revision = "c63ab54fda8f77302f8d414e19933f2b6026a089"
 
 [[projects]]
   digest = "1:b42cde0e1f3c816dd57f57f7bbcf05ca40263ad96f168714c130c611fc0856a6"
@@ -209,7 +241,7 @@
     ".",
     "simplelru",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "20f1fb78b0740ba8c3cb143a61e86ba5c8669768"
   version = "v0.5.0"
 
@@ -217,7 +249,7 @@
   digest = "1:9a52adf44086cead3b384e5d0dbf7a1c1cce65e67552ee3383a8561c42a18cd3"
   name = "github.com/imdario/mergo"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "9f23e2d6bd2a77f959b2bf6acdbefd708a83a4a4"
   version = "v0.3.6"
 
@@ -225,67 +257,68 @@
   digest = "1:406338ad39ab2e37b7f4452906442a3dbf0eb3379dd1f06aafb5c07e769a5fbb"
   name = "github.com/inconshreveable/mousetrap"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "76626ae9c91c4f2a10f34cad8ce83ea42c93bb75"
   version = "v1.0"
 
 [[projects]]
-  digest = "1:da62aa6632d04e080b8a8b85a59ed9ed1550842a0099a55f3ae3a20d02a3745a"
+  digest = "1:f5b9328966ccea0970b1d15075698eff0ddb3e75889560aad2e9f76b289b536a"
   name = "github.com/joho/godotenv"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "23d116af351c84513e1946b527c88823e476be13"
   version = "v1.3.0"
 
 [[projects]]
-  digest = "1:8e36686e8b139f8fe240c1d5cf3a145bc675c22ff8e707857cdd3ae17b00d728"
+  digest = "1:1d39c063244ad17c4b18e8da1551163b6ffb52bd1640a49a8ec5c3b7bf4dbd5d"
   name = "github.com/json-iterator/go"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "1624edc4454b8682399def8740d46db5e4362ba4"
   version = "v1.1.5"
 
 [[projects]]
-  digest = "1:345bbba667abadd6263391c915251ede8d9fa6f6852839c60bb6738b6122b89c"
+  digest = "1:8faaaff026dfb90c01a725dbee08c6c2551d3d323144f1a3f163a927820a6e27"
   name = "github.com/knative/build"
   packages = [
     "pkg/apis/build",
     "pkg/apis/build/v1alpha1",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "94859753e2c6724df2be86f6a254f810895fa3eb"
   version = "v0.2.0"
 
 [[projects]]
-  branch = "master"
-  digest = "1:66120bf2cc6bd35213b3bb29513b3ce5e28b12ef647de2dbd3623ebaea9fe741"
+  digest = "1:ddabfb7fbdf06445655fe4fb8a7891215c792fa2f3e340f4a28aca0d82443980"
   name = "github.com/knative/eventing"
   packages = [
     "pkg/apis/duck/v1alpha1",
     "pkg/apis/eventing",
     "pkg/apis/eventing/v1alpha1",
   ]
-  pruneopts = "NUT"
-  revision = "8fcf54f7147d51b0825fc1d14befd88e1355fec5"
+  pruneopts = "NT"
+  revision = "90852711c747bbafbf61baa7c5786f0066b20d4e"
+  version = "v0.2.1"
 
 [[projects]]
   branch = "master"
-  digest = "1:d9cf052ed0cbd1fd616fc1c0a88877afb48ea58d7ca9aa13c0d308534c44d3ab"
+  digest = "1:9c58fccfc91968a8b5c8bd712898b6e97da32f950fea1d9979de38efa6e3b3ff"
   name = "github.com/knative/pkg"
   packages = [
     "apis",
     "apis/duck",
     "apis/duck/v1alpha1",
+    "changeset",
     "kmeta",
     "logging",
     "logging/logkey",
     "webhook",
   ]
-  pruneopts = "NUT"
-  revision = "af2c4bc84ed90694967a799bde0f6a29cb713d4c"
+  pruneopts = "NT"
+  revision = "fff36e41c69f31f4f2522c47f808e9bef7156d3c"
 
 [[projects]]
-  digest = "1:39d60b103c12246d5c192a7ba0805079f3206e57f9f5f3af6ccafa980f6d0ebd"
+  digest = "1:2d75b12bd0e0c623236a648348406182cb0e245c7e73c61725b5710b5ae1816d"
   name = "github.com/knative/serving"
   packages = [
     "pkg/apis/autoscaling",
@@ -294,35 +327,35 @@
     "pkg/apis/serving",
     "pkg/apis/serving/v1alpha1",
   ]
-  pruneopts = "NUT"
-  revision = "5ec3b89b9ac9313dee514683229aefc3c8056577"
-  version = "v0.2.0"
+  pruneopts = "NT"
+  revision = "5cbee406446031df3105ca2ac90ce4e9369207dd"
+  version = "v0.2.3"
 
 [[projects]]
   digest = "1:4059c14e87a2de3a434430340521b5feece186c1469eff0834c29a63870de3ed"
   name = "github.com/konsorten/go-windows-terminal-sequences"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "5c8c8bd35d3832f5d134ae1e1e375b69a4d25242"
   version = "v1.0.1"
 
 [[projects]]
   branch = "master"
-  digest = "1:84a5a2b67486d5d67060ac393aa255d05d24ed5ee41daecd5635ec22657b6492"
+  digest = "1:7d9fcac7f1228470c4ea0ee31cdfb662a758c44df691e39b3e76c11d3e12ba8f"
   name = "github.com/mailru/easyjson"
   packages = [
     "buffer",
     "jlexer",
     "jwriter",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "60711f1a8329503b04e1c88535f419d0bb440bff"
 
 [[projects]]
   digest = "1:56dbf15e091bf7926cb33a57cb6bdfc658fc6d3498d2f76f10a97ce7856f1fde"
   name = "github.com/markbates/inflect"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "24b83195037b3bc61fcda2d28b7b0518bce293b6"
   version = "v1.0.4"
 
@@ -331,14 +364,14 @@
   digest = "1:0e9bfc47ab9941ecc3344e580baca5deb4091177e84dd9773b48b38ec26b93d5"
   name = "github.com/mattbaird/jsonpatch"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "81af80346b1a01caae0cbc27fd3c1ba5b11e189f"
 
 [[projects]]
-  digest = "1:5985ef4caf91ece5d54817c11ea25f182697534f8ae6521eadcd628c142ac4b6"
+  digest = "1:ea1db000388d88b31db7531c83016bef0d6db0d908a07794bfc36aca16fbf935"
   name = "github.com/matttproud/golang_protobuf_extensions"
   packages = ["pbutil"]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "c12348ce28de40eed0136aa2b644d0ee0650e56c"
   version = "v1.0.1"
 
@@ -346,7 +379,7 @@
   digest = "1:a45ae66dea4c899d79fceb116accfa1892105c251f0dcd9a217ddc276b42ec68"
   name = "github.com/mitchellh/mapstructure"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "3536a929edddb9a5b34bd6861dc4a9647cb459fe"
   version = "v1.1.2"
 
@@ -354,7 +387,7 @@
   digest = "1:2f42fa12d6911c7b7659738758631bec870b7e9b4c6be5444f963cdcfccc191f"
   name = "github.com/modern-go/concurrent"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "bacd9c7ef1dd9b15be4a9909b8ac7a4e313eec94"
   version = "1.0.3"
 
@@ -362,12 +395,12 @@
   digest = "1:c6aca19413b13dc59c220ad7430329e2ec454cc310bc6d8de2c7e2b93c18a0f6"
   name = "github.com/modern-go/reflect2"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "4b7aa43c6742a2c18fdef89dd197aaae7dac7ccd"
   version = "1.0.1"
 
 [[projects]]
-  digest = "1:acc97a63f734a3a5898c3c6478f21085e681fb5d610fc20beae36cb8f12fa512"
+  digest = "1:8bc8f43d2332d035857c92581df240f247c287629d5f60c751df609f9b6215c5"
   name = "github.com/openshift/api"
   packages = [
     "apps/v1",
@@ -380,38 +413,44 @@
     "route/v1",
     "template/v1",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "0d921e363e951d89f583292c60d013c318df64dc"
   version = "v3.9.0"
 
 [[projects]]
-  branch = "v0.0.7-custom"
-  digest = "1:8f0bbe43f11ba62deaae454383b93f9b8b58a1e4b68f9b39ee93f4a9633ec52a"
+  digest = "1:25c007d9329a7240b7011d3f733dbfb5ec797af09c21a89a159439b0497e8e21"
   name = "github.com/operator-framework/operator-sdk"
   packages = [
-    "pkg/k8sclient",
-    "pkg/sdk",
-    "pkg/sdk/internal/metrics",
-    "pkg/util/k8sutil",
+    "pkg/k8sutil",
+    "pkg/leader",
+    "pkg/ready",
     "version",
   ]
-  pruneopts = "NUT"
-  revision = "450f0742059bb08f2f0c041154435e340a7829a2"
-  source = "https://github.com/nicolaferraro/operator-sdk.git"
+  pruneopts = "NT"
+  revision = "15244d60ef7e328531a4f150a05b1fdabf9cc1ae"
+  version = "v0.3.0"
+
+[[projects]]
+  digest = "1:93b1d84c5fa6d1ea52f4114c37714cddd84d5b78f151b62bb101128dd51399bf"
+  name = "github.com/pborman/uuid"
+  packages = ["."]
+  pruneopts = "NT"
+  revision = "adf5a7427709b9deb95d29d3fa8a2bf9cfd388f1"
+  version = "v1.2"
 
 [[projects]]
   branch = "master"
-  digest = "1:3bf17a6e6eaa6ad24152148a631d18662f7212e21637c2699bff3369b7f00fa2"
+  digest = "1:bf2ac97824a7221eb16b096aecc1c390d4c8a4e49524386aaa2e2dd215cbfb31"
   name = "github.com/petar/GoLLRB"
   packages = ["llrb"]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "53be0d36a84c2a886ca057d34b6aa4468df9ccb4"
 
 [[projects]]
-  digest = "1:6c6d91dc326ed6778783cff869c49fb2f61303cdd2ebbcf90abe53505793f3b6"
+  digest = "1:e4e9e026b8e4c5630205cd0208efb491b40ad40552e57f7a646bb8a46896077b"
   name = "github.com/peterbourgon/diskv"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "5f041e8faa004a95c88a202771f4cc3e991971e6"
   version = "v2.0.1"
 
@@ -419,7 +458,7 @@
   digest = "1:5cf3f025cbee5951a4ee961de067c8a89fc95a5adabead774f82822efabab121"
   name = "github.com/pkg/errors"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "645ef00459ed84a119197bfb8d8205042c6df63d"
   version = "v0.8.0"
 
@@ -427,45 +466,45 @@
   digest = "1:0028cb19b2e4c3112225cd871870f2d9cf49b9b4276531f03438a88e94be86fe"
   name = "github.com/pmezard/go-difflib"
   packages = ["difflib"]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "792786c7400a136282c1664665ae0a8db921c6c2"
   version = "v1.0.0"
 
 [[projects]]
-  digest = "1:aa2da1df3327c3a338bb42f978407c07de74cd0a5bef35e9411881dffd444214"
+  digest = "1:ec2a29e3bd141038ae5c3d3a4f57db0c341fcc1d98055a607aedd683aed124ee"
   name = "github.com/prometheus/client_golang"
   packages = [
     "prometheus",
     "prometheus/internal",
     "prometheus/promhttp",
   ]
-  pruneopts = "NUT"
-  revision = "1cafe34db7fdec6022e17e00e1c1ea501022f3e4"
-  version = "v0.9.0"
+  pruneopts = "NT"
+  revision = "505eaef017263e299324067d40ca2c48f6a2cf50"
+  version = "v0.9.2"
 
 [[projects]]
   branch = "master"
-  digest = "1:2d5cd61daa5565187e1d96bae64dbbc6080dacf741448e9629c64fd93203b0d4"
+  digest = "1:c2cc5049e927e2749c0d5163c9f8d924880d83e84befa732b9aad0b6be227bed"
   name = "github.com/prometheus/client_model"
   packages = ["go"]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "5c3871d89910bfb32f5fcab2aa4b9ec68e65a99f"
 
 [[projects]]
   branch = "master"
-  digest = "1:06375f3b602de9c99fa99b8484f0e949fd5273e6e9c6592b5a0dd4cd9085f3ea"
+  digest = "1:aff0fac3bf0847ca241ebba899b74f614dee3c74d376f2be6ade2b1b22dd8e7c"
   name = "github.com/prometheus/common"
   packages = [
     "expfmt",
     "internal/bitbucket.org/ww/goautoneg",
     "model",
   ]
-  pruneopts = "NUT"
-  revision = "7e9e6cabbd393fc208072eedef99188d0ce788b6"
+  pruneopts = "NT"
+  revision = "67670fe90761d7ff18ec1d640135e53b9198328f"
 
 [[projects]]
   branch = "master"
-  digest = "1:102dea0c03a915acfc634b7c67f2662012b5483b56d9025e33f5188e112759b6"
+  digest = "1:2e3c31c847e848782a4925eb7b01fab0b8b4624a4249939405adc1f7b831f9da"
   name = "github.com/prometheus/procfs"
   packages = [
     ".",
@@ -473,46 +512,58 @@
     "nfs",
     "xfs",
   ]
-  pruneopts = "NUT"
-  revision = "185b4288413d2a0dd0806f78c90dde719829e5ae"
+  pruneopts = "NT"
+  revision = "14fa7590c24d4615893b68e22fce3b3489689f65"
 
 [[projects]]
-  digest = "1:669828a2363f1ecad15fff9f008dd1d07d449fb25c9060998b15f83fec896458"
+  digest = "1:32e563d4e6ed18cd2327875400f2b3aa46928ac5942c429fec8274830bb0ff56"
   name = "github.com/radovskyb/watcher"
   packages = ["."]
-  pruneopts = "NUT"
-  revision = "6145e1439b9de93806925353403f91d2abbad8a5"
-  version = "v1.0.2"
+  pruneopts = "NT"
+  revision = "3818ec23ec59ea15084fe26bfb114b3bb58aa132"
+  version = "1.0.5"
+
+[[projects]]
+  digest = "1:4e63570205b765959739e2ef37add1d229cab7dbf70d80341a0608816120493b"
+  name = "github.com/rogpeppe/go-internal"
+  packages = [
+    "modfile",
+    "module",
+    "semver",
+  ]
+  pruneopts = "NT"
+  revision = "d87f08a7d80821c797ffc8eb8f4e01675f378736"
+  version = "v1.0.0"
 
 [[projects]]
   digest = "1:0975c74a2cd70df6c2ae353c6283a25ce759dda7e1e706e5c07458baf3faca22"
   name = "github.com/rs/xid"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "15d26544def341f036c5f8dca987a4cbe575032c"
   version = "v1.2.1"
 
 [[projects]]
-  digest = "1:6f3ce746342be7b14a2d1ca33a4a11fd6cb0300e5d34c766f01e19e936fb10af"
+  digest = "1:57abe5c41d4509b53bd76107b65a7ac76763f3d5b68cad9765e3776712388488"
   name = "github.com/scylladb/go-set"
   packages = ["strset"]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "e560bb8f49bb7f34d4f59b7e771f6e1307c329da"
   version = "v1.0.2"
 
 [[projects]]
-  digest = "1:ecf78eacf406c42f07f66d6b79fda24d2b92dc711bfd0760d0c931678f9621fe"
+  digest = "1:cd2f2cba5b7ffafd0412fb647ff4bcff170292de57270f05fbbf391e3eb9566b"
   name = "github.com/sirupsen/logrus"
   packages = ["."]
-  pruneopts = "NUT"
-  revision = "ad15b42461921f1fb3529b058c6786c6a45d5162"
-  version = "v1.1.1"
+  pruneopts = "NT"
+  revision = "bcd833dfe83d3cebad139e4a29ed79cb2318bf95"
+  version = "v1.2.0"
 
 [[projects]]
-  digest = "1:343d44e06621142ab09ae0c76c1799104cdfddd3ffb445d78b1adf8dc3ffaf3d"
+  digest = "1:234b95cdbb31612ff4f97e0ac69abdede0c60f5f84e5d3f40123859f77d8bc2c"
   name = "github.com/spf13/cobra"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "ef82de70bb3f60c65fb8eebacbb2d122ef517385"
   version = "v0.0.3"
 
@@ -520,23 +571,23 @@
   digest = "1:9d8420bbf131d1618bde6530af37c3799340d3762cc47210c1d9532a4c3a2779"
   name = "github.com/spf13/pflag"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "298182f68c66c05229eb03ac171abe6e309ee79a"
   version = "v1.0.3"
 
 [[projects]]
-  digest = "1:65c01b68bc4f813c18cdd48c98c38867dd0681b9584138c0403a0865b9bfdfb2"
+  digest = "1:232ab5b495f4faf58aea3d1c25042d6a557f4267d340b880d196864181a1d339"
   name = "github.com/stoewer/go-strcase"
   packages = ["."]
-  pruneopts = "NUT"
-  revision = "c8136b55823dc6af966d084a06056c5575f6400f"
-  version = "v1.0.1"
+  pruneopts = "NT"
+  revision = "9f4628dc69009a239427f342caccb0047c7aea01"
+  version = "v1.0.2"
 
 [[projects]]
-  digest = "1:bacb8b590716ab7c33f2277240972c9582d389593ee8d66fc10074e0508b8126"
+  digest = "1:4af061277c04a7660e082acc2020f4c66d2c21dfc62e0242ffa1d2120cdfb4ec"
   name = "github.com/stretchr/testify"
   packages = ["assert"]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "f35b8ab0b5a2cef36673838d662e249dd9c94686"
   version = "v1.2.2"
 
@@ -544,7 +595,7 @@
   digest = "1:22f696cee54865fb8e9ff91df7b633f6b8f22037a8015253c6b6a71ca82219c7"
   name = "go.uber.org/atomic"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "1ea20fb1cbb1cc08cbd0d913a96dead89aa18289"
   version = "v1.3.2"
 
@@ -552,12 +603,12 @@
   digest = "1:58ca93bdf81bac106ded02226b5395a0595d5346cdc4caa8d9c1f3a5f8f9976e"
   name = "go.uber.org/multierr"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "3c4937480c32f4c13a875a1829af76c98ca3d40a"
   version = "v1.1.0"
 
 [[projects]]
-  digest = "1:85674ac609b704fd4e9f463553b6ffc3a3527a993ae0ba550eb56beaabdfe094"
+  digest = "1:572fa4496563920f3e3107a2294cf2621d6cc4ffd03403fb6397b1bab9fa082a"
   name = "go.uber.org/zap"
   packages = [
     ".",
@@ -567,21 +618,21 @@
     "internal/exit",
     "zapcore",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "ff33455a0e382e8a81d14dd7c922020b6b5e7982"
   version = "v1.9.1"
 
 [[projects]]
   branch = "master"
-  digest = "1:3f3a05ae0b95893d90b9b3b5afdb79a9b3d96e4e36e099d841ae602e4aca0da8"
+  digest = "1:d6d3b59b8c4ceb6a7db2f20169719e57a8dcfa2c055b4418feb3fcc7bbd1a936"
   name = "golang.org/x/crypto"
   packages = ["ssh/terminal"]
-  pruneopts = "NUT"
-  revision = "e84da0312774c21d64ee2317962ef669b27ffb41"
+  pruneopts = "NT"
+  revision = "505ab145d0a99da450461ae2c1a9f6cd10d1f447"
 
 [[projects]]
   branch = "master"
-  digest = "1:2fa379f32ae3b5110f7f4393c98200804c0934d8b24087e433cda464eb5d7859"
+  digest = "1:9300b9f62f41c3dded875b33117e09e9269790eb4372f5e96621f1e375ed5307"
   name = "golang.org/x/net"
   packages = [
     "context",
@@ -591,12 +642,12 @@
     "http2/hpack",
     "idna",
   ]
-  pruneopts = "NUT"
-  revision = "9b4f9f5ad5197c79fd623a3638e70d8b26cef344"
+  pruneopts = "NT"
+  revision = "927f97764cc334a6575f4b7a1584a147864d5723"
 
 [[projects]]
   branch = "master"
-  digest = "1:b0fef33b00740f7eeb5198f67ee1642d8d2560e9b428df7fb5f69fb140f5c4d0"
+  digest = "1:bdb664c89389d18d2aa69fb3b61fe5e2effc09e55b333a56e3cb071026418e33"
   name = "golang.org/x/oauth2"
   packages = [
     ".",
@@ -605,22 +656,22 @@
     "jws",
     "jwt",
   ]
-  pruneopts = "NUT"
-  revision = "9dcd33a902f40452422c2367fefcb95b54f9f8f8"
+  pruneopts = "NT"
+  revision = "d668ce993890a79bda886613ee587a69dd5da7a6"
 
 [[projects]]
   branch = "master"
-  digest = "1:f9eb1fd707210fde0db4076dd3bfdb401d3770f929b8dbd49171ef3e9cece2a6"
+  digest = "1:1ca795ad9ef9bc9f0c93757893a59c80904588b453873d35cb393f667570a71a"
   name = "golang.org/x/sys"
   packages = [
     "unix",
     "windows",
   ]
-  pruneopts = "NUT"
-  revision = "731415f00dce967a133e841b3079eda31c996761"
+  pruneopts = "NT"
+  revision = "82a175fd1598e8a172e58ebdf5ed262bb29129e5"
 
 [[projects]]
-  digest = "1:e33513a825fcd765e97b5de639a2f7547542d1a8245df0cef18e1fd390b778a9"
+  digest = "1:8c74f97396ed63cc2ef04ebb5fc37bb032871b8fd890a25991ed40974b00cd2a"
   name = "golang.org/x/text"
   packages = [
     "collate",
@@ -639,33 +690,40 @@
     "unicode/rangetable",
     "width",
   ]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "f21a4dfb5e38f5895301dc265a8def02365cc3d0"
   version = "v0.3.0"
 
 [[projects]]
   branch = "master"
-  digest = "1:c9e7a4b4d47c0ed205d257648b0e5b0440880cb728506e318f8ac7cd36270bc4"
+  digest = "1:9fdc2b55e8e0fafe4b41884091e51e77344f7dc511c5acedcfd98200003bff90"
   name = "golang.org/x/time"
   packages = ["rate"]
-  pruneopts = "NUT"
-  revision = "fbb02b2291d28baffd63558aa44b4b56f178d650"
+  pruneopts = "NT"
+  revision = "85acf8d2951cb2a3bde7632f9ff273ef0379bcbd"
 
 [[projects]]
   branch = "master"
-  digest = "1:3a04778e417b28bba5d30f0af919206b4869f57a1d5e152c4c2f29bf18889dce"
+  digest = "1:28a8b8275930d678cd5a2d4084f7ae8427a1e40c48085b6ae1340a4c00f79103"
   name = "golang.org/x/tools"
   packages = [
     "go/ast/astutil",
+    "go/gcexportdata",
+    "go/internal/cgo",
+    "go/internal/gcimporter",
+    "go/internal/packagesdriver",
+    "go/packages",
+    "go/types/typeutil",
     "imports",
     "internal/fastwalk",
     "internal/gopathwalk",
+    "internal/semver",
   ]
-  pruneopts = "NUT"
-  revision = "a2dc47679d30b6c496245bafc6a166b46c5fe318"
+  pruneopts = "NT"
+  revision = "d00ac6d27372a4273825635281f2dc360d4be563"
 
 [[projects]]
-  digest = "1:e2da54c7866453ac5831c61c7ec5d887f39328cac088c806553303bff4048e6f"
+  digest = "1:902ffa11f1d8c19c12b05cabffe69e1a16608ad03a8899ebcb9c6bde295660ae"
   name = "google.golang.org/appengine"
   packages = [
     ".",
@@ -679,28 +737,28 @@
     "internal/urlfetch",
     "urlfetch",
   ]
-  pruneopts = "NUT"
-  revision = "ae0ab99deb4dc413a2b4bd6c8bdd0eb67f1e4d06"
-  version = "v1.2.0"
+  pruneopts = "NT"
+  revision = "e9657d882bb81064595ca3b56cbe2546bbabf7b1"
+  version = "v1.4.0"
 
 [[projects]]
   digest = "1:2d1fbdc6777e5408cabeb02bf336305e724b925ff4546ded0fa8715a7267922a"
   name = "gopkg.in/inf.v0"
   packages = ["."]
-  pruneopts = "NUT"
+  pruneopts = "NT"
   revision = "d2d2541c53f18d2a059457998ce2876cc8e67cbf"
   version = "v0.9.1"
 
 [[projects]]
-  digest = "1:7c95b35057a0ff2e19f707173cc1a947fa43a6eb5c4d300d196ece0334046082"
+  digest = "1:18108594151654e9e696b27b181b953f9a90b16bf14d253dd1b397b025a1487f"
   name = "gopkg.in/yaml.v2"
   packages = ["."]
-  pruneopts = "NUT"
-  revision = "5420a8b6744d3b0345ab293f6fcba19c978f1183"
-  version = "v2.2.1"
+  pruneopts = "NT"
+  revision = "51d6538a90f86fe93ac480b35f37b2be17fef232"
+  version = "v2.2.2"
 
 [[projects]]
-  digest = "1:ba83efacee6fc544aaebcc643ec8ad8d345bfa7f6cd5afb1492fb19cd994cc4a"
+  digest = "1:b3f8152a68d73095a40fdcf329a93fc42e8eadb3305171df23fdb6b4e41a6417"
   name = "k8s.io/api"
   packages = [
     "admission/v1beta1",
@@ -715,10 +773,12 @@
     "authorization/v1beta1",
     "autoscaling/v1",
     "autoscaling/v2beta1",
+    "autoscaling/v2beta2",
     "batch/v1",
     "batch/v1beta1",
     "batch/v2alpha1",
     "certificates/v1beta1",
+    "coordination/v1beta1",
     "core/v1",
     "events/v1beta1",
     "extensions/v1beta1",
@@ -734,12 +794,11 @@
     "storage/v1alpha1",
     "storage/v1beta1",
   ]
-  pruneopts = "NUT"
-  revision = "2d6f90ab1293a1fb871cf149423ebb72aa7423aa"
-  version = "kubernetes-1.11.2"
+  pruneopts = "NT"
+  revision = "b503174bad5991eb66f18247f52e41c3258f6348"
 
 [[projects]]
-  digest = "1:a26c8e664af7122535f2b13fd4977a0d25894a545e7ce679502e49372812f6e6"
+  digest = "1:868de7cbaa0ecde6dc231c1529a10ae01bb05916095c0c992186e2a5cac57e79"
   name = "k8s.io/apimachinery"
   packages = [
     "pkg/api/equality",
@@ -771,27 +830,30 @@
     "pkg/util/framer",
     "pkg/util/intstr",
     "pkg/util/json",
+    "pkg/util/mergepatch",
+    "pkg/util/naming",
     "pkg/util/net",
     "pkg/util/runtime",
     "pkg/util/sets",
+    "pkg/util/strategicpatch",
+    "pkg/util/uuid",
     "pkg/util/validation",
     "pkg/util/validation/field",
     "pkg/util/wait",
     "pkg/util/yaml",
     "pkg/version",
     "pkg/watch",
+    "third_party/forked/golang/json",
     "third_party/forked/golang/reflect",
   ]
-  pruneopts = "NUT"
-  revision = "103fd098999dc9c0c88536f5c9ad2e5da39373ae"
-  version = "kubernetes-1.11.2"
+  pruneopts = "NT"
+  revision = "eddba98df674a16931d2d4ba75edc3a389bf633a"
 
 [[projects]]
-  digest = "1:6cca3c9f626aeb165dad88de9db9b71585a92514134f466268dd83fd449df9a7"
+  digest = "1:00089f60de414edb1a51e63efde2480ce87c95d2cb3536ea240afe483905d736"
   name = "k8s.io/client-go"
   packages = [
     "discovery",
-    "discovery/cached",
     "dynamic",
     "kubernetes",
     "kubernetes/scheme",
@@ -806,10 +868,12 @@
     "kubernetes/typed/authorization/v1beta1",
     "kubernetes/typed/autoscaling/v1",
     "kubernetes/typed/autoscaling/v2beta1",
+    "kubernetes/typed/autoscaling/v2beta2",
     "kubernetes/typed/batch/v1",
     "kubernetes/typed/batch/v1beta1",
     "kubernetes/typed/batch/v2alpha1",
     "kubernetes/typed/certificates/v1beta1",
+    "kubernetes/typed/coordination/v1beta1",
     "kubernetes/typed/core/v1",
     "kubernetes/typed/events/v1beta1",
     "kubernetes/typed/extensions/v1beta1",
@@ -840,8 +904,11 @@
     "tools/clientcmd/api",
     "tools/clientcmd/api/latest",
     "tools/clientcmd/api/v1",
+    "tools/leaderelection",
+    "tools/leaderelection/resourcelock",
     "tools/metrics",
     "tools/pager",
+    "tools/record",
     "tools/reference",
     "transport",
     "util/buffer",
@@ -854,12 +921,11 @@
     "util/retry",
     "util/workqueue",
   ]
-  pruneopts = "NUT"
-  revision = "1f13a808da65775f22cbf47862c4e5898d8f4ca1"
-  version = "kubernetes-1.11.2"
+  pruneopts = "NT"
+  revision = "d082d5923d3cc0bfbb066ee5fbdea3d0ca79acf8"
 
 [[projects]]
-  digest = "1:8ab487a323486c8bbbaa3b689850487fdccc6cbea8690620e083b2d230a4447e"
+  digest = "1:4e2addcdbe0330f43800c1fcb905fc7a21b86415dfcca619e5c606c87257af1b"
   name = "k8s.io/code-generator"
   packages = [
     "cmd/client-gen",
@@ -888,12 +954,11 @@
     "pkg/util",
   ]
   pruneopts = "T"
-  revision = "6702109cc68eb6fe6350b83e14407c8d7309fd1a"
-  version = "kubernetes-1.11.2"
+  revision = "3dcf91f64f638563e5106f21f50c31fa361c918d"
 
 [[projects]]
   branch = "master"
-  digest = "1:5249c83f0fb9e277b2d28c19eca814feac7ef05dc762e4deaf0a2e4b1a7c5df3"
+  digest = "1:5edbd655d7ee65178fd5750bda9a3d3cd7fb96291937926f4969e6b2dfbc5743"
   name = "k8s.io/gengo"
   packages = [
     "args",
@@ -905,22 +970,68 @@
     "parser",
     "types",
   ]
-  pruneopts = "NUT"
-  revision = "7338e4bfd6915369a1375890db1bbda0158c9863"
+  pruneopts = "NT"
+  revision = "fd15ee9cc2f77baa4f31e59e6acbf21146455073"
+
+[[projects]]
+  digest = "1:f3b42f307c7f49a1a7276c48d4b910db76e003220e88797f7acd41e3a9277ddf"
+  name = "k8s.io/klog"
+  packages = ["."]
+  pruneopts = "NT"
+  revision = "a5bc97fbc634d635061f3146511332c7e313a55a"
+  version = "v0.1.0"
 
 [[projects]]
   branch = "master"
-  digest = "1:e8451187fe9d2b9bf86a44495959c391e831355fb835a63e117ff49b69bc70f9"
+  digest = "1:9ac2fdede4a8304e3b00ea3b36526536339f306d0306e320fc74f6cefeead18e"
   name = "k8s.io/kube-openapi"
   packages = [
     "cmd/openapi-gen/args",
     "pkg/common",
     "pkg/generators",
     "pkg/generators/rules",
+    "pkg/util/proto",
     "pkg/util/sets",
   ]
-  pruneopts = "NUT"
-  revision = "3a9b63ab1e397dc12a9764df998f99bc59dfd9ae"
+  pruneopts = "NT"
+  revision = "0317810137be915b9cf888946c6e115c1bfac693"
+
+[[projects]]
+  digest = "1:e03ddaf9f31bccbbb8c33eabad2c85025a95ca98905649fd744e0a54c630a064"
+  name = "sigs.k8s.io/controller-runtime"
+  packages = [
+    "pkg/cache",
+    "pkg/cache/internal",
+    "pkg/client",
+    "pkg/client/apiutil",
+    "pkg/client/config",
+    "pkg/controller",
+    "pkg/controller/controllerutil",
+    "pkg/event",
+    "pkg/handler",
+    "pkg/internal/controller",
+    "pkg/internal/controller/metrics",
+    "pkg/internal/recorder",
+    "pkg/leaderelection",
+    "pkg/manager",
+    "pkg/metrics",
+    "pkg/patch",
+    "pkg/predicate",
+    "pkg/reconcile",
+    "pkg/recorder",
+    "pkg/runtime/inject",
+    "pkg/runtime/log",
+    "pkg/runtime/scheme",
+    "pkg/runtime/signals",
+    "pkg/source",
+    "pkg/source/internal",
+    "pkg/webhook/admission",
+    "pkg/webhook/admission/types",
+    "pkg/webhook/types",
+  ]
+  pruneopts = "NT"
+  revision = "c63ebda0bf4be5f0a8abd4003e4ea546032545ba"
+  version = "v0.1.8"
 
 [solve-meta]
   analyzer-name = "dep"
@@ -936,9 +1047,9 @@
     "github.com/openshift/api/image/v1",
     "github.com/openshift/api/route/v1",
     "github.com/openshift/api/template/v1",
-    "github.com/operator-framework/operator-sdk/pkg/k8sclient",
-    "github.com/operator-framework/operator-sdk/pkg/sdk",
-    "github.com/operator-framework/operator-sdk/pkg/util/k8sutil",
+    "github.com/operator-framework/operator-sdk/pkg/k8sutil",
+    "github.com/operator-framework/operator-sdk/pkg/leader",
+    "github.com/operator-framework/operator-sdk/pkg/ready",
     "github.com/operator-framework/operator-sdk/version",
     "github.com/pkg/errors",
     "github.com/radovskyb/watcher",
@@ -960,6 +1071,7 @@
     "k8s.io/apimachinery/pkg/runtime/schema",
     "k8s.io/apimachinery/pkg/runtime/serializer/json",
     "k8s.io/apimachinery/pkg/runtime/serializer/versioning",
+    "k8s.io/apimachinery/pkg/types",
     "k8s.io/apimachinery/pkg/util/intstr",
     "k8s.io/apimachinery/pkg/util/yaml",
     "k8s.io/apimachinery/pkg/watch",
@@ -976,6 +1088,17 @@
     "k8s.io/code-generator/cmd/lister-gen",
     "k8s.io/code-generator/cmd/openapi-gen",
     "k8s.io/gengo/args",
+    "sigs.k8s.io/controller-runtime/pkg/client",
+    "sigs.k8s.io/controller-runtime/pkg/client/config",
+    "sigs.k8s.io/controller-runtime/pkg/controller",
+    "sigs.k8s.io/controller-runtime/pkg/controller/controllerutil",
+    "sigs.k8s.io/controller-runtime/pkg/handler",
+    "sigs.k8s.io/controller-runtime/pkg/manager",
+    "sigs.k8s.io/controller-runtime/pkg/reconcile",
+    "sigs.k8s.io/controller-runtime/pkg/runtime/log",
+    "sigs.k8s.io/controller-runtime/pkg/runtime/scheme",
+    "sigs.k8s.io/controller-runtime/pkg/runtime/signals",
+    "sigs.k8s.io/controller-runtime/pkg/source",
   ]
   solver-name = "gps-cdcl"
   solver-version = 1
diff --git a/Gopkg.toml b/Gopkg.toml
index c627513..7fad7ee 100644
--- a/Gopkg.toml
+++ b/Gopkg.toml
@@ -1,6 +1,4 @@
-
 # Force dep to vendor the code generators, which aren't imported just used at dev time.
-# Picking a subpackage with Go code won't be necessary once https://github.com/golang/dep/pull/1545 is merged.
 required = [
   "k8s.io/code-generator/cmd/defaulter-gen",
   "k8s.io/code-generator/cmd/deepcopy-gen",
@@ -14,43 +12,43 @@ required = [
 
 [[override]]
   name = "k8s.io/code-generator"
-  version = "kubernetes-1.11.2"
+  # revision for tag "kubernetes-1.12.3"
+  revision = "3dcf91f64f638563e5106f21f50c31fa361c918d"
 
 [[override]]
   name = "k8s.io/api"
-  version = "kubernetes-1.11.2"
+  # revision for tag "kubernetes-1.12.3"
+  revision = "b503174bad5991eb66f18247f52e41c3258f6348"
 
 [[override]]
   name = "k8s.io/apiextensions-apiserver"
-  version = "kubernetes-1.11.2"
+  # revision for tag "kubernetes-1.12.3"
+  revision = "0cd23ebeb6882bd1cdc2cb15fc7b2d72e8a86a5b"
 
 [[override]]
   name = "k8s.io/apimachinery"
-  version = "kubernetes-1.11.2"
+  # revision for tag "kubernetes-1.12.3"
+  revision = "eddba98df674a16931d2d4ba75edc3a389bf633a"
 
 [[override]]
   name = "k8s.io/client-go"
-  version = "kubernetes-1.11.2"
+  # revision for tag "kubernetes-1.12.3"
+  revision = "d082d5923d3cc0bfbb066ee5fbdea3d0ca79acf8"
 
 [[override]]
   name = "sigs.k8s.io/controller-runtime"
-  version = "v0.1.4"
+  version = "=v0.1.8"
+
+[[constraint]]
+  name = "github.com/operator-framework/operator-sdk"
+  # The version rule is used for a specific release and the master branch for in between releases.
+  # branch = "master" #osdk_branch_annotation
+  version = "=v0.3.0" #osdk_version_annotation
 
 [prune]
   go-tests = true
   non-go = true
-  unused-packages = true
 
   [[prune.project]]
     name = "k8s.io/code-generator"
     non-go = false
-    unused-packages = false
-
-[[constraint]]
-  name = "github.com/operator-framework/operator-sdk"
-  # Using fork to customize the Kubernetes rest config
-  source = "https://github.com/nicolaferraro/operator-sdk.git"
-  branch = "v0.0.7-custom"
-  ## The version rule is used for a specific release and the master branch for in between releases.
-  #branch = "master"
-  #version = "=v0.0.7"
diff --git a/Makefile b/Makefile
index 2206d42..770e545 120000
--- a/Makefile
+++ b/Makefile
@@ -1 +1 @@
-./build/Makefile
\ No newline at end of file
+./script/Makefile
\ No newline at end of file
diff --git a/build/Dockerfile b/build/Dockerfile
new file mode 100644
index 0000000..f3e3af6
--- /dev/null
+++ b/build/Dockerfile
@@ -0,0 +1,7 @@
+FROM alpine:3.8
+
+RUN apk upgrade --update --no-cache
+
+USER nobody
+
+ADD build/_output/bin/camel-k /usr/local/bin/camel-k
diff --git a/build/Makefile b/build/Makefile
deleted file mode 100644
index 0cdf73c..0000000
--- a/build/Makefile
+++ /dev/null
@@ -1,81 +0,0 @@
-build: build-runtime build-operator build-kamel build-compile-integration-tests test
-
-build-go: build-embed-resources build-operator build-kamel
-
-build-operator: build-embed-resources
-	go build -o camel-k ./cmd/camel-k/*.go
-
-build-kamel:
-	go build -o kamel ./cmd/kamel/*.go
-
-build-embed-resources:
-	./build/embed_resources.sh deploy
-
-build-compile-integration-tests:
-	go test -c -tags=integration ./test/*.go
-
-build-runtime:
-	./mvnw clean install -f ./runtime/pom.xml
-
-release: clean prepare-release build images-build images-push cross-compile package-examples git-tag
-
-prepare-release:
-	./build/prepare_release.sh
-
-new-version: increment-snapshot build images-build images-push
-
-increment-snapshot:
-	./build/next_snapshot.sh
-
-cross-compile:
-	./build/cross_compile.sh
-
-package-examples:
-	./build/package_examples.sh
-
-git-tag:
-	./build/git_tag.sh
-
-dep:
-	dep ensure -v
-
-generate:
-	operator-sdk generate k8s
-
-clean:
-	./mvnw clean -f ./runtime/pom.xml
-	go clean
-	rm -f camel-k
-	rm -f kamel
-	rm -rf tmp/_maven_output
-
-codegen:
-	./tmp/codegen/update-generated.sh
-
-images: images-build
-
-images-build:
-	./build/images_build.sh
-
-images-push:
-	./build/images_push.sh
-
-install: install-minishift
-install-minishift:
-	./build/install_minishift.sh
-
-install-minikube:
-	./build/install_minikube.sh
-
-test: check
-check:
-	go test ./...
-
-test-integration: check-integration
-check-integration:
-	go test ./... -tags=integration
-
-lint:
-	golangci-lint run
-
-.PHONY: build build-operator build-kamel build-embed-resources build-runtime dep codegen images images-build images-push test check test-integration check-integration clean release prepare-release cross-compile package-examples new-version git-tag increment-snapshot install-minishift
diff --git a/build/embed_resources.sh b/build/embed_resources.sh
deleted file mode 100755
index c48e222..0000000
--- a/build/embed_resources.sh
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/sh
-
-if [ $# -ne 1 ]; then
-    echo "Error invoking embed_resources.sh: directory argument required"
-    exit 1
-fi
-
-location=$(dirname $0)
-destdir=$location/../$1
-destfile=$location/../$1/resources.go
-
-cat > $destfile << EOM
-/*
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-// Code generated by build/embed_resources.sh. DO NOT EDIT.
-
-package deploy
-
-var Resources map[string]string
-
-func init() {
-	Resources = make(map[string]string)
-
-EOM
-
-for f in $(ls $destdir | grep ".yaml" | grep -v -e "^operator.yaml$"); do
-	printf "\tResources[\"$f\"] =\n\t\t\`\n" >> $destfile
-	cat $destdir/$f >> $destfile
-	printf "\n\`\n" >> $destfile
-done
-
-printf "\n}\n" >> $destfile
\ No newline at end of file
diff --git a/build/travis_build.sh b/build/travis_build.sh
deleted file mode 100755
index e7897b4..0000000
--- a/build/travis_build.sh
+++ /dev/null
@@ -1,72 +0,0 @@
-#!/bin/sh
-
-set -e
-
-# Find the JAVA_HOME and set the KOTLIN_JDK_HOME
-echo "Java home: $JAVA_HOME"
-export KOTLIN_JDK_HOME=$JAVA_HOME
-
-# First build the whole project
-make
-
-# set docker0 to promiscuous mode
-sudo ip link set docker0 promisc on
-
-# Download and install the oc binary
-sudo mount --make-shared /
-sudo service docker stop
-sudo sed -i 's/DOCKER_OPTS=\"/DOCKER_OPTS=\"--insecure-registry 172.30.0.0\/16 /' /etc/default/docker
-sudo service docker start
-wget https://github.com/openshift/origin/releases/download/v$OPENSHIFT_VERSION/openshift-origin-client-tools-v$OPENSHIFT_VERSION-$OPENSHIFT_COMMIT-linux-64bit.tar.gz
-tar xvzOf openshift-origin-client-tools-v$OPENSHIFT_VERSION-$OPENSHIFT_COMMIT-linux-64bit.tar.gz > oc.bin
-sudo mv oc.bin /usr/local/bin/oc
-sudo chmod 755 /usr/local/bin/oc
-
-# Figure out this host's IP address
-IP_ADDR="$(ip addr show eth0 | grep "inet\b" | awk '{print $2}' | cut -d/ -f1)"
-
-# Start OpenShift
-oc cluster up --public-hostname=$IP_ADDR
-
-oc login -u system:admin
-
-# Wait until we have a ready node in openshift
-TIMEOUT=0
-TIMEOUT_COUNT=60
-until [ $TIMEOUT -eq $TIMEOUT_COUNT ]; do
-  if [ -n "$(oc get nodes | grep Ready)" ]; then
-    break
-  fi
-
-  echo "openshift is not up yet"
-  let TIMEOUT=TIMEOUT+1
-  sleep 5
-done
-
-if [ $TIMEOUT -eq $TIMEOUT_COUNT ]; then
-  echo "Failed to start openshift"
-  exit 1
-fi
-
-echo "openshift is deployed and reachable"
-oc describe nodes
-
-echo "Adding maven artifacts to the image context"
-./build/package_maven_artifacts.sh
-
-echo "Copying binary file to docker dir"
-mkdir -p ./tmp/_output/bin
-cp ./camel-k ./tmp/_output/bin/
-
-echo "Building the images"
-export IMAGE=docker.io/apache/camel-k:$(./build/get_version.sh)
-./tmp/build/docker_build.sh
-
-echo "installing camel k cluster resources"
-./kamel install --cluster-setup
-
-oc login -u developer
-
-
-# Then run integration tests
-make test-integration
diff --git a/cmd/camel-k/main.go b/cmd/camel-k/main.go
index 67da2fe..bc44be5 100644
--- a/cmd/camel-k/main.go
+++ b/cmd/camel-k/main.go
@@ -19,54 +19,97 @@ package main
 
 import (
 	"context"
+	"flag"
+	"fmt"
 	"math/rand"
+	"os"
 	"runtime"
 	"time"
 
-	"github.com/apache/camel-k/pkg/stub"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
-	"github.com/operator-framework/operator-sdk/pkg/util/k8sutil"
+	"github.com/apache/camel-k/pkg/apis"
+	"github.com/apache/camel-k/pkg/controller"
+	"github.com/operator-framework/operator-sdk/pkg/k8sutil"
+	"github.com/operator-framework/operator-sdk/pkg/leader"
+	"github.com/operator-framework/operator-sdk/pkg/ready"
 	sdkVersion "github.com/operator-framework/operator-sdk/version"
-
-	_ "github.com/apache/camel-k/pkg/apis/camel/v1alpha1/knative"
-	_ "github.com/apache/camel-k/pkg/util/openshift"
-
-	"github.com/sirupsen/logrus"
 	_ "k8s.io/client-go/plugin/pkg/client/auth/gcp"
+	"sigs.k8s.io/controller-runtime/pkg/client/config"
+	"sigs.k8s.io/controller-runtime/pkg/manager"
+	logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
+	"sigs.k8s.io/controller-runtime/pkg/runtime/signals"
 )
 
-const resyncPeriod = time.Duration(5) * time.Second
+var log = logf.Log.WithName("cmd")
 
 func printVersion() {
-	logrus.Infof("Go Version: %s", runtime.Version())
-	logrus.Infof("Go OS/Arch: %s/%s", runtime.GOOS, runtime.GOARCH)
-	logrus.Infof("operator-sdk Version: %v", sdkVersion.Version)
-}
-
-func watch(resource string, kind string, namespace string, resyncPeriod time.Duration) {
-	logrus.Infof("Watching %s, %s, %s, %d", resource, kind, namespace, resyncPeriod)
-	sdk.Watch(resource, kind, namespace, resyncPeriod)
+	log.Info(fmt.Sprintf("Go Version: %s", runtime.Version()))
+	log.Info(fmt.Sprintf("Go OS/Arch: %s/%s", runtime.GOOS, runtime.GOARCH))
+	log.Info(fmt.Sprintf("operator-sdk Version: %v", sdkVersion.Version))
 }
 
 func main() {
 	rand.Seed(time.Now().UTC().UnixNano())
 
-	printVersion()
+	flag.Parse()
 
-	sdk.ExposeMetricsPort()
+	// The logger instantiated here can be changed to any logger
+	// implementing the logr.Logger interface. This logger will
+	// be propagated through the whole operator, generating
+	// uniform and structured logs.
+	logf.SetLogger(logf.ZapLogger(false))
+
+	printVersion()
 
-	resource := "camel.apache.org/v1alpha1"
 	namespace, err := k8sutil.GetWatchNamespace()
 	if err != nil {
-		logrus.Fatalf("failed to get watch namespace: %v", err)
+		log.Error(err, "failed to get watch namespace")
+		os.Exit(1)
+	}
+
+	// Get a config to talk to the apiserver
+	cfg, err := config.GetConfig()
+	if err != nil {
+		log.Error(err, "")
+		os.Exit(1)
+	}
+
+	// Become the leader before proceeding
+	leader.Become(context.TODO(), "camel-k-lock")
+
+	r := ready.NewFileReady()
+	err = r.Set()
+	if err != nil {
+		log.Error(err, "")
+		os.Exit(1)
 	}
+	defer r.Unset()
 
-	ctx := context.TODO()
+	// Create a new Cmd to provide shared dependencies and start components
+	mgr, err := manager.New(cfg, manager.Options{Namespace: namespace})
+	if err != nil {
+		log.Error(err, "")
+		os.Exit(1)
+	}
 
-	watch(resource, "Integration", namespace, resyncPeriod)
-	watch(resource, "IntegrationContext", namespace, resyncPeriod)
-	watch(resource, "IntegrationPlatform", namespace, resyncPeriod)
+	log.Info("Registering Components.")
 
-	sdk.Handle(stub.NewHandler(ctx, namespace))
-	sdk.Run(ctx)
+	// Setup Scheme for all resources
+	if err := apis.AddToScheme(mgr.GetScheme()); err != nil {
+		log.Error(err, "")
+		os.Exit(1)
+	}
+
+	// Setup all Controllers
+	if err := controller.AddToManager(mgr); err != nil {
+		log.Error(err, "")
+		os.Exit(1)
+	}
+
+	log.Info("Starting the Cmd.")
+
+	// Start the Cmd
+	if err := mgr.Start(signals.SetupSignalHandler()); err != nil {
+		log.Error(err, "manager exited non-zero")
+		os.Exit(1)
+	}
 }
diff --git a/cmd/kamel/main.go b/cmd/kamel/main.go
index 18822ea..475fe62 100644
--- a/cmd/kamel/main.go
+++ b/cmd/kamel/main.go
@@ -26,8 +26,6 @@ import (
 
 	"github.com/apache/camel-k/pkg/client/cmd"
 
-	_ "github.com/apache/camel-k/pkg/apis/camel/v1alpha1/knative"
-	_ "github.com/apache/camel-k/pkg/util/openshift"
 	_ "k8s.io/client-go/plugin/pkg/client/auth/gcp"
 )
 
diff --git a/config/config.yaml b/config/config.yaml
deleted file mode 100644
index 45de913..0000000
--- a/config/config.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-apiVersion: camel.apache.org/v1alpha1
-kind: Integration
-projectName: camel-k
diff --git a/deploy/resources.go b/deploy/resources.go
index 7f6a768..72cd8dd 100644
--- a/deploy/resources.go
+++ b/deploy/resources.go
@@ -15,7 +15,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 */
 
-// Code generated by build/embed_resources.sh. DO NOT EDIT.
+// Code generated by script/embed_resources.sh. DO NOT EDIT.
 
 package deploy
 
@@ -2813,6 +2813,58 @@ spec:
         enabled: "true"
 
 `
+	Resources["role.yaml"] =
+		`
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+  creationTimestamp: null
+  name: camel-k
+rules:
+- apiGroups:
+  - ""
+  resources:
+  - pods
+  - services
+  - endpoints
+  - persistentvolumeclaims
+  - events
+  - configmaps
+  - secrets
+  verbs:
+  - '*'
+- apiGroups:
+  - ""
+  resources:
+  - namespaces
+  verbs:
+  - get
+- apiGroups:
+  - apps
+  resources:
+  - deployments
+  - daemonsets
+  - replicasets
+  - statefulsets
+  verbs:
+  - '*'
+- apiGroups:
+  - monitoring.coreos.com
+  resources:
+  - servicemonitors
+  verbs:
+  - get
+  - create
+- apiGroups:
+  - camel.apache.org
+  resources:
+  - '*'
+  - integrationcontexts
+  - integrationplatforms
+  verbs:
+  - '*'
+
+`
 	Resources["user-cluster-role.yaml"] =
 		`
 kind: ClusterRole
diff --git a/pkg/apis/addtoscheme_camel_v1alpha1.go b/pkg/apis/addtoscheme_camel_v1alpha1.go
new file mode 100644
index 0000000..4c3045b
--- /dev/null
+++ b/pkg/apis/addtoscheme_camel_v1alpha1.go
@@ -0,0 +1,10 @@
+package apis
+
+import (
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+)
+
+func init() {
+	// Register the types with the Scheme so the components can map objects to GroupVersionKinds and back
+	AddToSchemes = append(AddToSchemes, v1alpha1.SchemeBuilder.AddToScheme)
+}
diff --git a/pkg/apis/addtoscheme_openshift.go b/pkg/apis/addtoscheme_openshift.go
new file mode 100644
index 0000000..515a772
--- /dev/null
+++ b/pkg/apis/addtoscheme_openshift.go
@@ -0,0 +1,8 @@
+package apis
+
+import "github.com/apache/camel-k/pkg/util/openshift"
+
+func init() {
+	// Register the types with the Scheme so the components can map objects to GroupVersionKinds and back
+	AddToSchemes = append(AddToSchemes, openshift.AddToScheme)
+}
diff --git a/pkg/apis/addtoscheme_serving_v1alpha1.go b/pkg/apis/addtoscheme_serving_v1alpha1.go
new file mode 100644
index 0000000..800bed1
--- /dev/null
+++ b/pkg/apis/addtoscheme_serving_v1alpha1.go
@@ -0,0 +1,10 @@
+package apis
+
+import (
+	serving "github.com/knative/serving/pkg/apis/serving/v1alpha1"
+)
+
+func init() {
+	// Register the types with the Scheme so the components can map objects to GroupVersionKinds and back
+	AddToSchemes = append(AddToSchemes, serving.AddToScheme)
+}
diff --git a/pkg/apis/apis.go b/pkg/apis/apis.go
new file mode 100644
index 0000000..07dc961
--- /dev/null
+++ b/pkg/apis/apis.go
@@ -0,0 +1,13 @@
+package apis
+
+import (
+	"k8s.io/apimachinery/pkg/runtime"
+)
+
+// AddToSchemes may be used to add all resources defined in the project to a Scheme
+var AddToSchemes runtime.SchemeBuilder
+
+// AddToScheme adds all Resources to the Scheme
+func AddToScheme(s *runtime.Scheme) error {
+	return AddToSchemes.AddToScheme(s)
+}
diff --git a/pkg/apis/camel/v1alpha1/common_types.go b/pkg/apis/camel/v1alpha1/common_types.go
new file mode 100644
index 0000000..669239a
--- /dev/null
+++ b/pkg/apis/camel/v1alpha1/common_types.go
@@ -0,0 +1,45 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package v1alpha1
+
+// ConfigurationSpec --
+type ConfigurationSpec struct {
+	Type  string `json:"type"`
+	Value string `json:"value"`
+}
+
+// Artifact --
+type Artifact struct {
+	ID       string `json:"id" yaml:"id"`
+	Location string `json:"location,omitempty" yaml:"location,omitempty"`
+	Target   string `json:"target,omitempty" yaml:"target,omitempty"`
+}
+
+// Flow --
+type Flow struct {
+	Steps []Step `json:"steps"`
+}
+
+// Flows are collections of Flow
+type Flows []Flow
+
+// Step --
+type Step struct {
+	Kind string `json:"kind"`
+	URI  string `json:"uri"`
+}
\ No newline at end of file
diff --git a/pkg/apis/camel/v1alpha1/common_types_support.go b/pkg/apis/camel/v1alpha1/common_types_support.go
new file mode 100644
index 0000000..0dd8844
--- /dev/null
+++ b/pkg/apis/camel/v1alpha1/common_types_support.go
@@ -0,0 +1,40 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package v1alpha1
+
+import (
+	"fmt"
+	"gopkg.in/yaml.v2"
+)
+
+func (in *Artifact) String() string {
+	return in.ID
+}
+
+func (spec ConfigurationSpec) String() string {
+	return fmt.Sprintf("%s=%s", spec.Type, spec.Value)
+}
+
+// Serialize serializes a Flow
+func (flows Flows) Serialize() (string, error) {
+	res, err := yaml.Marshal(flows)
+	if err != nil {
+		return "", err
+	}
+	return string(res), nil
+}
diff --git a/pkg/apis/camel/v1alpha1/doc.go b/pkg/apis/camel/v1alpha1/doc.go
index c937536..102912e 100644
--- a/pkg/apis/camel/v1alpha1/doc.go
+++ b/pkg/apis/camel/v1alpha1/doc.go
@@ -1,21 +1,4 @@
-// +k8s:deepcopy-gen=package
+// Package v1alpha1 contains API Schema definitions for the camel v1alpha1 API group
+// +k8s:deepcopy-gen=package,register
 // +groupName=camel.apache.org
-
-/*
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
 package v1alpha1
diff --git a/pkg/apis/camel/v1alpha1/integration_types.go b/pkg/apis/camel/v1alpha1/integration_types.go
new file mode 100644
index 0000000..fd76150
--- /dev/null
+++ b/pkg/apis/camel/v1alpha1/integration_types.go
@@ -0,0 +1,127 @@
+package v1alpha1
+
+import (
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+)
+
+// NOTE: json tags are required.  Any new fields you add must have json tags for the fields to be serialized.
+
+// IntegrationSpec defines the desired state of Integration
+type IntegrationSpec struct {
+	Replicas      *int32                          `json:"replicas,omitempty"`
+	Sources       []SourceSpec                    `json:"sources,omitempty"`
+	Resources     []ResourceSpec                  `json:"resources,omitempty"`
+	Context       string                          `json:"context,omitempty"`
+	Dependencies  []string                        `json:"dependencies,omitempty"`
+	Profile       TraitProfile                    `json:"profile,omitempty"`
+	Traits        map[string]IntegrationTraitSpec `json:"traits,omitempty"`
+	Configuration []ConfigurationSpec             `json:"configuration,omitempty"`
+	Repositories  []string                        `json:"repositories,omitempty"`
+}
+
+// IntegrationStatus defines the observed state of Integration
+type IntegrationStatus struct {
+	Phase        IntegrationPhase `json:"phase,omitempty"`
+	Digest       string           `json:"digest,omitempty"`
+	Image        string           `json:"image,omitempty"`
+	Dependencies []string         `json:"dependencies,omitempty"`
+	Context      string           `json:"context,omitempty"`
+}
+
+// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
+
+// Integration is the Schema for the integrations API
+// +k8s:openapi-gen=true
+type Integration struct {
+	metav1.TypeMeta   `json:",inline"`
+	metav1.ObjectMeta `json:"metadata,omitempty"`
+
+	Spec   IntegrationSpec   `json:"spec,omitempty"`
+	Status IntegrationStatus `json:"status,omitempty"`
+}
+
+// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
+
+// IntegrationList contains a list of Integration
+type IntegrationList struct {
+	metav1.TypeMeta `json:",inline"`
+	metav1.ListMeta `json:"metadata,omitempty"`
+	Items           []Integration `json:"items"`
+}
+
+// DataSpec --
+type DataSpec struct {
+	Name        string `json:"name,omitempty"`
+	Content     string `json:"content,omitempty"`
+	Compression bool   `json:"compression,omitempty"`
+}
+
+// ResourceSpec --
+type ResourceSpec struct {
+	DataSpec
+}
+
+// SourceSpec --
+type SourceSpec struct {
+	DataSpec
+	Language Language `json:"language,omitempty"`
+}
+
+// Language --
+type Language string
+
+const (
+	// LanguageJavaSource --
+	LanguageJavaSource Language = "java"
+	// LanguageJavaClass --
+	LanguageJavaClass Language = "class"
+	// LanguageGroovy --
+	LanguageGroovy Language = "groovy"
+	// LanguageJavaScript --
+	LanguageJavaScript Language = "js"
+	// LanguageXML --
+	LanguageXML Language = "xml"
+	// LanguageKotlin --
+	LanguageKotlin Language = "kts"
+	// LanguageYamlFlow --
+	LanguageYamlFlow Language = "flow"
+)
+
+// Languages is the list of all supported languages
+var Languages = []Language{
+	LanguageJavaSource,
+	LanguageJavaClass,
+	LanguageJavaScript,
+	LanguageGroovy,
+	LanguageJavaScript,
+	LanguageKotlin,
+	LanguageYamlFlow,
+}
+
+// A IntegrationTraitSpec contains the configuration of a trait
+type IntegrationTraitSpec struct {
+	Configuration map[string]string `json:"configuration,omitempty"`
+}
+
+// IntegrationPhase --
+type IntegrationPhase string
+
+const (
+	// IntegrationKind --
+	IntegrationKind string = "Integration"
+
+	// IntegrationPhaseBuildingContext --
+	IntegrationPhaseBuildingContext IntegrationPhase = "Building Context"
+	// IntegrationPhaseBuildingImage --
+	IntegrationPhaseBuildingImage IntegrationPhase = "Building Image"
+	// IntegrationPhaseDeploying --
+	IntegrationPhaseDeploying IntegrationPhase = "Deploying"
+	// IntegrationPhaseRunning --
+	IntegrationPhaseRunning IntegrationPhase = "Running"
+	// IntegrationPhaseError --
+	IntegrationPhaseError IntegrationPhase = "Error"
+)
+
+func init() {
+	SchemeBuilder.Register(&Integration{}, &IntegrationList{})
+}
diff --git a/pkg/apis/camel/v1alpha1/integration_types_support.go b/pkg/apis/camel/v1alpha1/integration_types_support.go
new file mode 100644
index 0000000..4400394
--- /dev/null
+++ b/pkg/apis/camel/v1alpha1/integration_types_support.go
@@ -0,0 +1,124 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package v1alpha1
+
+import (
+	"github.com/apache/camel-k/pkg/util"
+	"github.com/mitchellh/mapstructure"
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+	"strings"
+)
+
+// NewIntegrationList --
+func NewIntegrationList() IntegrationList {
+	return IntegrationList{
+		TypeMeta: metav1.TypeMeta{
+			APIVersion: SchemeGroupVersion.String(),
+			Kind:       IntegrationKind,
+		},
+	}
+}
+
+// AddSource --
+func (is *IntegrationSpec) AddSource(name string, content string, language Language) {
+	is.Sources = append(is.Sources, NewSourceSpec(name, content, language))
+}
+
+// AddSources --
+func (is *IntegrationSpec) AddSources(sources ...SourceSpec) {
+	is.Sources = append(is.Sources, sources...)
+}
+
+// AddResources --
+func (is *IntegrationSpec) AddResources(resources ...ResourceSpec) {
+	is.Resources = append(is.Resources, resources...)
+}
+
+// AddConfiguration --
+func (is *IntegrationSpec) AddConfiguration(confType string, confValue string) {
+	is.Configuration = append(is.Configuration, ConfigurationSpec{
+		Type:  confType,
+		Value: confValue,
+	})
+}
+
+// AddDependency --
+func (is *IntegrationSpec) AddDependency(dependency string) {
+	switch {
+	case strings.HasPrefix(dependency, "mvn:"):
+		util.StringSliceUniqueAdd(&is.Dependencies, dependency)
+	case strings.HasPrefix(dependency, "file:"):
+		util.StringSliceUniqueAdd(&is.Dependencies, dependency)
+	case strings.HasPrefix(dependency, "camel-"):
+		util.StringSliceUniqueAdd(&is.Dependencies, "camel:"+strings.TrimPrefix(dependency, "camel-"))
+	}
+}
+
+// Decode the trait configuration to a type safe struct
+func (in *IntegrationTraitSpec) Decode(target interface{}) error {
+	md := mapstructure.Metadata{}
+
+	decoder, err := mapstructure.NewDecoder(
+		&mapstructure.DecoderConfig{
+			Metadata:         &md,
+			WeaklyTypedInput: true,
+			TagName:          "property",
+			Result:           &target,
+		},
+	)
+
+	if err != nil {
+		return err
+	}
+
+	return decoder.Decode(in.Configuration)
+}
+
+// NewSourceSpec --
+func NewSourceSpec(name string, content string, language Language) SourceSpec {
+	return SourceSpec{
+		DataSpec: DataSpec{
+			Name:    name,
+			Content: content,
+		},
+		Language: language,
+	}
+}
+
+// NewResourceSpec --
+func NewResourceSpec(name string, content string, destination string) ResourceSpec {
+	return ResourceSpec{
+		DataSpec: DataSpec{
+			Name:    name,
+			Content: content,
+		},
+	}
+}
+
+// InferLanguage returns the language of the source or discovers it from file extension if not set
+func (s SourceSpec) InferLanguage() Language {
+	if s.Language != "" {
+		return s.Language
+	}
+	for _, l := range Languages {
+		if strings.HasSuffix(s.Name, "."+string(l)) {
+			return l
+		}
+	}
+	return ""
+}
\ No newline at end of file
diff --git a/pkg/apis/camel/v1alpha1/types_support_test.go b/pkg/apis/camel/v1alpha1/integration_types_support_test.go
similarity index 100%
rename from pkg/apis/camel/v1alpha1/types_support_test.go
rename to pkg/apis/camel/v1alpha1/integration_types_support_test.go
diff --git a/pkg/apis/camel/v1alpha1/integrationcontext_types.go b/pkg/apis/camel/v1alpha1/integrationcontext_types.go
new file mode 100644
index 0000000..b85aa05
--- /dev/null
+++ b/pkg/apis/camel/v1alpha1/integrationcontext_types.go
@@ -0,0 +1,68 @@
+package v1alpha1
+
+import (
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+)
+
+// NOTE: json tags are required.  Any new fields you add must have json tags for the fields to be serialized.
+
+// IntegrationContextSpec defines the desired state of IntegrationContext
+type IntegrationContextSpec struct {
+	Dependencies  []string                        `json:"dependencies,omitempty"`
+	Profile       TraitProfile                    `json:"profile,omitempty"`
+	Traits        map[string]IntegrationTraitSpec `json:"traits,omitempty"`
+	Configuration []ConfigurationSpec             `json:"configuration,omitempty"`
+	Repositories  []string                        `json:"repositories,omitempty"`
+}
+
+// IntegrationContextStatus defines the observed state of IntegrationContext
+type IntegrationContextStatus struct {
+	Phase       IntegrationContextPhase `json:"phase,omitempty"`
+	Image       string                  `json:"image,omitempty"`
+	PublicImage string                  `json:"publicImage,omitempty"`
+	Digest      string                  `json:"digest,omitempty"`
+	Artifacts   []Artifact              `json:"artifacts,omitempty"`
+}
+
+// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
+
+// IntegrationContext is the Schema for the integrationcontexts API
+// +k8s:openapi-gen=true
+type IntegrationContext struct {
+	metav1.TypeMeta   `json:",inline"`
+	metav1.ObjectMeta `json:"metadata,omitempty"`
+
+	Spec   IntegrationContextSpec   `json:"spec,omitempty"`
+	Status IntegrationContextStatus `json:"status,omitempty"`
+}
+
+// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
+
+// IntegrationContextList contains a list of IntegrationContext
+type IntegrationContextList struct {
+	metav1.TypeMeta `json:",inline"`
+	metav1.ListMeta `json:"metadata,omitempty"`
+	Items           []IntegrationContext `json:"items"`
+}
+
+// IntegrationContextPhase --
+type IntegrationContextPhase string
+
+const (
+	// IntegrationContextKind --
+	IntegrationContextKind string = "IntegrationContext"
+
+	// IntegrationContextTypePlatform --
+	IntegrationContextTypePlatform = "platform"
+
+	// IntegrationContextPhaseBuilding --
+	IntegrationContextPhaseBuilding IntegrationContextPhase = "Building"
+	// IntegrationContextPhaseReady --
+	IntegrationContextPhaseReady IntegrationContextPhase = "Ready"
+	// IntegrationContextPhaseError --
+	IntegrationContextPhaseError IntegrationContextPhase = "Error"
+)
+
+func init() {
+	SchemeBuilder.Register(&IntegrationContext{}, &IntegrationContextList{})
+}
diff --git a/pkg/apis/camel/v1alpha1/integrationcontext_types_support.go b/pkg/apis/camel/v1alpha1/integrationcontext_types_support.go
new file mode 100644
index 0000000..32000b5
--- /dev/null
+++ b/pkg/apis/camel/v1alpha1/integrationcontext_types_support.go
@@ -0,0 +1,52 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package v1alpha1
+
+import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+
+// NewIntegrationContext --
+func NewIntegrationContext(namespace string, name string) IntegrationContext {
+	return IntegrationContext{
+		TypeMeta: metav1.TypeMeta{
+			APIVersion: SchemeGroupVersion.String(),
+			Kind:       IntegrationContextKind,
+		},
+		ObjectMeta: metav1.ObjectMeta{
+			Namespace: namespace,
+			Name:      name,
+		},
+	}
+}
+
+// NewIntegrationContextList --
+func NewIntegrationContextList() IntegrationContextList {
+	return IntegrationContextList{
+		TypeMeta: metav1.TypeMeta{
+			APIVersion: SchemeGroupVersion.String(),
+			Kind:       IntegrationContextKind,
+		},
+	}
+}
+
+// ImageForIntegration returns the image to use when using it for running an integration
+func (c IntegrationContext) ImageForIntegration() string {
+	if c.Status.PublicImage != "" {
+		return c.Status.PublicImage
+	}
+	return c.Status.Image
+}
diff --git a/pkg/apis/camel/v1alpha1/integrationplatform_types.go b/pkg/apis/camel/v1alpha1/integrationplatform_types.go
new file mode 100644
index 0000000..88fd5df
--- /dev/null
+++ b/pkg/apis/camel/v1alpha1/integrationplatform_types.go
@@ -0,0 +1,111 @@
+package v1alpha1
+
+import (
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+)
+
+// NOTE: json tags are required.  Any new fields you add must have json tags for the fields to be serialized.
+
+// IntegrationPlatformSpec defines the desired state of IntegrationPlatform
+type IntegrationPlatformSpec struct {
+	Cluster IntegrationPlatformCluster   `json:"cluster,omitempty"`
+	Profile TraitProfile                 `json:"profile,omitempty"`
+	Build   IntegrationPlatformBuildSpec `json:"build,omitempty"`
+}
+
+// IntegrationPlatformStatus defines the observed state of IntegrationPlatform
+type IntegrationPlatformStatus struct {
+	Phase IntegrationPlatformPhase `json:"phase,omitempty"`
+}
+
+
+// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
+
+// IntegrationPlatform is the Schema for the integrationplatforms API
+// +k8s:openapi-gen=true
+type IntegrationPlatform struct {
+	metav1.TypeMeta   `json:",inline"`
+	metav1.ObjectMeta `json:"metadata,omitempty"`
+
+	Spec   IntegrationPlatformSpec   `json:"spec,omitempty"`
+	Status IntegrationPlatformStatus `json:"status,omitempty"`
+}
+
+// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
+
+// IntegrationPlatformList contains a list of IntegrationPlatform
+type IntegrationPlatformList struct {
+	metav1.TypeMeta `json:",inline"`
+	metav1.ListMeta `json:"metadata,omitempty"`
+	Items           []IntegrationPlatform `json:"items"`
+}
+
+// IntegrationPlatformCluster is the kind of orchestration cluster the platform is installed into
+type IntegrationPlatformCluster string
+
+const (
+	// IntegrationPlatformClusterOpenShift is used when targeting a OpenShift cluster
+	IntegrationPlatformClusterOpenShift = "OpenShift"
+	// IntegrationPlatformClusterKubernetes is used when targeting a Kubernetes cluster
+	IntegrationPlatformClusterKubernetes = "Kubernetes"
+)
+
+// TraitProfile represents lists of traits that are enabled for the specific installation/integration
+type TraitProfile string
+
+const (
+	// TraitProfileOpenShift is used by default on OpenShift clusters
+	TraitProfileOpenShift = "OpenShift"
+	// TraitProfileKubernetes is used by default on Kubernetes clusters
+	TraitProfileKubernetes = "Kubernetes"
+	// TraitProfileKnative is used by default on OpenShift/Kubernetes clusters powered by Knative
+	TraitProfileKnative = "Knative"
+)
+
+var allTraitProfiles = []TraitProfile{TraitProfileOpenShift, TraitProfileKubernetes, TraitProfileKnative}
+
+// IntegrationPlatformBuildSpec contains platform related build information
+type IntegrationPlatformBuildSpec struct {
+	PublishStrategy IntegrationPlatformBuildPublishStrategy `json:"publishStrategy,omitempty"`
+	Registry        string                                  `json:"registry,omitempty"`
+	Organization    string                                  `json:"organization,omitempty"`
+	PushSecret      string                                  `json:"pushSecret,omitempty"`
+	CamelVersion    string                                  `json:"camelVersion,omitempty"`
+	Properties      map[string]string                       `json:"properties,omitempty"`
+	Repositories    []string                                `json:"repositories,omitempty"`
+}
+
+// IntegrationPlatformBuildPublishStrategy enumerates all implemented build strategies
+type IntegrationPlatformBuildPublishStrategy string
+
+const (
+	// IntegrationPlatformBuildPublishStrategyS2I performs a OpenShift binary S2I build
+	IntegrationPlatformBuildPublishStrategyS2I = "S2I"
+
+	// IntegrationPlatformBuildPublishStrategyKaniko performs
+	IntegrationPlatformBuildPublishStrategyKaniko = "Kaniko"
+)
+
+
+// IntegrationPlatformPhase --
+type IntegrationPlatformPhase string
+
+const (
+	// IntegrationPlatformKind --
+	IntegrationPlatformKind string = "IntegrationPlatform"
+
+	// IntegrationPlatformPhaseCreating --
+	IntegrationPlatformPhaseCreating IntegrationPlatformPhase = "Creating"
+	// IntegrationPlatformPhaseStarting --
+	IntegrationPlatformPhaseStarting IntegrationPlatformPhase = "Starting"
+	// IntegrationPlatformPhaseReady --
+	IntegrationPlatformPhaseReady IntegrationPlatformPhase = "Ready"
+	// IntegrationPlatformPhaseError --
+	IntegrationPlatformPhaseError IntegrationPlatformPhase = "Error"
+	// IntegrationPlatformPhaseDuplicate --
+	IntegrationPlatformPhaseDuplicate IntegrationPlatformPhase = "Duplicate"
+)
+
+func init() {
+	SchemeBuilder.Register(&IntegrationPlatform{}, &IntegrationPlatformList{})
+}
diff --git a/pkg/apis/camel/v1alpha1/integrationplatform_types_support.go b/pkg/apis/camel/v1alpha1/integrationplatform_types_support.go
new file mode 100644
index 0000000..08f2ab3
--- /dev/null
+++ b/pkg/apis/camel/v1alpha1/integrationplatform_types_support.go
@@ -0,0 +1,57 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package v1alpha1
+
+import (
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+	"strings"
+)
+
+// NewIntegrationPlatformList --
+func NewIntegrationPlatformList() IntegrationPlatformList {
+	return IntegrationPlatformList{
+		TypeMeta: metav1.TypeMeta{
+			APIVersion: SchemeGroupVersion.String(),
+			Kind:       IntegrationPlatformKind,
+		},
+	}
+}
+
+// NewIntegrationPlatform --
+func NewIntegrationPlatform(namespace string, name string) IntegrationPlatform {
+	return IntegrationPlatform{
+		TypeMeta: metav1.TypeMeta{
+			APIVersion: SchemeGroupVersion.String(),
+			Kind:       IntegrationPlatformKind,
+		},
+		ObjectMeta: metav1.ObjectMeta{
+			Namespace: namespace,
+			Name:      name,
+		},
+	}
+}
+
+// TraitProfileByName returns the trait profile corresponding to the given name (case insensitive)
+func TraitProfileByName(name string) TraitProfile {
+	for _, p := range allTraitProfiles {
+		if strings.EqualFold(name, string(p)) {
+			return p
+		}
+	}
+	return ""
+}
\ No newline at end of file
diff --git a/pkg/apis/camel/v1alpha1/knative/register.go b/pkg/apis/camel/v1alpha1/knative/register.go
deleted file mode 100644
index 2e90b5d..0000000
--- a/pkg/apis/camel/v1alpha1/knative/register.go
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-package knative
-
-import (
-	knative "github.com/knative/serving/pkg/apis/serving/v1alpha1"
-	"github.com/operator-framework/operator-sdk/pkg/util/k8sutil"
-)
-
-// Register all Knative types that we want to manage.
-func init() {
-	k8sutil.AddToSDKScheme(knative.AddToScheme)
-}
diff --git a/pkg/apis/camel/v1alpha1/register.go b/pkg/apis/camel/v1alpha1/register.go
index 7ef6212..044a8ef 100644
--- a/pkg/apis/camel/v1alpha1/register.go
+++ b/pkg/apis/camel/v1alpha1/register.go
@@ -1,57 +1,19 @@
-/*
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
+// NOTE: Boilerplate only.  Ignore this file.
 
+// Package v1alpha1 contains API Schema definitions for the camel v1alpha1 API group
+// +k8s:deepcopy-gen=package,register
+// +groupName=camel.apache.org
 package v1alpha1
 
 import (
-	sdkK8sutil "github.com/operator-framework/operator-sdk/pkg/util/k8sutil"
-
-	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
-	"k8s.io/apimachinery/pkg/runtime"
 	"k8s.io/apimachinery/pkg/runtime/schema"
-)
-
-const (
-	version   = "v1alpha1"
-	groupName = "camel.apache.org"
+	"sigs.k8s.io/controller-runtime/pkg/runtime/scheme"
 )
 
 var (
-	// SchemeGroupVersion is the group version used to register these objects.
-	SchemeGroupVersion = schema.GroupVersion{Group: groupName, Version: version}
-)
-
-func init() {
-	schemeBuilder := runtime.NewSchemeBuilder(addKnownTypes)
-	addToScheme := schemeBuilder.AddToScheme
+	// SchemeGroupVersion is group version used to register these objects
+	SchemeGroupVersion = schema.GroupVersion{Group: "camel.apache.org", Version: "v1alpha1"}
 
-	sdkK8sutil.AddToSDKScheme(addToScheme)
-}
-
-// addKnownTypes adds the set of types defined in this package to the supplied scheme.
-func addKnownTypes(scheme *runtime.Scheme) error {
-	scheme.AddKnownTypes(SchemeGroupVersion,
-		&Integration{},
-		&IntegrationList{},
-		&IntegrationContext{},
-		&IntegrationContextList{},
-		&IntegrationPlatform{},
-		&IntegrationPlatformList{},
-	)
-	metav1.AddToGroupVersion(scheme, SchemeGroupVersion)
-	return nil
-}
+	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
+	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
+)
diff --git a/pkg/apis/camel/v1alpha1/types.go b/pkg/apis/camel/v1alpha1/types.go
deleted file mode 100644
index 09b46fa..0000000
--- a/pkg/apis/camel/v1alpha1/types.go
+++ /dev/null
@@ -1,385 +0,0 @@
-/*
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-package v1alpha1
-
-import (
-	"github.com/apache/camel-k/pkg/util"
-	"github.com/mitchellh/mapstructure"
-	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
-
-	"strings"
-)
-
-// ConfigurationSpec --
-type ConfigurationSpec struct {
-	Type  string `json:"type"`
-	Value string `json:"value"`
-}
-
-// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-
-// IntegrationList --
-type IntegrationList struct {
-	metav1.TypeMeta `json:",inline"`
-	metav1.ListMeta `json:"metadata"`
-	Items           []Integration `json:"items"`
-}
-
-// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-
-// Integration --
-type Integration struct {
-	metav1.TypeMeta   `json:",inline"`
-	metav1.ObjectMeta `json:"metadata"`
-	Spec              IntegrationSpec   `json:"spec"`
-	Status            IntegrationStatus `json:"status,omitempty"`
-}
-
-// IntegrationSpec --
-type IntegrationSpec struct {
-	Replicas      *int32                          `json:"replicas,omitempty"`
-	Sources       []SourceSpec                    `json:"sources,omitempty"`
-	Resources     []ResourceSpec                  `json:"resources,omitempty"`
-	Context       string                          `json:"context,omitempty"`
-	Dependencies  []string                        `json:"dependencies,omitempty"`
-	Profile       TraitProfile                    `json:"profile,omitempty"`
-	Traits        map[string]IntegrationTraitSpec `json:"traits,omitempty"`
-	Configuration []ConfigurationSpec             `json:"configuration,omitempty"`
-	Repositories  []string                        `json:"repositories,omitempty"`
-}
-
-// AddSource --
-func (is *IntegrationSpec) AddSource(name string, content string, language Language) {
-	is.Sources = append(is.Sources, NewSourceSpec(name, content, language))
-}
-
-// AddSources --
-func (is *IntegrationSpec) AddSources(sources ...SourceSpec) {
-	is.Sources = append(is.Sources, sources...)
-}
-
-// AddResources --
-func (is *IntegrationSpec) AddResources(resources ...ResourceSpec) {
-	is.Resources = append(is.Resources, resources...)
-}
-
-// AddConfiguration --
-func (is *IntegrationSpec) AddConfiguration(confType string, confValue string) {
-	is.Configuration = append(is.Configuration, ConfigurationSpec{
-		Type:  confType,
-		Value: confValue,
-	})
-}
-
-// AddDependency --
-func (is *IntegrationSpec) AddDependency(dependency string) {
-	switch {
-	case strings.HasPrefix(dependency, "mvn:"):
-		util.StringSliceUniqueAdd(&is.Dependencies, dependency)
-	case strings.HasPrefix(dependency, "file:"):
-		util.StringSliceUniqueAdd(&is.Dependencies, dependency)
-	case strings.HasPrefix(dependency, "camel-"):
-		util.StringSliceUniqueAdd(&is.Dependencies, "camel:"+strings.TrimPrefix(dependency, "camel-"))
-	}
-}
-
-// DataSpec --
-type DataSpec struct {
-	Name        string `json:"name,omitempty"`
-	Content     string `json:"content,omitempty"`
-	Compression bool   `json:"compression,omitempty"`
-}
-
-// ResourceSpec --
-type ResourceSpec struct {
-	DataSpec
-}
-
-// SourceSpec --
-type SourceSpec struct {
-	DataSpec
-	Language Language `json:"language,omitempty"`
-}
-
-// Language --
-type Language string
-
-const (
-	// LanguageJavaSource --
-	LanguageJavaSource Language = "java"
-	// LanguageJavaClass --
-	LanguageJavaClass Language = "class"
-	// LanguageGroovy --
-	LanguageGroovy Language = "groovy"
-	// LanguageJavaScript --
-	LanguageJavaScript Language = "js"
-	// LanguageXML --
-	LanguageXML Language = "xml"
-	// LanguageKotlin --
-	LanguageKotlin Language = "kts"
-	// LanguageYamlFlow --
-	LanguageYamlFlow Language = "flow"
-)
-
-// Languages is the list of all supported languages
-var Languages = []Language{
-	LanguageJavaSource,
-	LanguageJavaClass,
-	LanguageJavaScript,
-	LanguageGroovy,
-	LanguageJavaScript,
-	LanguageKotlin,
-	LanguageYamlFlow,
-}
-
-// A IntegrationTraitSpec contains the configuration of a trait
-type IntegrationTraitSpec struct {
-	Configuration map[string]string `json:"configuration,omitempty"`
-}
-
-// Decode the trait configuration to a type safe struct
-func (in *IntegrationTraitSpec) Decode(target interface{}) error {
-	md := mapstructure.Metadata{}
-
-	decoder, err := mapstructure.NewDecoder(
-		&mapstructure.DecoderConfig{
-			Metadata:         &md,
-			WeaklyTypedInput: true,
-			TagName:          "property",
-			Result:           &target,
-		},
-	)
-
-	if err != nil {
-		return err
-	}
-
-	return decoder.Decode(in.Configuration)
-}
-
-// IntegrationStatus --
-type IntegrationStatus struct {
-	Phase        IntegrationPhase `json:"phase,omitempty"`
-	Digest       string           `json:"digest,omitempty"`
-	Image        string           `json:"image,omitempty"`
-	Dependencies []string         `json:"dependencies,omitempty"`
-	Context      string           `json:"context,omitempty"`
-}
-
-// IntegrationPhase --
-type IntegrationPhase string
-
-const (
-	// IntegrationKind --
-	IntegrationKind string = "Integration"
-
-	// IntegrationPhaseBuildingContext --
-	IntegrationPhaseBuildingContext IntegrationPhase = "Building Context"
-	// IntegrationPhaseBuildingImage --
-	IntegrationPhaseBuildingImage IntegrationPhase = "Building Image"
-	// IntegrationPhaseDeploying --
-	IntegrationPhaseDeploying IntegrationPhase = "Deploying"
-	// IntegrationPhaseRunning --
-	IntegrationPhaseRunning IntegrationPhase = "Running"
-	// IntegrationPhaseError --
-	IntegrationPhaseError IntegrationPhase = "Error"
-)
-
-// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-
-// IntegrationContextList --
-type IntegrationContextList struct {
-	metav1.TypeMeta `json:",inline"`
-	metav1.ListMeta `json:"metadata"`
-	Items           []IntegrationContext `json:"items"`
-}
-
-// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-
-// IntegrationContext --
-type IntegrationContext struct {
-	metav1.TypeMeta   `json:",inline"`
-	metav1.ObjectMeta `json:"metadata"`
-	Spec              IntegrationContextSpec   `json:"spec"`
-	Status            IntegrationContextStatus `json:"status,omitempty"`
-}
-
-// IntegrationContextSpec --
-type IntegrationContextSpec struct {
-	Dependencies  []string                        `json:"dependencies,omitempty"`
-	Profile       TraitProfile                    `json:"profile,omitempty"`
-	Traits        map[string]IntegrationTraitSpec `json:"traits,omitempty"`
-	Configuration []ConfigurationSpec             `json:"configuration,omitempty"`
-	Repositories  []string                        `json:"repositories,omitempty"`
-}
-
-// IntegrationContextStatus --
-type IntegrationContextStatus struct {
-	Phase       IntegrationContextPhase `json:"phase,omitempty"`
-	Image       string                  `json:"image,omitempty"`
-	PublicImage string                  `json:"publicImage,omitempty"`
-	Digest      string                  `json:"digest,omitempty"`
-	Artifacts   []Artifact              `json:"artifacts,omitempty"`
-}
-
-// ImageForIntegration returns the image to use when using it for running an integration
-func (c IntegrationContext) ImageForIntegration() string {
-	if c.Status.PublicImage != "" {
-		return c.Status.PublicImage
-	}
-	return c.Status.Image
-}
-
-// IntegrationContextPhase --
-type IntegrationContextPhase string
-
-const (
-	// IntegrationContextKind --
-	IntegrationContextKind string = "IntegrationContext"
-
-	// IntegrationContextTypePlatform --
-	IntegrationContextTypePlatform = "platform"
-
-	// IntegrationContextPhaseBuilding --
-	IntegrationContextPhaseBuilding IntegrationContextPhase = "Building"
-	// IntegrationContextPhaseReady --
-	IntegrationContextPhaseReady IntegrationContextPhase = "Ready"
-	// IntegrationContextPhaseError --
-	IntegrationContextPhaseError IntegrationContextPhase = "Error"
-)
-
-// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-
-// IntegrationPlatformList --
-type IntegrationPlatformList struct {
-	metav1.TypeMeta `json:",inline"`
-	metav1.ListMeta `json:"metadata"`
-	Items           []IntegrationPlatform `json:"items"`
-}
-
-// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
-
-// IntegrationPlatform --
-type IntegrationPlatform struct {
-	metav1.TypeMeta   `json:",inline"`
-	metav1.ObjectMeta `json:"metadata"`
-	Spec              IntegrationPlatformSpec   `json:"spec"`
-	Status            IntegrationPlatformStatus `json:"status,omitempty"`
-}
-
-// IntegrationPlatformSpec --
-type IntegrationPlatformSpec struct {
-	Cluster IntegrationPlatformCluster   `json:"cluster,omitempty"`
-	Profile TraitProfile                 `json:"profile,omitempty"`
-	Build   IntegrationPlatformBuildSpec `json:"build,omitempty"`
-}
-
-// IntegrationPlatformCluster is the kind of orchestration cluster the platform is installed into
-type IntegrationPlatformCluster string
-
-const (
-	// IntegrationPlatformClusterOpenShift is used when targeting a OpenShift cluster
-	IntegrationPlatformClusterOpenShift = "OpenShift"
-	// IntegrationPlatformClusterKubernetes is used when targeting a Kubernetes cluster
-	IntegrationPlatformClusterKubernetes = "Kubernetes"
-)
-
-// TraitProfile represents lists of traits that are enabled for the specific installation/integration
-type TraitProfile string
-
-const (
-	// TraitProfileOpenShift is used by default on OpenShift clusters
-	TraitProfileOpenShift = "OpenShift"
-	// TraitProfileKubernetes is used by default on Kubernetes clusters
-	TraitProfileKubernetes = "Kubernetes"
-	// TraitProfileKnative is used by default on OpenShift/Kubernetes clusters powered by Knative
-	TraitProfileKnative = "Knative"
-)
-
-var allTraitProfiles = []TraitProfile{TraitProfileOpenShift, TraitProfileKubernetes, TraitProfileKnative}
-
-// IntegrationPlatformBuildSpec contains platform related build information
-type IntegrationPlatformBuildSpec struct {
-	PublishStrategy IntegrationPlatformBuildPublishStrategy `json:"publishStrategy,omitempty"`
-	Registry        string                                  `json:"registry,omitempty"`
-	Organization    string                                  `json:"organization,omitempty"`
-	PushSecret      string                                  `json:"pushSecret,omitempty"`
-	CamelVersion    string                                  `json:"camelVersion,omitempty"`
-	Properties      map[string]string                       `json:"properties,omitempty"`
-	Repositories    []string                                `json:"repositories,omitempty"`
-}
-
-// IntegrationPlatformBuildPublishStrategy enumerates all implemented build strategies
-type IntegrationPlatformBuildPublishStrategy string
-
-const (
-	// IntegrationPlatformBuildPublishStrategyS2I performs a OpenShift binary S2I build
-	IntegrationPlatformBuildPublishStrategyS2I = "S2I"
-
-	// IntegrationPlatformBuildPublishStrategyKaniko performs
-	IntegrationPlatformBuildPublishStrategyKaniko = "Kaniko"
-)
-
-// IntegrationPlatformStatus --
-type IntegrationPlatformStatus struct {
-	Phase IntegrationPlatformPhase `json:"phase,omitempty"`
-}
-
-// IntegrationPlatformPhase --
-type IntegrationPlatformPhase string
-
-const (
-	// IntegrationPlatformKind --
-	IntegrationPlatformKind string = "IntegrationPlatform"
-
-	// IntegrationPlatformPhaseCreating --
-	IntegrationPlatformPhaseCreating IntegrationPlatformPhase = "Creating"
-	// IntegrationPlatformPhaseStarting --
-	IntegrationPlatformPhaseStarting IntegrationPlatformPhase = "Starting"
-	// IntegrationPlatformPhaseReady --
-	IntegrationPlatformPhaseReady IntegrationPlatformPhase = "Ready"
-	// IntegrationPlatformPhaseError --
-	IntegrationPlatformPhaseError IntegrationPlatformPhase = "Error"
-	// IntegrationPlatformPhaseDuplicate --
-	IntegrationPlatformPhaseDuplicate IntegrationPlatformPhase = "Duplicate"
-)
-
-// Artifact --
-type Artifact struct {
-	ID       string `json:"id" yaml:"id"`
-	Location string `json:"location,omitempty" yaml:"location,omitempty"`
-	Target   string `json:"target,omitempty" yaml:"target,omitempty"`
-}
-
-func (in *Artifact) String() string {
-	return in.ID
-}
-
-// Flow --
-type Flow struct {
-	Steps []Step `json:"steps"`
-}
-
-// Flows are collections of Flow
-type Flows []Flow
-
-// Step --
-type Step struct {
-	Kind string `json:"kind"`
-	URI  string `json:"uri"`
-}
diff --git a/pkg/apis/camel/v1alpha1/types_support.go b/pkg/apis/camel/v1alpha1/types_support.go
deleted file mode 100644
index f73414c..0000000
--- a/pkg/apis/camel/v1alpha1/types_support.go
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-package v1alpha1
-
-import (
-	"fmt"
-	"strings"
-
-	"gopkg.in/yaml.v2"
-	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
-)
-
-// **********************************
-//
-// Methods
-//
-// **********************************
-
-func (spec ConfigurationSpec) String() string {
-	return fmt.Sprintf("%s=%s", spec.Type, spec.Value)
-}
-
-// **********************************
-//
-// Helpers
-//
-// **********************************
-
-// NewSourceSpec --
-func NewSourceSpec(name string, content string, language Language) SourceSpec {
-	return SourceSpec{
-		DataSpec: DataSpec{
-			Name:    name,
-			Content: content,
-		},
-		Language: language,
-	}
-}
-
-// NewResourceSpec --
-func NewResourceSpec(name string, content string, destination string) ResourceSpec {
-	return ResourceSpec{
-		DataSpec: DataSpec{
-			Name:    name,
-			Content: content,
-		},
-	}
-}
-
-// NewIntegrationPlatformList --
-func NewIntegrationPlatformList() IntegrationPlatformList {
-	return IntegrationPlatformList{
-		TypeMeta: metav1.TypeMeta{
-			APIVersion: SchemeGroupVersion.String(),
-			Kind:       IntegrationPlatformKind,
-		},
-	}
-}
-
-// NewIntegrationPlatform --
-func NewIntegrationPlatform(namespace string, name string) IntegrationPlatform {
-	return IntegrationPlatform{
-		TypeMeta: metav1.TypeMeta{
-			APIVersion: SchemeGroupVersion.String(),
-			Kind:       IntegrationPlatformKind,
-		},
-		ObjectMeta: metav1.ObjectMeta{
-			Namespace: namespace,
-			Name:      name,
-		},
-	}
-}
-
-// NewIntegrationList --
-func NewIntegrationList() IntegrationList {
-	return IntegrationList{
-		TypeMeta: metav1.TypeMeta{
-			APIVersion: SchemeGroupVersion.String(),
-			Kind:       IntegrationKind,
-		},
-	}
-}
-
-// NewIntegrationContext --
-func NewIntegrationContext(namespace string, name string) IntegrationContext {
-	return IntegrationContext{
-		TypeMeta: metav1.TypeMeta{
-			APIVersion: SchemeGroupVersion.String(),
-			Kind:       IntegrationContextKind,
-		},
-		ObjectMeta: metav1.ObjectMeta{
-			Namespace: namespace,
-			Name:      name,
-		},
-	}
-}
-
-// NewIntegrationContextList --
-func NewIntegrationContextList() IntegrationContextList {
-	return IntegrationContextList{
-		TypeMeta: metav1.TypeMeta{
-			APIVersion: SchemeGroupVersion.String(),
-			Kind:       IntegrationContextKind,
-		},
-	}
-}
-
-// TraitProfileByName returns the trait profile corresponding to the given name (case insensitive)
-func TraitProfileByName(name string) TraitProfile {
-	for _, p := range allTraitProfiles {
-		if strings.EqualFold(name, string(p)) {
-			return p
-		}
-	}
-	return ""
-}
-
-// Serialize serializes a Flow
-func (flows Flows) Serialize() (string, error) {
-	res, err := yaml.Marshal(flows)
-	if err != nil {
-		return "", err
-	}
-	return string(res), nil
-}
-
-// InferLanguage returns the language of the source or discovers it from file extension if not set
-func (s SourceSpec) InferLanguage() Language {
-	if s.Language != "" {
-		return s.Language
-	}
-	for _, l := range Languages {
-		if strings.HasSuffix(s.Name, "."+string(l)) {
-			return l
-		}
-	}
-	return ""
-}
diff --git a/pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go
index 8df4769..f26f108 100644
--- a/pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go
+++ b/pkg/apis/camel/v1alpha1/zz_generated.deepcopy.go
@@ -1,14 +1,13 @@
 // +build !ignore_autogenerated
 
 /*
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
+Copyright The Kubernetes Authors.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
 
 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
diff --git a/pkg/builder/builder.go b/pkg/builder/builder.go
index 58d814e..0dd7388 100644
--- a/pkg/builder/builder.go
+++ b/pkg/builder/builder.go
@@ -22,6 +22,7 @@ import (
 	"errors"
 	"io/ioutil"
 	"os"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"sort"
 	"sync"
 	"sync/atomic"
@@ -41,6 +42,7 @@ import (
 type defaultBuilder struct {
 	log       *logrus.Entry
 	ctx       context.Context
+	client    client.Client
 	requests  chan Request
 	interrupt chan bool
 	request   sync.Map
@@ -49,10 +51,11 @@ type defaultBuilder struct {
 }
 
 // New --
-func New(ctx context.Context, namespace string) Builder {
+func New(ctx context.Context, c client.Client, namespace string) Builder {
 	m := defaultBuilder{
 		log:       logrus.WithField("logger", "builder"),
 		ctx:       ctx,
+		client:    c,
 		requests:  make(chan Request),
 		interrupt: make(chan bool, 1),
 		running:   0,
@@ -144,6 +147,7 @@ func (b *defaultBuilder) submit(request Request) {
 
 	c := Context{
 		C:         b.ctx,
+		Client:    b.client,
 		Path:      builderPath,
 		Namespace: b.namespace,
 		Request:   request,
diff --git a/pkg/builder/builder_steps.go b/pkg/builder/builder_steps.go
index ffe7137..b640871 100644
--- a/pkg/builder/builder_steps.go
+++ b/pkg/builder/builder_steps.go
@@ -22,6 +22,7 @@ import (
 	"io/ioutil"
 	"os"
 	"path"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"strings"
 
 	"github.com/scylladb/go-set/strset"
@@ -29,8 +30,6 @@ import (
 	"github.com/rs/xid"
 
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
-
 	"github.com/apache/camel-k/pkg/util/tar"
 
 	"gopkg.in/yaml.v2"
@@ -245,7 +244,7 @@ func packager(ctx *Context, selector ArtifactsSelector) error {
 func ListPublishedImages(context *Context) ([]PublishedImage, error) {
 	list := v1alpha1.NewIntegrationContextList()
 
-	err := sdk.List(context.Namespace, &list, sdk.WithListOptions(&metav1.ListOptions{}))
+	err := context.Client.List(context.C, &client.ListOptions{Namespace: context.Namespace}, &list)
 	if err != nil {
 		return nil, err
 	}
@@ -350,8 +349,12 @@ func NotifyIntegrationContext(ctx *Context) error {
 			Name:      ctx.Request.Meta.Name,
 		},
 	}
+	key := client.ObjectKey{
+		Namespace: ctx.Namespace,
+		Name: ctx.Request.Meta.Name,
+	}
 
-	if err := sdk.Get(&target); err != nil {
+	if err := ctx.Client.Get(ctx.C, key, &target); err != nil {
 		return err
 	}
 
@@ -363,7 +366,7 @@ func NotifyIntegrationContext(ctx *Context) error {
 	// Add a random ID to trigger update
 	t.Annotations["camel.apache.org/build.id"] = xid.New().String()
 
-	if err := sdk.Update(t); err != nil {
+	if err := ctx.Client.Update(ctx.C, t); err != nil {
 		return err
 	}
 
@@ -382,8 +385,12 @@ func NotifyIntegration(ctx *Context) error {
 			Name:      ctx.Request.Meta.Name,
 		},
 	}
+	key := client.ObjectKey{
+		Namespace: ctx.Namespace,
+		Name: ctx.Request.Meta.Name,
+	}
 
-	if err := sdk.Get(&target); err != nil {
+	if err := ctx.Client.Get(ctx.C, key, &target); err != nil {
 		return err
 	}
 
@@ -395,7 +402,7 @@ func NotifyIntegration(ctx *Context) error {
 	// Add a random ID to trigger update
 	t.Annotations["camel.apache.org/build.id"] = xid.New().String()
 
-	if err := sdk.Update(t); err != nil {
+	if err := ctx.Client.Update(ctx.C, t); err != nil {
 		return err
 	}
 
diff --git a/pkg/builder/builder_types.go b/pkg/builder/builder_types.go
index d0e13b4..ffad6dc 100644
--- a/pkg/builder/builder_types.go
+++ b/pkg/builder/builder_types.go
@@ -21,6 +21,7 @@ import (
 	"context"
 	"fmt"
 	"math"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"time"
 
 	"k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -137,6 +138,7 @@ type Result struct {
 // Context --
 type Context struct {
 	C                 context.Context
+	client.Client
 	Request           Request
 	Image             string
 	PublicImage       string
diff --git a/pkg/builder/kaniko/publisher.go b/pkg/builder/kaniko/publisher.go
index d9533d0..4710b4b 100644
--- a/pkg/builder/kaniko/publisher.go
+++ b/pkg/builder/kaniko/publisher.go
@@ -26,7 +26,6 @@ import (
 	"github.com/apache/camel-k/pkg/util/tar"
 
 	"github.com/apache/camel-k/pkg/util/kubernetes"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	"github.com/pkg/errors"
 	"k8s.io/api/core/v1"
 	apierrors "k8s.io/apimachinery/pkg/api/errors"
@@ -139,17 +138,17 @@ func Publisher(ctx *builder.Context) error {
 		},
 	}
 
-	err = sdk.Delete(&pod)
+	err = ctx.Client.Delete(ctx.C, &pod)
 	if err != nil && !apierrors.IsNotFound(err) {
 		return errors.Wrap(err, "cannot delete kaniko builder pod")
 	}
 
-	err = sdk.Create(&pod)
+	err = ctx.Client.Create(ctx.C, &pod)
 	if err != nil {
 		return errors.Wrap(err, "cannot create kaniko builder pod")
 	}
 
-	err = kubernetes.WaitCondition(&pod, func(obj interface{}) (bool, error) {
+	err = kubernetes.WaitCondition(ctx.C, ctx.Client, &pod, func(obj interface{}) (bool, error) {
 		if val, ok := obj.(*v1.Pod); ok {
 			if val.Status.Phase == v1.PodSucceeded {
 				return true, nil
diff --git a/pkg/builder/s2i/publisher.go b/pkg/builder/s2i/publisher.go
index 437c870..b365754 100644
--- a/pkg/builder/s2i/publisher.go
+++ b/pkg/builder/s2i/publisher.go
@@ -19,19 +19,17 @@ package s2i
 
 import (
 	"io/ioutil"
+	"k8s.io/apimachinery/pkg/util/json"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"time"
 
 	"github.com/apache/camel-k/pkg/builder"
 
 	"github.com/apache/camel-k/pkg/util/kubernetes"
 	"github.com/apache/camel-k/pkg/util/kubernetes/customclient"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
-	"github.com/operator-framework/operator-sdk/pkg/util/k8sutil"
-	"k8s.io/api/core/v1"
-	"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
-
 	buildv1 "github.com/openshift/api/build/v1"
 	imagev1 "github.com/openshift/api/image/v1"
+	"k8s.io/api/core/v1"
 	apierrors "k8s.io/apimachinery/pkg/api/errors"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 
@@ -72,12 +70,12 @@ func Publisher(ctx *builder.Context) error {
 		},
 	}
 
-	err := sdk.Delete(&bc)
+	err := ctx.Client.Delete(ctx.C, &bc)
 	if err != nil && !apierrors.IsNotFound(err) {
 		return errors.Wrap(err, "cannot delete build config")
 	}
 
-	err = sdk.Create(&bc)
+	err = ctx.Client.Create(ctx.C, &bc)
 	if err != nil {
 		return errors.Wrap(err, "cannot create build config")
 	}
@@ -98,12 +96,12 @@ func Publisher(ctx *builder.Context) error {
 		},
 	}
 
-	err = sdk.Delete(&is)
+	err = ctx.Client.Delete(ctx.C, &is)
 	if err != nil && !apierrors.IsNotFound(err) {
 		return errors.Wrap(err, "cannot delete image stream")
 	}
 
-	err = sdk.Create(&is)
+	err = ctx.Client.Create(ctx.C, &is)
 	if err != nil {
 		return errors.Wrap(err, "cannot create image stream")
 	}
@@ -113,7 +111,11 @@ func Publisher(ctx *builder.Context) error {
 		return errors.Wrap(err, "cannot fully read tar file "+ctx.Archive)
 	}
 
-	restClient, err := customclient.GetClientFor("build.openshift.io", "v1")
+	kc, err := kubernetes.AsKubernetesClient(ctx.Client)
+	if err != nil {
+		return err
+	}
+	restClient, err := customclient.GetClientFor(kc,"build.openshift.io", "v1")
 	if err != nil {
 		return err
 	}
@@ -135,18 +137,13 @@ func Publisher(ctx *builder.Context) error {
 		return errors.Wrap(err, "no raw data retrieved")
 	}
 
-	u := unstructured.Unstructured{}
-	err = u.UnmarshalJSON(data)
+	ocbuild := buildv1.Build{}
+	json.Unmarshal(data, &ocbuild)
 	if err != nil {
-		return errors.Wrap(err, "cannot unmarshal instantiate binary response")
+		return errors.Wrap(err, "cannot unmarshal instantiated binary response")
 	}
 
-	ocbuild, err := k8sutil.RuntimeObjectFromUnstructured(&u)
-	if err != nil {
-		return err
-	}
-
-	err = kubernetes.WaitCondition(ocbuild, func(obj interface{}) (bool, error) {
+	err = kubernetes.WaitCondition(ctx.C, ctx.Client, &ocbuild, func(obj interface{}) (bool, error) {
 		if val, ok := obj.(*buildv1.Build); ok {
 			if val.Status.Phase == buildv1.BuildPhaseComplete {
 				return true, nil
@@ -162,7 +159,11 @@ func Publisher(ctx *builder.Context) error {
 		return err
 	}
 
-	err = sdk.Get(&is)
+	key, err := client.ObjectKeyFromObject(&is)
+	if err != nil {
+		return err
+	}
+	err = ctx.Client.Get(ctx.C, key, &is)
 	if err != nil {
 		return err
 	}
diff --git a/pkg/client/cmd/completion_bash.go b/pkg/client/cmd/completion_bash.go
index ad3ccbf..836b391 100644
--- a/pkg/client/cmd/completion_bash.go
+++ b/pkg/client/cmd/completion_bash.go
@@ -18,6 +18,7 @@ limitations under the License.
 package cmd
 
 import (
+	"context"
 	"fmt"
 	"os"
 	"strings"
@@ -70,7 +71,7 @@ __kamel_dependency_type() {
 }
 
 __kamel_traits() {
-    local type_list="` + strings.Join(trait.NewCatalog().ComputeTraitsProperties(), " ") + `"
+    local type_list="` + strings.Join(trait.NewCatalog(context.TODO(), nil).ComputeTraitsProperties(), " ") + `"
     COMPREPLY=( $( compgen -W "${type_list}" -- "$cur") )
     compopt -o nospace
 }
diff --git a/pkg/client/cmd/context_create.go b/pkg/client/cmd/context_create.go
index 0bc8e97..e972853 100644
--- a/pkg/client/cmd/context_create.go
+++ b/pkg/client/cmd/context_create.go
@@ -20,13 +20,12 @@ package cmd
 import (
 	"errors"
 	"fmt"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"strconv"
 	"strings"
 
 	"github.com/apache/camel-k/pkg/util"
 
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
-
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
 	"github.com/apache/camel-k/pkg/util/kubernetes"
 
@@ -81,8 +80,16 @@ func (command *contextCreateCommand) validateArgs(cmd *cobra.Command, args []str
 }
 
 func (command *contextCreateCommand) run(cmd *cobra.Command, args []string) error {
+	c, err := command.GetCmdClient()
+	if err != nil {
+		return err
+	}
 	ctx := v1alpha1.NewIntegrationContext(command.Namespace, args[0])
-	if err := sdk.Get(&ctx); err == nil {
+	key := client.ObjectKey{
+		Namespace: command.Namespace,
+		Name: args[0],
+	}
+	if err := c.Get(command.Context, key, &ctx); err == nil {
 		// the integration context already exists, let's check that it is
 		// not a platform one which is supposed to be "read only"
 
@@ -140,17 +147,17 @@ func (command *contextCreateCommand) run(cmd *cobra.Command, args []string) erro
 	}
 
 	existed := false
-	err := sdk.Create(&ctx)
+	err = c.Create(command.Context, &ctx)
 	if err != nil && k8serrors.IsAlreadyExists(err) {
 		existed = true
 		clone := ctx.DeepCopy()
-		err = sdk.Get(clone)
+		err = c.Get(command.Context, key, clone)
 		if err != nil {
 			fmt.Print(err.Error())
 			return nil
 		}
 		ctx.ResourceVersion = clone.ResourceVersion
-		err = sdk.Update(&ctx)
+		err = c.Update(command.Context, &ctx)
 	}
 
 	if err != nil {
diff --git a/pkg/client/cmd/context_delete.go b/pkg/client/cmd/context_delete.go
index cf64eee..5745336 100644
--- a/pkg/client/cmd/context_delete.go
+++ b/pkg/client/cmd/context_delete.go
@@ -20,9 +20,9 @@ package cmd
 import (
 	"errors"
 	"fmt"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	"github.com/spf13/cobra"
 
 	k8errors "k8s.io/apimachinery/pkg/api/errors"
@@ -73,9 +73,14 @@ func (command *contextDeleteCommand) validate(args []string) error {
 func (command *contextDeleteCommand) run(args []string) error {
 	names := args
 
+	c, err := command.GetCmdClient()
+	if err != nil {
+		return err
+	}
+
 	if command.all {
 		ctxList := v1alpha1.NewIntegrationContextList()
-		if err := sdk.List(command.Namespace, &ctxList); err != nil {
+		if err := c.List(command.Context, &client.ListOptions{Namespace: command.Namespace}, &ctxList); err != nil {
 			return err
 		}
 
@@ -99,8 +104,16 @@ func (command *contextDeleteCommand) run(args []string) error {
 
 func (command *contextDeleteCommand) delete(name string) error {
 	ctx := v1alpha1.NewIntegrationContext(command.Namespace, name)
+	key := client.ObjectKey{
+		Namespace: command.Namespace,
+		Name: name,
+	}
+	c, err := command.GetCmdClient()
+	if err != nil {
+		return err
+	}
 
-	err := sdk.Get(&ctx)
+	err = c.Get(command.Context, key, &ctx)
 
 	// pass through if the context is not found
 	if err != nil && k8errors.IsNotFound(err) {
@@ -123,7 +136,7 @@ func (command *contextDeleteCommand) delete(name string) error {
 		return fmt.Errorf("integration context \"%s\" is not editable", ctx.Name)
 	}
 
-	err = sdk.Delete(&ctx)
+	err = c.Delete(command.Context, &ctx)
 
 	if err != nil && !k8errors.IsNotFound(err) {
 		return fmt.Errorf("error deleting integration context \"%s\", %s", ctx.Name, err)
diff --git a/pkg/client/cmd/context_get.go b/pkg/client/cmd/context_get.go
index f264b91..a666ce5 100644
--- a/pkg/client/cmd/context_get.go
+++ b/pkg/client/cmd/context_get.go
@@ -20,10 +20,10 @@ package cmd
 import (
 	"fmt"
 	"os"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"text/tabwriter"
 
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	"github.com/spf13/cobra"
 )
 
@@ -67,7 +67,11 @@ func (command *contextGetCommand) validate(cmd *cobra.Command, args []string) er
 
 func (command *contextGetCommand) run() error {
 	ctxList := v1alpha1.NewIntegrationContextList()
-	if err := sdk.List(command.Namespace, &ctxList); err != nil {
+	c, err := command.GetCmdClient()
+	if err != nil {
+		return err
+	}
+	if err := c.List(command.Context, &client.ListOptions{Namespace: command.Namespace}, &ctxList); err != nil {
 		return err
 	}
 
diff --git a/pkg/client/cmd/delete.go b/pkg/client/cmd/delete.go
index 5c3f470..f724f77 100644
--- a/pkg/client/cmd/delete.go
+++ b/pkg/client/cmd/delete.go
@@ -20,10 +20,10 @@ package cmd
 import (
 	"errors"
 	"fmt"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"strconv"
 
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	"github.com/spf13/cobra"
 	k8errors "k8s.io/apimachinery/pkg/api/errors"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -71,11 +71,14 @@ func (command *deleteCmdOptions) validate(args []string) error {
 }
 
 func (command *deleteCmdOptions) run(args []string) error {
-
+	c, err := command.GetCmdClient()
+	if err != nil {
+		return err
+	}
 	if len(args) != 0 && !command.deleteAll {
 		for _, arg := range args {
 
-			err := DeleteIntegration(arg, command.Namespace)
+			err := DeleteIntegration(command.Context, c, arg, command.Namespace)
 			if err != nil {
 				if k8errors.IsNotFound(err) {
 					fmt.Println("Integration " + arg + " not found. Skipped.")
@@ -95,13 +98,13 @@ func (command *deleteCmdOptions) run(args []string) error {
 		}
 
 		//Looks like Operator SDK doesn't support deletion of all objects with one command
-		err := sdk.List(command.Namespace, &integrationList)
+		err := c.List(command.Context, &client.ListOptions{Namespace: command.Namespace}, &integrationList)
 		if err != nil {
 			return err
 		}
 		for _, integration := range integrationList.Items {
 			integration := integration // pin
-			err := sdk.Delete(&integration)
+			err := c.Delete(command.Context, &integration)
 			if err != nil {
 				return err
 			}
diff --git a/pkg/client/cmd/get.go b/pkg/client/cmd/get.go
index d9e4851..528bc57 100644
--- a/pkg/client/cmd/get.go
+++ b/pkg/client/cmd/get.go
@@ -20,10 +20,10 @@ package cmd
 import (
 	"fmt"
 	"os"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"text/tabwriter"
 
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	"github.com/spf13/cobra"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 )
@@ -47,6 +47,11 @@ func newCmdGet(rootCmdOptions *RootCmdOptions) *cobra.Command {
 }
 
 func (o *getCmdOptions) run(cmd *cobra.Command, args []string) error {
+	c, err := o.GetCmdClient()
+	if err != nil {
+		return err
+	}
+
 	integrationList := v1alpha1.IntegrationList{
 		TypeMeta: metav1.TypeMeta{
 			APIVersion: v1alpha1.SchemeGroupVersion.String(),
@@ -56,7 +61,7 @@ func (o *getCmdOptions) run(cmd *cobra.Command, args []string) error {
 
 	namespace := o.Namespace
 
-	err := sdk.List(namespace, &integrationList)
+	err = c.List(o.Context, &client.ListOptions{Namespace: namespace}, &integrationList)
 	if err != nil {
 		return err
 	}
diff --git a/pkg/client/cmd/install.go b/pkg/client/cmd/install.go
index 6abe4bc..fceebdf 100644
--- a/pkg/client/cmd/install.go
+++ b/pkg/client/cmd/install.go
@@ -20,15 +20,12 @@ package cmd
 import (
 	"fmt"
 
-	"strings"
-	"time"
-
 	"github.com/apache/camel-k/pkg/install"
 	"github.com/apache/camel-k/pkg/util/kubernetes"
-	"github.com/operator-framework/operator-sdk/pkg/k8sclient"
 	"github.com/pkg/errors"
 	"github.com/spf13/cobra"
 	k8serrors "k8s.io/apimachinery/pkg/api/errors"
+	"strings"
 )
 
 func newCmdInstall(rootCmdOptions *RootCmdOptions) *cobra.Command {
@@ -71,8 +68,14 @@ type installCmdOptions struct {
 }
 
 func (o *installCmdOptions) install(cmd *cobra.Command, args []string) error {
+	// TODO verify if this is needed by running a installation from scratch
 	// Let's use a fast refresh period when running with the CLI
-	k8sclient.ResetCacheEvery(8 * time.Second)
+	// k8sclient.ResetCacheEvery(8 * time.Second)
+
+	c, err := o.GetCmdClient()
+	if err != nil {
+		return err
+	}
 
 	var collection *kubernetes.Collection
 	if o.outputFormat != "" {
@@ -80,7 +83,7 @@ func (o *installCmdOptions) install(cmd *cobra.Command, args []string) error {
 	}
 
 	if !o.skipClusterSetup {
-		err := install.SetupClusterwideResourcesOrCollect(collection)
+		err := install.SetupClusterwideResourcesOrCollect(o.Context, c, collection)
 		if err != nil && k8serrors.IsForbidden(err) {
 			fmt.Println("Current user is not authorized to create cluster-wide objects like custom resource definitions or cluster roles: ", err)
 
@@ -98,12 +101,12 @@ func (o *installCmdOptions) install(cmd *cobra.Command, args []string) error {
 	} else {
 		namespace := o.Namespace
 
-		err := install.OperatorOrCollect(namespace, collection)
+		err := install.OperatorOrCollect(o.Context, c, namespace, collection)
 		if err != nil {
 			return err
 		}
 
-		platform, err := install.PlatformOrCollect(namespace, o.registry, o.organization, o.pushSecret, collection)
+		platform, err := install.PlatformOrCollect(o.Context, c, namespace, o.registry, o.organization, o.pushSecret, collection)
 		if err != nil {
 			return err
 		}
@@ -126,13 +129,13 @@ func (o *installCmdOptions) install(cmd *cobra.Command, args []string) error {
 			platform.Spec.Build.CamelVersion = o.camelVersion
 		}
 
-		err = install.RuntimeObjectOrCollect(namespace, collection, platform)
+		err = install.RuntimeObjectOrCollect(o.Context, c, namespace, collection, platform)
 		if err != nil {
 			return err
 		}
 
 		if o.exampleSetup {
-			err = install.ExampleOrCollect(namespace, collection)
+			err = install.ExampleOrCollect(o.Context, c, namespace, collection)
 			if err != nil {
 				return err
 			}
diff --git a/pkg/client/cmd/log.go b/pkg/client/cmd/log.go
index d727718..39bcc24 100644
--- a/pkg/client/cmd/log.go
+++ b/pkg/client/cmd/log.go
@@ -19,8 +19,9 @@ package cmd
 
 import (
 	"fmt"
+	"github.com/apache/camel-k/pkg/util/kubernetes"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
@@ -60,6 +61,14 @@ func (o *logCmdOptions) validate(cmd *cobra.Command, args []string) error {
 }
 
 func (o *logCmdOptions) run(cmd *cobra.Command, args []string) error {
+	c, err := o.GetCmdClient()
+	if err != nil {
+		return err
+	}
+	kc, err := kubernetes.AsKubernetesClient(c)
+	if err != nil {
+		return err
+	}
 	integration := v1alpha1.Integration{
 		TypeMeta: metav1.TypeMeta{
 			Kind:       v1alpha1.IntegrationKind,
@@ -70,11 +79,15 @@ func (o *logCmdOptions) run(cmd *cobra.Command, args []string) error {
 			Name:      args[0],
 		},
 	}
+	key := client.ObjectKey{
+		Namespace: o.Namespace,
+		Name: args[0],
+	}
 
-	if err := sdk.Get(&integration); err != nil {
+	if err := c.Get(o.Context, key, &integration); err != nil {
 		return err
 	}
-	if err := log.Print(o.Context, &integration); err != nil {
+	if err := log.Print(o.Context, kc, &integration); err != nil {
 		return err
 	}
 
diff --git a/pkg/client/cmd/reset.go b/pkg/client/cmd/reset.go
index 6a456b7..0e5caa2 100644
--- a/pkg/client/cmd/reset.go
+++ b/pkg/client/cmd/reset.go
@@ -19,9 +19,9 @@ package cmd
 
 import (
 	"fmt"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	"github.com/pkg/errors"
 	"github.com/spf13/cobra"
 )
@@ -45,55 +45,59 @@ type resetCmdOptions struct {
 }
 
 func (o *resetCmdOptions) reset(cmd *cobra.Command, args []string) (err error) {
+	c, err := o.GetCmdClient()
+	if err != nil {
+		return err
+	}
 	var n int
-	if n, err = o.deleteAllIntegrations(); err != nil {
+	if n, err = o.deleteAllIntegrations(c); err != nil {
 		return err
 	}
 	fmt.Printf("%d integrations deleted from namespace %s\n", n, o.Namespace)
 
-	if n, err = o.deleteAllIntegrationContexts(); err != nil {
+	if n, err = o.deleteAllIntegrationContexts(c); err != nil {
 		return err
 	}
 	fmt.Printf("%d integration contexts deleted from namespace %s\n", n, o.Namespace)
 
-	if err = o.resetIntegrationPlatform(); err != nil {
+	if err = o.resetIntegrationPlatform(c); err != nil {
 		return err
 	}
 	fmt.Println("Camel K platform has been reset successfully!")
 	return err
 }
 
-func (o *resetCmdOptions) deleteAllIntegrations() (int, error) {
+func (o *resetCmdOptions) deleteAllIntegrations(c client.Client) (int, error) {
 	list := v1alpha1.NewIntegrationList()
-	if err := sdk.List(o.Namespace, &list); err != nil {
+	if err := c.List(o.Context, &client.ListOptions{Namespace: o.Namespace}, &list); err != nil {
 		return 0, errors.Wrap(err, fmt.Sprintf("could not retrieve integrations from namespace %s", o.Namespace))
 	}
 	for _, i := range list.Items {
 		it := i
-		if err := sdk.Delete(&it); err != nil {
+		if err := c.Delete(o.Context, &it); err != nil {
 			return 0, errors.Wrap(err, fmt.Sprintf("could not delete integration %s from namespace %s", it.Name, it.Namespace))
 		}
 	}
 	return len(list.Items), nil
 }
 
-func (o *resetCmdOptions) deleteAllIntegrationContexts() (int, error) {
+func (o *resetCmdOptions) deleteAllIntegrationContexts(c client.Client) (int, error) {
 	list := v1alpha1.NewIntegrationContextList()
-	if err := sdk.List(o.Namespace, &list); err != nil {
+	if err := c.List(o.Context, &client.ListOptions{Namespace: o.Namespace}, &list); err != nil {
 		return 0, errors.Wrap(err, fmt.Sprintf("could not retrieve integration contexts from namespace %s", o.Namespace))
 	}
 	for _, i := range list.Items {
 		ictx := i
-		if err := sdk.Delete(&ictx); err != nil {
+		if err := c.Delete(o.Context, &ictx); err != nil {
 			return 0, errors.Wrap(err, fmt.Sprintf("could not delete integration context %s from namespace %s", ictx.Name, ictx.Namespace))
 		}
 	}
 	return len(list.Items), nil
 }
 
-func (o *resetCmdOptions) resetIntegrationPlatform() error {
+func (o *resetCmdOptions) resetIntegrationPlatform(c client.Client) error {
 	list := v1alpha1.NewIntegrationPlatformList()
-	if err := sdk.List(o.Namespace, &list); err != nil {
+	if err := c.List(o.Context, &client.ListOptions{Namespace: o.Namespace}, &list); err != nil {
 		return errors.Wrap(err, fmt.Sprintf("could not retrieve integration platform from namespace %s", o.Namespace))
 	}
 	if len(list.Items) > 1 {
@@ -104,5 +108,5 @@ func (o *resetCmdOptions) resetIntegrationPlatform() error {
 	platform := list.Items[0]
 	// Let's reset the status
 	platform.Status = v1alpha1.IntegrationPlatformStatus{}
-	return sdk.Update(&platform)
+	return c.Update(o.Context, &platform)
 }
diff --git a/pkg/client/cmd/root.go b/pkg/client/cmd/root.go
index 92a83e8..0ed2cda 100644
--- a/pkg/client/cmd/root.go
+++ b/pkg/client/cmd/root.go
@@ -19,6 +19,10 @@ package cmd
 
 import (
 	"context"
+	"github.com/apache/camel-k/pkg/apis"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+	"sigs.k8s.io/controller-runtime/pkg/client/config"
+	"sigs.k8s.io/controller-runtime/pkg/manager"
 
 	"github.com/apache/camel-k/pkg/util/kubernetes"
 	"github.com/pkg/errors"
@@ -34,6 +38,7 @@ specifically designed for serverless and microservice architectures.",,
 // RootCmdOptions --
 type RootCmdOptions struct {
 	Context    context.Context
+	_client    client.Client
 	KubeConfig string
 	Namespace  string
 }
@@ -44,9 +49,9 @@ func NewKamelCommand(ctx context.Context) (*cobra.Command, error) {
 		Context: ctx,
 	}
 	var cmd = cobra.Command{
-		Use:                    "kamel",
-		Short:                  "Kamel is a awesome client tool for running Apache Camel integrations natively on Kubernetes",
-		Long:                   kamelCommandLongDescription,
+		Use:   "kamel",
+		Short: "Kamel is a awesome client tool for running Apache Camel integrations natively on Kubernetes",
+		Long:  kamelCommandLongDescription,
 		BashCompletionFunction: bashCompletionFunction,
 		PersistentPreRunE: func(cmd *cobra.Command, args []string) error {
 			if options.Namespace == "" {
@@ -80,3 +85,25 @@ func NewKamelCommand(ctx context.Context) (*cobra.Command, error) {
 
 	return &cmd, nil
 }
+
+// GetCmdClient returns a client that can be used from command line tools
+func (command *RootCmdOptions) GetCmdClient() (client.Client, error) {
+	// Get the pre-computed client
+	if command._client != nil {
+		return command._client, nil
+	}
+	// Get a config to talk to the apiserver
+	cfg, err := config.GetConfig()
+	if err != nil {
+		return nil, err
+	}
+	// Create a new Cmd to provide shared dependencies and start components
+	mgr, err := manager.New(cfg, manager.Options{Namespace: command.Namespace})
+
+	// Setup Scheme for all resources
+	if err := apis.AddToScheme(mgr.GetScheme()); err != nil {
+		return nil, err
+	}
+	command._client = mgr.GetClient()
+	return command._client, nil
+}
diff --git a/pkg/client/cmd/run.go b/pkg/client/cmd/run.go
index 376b91a..6c778bd 100644
--- a/pkg/client/cmd/run.go
+++ b/pkg/client/cmd/run.go
@@ -27,6 +27,7 @@ import (
 	"os/signal"
 	"path"
 	"regexp"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 	"strconv"
 	"strings"
 	"syscall"
@@ -44,7 +45,6 @@ import (
 	"github.com/apache/camel-k/pkg/util/log"
 	"github.com/apache/camel-k/pkg/util/sync"
 	"github.com/apache/camel-k/pkg/util/watch"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	"github.com/spf13/cobra"
 	k8serrors "k8s.io/apimachinery/pkg/api/errors"
 	"k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -144,7 +144,16 @@ func (o *runCmdOptions) validateArgs(cmd *cobra.Command, args []string) error {
 }
 
 func (o *runCmdOptions) run(cmd *cobra.Command, args []string) error {
-	catalog := trait.NewCatalog()
+	c, err := o.GetCmdClient()
+	if err != nil {
+		return err
+	}
+	kc, err := kubernetes.AsKubernetesClient(c)
+	if err != nil {
+		return err
+	}
+
+	catalog := trait.NewCatalog(o.Context, c)
 	tp := catalog.ComputeTraitsProperties()
 	for _, t := range o.Traits {
 		kv := strings.SplitN(t, "=", 2)
@@ -155,18 +164,18 @@ func (o *runCmdOptions) run(cmd *cobra.Command, args []string) error {
 		}
 	}
 
-	integration, err := o.createIntegration(args)
+	integration, err := o.createIntegration(c, args)
 	if err != nil {
 		return err
 	}
 
 	if o.Dev {
-		c := make(chan os.Signal)
-		signal.Notify(c, os.Interrupt, syscall.SIGTERM)
+		cs := make(chan os.Signal)
+		signal.Notify(cs, os.Interrupt, syscall.SIGTERM)
 		go func() {
-			<-c
+			<-cs
 			fmt.Printf("Run integration terminating\n")
-			err := DeleteIntegration(integration.Name, integration.Namespace)
+			err := DeleteIntegration(o.Context, c, integration.Name, integration.Namespace)
 			if err != nil {
 				fmt.Println(err)
 			}
@@ -175,7 +184,7 @@ func (o *runCmdOptions) run(cmd *cobra.Command, args []string) error {
 	}
 
 	if o.Sync || o.Dev {
-		err = o.syncIntegration(args)
+		err = o.syncIntegration(c, args)
 		if err != nil {
 			return err
 		}
@@ -187,7 +196,7 @@ func (o *runCmdOptions) run(cmd *cobra.Command, args []string) error {
 		}
 	}
 	if o.Logs || o.Dev {
-		err = log.Print(o.Context, integration)
+		err = log.Print(o.Context, kc, integration)
 		if err != nil {
 			return err
 		}
@@ -225,7 +234,7 @@ func (o *runCmdOptions) waitForIntegrationReady(integration *v1alpha1.Integratio
 	return watch.HandleStateChanges(o.Context, integration, handler)
 }
 
-func (o *runCmdOptions) syncIntegration(sources []string) error {
+func (o *runCmdOptions) syncIntegration(c client.Client, sources []string) error {
 	for _, s := range sources {
 		changes, err := sync.File(o.Context, s)
 		if err != nil {
@@ -237,7 +246,7 @@ func (o *runCmdOptions) syncIntegration(sources []string) error {
 				case <-o.Context.Done():
 					return
 				case <-changes:
-					_, err := o.updateIntegrationCode(sources)
+					_, err := o.updateIntegrationCode(c, sources)
 					if err != nil {
 						logrus.Error("Unable to sync integration: ", err)
 					}
@@ -249,11 +258,11 @@ func (o *runCmdOptions) syncIntegration(sources []string) error {
 	return nil
 }
 
-func (o *runCmdOptions) createIntegration(sources []string) (*v1alpha1.Integration, error) {
-	return o.updateIntegrationCode(sources)
+func (o *runCmdOptions) createIntegration(c client.Client, sources []string) (*v1alpha1.Integration, error) {
+	return o.updateIntegrationCode(c, sources)
 }
 
-func (o *runCmdOptions) updateIntegrationCode(sources []string) (*v1alpha1.Integration, error) {
+func (o *runCmdOptions) updateIntegrationCode(c client.Client, sources []string) (*v1alpha1.Integration, error) {
 	namespace := o.Namespace
 
 	name := ""
@@ -366,16 +375,20 @@ func (o *runCmdOptions) updateIntegrationCode(sources []string) (*v1alpha1.Integ
 	}
 
 	existed := false
-	err := sdk.Create(&integration)
+	err := c.Create(o.Context, &integration)
 	if err != nil && k8serrors.IsAlreadyExists(err) {
 		existed = true
 		clone := integration.DeepCopy()
-		err = sdk.Get(clone)
+		key, err := client.ObjectKeyFromObject(clone)
+		if err != nil {
+			return nil, err
+		}
+		err = c.Get(o.Context, key, clone)
 		if err != nil {
 			return nil, err
 		}
 		integration.ResourceVersion = clone.ResourceVersion
-		err = sdk.Update(&integration)
+		err = c.Update(o.Context, &integration)
 	}
 
 	if err != nil {
diff --git a/pkg/client/cmd/util.go b/pkg/client/cmd/util.go
index e99aac9..e57602d 100644
--- a/pkg/client/cmd/util.go
+++ b/pkg/client/cmd/util.go
@@ -18,13 +18,14 @@ limitations under the License.
 package cmd
 
 import (
+	"context"
 	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
-	"github.com/operator-framework/operator-sdk/pkg/sdk"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+	"sigs.k8s.io/controller-runtime/pkg/client"
 )
 
 // DeleteIntegration --
-func DeleteIntegration(name string, namespace string) error {
+func DeleteIntegration(ctx context.Context, c client.Client, name string, namespace string) error {
 	integration := v1alpha1.Integration{
 		TypeMeta: metav1.TypeMeta{
 			Kind:       v1alpha1.IntegrationKind,
@@ -35,5 +36,7 @@ func DeleteIntegration(name string, namespace string) error {
 			Name:      name,
 		},
 	}
-	return sdk.Delete(&integration)
+	return c.Delete(ctx, &integration)
 }
+
+
diff --git a/pkg/controller/add_integration.go b/pkg/controller/add_integration.go
new file mode 100644
index 0000000..9557332
--- /dev/null
+++ b/pkg/controller/add_integration.go
@@ -0,0 +1,10 @@
+package controller
+
+import (
+	"github.com/apache/camel-k/pkg/controller/integration"
+)
+
+func init() {
+	// AddToManagerFuncs is a list of functions to create controllers and add them to a manager.
+	AddToManagerFuncs = append(AddToManagerFuncs, integration.Add)
+}
diff --git a/pkg/controller/add_integrationcontext.go b/pkg/controller/add_integrationcontext.go
new file mode 100644
index 0000000..e10781e
--- /dev/null
+++ b/pkg/controller/add_integrationcontext.go
@@ -0,0 +1,10 @@
+package controller
+
+import (
+	"github.com/apache/camel-k/pkg/controller/integrationcontext"
+)
+
+func init() {
+	// AddToManagerFuncs is a list of functions to create controllers and add them to a manager.
+	AddToManagerFuncs = append(AddToManagerFuncs, integrationcontext.Add)
+}
diff --git a/pkg/controller/add_integrationplatform.go b/pkg/controller/add_integrationplatform.go
new file mode 100644
index 0000000..1bf1d74
--- /dev/null
+++ b/pkg/controller/add_integrationplatform.go
@@ -0,0 +1,10 @@
+package controller
+
+import (
+	"github.com/apache/camel-k/pkg/controller/integrationplatform"
+)
+
+func init() {
+	// AddToManagerFuncs is a list of functions to create controllers and add them to a manager.
+	AddToManagerFuncs = append(AddToManagerFuncs, integrationplatform.Add)
+}
diff --git a/pkg/controller/controller.go b/pkg/controller/controller.go
new file mode 100644
index 0000000..7c069f3
--- /dev/null
+++ b/pkg/controller/controller.go
@@ -0,0 +1,18 @@
+package controller
+
+import (
+	"sigs.k8s.io/controller-runtime/pkg/manager"
+)
+
+// AddToManagerFuncs is a list of functions to add all Controllers to the Manager
+var AddToManagerFuncs []func(manager.Manager) error
+
+// AddToManager adds all Controllers to the Manager
+func AddToManager(m manager.Manager) error {
+	for _, f := range AddToManagerFuncs {
+		if err := f(m); err != nil {
+			return err
+		}
+	}
+	return nil
+}
diff --git a/pkg/controller/integration/action.go b/pkg/controller/integration/action.go
new file mode 100644
index 0000000..fdf2a56
--- /dev/null
+++ b/pkg/controller/integration/action.go
@@ -0,0 +1,48 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integration
+
+import (
+	"context"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+	"sigs.k8s.io/controller-runtime/pkg/runtime/inject"
+)
+
+// Action --
+type Action interface {
+	inject.Client
+
+	// a user friendly name for the action
+	Name() string
+
+	// returns true if the action can handle the integration
+	CanHandle(integration *v1alpha1.Integration) bool
+
+	// executes the handling function
+	Handle(ctx context.Context, integration *v1alpha1.Integration) error
+}
+
+type baseAction struct {
+	client client.Client
+}
+
+func (action *baseAction) InjectClient(client client.Client) error {
+	action.client = client
+	return nil
+}
diff --git a/pkg/controller/integration/build_context.go b/pkg/controller/integration/build_context.go
new file mode 100644
index 0000000..427794c
--- /dev/null
+++ b/pkg/controller/integration/build_context.go
@@ -0,0 +1,156 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integration
+
+import (
+	"context"
+	"fmt"
+
+	"github.com/apache/camel-k/pkg/trait"
+
+	"github.com/sirupsen/logrus"
+
+	"github.com/apache/camel-k/pkg/util"
+	"github.com/apache/camel-k/pkg/util/digest"
+
+	"github.com/rs/xid"
+
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+)
+
+// NewBuildContextAction create an action that handles integration context build
+func NewBuildContextAction(namespace string) Action {
+	return &buildContextAction{
+		namespace: namespace,
+	}
+}
+
+type buildContextAction struct {
+	baseAction
+	namespace string
+}
+
+func (action *buildContextAction) Name() string {
+	return "build-context"
+}
+
+func (action *buildContextAction) CanHandle(integration *v1alpha1.Integration) bool {
+	return integration.Status.Phase == v1alpha1.IntegrationPhaseBuildingContext
+}
+
+func (action *buildContextAction) Handle(ctx context.Context, integration *v1alpha1.Integration) error {
+	ictx, err := LookupContextForIntegration(ctx, action.client, integration)
+	if err != nil {
+		//TODO: we may need to add a wait strategy, i.e give up after some time
+		return err
+	}
+
+	if ictx != nil {
+		if ictx.Labels["camel.apache.org/context.type"] == v1alpha1.IntegrationContextTypePlatform {
+			// This is a platform context and as it is auto generated it may get
+			// out of sync if the integration that has generated it, has been
+			// amended to add/remove dependencies
+
+			//TODO: this is a very simple check, we may need to provide a deps comparison strategy
+			if !util.StringSliceContains(ictx.Spec.Dependencies, integration.Status.Dependencies) {
+				// We need to re-generate a context or search for a new one that
+				// satisfies integrations needs so let's remove the association
+				// with a context
+				target := integration.DeepCopy()
+				target.Status.Context = ""
+				return action.client.Update(ctx, target)
+			}
+		}
+
+		if ictx.Status.Phase == v1alpha1.IntegrationContextPhaseError {
+			target := integration.DeepCopy()
+			target.Status.Image = ictx.ImageForIntegration()
+			target.Status.Context = ictx.Name
+			target.Status.Phase = v1alpha1.IntegrationPhaseError
+
+			target.Status.Digest, err = digest.ComputeForIntegration(target)
+			if err != nil {
+				return err
+			}
+
+			logrus.Info("Integration ", target.Name, " transitioning to state ", target.Status.Phase)
+
+			return action.client.Update(ctx, target)
+		}
+
+		if ictx.Status.Phase == v1alpha1.IntegrationContextPhaseReady {
+			target := integration.DeepCopy()
+			target.Status.Image = ictx.ImageForIntegration()
+			target.Status.Context = ictx.Name
+
+			dgst, err := digest.ComputeForIntegration(target)
+			if err != nil {
+				return err
+			}
+
+			target.Status.Digest = dgst
+
+			if _, err := trait.Apply(ctx, action.client, target, ictx); err != nil {
+				return err
+			}
+
+			logrus.Info("Integration ", target.Name, " transitioning to state ", target.Status.Phase)
+
+			return action.client.Update(ctx, target)
+		}
+
+		if integration.Status.Context == "" {
+			// We need to set the context
+			target := integration.DeepCopy()
+			target.Status.Context = ictx.Name
+			return action.client.Update(ctx, target)
+		}
+
+		return nil
+	}
+
+	platformCtxName := fmt.Sprintf("ctx-%s", xid.New())
+	platformCtx := v1alpha1.NewIntegrationContext(action.namespace, platformCtxName)
+
+	// Add some information for post-processing, this may need to be refactored
+	// to a proper data structure
+	platformCtx.Labels = map[string]string{
+		"camel.apache.org/context.type":               v1alpha1.IntegrationContextTypePlatform,
+		"camel.apache.org/context.created.by.kind":    v1alpha1.IntegrationKind,
+		"camel.apache.org/context.created.by.name":    integration.Name,
+		"camel.apache.org/context.created.by.version": integration.ResourceVersion,
+	}
+
+	// Set the context to have the same dependencies as the integrations
+	platformCtx.Spec = v1alpha1.IntegrationContextSpec{
+		Dependencies: integration.Status.Dependencies,
+		Repositories: integration.Spec.Repositories,
+		Traits:       integration.Spec.Traits,
+	}
+
+	if err := action.client.Create(ctx, &platformCtx); err != nil {
+		return err
+	}
+
+	// Set the context name so the next handle loop, will fall through the
+	// same path as integration with a user defined context
+	target := integration.DeepCopy()
+	target.Status.Context = platformCtxName
+
+	return action.client.Update(ctx, target)
+}
diff --git a/pkg/controller/integration/build_image.go b/pkg/controller/integration/build_image.go
new file mode 100644
index 0000000..af3ecaf
--- /dev/null
+++ b/pkg/controller/integration/build_image.go
@@ -0,0 +1,159 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integration
+
+import (
+	"context"
+	"fmt"
+	"path"
+
+	"github.com/pkg/errors"
+
+	"github.com/apache/camel-k/pkg/util/digest"
+
+	"github.com/apache/camel-k/pkg/trait"
+
+	"github.com/apache/camel-k/pkg/builder"
+	"github.com/sirupsen/logrus"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+
+	"github.com/apache/camel-k/pkg/platform"
+
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+)
+
+// NewBuildImageAction create an action that handles integration image build
+func NewBuildImageAction(namespace string) Action {
+	return &buildImageAction{
+		namespace: namespace,
+	}
+}
+
+type buildImageAction struct {
+	baseAction
+	context.Context
+	namespace string
+}
+
+func (action *buildImageAction) Name() string {
+	return "build-image"
+}
+
+func (action *buildImageAction) CanHandle(integration *v1alpha1.Integration) bool {
+	return integration.Status.Phase == v1alpha1.IntegrationPhaseBuildingImage
+}
+
+func (action *buildImageAction) Handle(ctx context.Context, integration *v1alpha1.Integration) error {
+
+	// in this phase the integration need to be associated to a context whose image
+	// will be used as base image for the integration images
+	if integration.Status.Context == "" {
+		return fmt.Errorf("context is not set for integration: %s", integration.Name)
+	}
+
+	// look-up the integration context associated to this integration, this is needed
+	// to determine the base image
+	ictx := v1alpha1.NewIntegrationContext(integration.Namespace, integration.Status.Context)
+	ikey := client.ObjectKey{
+		Namespace: integration.Namespace,
+		Name:      integration.Status.Context,
+	}
+	if err := action.client.Get(ctx, ikey, &ictx); err != nil {
+		return errors.Wrapf(err, "unable to find integration context %s, %s", ikey.Name, err)
+	}
+
+	b, err := platform.GetPlatformBuilder(action.Context, action.client, action.namespace)
+	if err != nil {
+		return err
+	}
+	env, err := trait.Apply(ctx, action.client, integration, &ictx)
+	if err != nil {
+		return err
+	}
+
+	// This build do not require to determine dependencies nor a project, the builder
+	// step do remove them
+	r := builder.Request{
+		Meta:     integration.ObjectMeta,
+		Steps:    env.Steps,
+		BuildDir: env.BuildDir,
+		Platform: env.Platform.Spec,
+		Image:    ictx.Status.Image,
+	}
+
+	// Sources are added as part of the standard deployment bits
+	r.Resources = make([]builder.Resource, 0, len(integration.Spec.Sources))
+
+	for _, source := range integration.Spec.Sources {
+		r.Resources = append(r.Resources, builder.Resource{
+			Content: []byte(source.Content),
+			Target:  path.Join("sources", source.Name),
+		})
+	}
+	for _, resource := range integration.Spec.Resources {
+		r.Resources = append(r.Resources, builder.Resource{
+			Content: []byte(resource.Content),
+			Target:  path.Join("resources", resource.Name),
+		})
+	}
+
+	res := b.Submit(r)
+
+	switch res.Status {
+	case builder.StatusSubmitted:
+		logrus.Info("Build submitted")
+	case builder.StatusStarted:
+		logrus.Info("Build started")
+	case builder.StatusError:
+		target := integration.DeepCopy()
+		target.Status.Phase = v1alpha1.IntegrationPhaseError
+
+		logrus.Infof("Integration %s transitioning to state %s, reason: %s", target.Name, target.Status.Phase, res.Error.Error())
+
+		// remove the build from cache
+		defer b.Purge(r)
+
+		return action.client.Update(ctx, target)
+	case builder.StatusCompleted:
+		target := integration.DeepCopy()
+		target.Status.Phase = v1alpha1.IntegrationPhaseDeploying
+		if res.PublicImage != "" {
+			target.Status.Image = res.PublicImage
+		} else {
+			target.Status.Image = res.Image
+		}
+
+		dgst, err := digest.ComputeForIntegration(integration)
+		if err != nil {
+			return err
+		}
+
+		target.Status.Digest = dgst
+
+		logrus.Info("Integration ", target.Name, " transitioning to state ", target.Status.Phase)
+
+		// remove the build from cache
+		defer b.Purge(r)
+
+		if err := action.client.Update(ctx, target); err != nil {
+			return err
+		}
+	}
+
+	return nil
+}
diff --git a/pkg/controller/integration/deploy.go b/pkg/controller/integration/deploy.go
new file mode 100644
index 0000000..8972378
--- /dev/null
+++ b/pkg/controller/integration/deploy.go
@@ -0,0 +1,78 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integration
+
+import (
+	"context"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"github.com/apache/camel-k/pkg/trait"
+	"github.com/apache/camel-k/pkg/util/kubernetes"
+	"github.com/pkg/errors"
+	"github.com/sirupsen/logrus"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+)
+
+// NewDeployAction create an action that handles integration deploy
+func NewDeployAction() Action {
+	return &deployAction{}
+}
+
+type deployAction struct {
+	baseAction
+}
+
+func (action *deployAction) Name() string {
+	return "deploy"
+}
+
+func (action *deployAction) CanHandle(integration *v1alpha1.Integration) bool {
+	return integration.Status.Phase == v1alpha1.IntegrationPhaseDeploying
+}
+
+func (action *deployAction) Handle(ctx context.Context, integration *v1alpha1.Integration) error {
+	ictxName := integration.Status.Context
+	if ictxName == "" {
+		return errors.Errorf("no context set on integration %s", integration.Name)
+	}
+	ictxKey := client.ObjectKey{
+		Namespace: integration.Namespace,
+		Name:      integration.Name,
+	}
+	ictx := v1alpha1.NewIntegrationContext(integration.Namespace, ictxName)
+
+	if err := action.client.Get(ctx, ictxKey, &ictx); err != nil {
+		return errors.Wrapf(err, "unable to find integration context %s, %s", ictxName, err)
+	}
+
+	env, err := trait.Apply(ctx, action.client, integration, &ictx)
+	if err != nil {
+		return err
+	}
+
+	// TODO we should look for objects that are no longer present in the collection and remove them
+	err = kubernetes.ReplaceResources(ctx, action.client, env.Resources.Items())
+	if err != nil {
+		return err
+	}
+
+	target := integration.DeepCopy()
+	target.Status.Phase = v1alpha1.IntegrationPhaseRunning
+	logrus.Info("Integration ", target.Name, " transitioning to state ", target.Status.Phase)
+
+	return action.client.Update(ctx, target)
+}
diff --git a/pkg/controller/integration/initialize.go b/pkg/controller/integration/initialize.go
new file mode 100644
index 0000000..a772f51
--- /dev/null
+++ b/pkg/controller/integration/initialize.go
@@ -0,0 +1,80 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integration
+
+import (
+	"context"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"github.com/apache/camel-k/pkg/platform"
+	"github.com/apache/camel-k/pkg/trait"
+	"github.com/apache/camel-k/pkg/util/digest"
+	"github.com/sirupsen/logrus"
+)
+
+// NewInitializeAction creates a new inititialize action
+func NewInitializeAction() Action {
+	return &initializeAction{}
+}
+
+type initializeAction struct {
+	baseAction
+}
+
+// Name returns a common name of the action
+func (action *initializeAction) Name() string {
+	return "initialize"
+}
+
+// CanHandle tells whether this action can handle the integration
+func (action *initializeAction) CanHandle(integration *v1alpha1.Integration) bool {
+	return integration.Status.Phase == ""
+}
+
+// Handle handles the integrations
+func (action *initializeAction) Handle(ctx context.Context, integration *v1alpha1.Integration) error {
+	// The integration platform needs to be ready before starting to create integrations
+	if pl, err := platform.GetCurrentPlatform(ctx, action.client, integration.Namespace); err != nil || pl.Status.Phase != v1alpha1.IntegrationPlatformPhaseReady {
+		logrus.Info("Waiting for a integration platform to be ready")
+		return nil
+	}
+
+	target := integration.DeepCopy()
+	// better not changing the spec section of the target because it may be used for comparison by a
+	// higher level controller (e.g. Knative source controller)
+
+	// execute custom initialization
+	if _, err := trait.Apply(ctx, action.client, target, nil); err != nil {
+		return err
+	}
+
+	// update the status
+	dgst, err := digest.ComputeForIntegration(integration)
+	if err != nil {
+		return err
+	}
+
+	target.Status.Phase = v1alpha1.IntegrationPhaseBuildingContext
+	target.Status.Digest = dgst
+	target.Status.Context = integration.Spec.Context
+	target.Status.Dependencies = integration.Spec.Dependencies
+	target.Status.Image = ""
+
+	logrus.Info("Integration ", target.Name, " transitioning to state ", target.Status.Phase)
+
+	return action.client.Update(ctx, target)
+}
diff --git a/pkg/controller/integration/integration_controller.go b/pkg/controller/integration/integration_controller.go
new file mode 100644
index 0000000..5778166
--- /dev/null
+++ b/pkg/controller/integration/integration_controller.go
@@ -0,0 +1,123 @@
+package integration
+
+import (
+	"context"
+	"github.com/sirupsen/logrus"
+	"time"
+
+	camelv1alpha1 "github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	appsv1 "k8s.io/api/apps/v1"
+	"k8s.io/apimachinery/pkg/api/errors"
+	"k8s.io/apimachinery/pkg/runtime"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+	"sigs.k8s.io/controller-runtime/pkg/controller"
+	"sigs.k8s.io/controller-runtime/pkg/handler"
+	"sigs.k8s.io/controller-runtime/pkg/manager"
+	"sigs.k8s.io/controller-runtime/pkg/reconcile"
+	logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
+	"sigs.k8s.io/controller-runtime/pkg/source"
+)
+
+var log = logf.Log.WithName("controller_integration")
+
+/**
+* USER ACTION REQUIRED: This is a scaffold file intended for the user to modify with their own Controller
+* business logic.  Delete these comments after modifying this file.*
+ */
+
+// Add creates a new Integration Controller and adds it to the Manager. The Manager will set fields on the Controller
+// and Start it when the Manager is Started.
+func Add(mgr manager.Manager) error {
+	return add(mgr, newReconciler(mgr))
+}
+
+// newReconciler returns a new reconcile.Reconciler
+func newReconciler(mgr manager.Manager) reconcile.Reconciler {
+	return &ReconcileIntegration{client: mgr.GetClient(), scheme: mgr.GetScheme()}
+}
+
+// add adds a new Controller to mgr with r as the reconcile.Reconciler
+func add(mgr manager.Manager, r reconcile.Reconciler) error {
+	// Create a new controller
+	c, err := controller.New("integration-controller", mgr, controller.Options{Reconciler: r})
+	if err != nil {
+		return err
+	}
+
+	// Watch for changes to primary resource Integration
+	err = c.Watch(&source.Kind{Type: &camelv1alpha1.Integration{}}, &handler.EnqueueRequestForObject{})
+	if err != nil {
+		return err
+	}
+
+	// Watch for changes to secondary resource Pods and requeue the owner Integration
+	err = c.Watch(&source.Kind{Type: &appsv1.Deployment{}}, &handler.EnqueueRequestForOwner{
+		IsController: true,
+		OwnerType:    &camelv1alpha1.Integration{},
+	})
+	if err != nil {
+		return err
+	}
+
+	return nil
+}
+
+var _ reconcile.Reconciler = &ReconcileIntegration{}
+
+// ReconcileIntegration reconciles a Integration object
+type ReconcileIntegration struct {
+	// This client, initialized using mgr.Client() above, is a split client
+	// that reads objects from the cache and writes to the apiserver
+	client client.Client
+	scheme *runtime.Scheme
+}
+
+// Reconcile reads that state of the cluster for a Integration object and makes changes based on the state read
+// and what is in the Integration.Spec
+// Note:
+// The Controller will requeue the Request to be processed again if the returned error is non-nil or
+// Result.Requeue is true, otherwise upon completion it will remove the work from the queue.
+func (r *ReconcileIntegration) Reconcile(request reconcile.Request) (reconcile.Result, error) {
+	reqLogger := log.WithValues("Request.Namespace", request.Namespace, "Request.Name", request.Name)
+	reqLogger.Info("Reconciling Integration")
+
+	ctx := context.TODO()
+
+	// Fetch the Integration instance
+	instance := &camelv1alpha1.Integration{}
+	err := r.client.Get(ctx, request.NamespacedName, instance)
+	if err != nil {
+		if errors.IsNotFound(err) {
+			// Request object not found, could have been deleted after reconcile request.
+			// Owned objects are automatically garbage collected. For additional cleanup logic use finalizers.
+			// Return and don't requeue
+			return reconcile.Result{}, nil
+		}
+		// Error reading the object - requeue the request.
+		return reconcile.Result{}, err
+	}
+
+	integrationActionPool := []Action{
+		NewInitializeAction(),
+		NewBuildContextAction(request.Namespace),
+		NewBuildImageAction(request.Namespace),
+		NewDeployAction(),
+		NewMonitorAction(),
+	}
+
+	for _, a := range integrationActionPool {
+		if err := a.InjectClient(r.client); err != nil {
+			return reconcile.Result{}, err
+		}
+		if a.CanHandle(instance) {
+			logrus.Debug("Invoking action ", a.Name(), " on integration ", instance.Name)
+			if err := a.Handle(ctx, instance); err != nil {
+				return reconcile.Result{}, err
+			}
+		}
+	}
+
+	return reconcile.Result{
+		RequeueAfter: 5 * time.Second,
+	}, nil
+}
diff --git a/pkg/controller/integration/monitor.go b/pkg/controller/integration/monitor.go
new file mode 100644
index 0000000..e45cb1b
--- /dev/null
+++ b/pkg/controller/integration/monitor.go
@@ -0,0 +1,66 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integration
+
+import (
+	"context"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"github.com/apache/camel-k/pkg/util/digest"
+	"github.com/sirupsen/logrus"
+)
+
+// NewMonitorAction creates a new monitoring action for an integration
+func NewMonitorAction() Action {
+	return &monitorAction{}
+}
+
+type monitorAction struct {
+	baseAction
+}
+
+func (action *monitorAction) Name() string {
+	return "monitor"
+}
+
+func (action *monitorAction) CanHandle(integration *v1alpha1.Integration) bool {
+	return integration.Status.Phase == v1alpha1.IntegrationPhaseRunning ||
+		integration.Status.Phase == v1alpha1.IntegrationPhaseError
+}
+
+func (action *monitorAction) Handle(ctx context.Context, integration *v1alpha1.Integration) error {
+
+	hash, err := digest.ComputeForIntegration(integration)
+	if err != nil {
+		return err
+	}
+
+	if hash != integration.Status.Digest {
+		logrus.Info("Integration ", integration.Name, " needs a rebuild")
+
+		target := integration.DeepCopy()
+		target.Status.Digest = hash
+		target.Status.Phase = ""
+
+		logrus.Info("Integration ", target.Name, " transitioning to state ", target.Status.Phase)
+
+		return action.client.Update(ctx, target)
+	}
+
+	// TODO check also if deployment matches (e.g. replicas)
+	return nil
+}
diff --git a/pkg/controller/integration/util.go b/pkg/controller/integration/util.go
new file mode 100644
index 0000000..3cbb407
--- /dev/null
+++ b/pkg/controller/integration/util.go
@@ -0,0 +1,67 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integration
+
+import (
+	"context"
+	"github.com/apache/camel-k/pkg/util"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"github.com/pkg/errors"
+)
+
+// LookupContextForIntegration --
+func LookupContextForIntegration(ctx context.Context, c client.Client, integration *v1alpha1.Integration) (*v1alpha1.IntegrationContext, error) {
+	if integration.Status.Context != "" {
+		name := integration.Status.Context
+		ictx := v1alpha1.NewIntegrationContext(integration.Namespace, name)
+		key := client.ObjectKey{
+			Namespace: integration.Namespace,
+			Name:      name,
+		}
+		if err := c.Get(ctx, key, &ictx); err != nil {
+			return nil, errors.Wrapf(err, "unable to find integration context %s, %s", name, err)
+		}
+
+		return &ictx, nil
+	}
+
+	ctxList := v1alpha1.NewIntegrationContextList()
+	if err := c.List(ctx, &client.ListOptions{Namespace: integration.Namespace}, &ctxList); err != nil {
+		return nil, err
+	}
+
+	for _, ctx := range ctxList.Items {
+		ctx := ctx // pin
+		if ctx.Labels["camel.apache.org/context.type"] == v1alpha1.IntegrationContextTypePlatform {
+			ideps := len(integration.Status.Dependencies)
+			cdeps := len(ctx.Spec.Dependencies)
+
+			if ideps != cdeps {
+				continue
+			}
+
+			if util.StringSliceContains(ctx.Spec.Dependencies, integration.Status.Dependencies) {
+				return &ctx, nil
+			}
+		}
+	}
+
+	return nil, nil
+}
diff --git a/pkg/controller/integrationcontext/action.go b/pkg/controller/integrationcontext/action.go
new file mode 100644
index 0000000..5a87127
--- /dev/null
+++ b/pkg/controller/integrationcontext/action.go
@@ -0,0 +1,48 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integrationcontext
+
+import (
+	"context"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+	"sigs.k8s.io/controller-runtime/pkg/runtime/inject"
+)
+
+// Action --
+type Action interface {
+	inject.Client
+
+	// a user friendly name for the action
+	Name() string
+
+	// returns true if the action can handle the integration context
+	CanHandle(integration *v1alpha1.IntegrationContext) bool
+
+	// executes the handling function
+	Handle(ctx context.Context, integration *v1alpha1.IntegrationContext) error
+}
+
+type baseAction struct {
+	client client.Client
+}
+
+func (action *baseAction) InjectClient(client client.Client) error {
+	action.client = client
+	return nil
+}
\ No newline at end of file
diff --git a/pkg/controller/integrationcontext/build.go b/pkg/controller/integrationcontext/build.go
new file mode 100644
index 0000000..edfe3d3
--- /dev/null
+++ b/pkg/controller/integrationcontext/build.go
@@ -0,0 +1,152 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integrationcontext
+
+import (
+	"context"
+
+	"github.com/apache/camel-k/pkg/trait"
+
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"github.com/apache/camel-k/pkg/builder"
+	"github.com/apache/camel-k/pkg/platform"
+
+	"github.com/sirupsen/logrus"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+)
+
+// NewBuildAction creates a new build handling action for the context
+func NewBuildAction(ctx context.Context) Action {
+	return &buildAction{
+		Context: ctx,
+	}
+}
+
+type buildAction struct {
+	baseAction
+	context.Context
+}
+
+func (action *buildAction) Name() string {
+	return "build"
+}
+
+func (action *buildAction) CanHandle(ictx *v1alpha1.IntegrationContext) bool {
+	return ictx.Status.Phase == v1alpha1.IntegrationContextPhaseBuilding
+}
+
+func (action *buildAction) Handle(ctx context.Context, ictx *v1alpha1.IntegrationContext) error {
+	p, err := platform.GetCurrentPlatform(ctx, action.client, ictx.Namespace)
+	if err != nil {
+		return err
+	}
+	b, err := platform.GetPlatformBuilder(action.Context, action.client, ictx.Namespace)
+	if err != nil {
+		return err
+	}
+	env, err := trait.Apply(ctx, action.client, nil, ictx)
+	if err != nil {
+		return err
+	}
+
+	// assume there's no duplication nor conflict for now
+	repositories := make([]string, 0, len(ictx.Spec.Repositories)+len(p.Spec.Build.Repositories))
+	repositories = append(repositories, ictx.Spec.Repositories...)
+	repositories = append(repositories, p.Spec.Build.Repositories...)
+
+	r := builder.Request{
+		Meta:         ictx.ObjectMeta,
+		Dependencies: ictx.Spec.Dependencies,
+		Repositories: repositories,
+		Steps:        env.Steps,
+		BuildDir:     env.BuildDir,
+		Platform:     env.Platform.Spec,
+	}
+
+	res := b.Submit(r)
+	switch res.Status {
+	case builder.StatusSubmitted:
+		logrus.Info("Build submitted")
+	case builder.StatusStarted:
+		logrus.Info("Build started")
+	case builder.StatusError:
+		target := ictx.DeepCopy()
+		target.Status.Phase = v1alpha1.IntegrationContextPhaseError
+
+		logrus.Infof("Context %s transitioning to state %s, reason: %s", target.Name, target.Status.Phase, res.Error.Error())
+
+		// remove the build from cache
+		defer b.Purge(r)
+
+		return action.client.Update(ctx, target)
+	case builder.StatusCompleted:
+		target := ictx.DeepCopy()
+		target.Status.Image = res.Image
+		target.Status.PublicImage = res.PublicImage
+		target.Status.Phase = v1alpha1.IntegrationContextPhaseReady
+		target.Status.Artifacts = make([]v1alpha1.Artifact, 0, len(res.Artifacts))
+
+		for _, a := range res.Artifacts {
+			// do not include artifact location
+			target.Status.Artifacts = append(target.Status.Artifacts, v1alpha1.Artifact{
+				ID:       a.ID,
+				Location: "",
+				Target:   a.Target,
+			})
+		}
+
+		logrus.Info("Context ", target.Name, " transitioning to state ", target.Status.Phase)
+
+		// remove the build from cache
+		defer b.Purge(r)
+
+		if err := action.client.Update(ctx, target); err != nil {
+			return err
+		}
+		if err := action.informIntegrations(target); err != nil {
+			return err
+		}
+	}
+
+	return nil
+}
+
+// informIntegrations triggers the processing of all integrations waiting for this context to be built
+func (action *buildAction) informIntegrations(ictx *v1alpha1.IntegrationContext) error {
+	list := v1alpha1.NewIntegrationList()
+	err := action.client.List(action.Context, &client.ListOptions{Namespace: ictx.Namespace}, &list)
+	if err != nil {
+		return err
+	}
+	for _, integration := range list.Items {
+		integration := integration // pin
+		if integration.Status.Context != ictx.Name {
+			continue
+		}
+
+		if integration.Annotations == nil {
+			integration.Annotations = make(map[string]string)
+		}
+		integration.Annotations["camel.apache.org/context.digest"] = ictx.Status.Digest
+		err = action.client.Update(action.Context, &integration)
+		if err != nil {
+			return err
+		}
+	}
+	return nil
+}
diff --git a/pkg/controller/integrationcontext/initialize.go b/pkg/controller/integrationcontext/initialize.go
new file mode 100644
index 0000000..0cb363c
--- /dev/null
+++ b/pkg/controller/integrationcontext/initialize.go
@@ -0,0 +1,69 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integrationcontext
+
+import (
+	"context"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"github.com/apache/camel-k/pkg/platform"
+	"github.com/apache/camel-k/pkg/util/digest"
+	"github.com/sirupsen/logrus"
+)
+
+// NewInitializeAction creates a new initialization handling action for the context
+func NewInitializeAction() Action {
+	return &initializeAction{}
+}
+
+type initializeAction struct {
+	baseAction
+}
+
+func (action *initializeAction) Name() string {
+	return "initialize"
+}
+
+func (action *initializeAction) CanHandle(ictx *v1alpha1.IntegrationContext) bool {
+	return ictx.Status.Phase == ""
+}
+
+func (action *initializeAction) Handle(ctx context.Context, ictx *v1alpha1.IntegrationContext) error {
+	// The integration platform needs to be initialized before starting to create contexts
+	if _, err := platform.GetCurrentPlatform(ctx, action.client, ictx.Namespace); err != nil {
+		logrus.Info("Waiting for a integration platform to be initialized")
+		return nil
+	}
+
+	target := ictx.DeepCopy()
+
+	// execute custom initialization
+	//if err := trait.apply(nil, context); err != nil {
+	//	return err
+	//}
+
+	// update the status
+	logrus.Info("Context ", target.Name, " transitioning to state ", v1alpha1.IntegrationContextPhaseBuilding)
+	target.Status.Phase = v1alpha1.IntegrationContextPhaseBuilding
+	dgst, err := digest.ComputeForIntegrationContext(ictx)
+	if err != nil {
+		return err
+	}
+	target.Status.Digest = dgst
+
+	return action.client.Update(ctx, target)
+}
diff --git a/pkg/controller/integrationcontext/integrationcontext_controller.go b/pkg/controller/integrationcontext/integrationcontext_controller.go
new file mode 100644
index 0000000..1c93ab3
--- /dev/null
+++ b/pkg/controller/integrationcontext/integrationcontext_controller.go
@@ -0,0 +1,107 @@
+package integrationcontext
+
+import (
+	"context"
+	"github.com/sirupsen/logrus"
+	"time"
+
+	camelv1alpha1 "github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"k8s.io/apimachinery/pkg/api/errors"
+	"k8s.io/apimachinery/pkg/runtime"
+	"sigs.k8s.io/controller-runtime/pkg/client"
+	"sigs.k8s.io/controller-runtime/pkg/controller"
+	"sigs.k8s.io/controller-runtime/pkg/handler"
+	"sigs.k8s.io/controller-runtime/pkg/manager"
+	"sigs.k8s.io/controller-runtime/pkg/reconcile"
+	logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
+	"sigs.k8s.io/controller-runtime/pkg/source"
+)
+
+var log = logf.Log.WithName("controller_integrationcontext")
+
+// Add creates a new IntegrationContext Controller and adds it to the Manager. The Manager will set fields on the Controller
+// and Start it when the Manager is Started.
+func Add(mgr manager.Manager) error {
+	return add(mgr, newReconciler(mgr))
+}
+
+// newReconciler returns a new reconcile.Reconciler
+func newReconciler(mgr manager.Manager) reconcile.Reconciler {
+	return &ReconcileIntegrationContext{client: mgr.GetClient(), scheme: mgr.GetScheme()}
+}
+
+// add adds a new Controller to mgr with r as the reconcile.Reconciler
+func add(mgr manager.Manager, r reconcile.Reconciler) error {
+	// Create a new controller
+	c, err := controller.New("integrationcontext-controller", mgr, controller.Options{Reconciler: r})
+	if err != nil {
+		return err
+	}
+
+	// Watch for changes to primary resource IntegrationContext
+	err = c.Watch(&source.Kind{Type: &camelv1alpha1.IntegrationContext{}}, &handler.EnqueueRequestForObject{})
+	if err != nil {
+		return err
+	}
+
+	return nil
+}
+
+var _ reconcile.Reconciler = &ReconcileIntegrationContext{}
+
+// ReconcileIntegrationContext reconciles a IntegrationContext object
+type ReconcileIntegrationContext struct {
+	// This client, initialized using mgr.Client() above, is a split client
+	// that reads objects from the cache and writes to the apiserver
+	client client.Client
+	scheme *runtime.Scheme
+}
+
+// Reconcile reads that state of the cluster for a IntegrationContext object and makes changes based on the state read
+// and what is in the IntegrationContext.Spec
+// Note:
+// The Controller will requeue the Request to be processed again if the returned error is non-nil or
+// Result.Requeue is true, otherwise upon completion it will remove the work from the queue.
+func (r *ReconcileIntegrationContext) Reconcile(request reconcile.Request) (reconcile.Result, error) {
+	reqLogger := log.WithValues("Request.Namespace", request.Namespace, "Request.Name", request.Name)
+	reqLogger.Info("Reconciling IntegrationContext")
+
+	ctx := context.TODO()
+
+	// Fetch the IntegrationContext instance
+	instance := &camelv1alpha1.IntegrationContext{}
+	err := r.client.Get(ctx, request.NamespacedName, instance)
+	if err != nil {
+		if errors.IsNotFound(err) {
+			// Request object not found, could have been deleted after reconcile request.
+			// Owned objects are automatically garbage collected. For additional cleanup logic use finalizers.
+			// Return and don't requeue
+			return reconcile.Result{}, nil
+		}
+		// Error reading the object - requeue the request.
+		return reconcile.Result{}, err
+	}
+
+	integrationContextActionPool := []Action{
+		NewInitializeAction(),
+		NewBuildAction(ctx),
+		NewMonitorAction(),
+	}
+
+	for _, a := range integrationContextActionPool {
+		if err := a.InjectClient(r.client); err != nil {
+			return reconcile.Result{}, err
+		}
+		if a.CanHandle(instance) {
+			logrus.Debug("Invoking action ", a.Name(), " on integration context ", instance.Name)
+			if err := a.Handle(ctx, instance); err != nil {
+				return reconcile.Result{}, err
+			}
+		}
+	}
+
+	return reconcile.Result{
+		RequeueAfter: 5 * time.Second,
+	}, nil
+
+}
diff --git a/pkg/controller/integrationcontext/monitor.go b/pkg/controller/integrationcontext/monitor.go
new file mode 100644
index 0000000..3570e33
--- /dev/null
+++ b/pkg/controller/integrationcontext/monitor.go
@@ -0,0 +1,60 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package integrationcontext
+
+import (
+	"context"
+	"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
+	"github.com/apache/camel-k/pkg/util/digest"
+	"github.com/sirupsen/logrus"
+)
+
+// NewMonitorAction creates a new monitoring handling action for the context
+func NewMonitorAction() Action {
+	return &monitorAction{}
+}
+
+type monitorAction struct {
+	baseAction
+}
+
+func (action *monitorAction) Name() string {
+	return "monitor"
+}
+
+func (action *monitorAction) CanHandle(ictx *v1alpha1.IntegrationContext) bool {
+	return ictx.Status.Phase == v1alpha1.IntegrationContextPhaseReady || ictx.Status.Phase == v1alpha1.IntegrationContextPhaseError
... 1557926 lines suppressed ...