Commit Graph

1549 Commits

Author SHA1 Message Date
Dario Tranchitella
39d6638669 Duplicated code, can be easily removed (#119) 2020-10-31 12:50:51 +01:00
Dario Tranchitella
2af568f0ed Making e2e tests less flaky (#121) 2020-10-31 12:28:17 +01:00
Dario Tranchitella
ee6e3aa0df Using matrix strategy for e2e on multiple k8s versions (#111)
* Using matrix strategy for e2e on multiple k8s versions

* EndpointSlice version support according to Kubernetes release

* Utility helper for testing various Kubernetes versions
2020-10-29 09:39:22 +01:00
Dario Tranchitella
a7f7c00558 Supporting ingresses.networking.k8s.io/v1 (#110)
* Updating to controller-runtime v0.7.0-alpha.4 and k8s 0.19.3

* Implementing ingresses.networking.k8s.io/v1

* Aligning to latest zap signatures
2020-10-23 21:19:14 +02:00
Dario Tranchitella
b0310cd42f Handling all the events from Storage and Ingress classes (#108) 2020-10-17 14:40:07 +02:00
Dario Tranchitella
8f3fd8dfee Removing CR/B upon Capsule removal (#102) 2020-09-23 10:40:08 +02:00
Dario Tranchitella
feec653db4 No need to add a duplicated schema (#100) 2020-09-23 09:21:03 +02:00
Dario Tranchitella
aee6e72f1e Adding StorageClassesSpec and IngressClassesSpec to Tenant example (#97) 0.0.1 v0.0.1 2020-09-16 20:50:15 +02:00
Dario Tranchitella
c75f773fc6 We're stable and production-ready 2020-09-15 15:48:31 +02:00
Dario Tranchitella
3cae5e9c8c Upgrading to latest Kubernetes libraries (#92) 2020-09-15 11:55:02 +02:00
Maxim Fedotov
d0028d483b Fix null pointer exception in Ingress validating webhook (#94)
Co-authored-by: Maksim Fedotov <m_fedotov@wargaming.net>
2020-09-15 11:54:52 +02:00
Maxim Fedotov
875650f185 Regexp support for Ingress and Storage classes (#89)
Co-authored-by: Maksim Fedotov <m_fedotov@wargaming.net>
2020-09-15 11:08:14 +02:00
Dario Tranchitella
9d0a7a78c1 Making CR/CRB names conforming to Kubernetes naming requirements (#91) 2020-09-12 12:14:52 +02:00
Maxim Fedotov
303fc4d69c Support Groups as Subject Kind for Tenant Namespace RoleBindings created by Capsule (#71)
Modified CRD to support Owner struct.

Added Tenant name validation webhook.

Rewrote owner_reference hook logic.

Updated and added new e2e tests.

Co-authored-by: Maksim Fedotov <m_fedotov@wargaming.net>
2020-09-10 17:02:22 +02:00
Dario Tranchitella
10dcfeab82 Typo on bug report template 2020-09-10 16:49:34 +02:00
Dario Tranchitella
f4c41985d8 Using pointers and internal handler for Namespace OwnerReferences (#86)
* Using pointers and internal handler for Namespace OwnerReferences

* Missing go fmt
2020-09-10 15:27:27 +02:00
Maxim Fedotov
e8362f739f Add Service labelling and annotating webhook (#84)
Co-authored-by: Maksim Fedotov <m_fedotov@wargaming.net>
2020-09-10 11:56:51 +02:00
Dario Tranchitella
a4b0c0fe27 Using HTTP handlers as closures (#82)
* Using HTTP handlers as closures

* Avoiding variable shadowing

* Optimizing Ingress webhook

* Missing license header
2020-09-09 13:33:25 +02:00
Dario Tranchitella
12b1338dad Making Namespace no more hard-coded (#83) 2020-09-09 13:33:03 +02:00
Dario Tranchitella
ee0261c069 Providing namespace metadata additional labels and annotations (#80) 2020-09-07 15:09:34 +02:00
Maxim Fedotov
a99153cbe7 Add protected-namespace-regex (#73) 2020-09-02 12:43:02 +02:00
Dario Tranchitella
ea2d69088d Fixing CI (#75)
* Version pinning Ubuntu

* Caching Docker images and other Go modules

* Removing kustomize
2020-09-01 19:12:32 +02:00
Maxim Fedotov
164431959c Add capsule-user-group CLI flag (#67)
* add capsule-user-group param

* Implementing RBAC controller

Co-authored-by: Maksim Fedotov <m_fedotov@wargaming.net>
Co-authored-by: Dario Tranchitella <dario@tranchitella.eu>
2020-09-01 12:15:48 +02:00
Dario Tranchitella
0f935d53b7 Giving priority to IngressClassName rather than annotation (#64)
* IngressclassName has priority over Annotation

* Covering further cases for the Ingress Class

* Forcing to use 1.18 during e2e tests
2020-08-22 12:34:53 +02:00
Dario Tranchitella
e481a4ff5f Implementing e2e during CI (#62) 2020-08-21 22:45:19 +02:00
Dario Tranchitella
52e9419f68 Adding make recipe for e2e (#61) 2020-08-21 14:58:11 +02:00
Dario Tranchitella
9969864141 Scaffolding e2e testing (#56)
* Implementing generic e2e features

* Adding changes upon e2e benchmarking
2020-08-21 14:55:48 +02:00
Dario Tranchitella
3f5e23bf00 Adding probes (#60) 2020-08-20 15:47:23 +02:00
Dario Tranchitella
ee469ce2e7 Ignoring NotIn requirement during resource pruning (#54) 2020-08-12 17:16:48 +02:00
Adriano Pezzuto
7661bbb0ad Updating docs (#48)
* update documents to fix #38

* resolve comments

Co-authored-by: Dario Tranchitella <dario@tranchitella.eu>
2020-08-11 08:52:36 +02:00
Dario Tranchitella
1767bcee12 Implementing Capsule certificate validation (#44) 2020-08-07 16:19:23 +02:00
Dario Tranchitella
ef51e6dee0 Adding zap controlled by CLI flags (#47)
* Adding zap controlled by CLI flags

* Updating contributing for further logs
2020-08-07 15:42:07 +02:00
Dario Tranchitella
272bbf261e Providing shortName tnt for Tenant (#45) 2020-08-07 12:12:28 +02:00
Dario Tranchitella
38cd3be71a Programmatic Tenant prefix for the Capsule namespaces (#41) 2020-08-07 10:25:05 +02:00
Dario Tranchitella
a29db95ad3 Updating tenant after adding/removing Namespace (#43) 2020-08-06 21:50:50 +02:00
Dario Tranchitella
941bddb81d Adding additional printer columns (#40) 2020-08-06 13:43:22 +02:00
Dario Tranchitella
a3c667b2b9 Moving the Namespace count reconciliation to the Tenant reconciler (#39) 2020-08-06 13:36:21 +02:00
Roberto Polli
6d4fb83a23 Refactoring lint GitHub Action (#37) 2020-08-06 11:08:00 +02:00
Dario Tranchitella
0ff047ee10 Enabling Capsule removal and documenting it (#36) 2020-08-05 12:06:41 +02:00
Dario Tranchitella
e8307e773b NetworkPolicy validating webhook logic was the opposite (#35) 2020-08-05 12:00:36 +02:00
Dario Tranchitella
72380e2aba Syncing Namespace annotations for Storage and Ingress classes (#30) 2020-08-05 11:54:46 +02:00
Dario Tranchitella
ee0a238b7f Adding exists requirement to avoid pruning tenant owner resources (#29)
* Adding exists requirement to avoid pruning tenant owner resources

* Restoring useful Makefile commands (fixing 5d20d51)
2020-08-04 16:45:44 +02:00
Dario Tranchitella
5d20d515a7 Migrating from OperatorSDK 0.18 to 0.19 (#23) 2020-08-04 16:30:28 +02:00
Dario Tranchitella
aab0d9b657 Providing contributing documentation (#20) 2020-07-31 10:50:02 +02:00
Dario Tranchitella
9db30c6e81 Fixing the ResourceQuota update (#15)
* Fixing the ResourceQuota update

* Using goroutines to parallelize and speed up ResourceQuotas processing
2020-07-30 15:22:43 +02:00
Dario Tranchitella
fef3607ecf Implementing Capsule Tenant ownership predicate for Namespace Controller (#13)
* Implementing Capsule OwnerRef predicate

* Sorting imports
2020-07-28 11:45:39 +02:00
Dario Tranchitella
66969e334c Removing needless rules from Capsule ClusterRole (#11) 2020-07-28 11:15:46 +02:00
Dario Tranchitella
bd7218ba44 Avoiding TLS/CA race condition on Capsule installation (#7)
* Avoiding race condition on Capsule installation

The TLS Secret controller needs to wait for the CA one in order to
retrieve the updated one, otherwise it could use a non-stored CA.

* Linting

Minor linting fixes

* Makefile for Docker Image

Providing `make docker-image` to speed-up generation of Docker image
2020-07-25 17:21:36 +02:00
Dario Tranchitella
812b16fcff Initial commit 2020-07-24 10:57:51 +02:00