Skip to content

Commit 0220ee9

Browse files
nightkrstackable-botsoenkeliebau
committed
Kerberos keytab backend (#99)
## Description This PR adds support for provisioning Kerberos principals and keytabs for pods, similar to the `autoTls` backend. Currently only MIT Kerberos is supported, Heimdal and Active Directory still require manual provisioning. There is a spike branch for the HDFS Operator (stackabletech/hdfs-operator#154) that uses this to provision a kerberized HDFS cluster. Co-authored-by: Teo Klestrup Röijezon <teo@nullable.se> Co-authored-by: Stacky McStackface <stackable-bot@users.noreply.github.com> Co-authored-by: Sönke Liebau <soenke.liebau@stackable.tech>
1 parent 1ba8c2c commit 0220ee9

36 files changed

+1889
-43
lines changed

.github/workflows/build.yml

+13-13
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ jobs:
3131
env:
3232
RUSTC_BOOTSTRAP: 1
3333
steps:
34-
- name: Install protoc
34+
- name: Install host dependencies
3535
run: |
3636
sudo apt-get update
37-
sudo apt-get install protobuf-compiler
37+
sudo apt-get install protobuf-compiler krb5-user libkrb5-dev
3838
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
3939
with:
4040
submodules: recursive
@@ -43,7 +43,7 @@ jobs:
4343
with:
4444
key: udeps
4545
- run: cargo install cargo-udeps
46-
- run: cargo udeps
46+
- run: cargo udeps --workspace
4747

4848
# This job evaluates the github environment to determine why this action is running and selects the appropriate
4949
# target repository for published Helm charts based on this.
@@ -125,10 +125,10 @@ jobs:
125125
name: Run Clippy
126126
runs-on: ubuntu-latest
127127
steps:
128-
- name: Install protoc
128+
- name: Install host dependencies
129129
run: |
130130
sudo apt-get update
131-
sudo apt-get install protobuf-compiler
131+
sudo apt-get install protobuf-compiler krb5-user libkrb5-dev
132132
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
133133
with:
134134
submodules: recursive
@@ -156,10 +156,10 @@ jobs:
156156
name: Run RustDoc
157157
runs-on: ubuntu-latest
158158
steps:
159-
- name: Install protoc
159+
- name: Install host dependencies
160160
run: |
161161
sudo apt-get update
162-
sudo apt-get install protobuf-compiler
162+
sudo apt-get install protobuf-compiler krb5-user libkrb5-dev
163163
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
164164
with:
165165
submodules: recursive
@@ -175,10 +175,10 @@ jobs:
175175
name: Run Cargo Tests
176176
runs-on: ubuntu-latest
177177
steps:
178-
- name: Install protoc
178+
- name: Install host dependencies
179179
run: |
180180
sudo apt-get update
181-
sudo apt-get install protobuf-compiler
181+
sudo apt-get install protobuf-compiler krb5-user libkrb5-dev
182182
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
183183
with:
184184
submodules: recursive
@@ -230,10 +230,10 @@ jobs:
230230
name: Check if committed Helm charts are up to date
231231
runs-on: ubuntu-latest
232232
steps:
233-
- name: Install protoc
233+
- name: Install host dependencies
234234
run: |
235235
sudo apt-get update
236-
sudo apt-get install protobuf-compiler
236+
sudo apt-get install protobuf-compiler krb5-user libkrb5-dev
237237
- name: Checkout
238238
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
239239
with:
@@ -288,10 +288,10 @@ jobs:
288288
outputs:
289289
IMAGE_TAG: ${{ steps.printtag.outputs.IMAGE_TAG }}
290290
steps:
291-
- name: Install protoc
291+
- name: Install host dependencies
292292
run: |
293293
sudo apt-get update
294-
sudo apt-get install protobuf-compiler
294+
sudo apt-get install protobuf-compiler krb5-user libkrb5-dev
295295
- name: Checkout
296296
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
297297
with:

CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file.
44

55
## [Unreleased]
66

7+
### Added
8+
9+
- Added `kerberosKeytab` provisioner backend ([#99]).
10+
711
### Changed
812

913
- Shortened the registration socket path for Microk8s compatibility ([#231]).
@@ -13,6 +17,7 @@ All notable changes to this project will be documented in this file.
1317
- Made kubeletDir configurable ([#232]).
1418
- Microk8s users will need to `--set kubeletDir=/var/snap/microk8s/common/var/lib/kubelet`.
1519

20+
[#99]: https://github.com/stackabletech/secret-operator/pull/99
1621
[#231]: https://github.com/stackabletech/secret-operator/pull/231
1722
[#232]: https://github.com/stackabletech/secret-operator/pull/232
1823

0 commit comments

Comments
 (0)