Commit Graph
89 Commits
Author SHA1 Message Date
Marco Franssen dfb32dc28f Revert adding tornjak to be releasable (#180) 2023-03-31 10:11:54 +02:00
Marco Franssen 64585ba2b5 Fix formatting issues introduced with #152
Signed-off-by: Marco Franssen <[email protected]>
2023-03-27 17:56:47 +02:00
05d0f4778d Introduction of Tornjak to SPIRE Server helm charts (#144)
This PR introduces a simplified version of
[Tornjak](https://github.com/spiffe/tornjak) to support UI and SPIRE
control plane.

It extends the `/charts/spire-server` sub-chart by injecting *tornjak*
container to the *spire-server* pod. Tornjak image consists of Tornjak
API (Tornjak Backend), Tornjak UI (Frontend), and database for storing
Tornjak specific information.

Tornjak Backend communicates with SPIRE API via SPIRE Server socket. 

Since Tornjak UI (Frontend) is a React code that renders in a browser,
it needs to communicate with Tornjak APIs, and that requires
communication ports to be open, either via Ingress (in Cloud deployment)
or via port forwarding in local deployments (e.g. kind, minikube etc).
Typically port 10000 is used for HTTP connection to Backend, and port
3000 for the HTTP connection to Frontend.

End user management, TLS, and mTLS connections will be addressed by
future PRs.

This PR resolves issue #31

---------

Signed-off-by: Mariusz Sabath <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
Co-authored-by: Kevin Fox <[email protected]>
Co-authored-by: Marco Franssen <[email protected]>
Co-authored-by: Pete Cable <[email protected]>
Co-authored-by: Dennis Gove <[email protected]>
2023-03-22 13:09:09 -04:00
Pete Cable 811a2f6b01 Add option to enable federation on spire-server (#97) 2023-03-16 20:36:13 +01:00
kfox1111 2e3f045826 Make webhook fail policy configurable (#124)
This patch makes the webhook fail policy configurable.

---------

Signed-off-by: Kevin Fox <[email protected]>
2023-03-15 12:55:07 -07:00
kfox1111 03db6bb5fe Namespace override
This patch makes it possible to install the subcharts in different
namespaces as needed.

Signed-off-by: Kevin Fox <[email protected]>
2023-03-13 15:03:16 -07:00
kfox1111 b198bc7e39 Fix the tests so they can run locked down. (#111) 2023-03-11 22:10:14 +01:00
Kevin Fox bfeb217558 Fix cluster role name uniqueness
Adds namespace to the ClusterRole and ClusterRoleBinding so that it
doesn't conflict when you have two instances of the chart, in different
namespaces with the same release name.

Signed-off-by: Kevin Fox <[email protected]>
2023-03-10 15:45:49 +01:00
Kevin Fox 9e22d2c303 Make the namespace the bundle is dropped into configurable
When the server and agent are not in the same namespace, the bundle needs to be
uploadable in the agent's namespace.

Signed-off-by: Kevin Fox <[email protected]>
2023-03-09 12:00:41 -08:00
kfox1111 b6dd136af2 Add tmp mount so that server can run locked down (#105)
This pr adds a tmp mount to the spire server pod so that it can run with
read only root.

Signed-off-by: Kevin Fox <[email protected]>
2023-03-08 14:21:45 -08:00
Kevin Fox aaaf2f7625 Remove dead role code
The cluster role does the same thing, but at the cluster level
where it belongs. The extra role code does nothing so we remove
it here.

Signed-off-by: Kevin Fox <[email protected]>
2023-03-08 12:36:35 -08:00
Marco Franssen 3b7b3564da Allow to configure spire-server CA key type
Resolves #18

Signed-off-by: Marco Franssen <[email protected]>
2023-03-07 22:07:54 +01:00
Marco Franssen eb186ca346 Add values for server TTL configurables
Signed-off-by: Marco Franssen <[email protected]>
2023-03-07 09:47:25 +01:00
kfox1111 f123296032 Add a flag to configure the Kubernetes NodeAttestor (#83) 2023-03-06 19:59:54 +01:00
Kevin Fox a00c97ba87 Incorperate feedback
Signed-off-by: Kevin Fox <[email protected]>
2023-03-06 06:53:29 -08:00
Kevin Fox f93434a926 Make server service account allow list configurable
If you don't have the agent and server in the same namespace or the same
cluster, or want to bind additional clusters, you need the ability to
configure the service account allow list.

Signed-off-by: Kevin Fox <[email protected]>
2023-03-06 06:53:29 -08:00
kfox1111 d341c5ad58 UpstreamAuthority cert-manager support (#82) 2023-03-03 20:48:35 +01:00
Kevin Fox a82ee694bf Make sure all configmap changes rollout
Signed-off-by: Kevin Fox <[email protected]>
2023-03-03 08:39:11 -08:00
Kevin Fox b7f8c86478 Add extra initContainers, containers, volumes to agent and server
With plugin support, agents and servers need more customization.
This patch enables initContainers, extraContainers, extraVolumes
and extraVolumeMounts to be added to those services.

Signed-off-by: Kevin Fox <[email protected]>
2023-03-02 08:02:19 -08:00
Faisal Memon fe93346b66 Use quote function instead of actual quotes
Signed-off-by: Faisal Memon <[email protected]>
2023-03-01 11:10:08 +01:00
kfox1111 4681498559 Better spire-server entry commands (#59)
* Better spire-server entry commands

Currently in order to use the cli tools such as spire-server entry show
You must know the path within the container to the binary along with what
the path is to the socket. This patch makes that unnessisary. This now
works:
kubectl exec -it spire-server-0 -- spire-server entry show

Signed-off-by: Kevin Fox <[email protected]>

* Remove setting thats set to default

Signed-off-by: Kevin Fox <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
2023-02-28 22:43:49 +01:00
Kevin Fox 9d7881f8b4 Switch hostpath to emptydir in spire-server
The api of the server does not need to be exported out of the
server pod.

Signed-off-by: Kevin Fox <[email protected]>
2023-02-28 09:49:13 -08:00
Marco Franssen ba41f04df5 Fix spire-controller-manager healthz port
This to align with the spire-controller-manager-configmap.yaml

Signed-off-by: Marco Franssen <[email protected]>
2023-02-27 08:08:17 -08:00
kfox1111andMarco Franssen 35eb3bb42e Basic Prometheus support (#28)
Co-authored-by: Marco Franssen <[email protected]>
2023-02-24 22:39:15 +01:00
Marco Franssen 495d9d67e8 Align healthz ports and checks across containers
Signed-off-by: Marco Franssen <[email protected]>
2023-02-24 21:06:09 +01:00
Marco Franssen b3248e5c9c Remove deprecated k8s workload registrar support
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:15 +01:00
Ken HuffmanandMarco Franssen 3448897316 Add namespaceSelector for spire-controller-manager (#112)
Co-authored-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:15 +01:00
Marco Franssen 8be96e4530 Fix spire validating webhook configuration
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:14 +01:00
Marco FranssenandGert Jan Kamstra 225931565a Include spire namespace to fix oidc-provider
Signed-off-by: Marco Franssen <[email protected]>
Co-authored-by: Gert Jan Kamstra <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:13 +01:00
Marco Franssen 456c9cc53b Add by default k8s workload registrar compatible SPIFFEIDs to controller-manager setup
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:13 +01:00
Marco Franssen 0d49280cda Add support for spire-controller-manager
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:13 +01:00
Marco Franssen 875b17a948 Fix RBAC permissions k8s-workload-registrar
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:13 +01:00
Marco Franssen 016e8336d0 Fix agent connectivity if deployed with different name
e.g. if deploying with spire-65de556ac

Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:12 +01:00
Marco Franssen 9921d1df40 Use correct helper function for upstream-ca-secret
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:12 +01:00
Marco Franssen 4a2b0ac69a Add spire-k8s-registrar service
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:12 +01:00
Marco Franssen 175d448341 Utilize helper function for spire-k8s-workload-registrar
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:12 +01:00
Marco Franssen 065689a6a4 Fix k8s workload registrar image pullPolicy
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:12 +01:00
Marco Franssen 0a0ddb4a9b Move the k8s-workload-registrar back into same pod as spire-server
The k8s-workload-registrar needs access to the spire-server socket and
therefore has to run in the same pod to be able to mount the socket
into the container.

Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:11 +01:00
Marco Franssen ce9b58e725 Move spire-server to dedicated subchart
Signed-off-by: Marco Franssen <[email protected]>
Signed-off-by: Marco Franssen <[email protected]>
2023-02-18 13:04:10 +01:00