Commit Graph

93 Commits

Author SHA1 Message Date
justinsb d8c449a4f8 Basic OpenTelemetry support
We initially support capturing to a file (in our own format, as it
doesn't appear a suitable format exists).  This means we don't need a
server to capture the traces, and can start capturing through prow
without a lot of infrastructure changes.

Co-authored-by: Peter Rifel <rifelpet@users.noreply.github.com>
2023-11-18 09:12:19 -05:00
justinsb 27dd371c08 Refactor: Add context.Context to more VFS methods
This allows for propagation of opentelemetry traces.
2023-10-14 14:31:05 -04:00
John Gardiner Myers 3756bdad5b v1alpha3: Move secretStore and keyStore uder configStore 2023-07-22 16:04:24 -07:00
John Gardiner Myers 57b0d8e9cd v1alpha3: Move configBase to configStore.base 2023-07-22 15:57:35 -07:00
John Gardiner Myers 76ed6b9e27 Get VFSContext from caller in ValidateCluster() 2023-07-17 22:20:57 -07:00
John Gardiner Myers 7489469414 Get VFSContext from caller in ConfigBase() 2023-07-17 21:56:01 -07:00
Kubernetes Prow Robot 436732b724
Merge pull request #15395 from Codelax/vfs-remove-all
add removeAll to vfs
2023-07-15 14:55:13 -07:00
John Gardiner Myers 11304807f2 Hold reference to VFSContext from simple.Clientset 2023-07-06 19:41:45 -07:00
Jules Casteran e27ae94daf add removeAll to vfs 2023-05-10 15:24:15 +02:00
justinsb 6c2edaee7e Add Context arg to vfs ReadFile
This is an "action" method, so should take a context.
2023-01-01 09:51:44 -05:00
justinsb ae074bbc6b VFS: Add context to CreateFile & WriteFile
As "request" methods, these should have context parameters.
2022-12-23 10:39:52 -05:00
justinsb 90cbf75584 Context threading: more wiring
We're aiming to use this for testing immediately and better
logging/tracing in future, but to make the changes manageable breaking
them into a smaller series that don't directly achieve much.
2022-12-22 17:52:22 -05:00
Ole Markus With c7cfcd1af8 User IG without image should be allowed
This is technically a regression. kOps had the behavior where empty image meant use from channel. But this got removed due to strict validation of user input
2022-09-17 17:44:48 +02:00
justinsb e4d8dff835 kube-scheduler: MVP configuration validation
We check that users haven't specified the kubeconfig file path, as
this file is created / managed by kOps.  We don't try to reuse the
upstream configuration validation, as this allows the user to specify
a partial configuration, and this means that we don't have to pull in
the upstream libraries.

We could in future accept the "correct" value or just treat providing
a value as a signal that kOps should not manage the file; for now we
are starting with the most restrictive configuration, as we can then
relax it in future if needed.
2022-08-03 09:51:16 -04:00
Ole Markus With ce2e877aeb Remove bazel files from vendor 2022-04-12 13:29:03 +02:00
Ole Markus With aa493a3273 Validate IGs more strictly after defaults have applied
This commit will ensure IGs are validated in clientset prior to write similar to clusters. Also introduces strict flag similar to cluster, which only validate values where we have defaults after defaults have been applied.
2021-12-20 10:03:04 +01:00
Ciprian Hacman ea7df00719 Run hack/update-gofmt.sh 2021-12-01 22:39:50 +02:00
John Gardiner Myers 0ea81d7997 Write config as ManagedFile 2021-06-21 07:32:24 -07:00
John Gardiner Myers 8ab6747188 Remove instance group mirroring code 2021-06-21 07:32:24 -07:00
Kubernetes Prow Robot eb7ba5e943
Merge pull request #9229 from johngmyers/version-fullcluster
Put versioned API of cluster into state store
2021-06-21 01:32:52 -07:00
Ole Markus With 7180156c12 Delete known files in the provided discoveryStore on cluster deletion 2021-06-18 08:57:57 +02:00
John Gardiner Myers 53695fc183 Put versioned API of cluster into state store 2021-06-16 19:33:46 -07:00
John Gardiner Myers eb09d31a3c Pass AuxConfig to nodeup 2021-06-03 21:04:21 -07:00
Justin Santa Barbara f32fcc35fa Addons: Support arbitrary additional objects
We will be managing cluster addons using CRDs, and so we want to be
able to apply arbitrary objects as part of cluster bringup.

Start by allowing (behind a feature-flag) for arbitrary objects to be
specified.

Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2020-08-28 09:03:41 -04:00
Peter Rifel 4d9f0128a3
Upgrade to klog2
This splits up the kubernetes 1.19 PR to make it easier to keep up to date until we get it sorted out.
2020-08-16 20:56:48 -05:00
John Gardiner Myers 3201cc4dd8 Require extra flag when updating cluster with downgraded kops version 2020-07-17 11:11:12 -07:00
Ole Markus With acaa1e1dfc Implement VFS for vault 2020-06-18 13:02:37 +02:00
Peter Rifel bc074e857c
Use ec2.DescribeInstanceTypes in awsup.GetMachineTypeInfo
This requires passing a cloud object in additional places throughout the validation package and originating mostly from cmd/kops

This means that some kops commands now require valid cloud provider credentials, but I don't think this is an issue because the vast majority of use-cases already require the same cloud provider credentials in order to interact with the state store.
2020-06-09 10:13:01 -05:00
John Gardiner Myers 8a6d29cd40 Remove support for reading legacy-format keypairs 2020-05-20 13:28:13 -07:00
Justin Santa Barbara 31bb16d4d1 Add context.Context to most signatures
The client-go signature for most methods adds a context.Context
object, and also makes Options mandatory.  Feed through a
context.Context through many of our methods (but use context.TODO to
stop it getting totally out of hand!)
2020-04-11 14:44:17 -04:00
John Gardiner Myers b645dac752 Remove support for v1alpha1 and before 2020-03-24 19:49:15 -07:00
John Gardiner Myers 8844b97fe3 Fix field names in api validation 2020-02-15 14:52:27 -08:00
John Gardiner Myers 8e2fe44391 Return more errors at once during Cluster validation 2020-01-30 22:04:19 -08:00
John Gardiner Myers 8f6529879b Return more errors at once during InstanceGroup validation 2020-01-28 08:22:44 -08:00
yuxiaobo a599348f99 staticcheck:remove duplicate import packages
Signed-off-by: yuxiaobo <yuxiaobogo@163.com>
2019-12-31 15:10:08 +08:00
tanjunchen 52537053cc simplify code and remove unused code 2019-12-17 00:28:35 +08:00
mikesplain 9e55b8230a Update copyright notices
Also cleans some white spaces
2019-09-09 14:47:51 -04:00
Jay V d4688c9a74 Add more debug info for when cluster path doesnt match 2019-06-30 17:52:56 -07:00
Derek Lemon (delemon) 2f25db8abc Simple generation check to see if instance groups may need updated
Ignoring replace with no spec changes

Updating replace cancellation to only not set generation, instead of not performing the update

Bazel updates

Setting generation in common clientset code

Bazel updates
2019-05-28 12:42:13 -06:00
Justin SB 76d03b3f71
Generated files: glog -> klog 2019-05-06 12:56:03 -04:00
Justin SB 3e33ac7682
Change code from glog to klog
We don't call klog.InitFlags yet, because that will cause a flag
redefinition error until we get everyone to stop using glog.  That
will happen when we update to k8s 1.13.
2019-05-06 12:54:51 -04:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 4f0169bb79 codegen 2019-01-16 09:30:40 -07:00
Justin SB 4aa2498203
Rationalize deserialiation code
Put it all through kopscodecs.Decode, so that we can rewrite the API
group more easily in a subsequent PR.
2018-12-21 13:59:50 -05:00
Justin SB 26bd75aecb
Bulk spelling fixes
Experimenting with my own spelling checker, these are the typos it caught.
2018-12-20 17:43:56 -05:00
SataQiu 77d42267a6 fix some typos 2018-10-29 18:17:45 +08:00
Justin Santa Barbara 62e8e17077 Code fixes for k8s 1.11 API changes 2018-09-28 20:14:45 -04:00
Raffaele Di Fazio d477e96c38 Added initial implementation of ACM cert for Kubernetes API ELB 2018-07-06 09:29:54 +02:00
Justin Santa Barbara ba87c36f73 Support (optional) etcd-manager 2018-05-25 16:01:22 -04:00
andrewsykim b480898af7 digitalocean: add protokube support 2018-04-01 21:47:31 -04:00
Justin Santa Barbara 412cf377c2 VFS: WriteFile takes an io.ReadSeeker
Means we don't have to buffer big files in memory, in combination with
WriteTo for reading.
2018-02-26 09:09:17 -05:00