Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/GitHub actions #635

Open
wants to merge 101 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 96 commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
f11a38c
Added github workflow
AmitaiMazliah Aug 29, 2021
bae384e
Remove publish steps for testing
AmitaiMazliah Aug 30, 2021
866baab
Remove circleci
AmitaiMazliah Aug 30, 2021
e4de273
Added needs to jobs
AmitaiMazliah Aug 30, 2021
f46e7f2
Added key input to cache steps
AmitaiMazliah Aug 30, 2021
9ce69f2
Added path input to cache steps
AmitaiMazliah Aug 30, 2021
4c58a6d
Fix parameter
AmitaiMazliah Aug 30, 2021
8532301
Trying to run sh script
AmitaiMazliah Aug 30, 2021
16bf539
Trying to run sh script
AmitaiMazliah Aug 30, 2021
1d90b10
Trying to run sh script
AmitaiMazliah Aug 30, 2021
7240929
Added timeout
AmitaiMazliah Aug 30, 2021
7eea706
Trying script
AmitaiMazliah Aug 31, 2021
ee0b61b
Trying script
AmitaiMazliah Aug 31, 2021
3826e50
Trying script
AmitaiMazliah Aug 31, 2021
af13f3a
Trying script
AmitaiMazliah Aug 31, 2021
307a69d
Trying script
AmitaiMazliah Aug 31, 2021
c3a85cf
Trying script
AmitaiMazliah Aug 31, 2021
656c2ec
Trying script
AmitaiMazliah Aug 31, 2021
d10e699
Trying script
AmitaiMazliah Sep 1, 2021
6ee8c3f
Trying script
AmitaiMazliah Sep 1, 2021
9700f64
Trying script
AmitaiMazliah Sep 1, 2021
f2d2f25
Trying script
AmitaiMazliah Sep 1, 2021
af5201a
Trying script
AmitaiMazliah Sep 1, 2021
faf36d6
Trying script
AmitaiMazliah Sep 1, 2021
3f3677c
Trying script
AmitaiMazliah Sep 1, 2021
175d013
Trying script
AmitaiMazliah Sep 1, 2021
cc7760e
Trying script
AmitaiMazliah Sep 1, 2021
13e2090
Trying script
AmitaiMazliah Sep 1, 2021
76e0bf0
Trying script
AmitaiMazliah Sep 1, 2021
c94d579
Trying script
AmitaiMazliah Sep 1, 2021
632e0b5
Trying script
AmitaiMazliah Sep 1, 2021
acb2879
Trying script
AmitaiMazliah Sep 1, 2021
4bbde00
Trying script
AmitaiMazliah Sep 2, 2021
fa36a9c
Trying script
AmitaiMazliah Sep 2, 2021
2a419f4
Trying script
AmitaiMazliah Sep 2, 2021
5ce4650
Trying script
AmitaiMazliah Sep 2, 2021
f1aa857
Trying script
AmitaiMazliah Sep 2, 2021
784758b
Trying script
AmitaiMazliah Sep 2, 2021
bbc51b5
Trying script
AmitaiMazliah Sep 2, 2021
2a28164
Trying script
AmitaiMazliah Sep 5, 2021
810fed0
Trying script
AmitaiMazliah Sep 5, 2021
3e58f27
Trying script
AmitaiMazliah Sep 5, 2021
7c8beee
Trying script
AmitaiMazliah Sep 5, 2021
2db4476
Trying script
AmitaiMazliah Sep 5, 2021
1ac3a18
Trying script
AmitaiMazliah Sep 5, 2021
691e45a
Trying script
AmitaiMazliah Sep 5, 2021
059bd60
Trying script
AmitaiMazliah Sep 5, 2021
ee42f6e
Trying script
AmitaiMazliah Sep 5, 2021
7e50ed1
Trying script
AmitaiMazliah Sep 14, 2021
e1dfceb
Trying script
AmitaiMazliah Sep 14, 2021
76b1dc7
Trying script
AmitaiMazliah Sep 14, 2021
63aac5a
Trying script
AmitaiMazliah Sep 14, 2021
c1632ef
Trying script
AmitaiMazliah Sep 14, 2021
57d454f
Trying script
AmitaiMazliah Sep 19, 2021
a78dbfe
Trying script
AmitaiMazliah Sep 19, 2021
9d3e366
Trying script
AmitaiMazliah Sep 19, 2021
a7fd0f8
Trying script
AmitaiMazliah Sep 19, 2021
fd3a07f
trying script
AmitaiMazliah Sep 19, 2021
122aa74
Trying script
AmitaiMazliah Sep 19, 2021
1b5f9f6
Trying script
AmitaiMazliah Sep 19, 2021
75fdcdb
trying script
AmitaiMazliah Sep 19, 2021
e903a27
trying script
AmitaiMazliah Sep 19, 2021
db035b7
Trying script
AmitaiMazliah Sep 22, 2021
843d9e9
Trying script
AmitaiMazliah Sep 22, 2021
fa71603
Trying script
AmitaiMazliah Sep 22, 2021
62df539
trying script
AmitaiMazliah Sep 22, 2021
2d99fea
trying script
AmitaiMazliah Sep 23, 2021
61524ce
trying script
AmitaiMazliah Sep 23, 2021
3d2e459
trying script
AmitaiMazliah Sep 23, 2021
6f206c2
trying
AmitaiMazliah Sep 23, 2021
d9a7b06
trying script
AmitaiMazliah Sep 23, 2021
07eb88b
Trying script
AmitaiMazliah Sep 23, 2021
813c49d
trying script
AmitaiMazliah Sep 23, 2021
102b9bb
trying script
AmitaiMazliah Sep 23, 2021
e8056d3
trying script
AmitaiMazliah Sep 29, 2021
40e9cd3
trying script
AmitaiMazliah Sep 29, 2021
2a9866c
trying script
AmitaiMazliah Sep 29, 2021
5cce05c
trying script
AmitaiMazliah Sep 29, 2021
a705ed8
trying script
AmitaiMazliah Sep 29, 2021
ecbf116
Trying script
AmitaiMazliah Sep 29, 2021
eae7258
trying script
AmitaiMazliah Sep 29, 2021
980185c
Trying script
AmitaiMazliah Sep 29, 2021
b053a31
Removed lint on old file
AmitaiMazliah Sep 30, 2021
a5e9a46
Added GOOGLE_APPLICATION_CREDENTIALS
AmitaiMazliah Oct 7, 2021
7229af0
Added GOOGLE_APPLICATION_CREDENTIALS
AmitaiMazliah Oct 7, 2021
0a33412
Added GOOGLE_APPLICATION_CREDENTIALS
AmitaiMazliah Oct 7, 2021
0cd9f60
Added ActiveDirectory__ClientSecret
AmitaiMazliah Oct 10, 2021
b0bde3a
Print if file exists
AmitaiMazliah Oct 10, 2021
f19050c
Print env var
AmitaiMazliah Oct 10, 2021
6af6bdd
Trying secrets
AmitaiMazliah Oct 11, 2021
64689e9
Added more secrets
AmitaiMazliah Oct 11, 2021
b4c3ba8
Added env vars
AmitaiMazliah Oct 11, 2021
c7c3904
Added more env vars
AmitaiMazliah Oct 12, 2021
0c487f5
Added publishing steps to pipeline
AmitaiMazliah Oct 12, 2021
32ed95c
Added GHCR_PASSWORD and username
AmitaiMazliah Oct 13, 2021
4b5bbbe
new lines in readme
AmitaiMazliah Oct 13, 2021
b654dad
Fix PR comments
AmitaiMazliah Oct 21, 2021
169a1ef
Fix version
AmitaiMazliah Oct 21, 2021
4f5b8fd
Fix crd tests to run local
AmitaiMazliah Nov 10, 2021
3ffc3bb
bump kind and comment host change
Nov 20, 2021
1997fc0
Merge branch 'master' into feature/github-actions
Dec 22, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
410 changes: 0 additions & 410 deletions .circleci/config.yml

This file was deleted.

4 changes: 2 additions & 2 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
bin\
obj\
bin/
obj/
cmd/
**/bin/*
**/obj/*
Expand Down
329 changes: 329 additions & 0 deletions .github/workflows/workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,329 @@
name: Publish Kamus

on:
push:
branches:
- master
pull_request:
branches:
- master

jobs:
test_cli:
name: Test Kamus cli
runs-on: ubuntu-latest
container:
image: timbru31/node-alpine-git:14
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install dependencies
working-directory: "cli"
run: yarn
- name: Check link
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- name: Check link
- name: Run linter

working-directory: "cli"
run: yarn eslint
- name: Run tests
working-directory: "cli"
run: yarn test

build_api:
name: Build Kamus api components
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Build decryptor docker image
run: docker build . -t kamus-decryptor --label org.opencontainers.image.source=https://github.com/${{github.repository}}
- name: Build encryptor docker image
run: docker build . -t kamus-encryptor --build-arg PROJECT_NAME=encrypt-api --label org.opencontainers.image.source=https://github.com/${{github.repository}}
- name: Build CRD controller docker image
run: docker build . -t crd-controller --build-arg PROJECT_NAME=crd-controller --label org.opencontainers.image.source=https://github.com/${{github.repository}}
- name: Save docker image
run: |
mkdir -p docker-cache-api
docker save -o docker-cache-api/kamus-decryptor.tar kamus-decryptor
docker save -o docker-cache-api/kamus-encryptor.tar kamus-encryptor
docker save -o docker-cache-api/crd-controller.tar crd-controller
- name: Cache docker images
uses: actions/cache@v2
with:
key: docker_api_cache_key-{{ .Revision }}
path: docker-cache-api

test_blackbox:
name: Run black box tests
runs-on: ubuntu-latest
needs: build_api
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Restore docker images cache
uses: actions/cache@v2
with:
key: docker_api_cache_key-{{ .Revision }}
path: docker-cache-api
- name: Restore images
run: |
docker load < docker-cache-api/kamus-decryptor.tar
docker load < docker-cache-api/kamus-encryptor.tar
- name: Run black box tests
env:
ENCRYPTOR_IMAGE: kamus-encryptor
DECRYPTOR_IMAGE: kamus-decryptor
run: docker-compose -f tests/blackbox/compose/docker-compose.yaml up --build --exit-code-from black-box --abort-on-container-exit
- name: Parse Zap's Report
run: |
docker run --rm -v $(pwd)/tests/blackbox/compose/reports/:/input -v $(pwd)/glue/:/config soluto/glue-ci:1551818801630 sh -x /app/run_glue.sh /config/glue.json /input/report.json

test_crd:
name: Test KamusSecret CRD
runs-on: ubuntu-latest
needs: build_api
strategy:
matrix:
k8s_version: ["v1.18.15", "v1.19.7", "v1.20.2"]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Restore docker images cache
uses: actions/cache@v2
with:
key: docker_api_cache_key-{{ .Revision }}
path: docker-cache-api
- uses: engineerd/[email protected]
with:
version: "v0.11.1"
config: tests/crd-controller/kind-config.yaml
image: kindest/node:${{ matrix.k8s_version }}
name: e2e-test
- name: Load CRD controller
run: |
kind load image-archive docker-cache-api/crd-controller.tar --name e2e-test
- name: Setup .NET Core SDK 3.0
uses: actions/[email protected]
with:
dotnet-version: '3.0'
- name: Install dependencies
working-directory: tests/crd-controller
run: dotnet restore
- name: Build
working-directory: tests/crd-controller
run: dotnet build --configuration Release --no-restore
- name: Test
working-directory: tests/crd-controller
run: dotnet test

run_tests:
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/dotnet/core/sdk:3.1
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Runs unit tests
working-directory: 'tests/unit'
run: dotnet test
- name: Runs integration tests
working-directory: 'tests/integration'
env:
GOOGLE_APPLICATION_CREDENTIALS: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
ActiveDirectory__ClientSecret: ${{ secrets.ActiveDirectory__ClientSecret }}
KeyManagement__AwsKms__Key: ${{ secrets.KeyManagement__AwsKms__Key }}
KeyManagement__AwsKms__Secret: ${{ secrets.KeyManagement__AwsKms__Secret }}
run: dotnet test

lint-scripts:
name: Lint the code
runs-on: ubuntu-latest
container:
image: node:14
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Run lint
run: |
wget -P tmp_install_folder/ https://github.com/koalaman/shellcheck/releases/download/v0.7.1/shellcheck-v0.7.1.linux.x86_64.tar.xz
tar xvf tmp_install_folder/shellcheck-v0.7.1.linux.x86_64.tar.xz -C tmp_install_folder
cp tmp_install_folder/shellcheck-v0.7.1/shellcheck /usr/bin/shellcheck
rm -r tmp_install_folder
shellcheck -x ci/version_to_deploy.sh
shellcheck -x ci/version_to_deploy_init.sh
shellcheck -x ci/version_to_deploy_cli_docker.sh

push-api-images:
name: Push kamus api component docker images
runs-on: ubuntu-latest
needs: [test_cli, test_blackbox, test_crd, run_tests, lint-scripts, build-init-container]
if: github.ref == 'refs/heads/master'
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Config git user
run: |
git config user.email "[email protected]"
git config user.name "ci-build"
- name: Tag branch
run: ./ci/version_to_deploy.sh
- name: Install SSH key
uses: shimataro/ssh-key-action@v2
with:
key: "f1:c6:0c:fd:87:74:65:84:2f:6e:49:97:ec:6f:20:a5"
- name: Restore docker images cache
uses: actions/cache@v2
with:
key: docker_api_cache_key-{{ .Revision }}
path: docker-cache-api
- name: Restore images
run: |
docker load < docker-cache-api/kamus-decryptor.tar
docker load < docker-cache-api/kamus-encryptor.tar
docker load < docker-cache-api/crd-controller.tar
docker tag kamus-decryptor ghcr.io/soluto/kamus:$DECRYPTOR_API_DOCKER_TAG
docker tag kamus-encryptor ghcr.io/soluto/kamus:$ENCRYPTOR_API_DOCKER_TAG
docker tag crd-controller ghcr.io/soluto/kamus:$CONTROLLER_API_DOCKER_TAG
- name: Docker push version
working-directory: 'init-container/tests'
run: |
docker login ghcr.io -u ${{ secrets.GHCR_USERNAME }} -p ${{ secrets.GHCR_PASSWORD }}
docker push ghcr.io/soluto/kamus:$DECRYPTOR_API_DOCKER_TAG
docker push ghcr.io/soluto/kamus:$ENCRYPTOR_API_DOCKER_TAG
docker push ghcr.io/soluto/kamus:$CONTROLLER_API_DOCKER_TAG
- name: Docker push latest
working-directory: 'init-container/tests'
run: |
docker login ghcr.io -u ${{ secrets.GHCR_USERNAME }} -p ${{ secrets.GHCR_PASSWORD }}
docker tag ghcr.io/soluto/kamus:$DECRYPTOR_API_DOCKER_TAG ghcr.io/soluto/kamus:decryptor-latest
docker tag ghcr.io/soluto/kamus:$ENCRYPTOR_API_DOCKER_TAG ghcr.io/soluto/kamus:encryptor-latest
docker tag ghcr.io/soluto/kamus:$CONTROLLER_API_DOCKER_TAG ghcr.io/soluto/kamus:controller-latest
docker push ghcr.io/soluto/kamus:decryptor-latest
docker push ghcr.io/soluto/kamus:encryptor-latest
docker push ghcr.io/soluto/kamus:controller-latest
- name: Push tags
run: |
git pull
git push --set-upstream origin ${GITHUB_REF##*/} --tags

build-init-container:
name: Build the init container
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Build docker image
working-directory: 'init-container'
run: docker build . -t kamus-init-container --label org.opencontainers.image.source=https://github.com/${{github.repository}}
- name: Run black box tests
working-directory: 'init-container/tests'
run: sudo INIT_CONTAINER_IMAGE=kamus-init-container ./run_test.sh
- name: Save docker image
run: |
mkdir -p docker-cache
docker save -o docker-cache/kamus-init-container.tar kamus-init-container
- name: Cache docker image
uses: actions/cache@v2
with:
key: docker_cache_key-{{ .Revision }}
path: docker-cache

push-init-container:
name: Pushed the init-container docker image
runs-on: ubuntu-latest
needs: [ test_cli, test_blackbox, test_crd, run_tests, lint-scripts, build-init-container ]
if: github.ref == 'refs/heads/master'
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Config git
run: |
git config user.email "[email protected]"
git config user.name "ci-build"
- name: Cache docker image
uses: actions/cache@v2
with:
key: docker_cache_key-{{ .Revision }}
path: docker-cache
- name: Install SSH key
uses: shimataro/ssh-key-action@v2
with:
key: "f1:c6:0c:fd:87:74:65:84:2f:6e:49:97:ec:6f:20:a5"
- name: Tag branch
run: ./ci/version_to_deploy_init.sh
- name: Restore image
run: |
docker load < docker-cache/kamus-init-container.tar
docker tag kamus-init-container ghcr.io/soluto/kamus-init-container:$INIT_CONTAINER_DOCKER_TAG
- name: Docker push
working-directory: 'init-container/tests'
run: |
docker login ghcr.io -u ${{ secrets.GHCR_USERNAME }} -p ${{ secrets.GHCR_PASSWORD }}
docker push ghcr.io/soluto/kamus-init-container:$INIT_CONTAINER_DOCKER_TAG
- name: Docker push latest
working-directory: 'init-container/tests'
run: |
docker login ghcr.io -u ${{ secrets.GHCR_USERNAME }} -p ${{ secrets.GHCR_PASSWORD }}
docker tag ghcr.io/soluto/kamus-init-container:$INIT_CONTAINER_DOCKER_TAG ghcr.io/soluto/kamus-init-container:latest
docker push ghcr.io/soluto/kamus-init-container:latest
- name: Push tags
run: |
git pull
git push --set-upstream origin ${GITHUB_REF##*/} --tags

push-cli-image:
name: Push kamus cli docker image
runs-on: ubuntu-latest
needs: [ test_cli, test_blackbox, test_crd, run_tests, lint-scripts, build-init-container ]
if: github.ref == 'refs/heads/master'
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Config git
run: |
git config user.email "[email protected]"
git config user.name "ci-build"
- name: Install SSH key
uses: shimataro/ssh-key-action@v2
with:
key: "f1:c6:0c:fd:87:74:65:84:2f:6e:49:97:ec:6f:20:a5"
- name: Tag branch
run: ./ci/version_to_deploy_cli_docker.sh
- name: Build docker image
working-directory: 'cli'
run: docker build . -t ghcr.io/soluto/kamus-cli:$CLI_DOCKER_TAG --label org.opencontainers.image.source=https://github.com/${{github.repository}}
- name: Docker push
run: |
docker login ghcr.io -u ${{ secrets.GHCR_USERNAME }} -p ${{ secrets.GHCR_PASSWORD }}
docker push ghcr.io/soluto/kamus-cli:$CLI_DOCKER_TAG
- name: Docker push latest
run: |
docker tag ghcr.io/soluto/kamus-cli:$CLI_DOCKER_TAG ghcr.io/soluto/kamus-cli:latest
docker login ghcr.io -u ${{ secrets.GHCR_USERNAME }} -p ${{ secrets.GHCR_PASSWORD }}
docker push ghcr.io/soluto/kamus-cli:latest
- name: Push tags
run: |
git pull
git push --set-upstream origin ${GITHUB_REF##*/} --tags

build-website:
name: Build kamus website
runs-on: ubuntu-latest
needs: [ test_cli, test_blackbox, test_crd, run_tests, lint-scripts, build-init-container ]
if: github.ref == 'refs/heads/master'
container:
image: node:8.16.0
volumes:
- .:publish
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install and configure dependencies
run: |
npm install -g --silent [email protected]
git config user.email "[email protected]"
git config user.name "ci-build"
- name: Install SSH key
uses: shimataro/ssh-key-action@v2
with:
key: "f1:c6:0c:fd:87:74:65:84:2f:6e:49:97:ec:6f:20:a5"
- name: Deploy docs to gh-pages branch
run: gh-pages --message "[skip ci] Updates" --dist publish/public/
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
[![Helm Package](https://img.shields.io/badge/helm-latest-blue.svg)](https://hub.helm.sh/charts/soluto/kamus)
[![Slack](https://img.shields.io/badge/slack-kamus-orange.svg)](https://join.slack.com/t/k8s-kamus/shared_invite/enQtODA2MjI3MjAzMjA1LThlODkxNTg3ZGVmMjVkOTBhY2RmMmRjOWFiOGU2NzQ1ODU4ODNiMDJiZTE5ZTY4YmRiOTM3MjI0MDc0OGFkN2E)
[![Twitter](https://img.shields.io/twitter/follow/solutoeng.svg?label=Follow&style=popout)](https://twitter.com/intent/tweet?text=Checkout%20Kamus%20secret%20encryption%20for%20Kubernetes&url=https://github.com/Soluto/kamus&via=SolutoEng&hashtags=kubernetes,devops,devsecops) [![CircleCI](https://circleci.com/gh/Soluto/kamus.svg?style=svg)](https://circleci.com/gh/Soluto/kamus)
[![Twitter](https://img.shields.io/twitter/follow/solutoeng.svg?label=Follow&style=popout)](https://twitter.com/intent/tweet?text=Checkout%20Kamus%20secret%20encryption%20for%20Kubernetes&url=https://github.com/Soluto/kamus&via=SolutoEng&hashtags=kubernetes,devops,devsecops)
[![CircleCI](https://circleci.com/gh/Soluto/kamus.svg?style=svg)](https://circleci.com/gh/Soluto/kamus)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't it time to remove circle ci?


![logo](images/logo.png)
# Kamus
Expand Down
4 changes: 3 additions & 1 deletion init-container/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
[![CircleCI](https://circleci.com/gh/Soluto/kamus.svg?style=svg)](https://circleci.com/gh/Soluto/kamus) [![Known Vulnerabilities](https://snyk.io/test/github/soluto/kamus/badge.svg?targetFile=init-container/package.json)](https://snyk.io/test/github/soluto/kamus) [![Dockerhub](https://images.microbadger.com/badges/image/soluto/kamus-init-container.svg)](https://microbadger.com/images/soluto/kamus-init-container "Get your own image badge on microbadger.com")
[![CircleCI](https://circleci.com/gh/Soluto/kamus.svg?style=svg)](https://circleci.com/gh/Soluto/kamus)
[![Known Vulnerabilities](https://snyk.io/test/github/soluto/kamus/badge.svg?targetFile=init-container/package.json)](https://snyk.io/test/github/soluto/kamus)
[![Dockerhub](https://images.microbadger.com/badges/image/soluto/kamus-init-container.svg)](https://microbadger.com/images/soluto/kamus-init-container "Get your own image badge on microbadger.com")
# Kamus Init Container
A [init container](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) that decrypt secrets using Kamus decryptor API and write them to a file.

Expand Down
Loading