diff --git a/apps/web/src/images/secrets-manager/integrations/kubernetes.svg b/apps/web/src/images/secrets-manager/integrations/kubernetes.svg
new file mode 100644
index 00000000000..00ad2b72b68
--- /dev/null
+++ b/apps/web/src/images/secrets-manager/integrations/kubernetes.svg
@@ -0,0 +1,11 @@
+
diff --git a/apps/web/src/images/secrets-manager/sdks/rust-white.svg b/apps/web/src/images/secrets-manager/sdks/rust-white.svg
new file mode 100644
index 00000000000..ce3f3f91043
--- /dev/null
+++ b/apps/web/src/images/secrets-manager/sdks/rust-white.svg
@@ -0,0 +1,48 @@
+
diff --git a/apps/web/src/images/secrets-manager/sdks/rust.svg b/apps/web/src/images/secrets-manager/sdks/rust.svg
new file mode 100644
index 00000000000..a099c1519c8
--- /dev/null
+++ b/apps/web/src/images/secrets-manager/sdks/rust.svg
@@ -0,0 +1,48 @@
+
diff --git a/apps/web/src/locales/en/messages.json b/apps/web/src/locales/en/messages.json
index 5b9e7c9c829..1d0e882b179 100644
--- a/apps/web/src/locales/en/messages.json
+++ b/apps/web/src/locales/en/messages.json
@@ -8180,12 +8180,18 @@
"setUpGithubActions": {
"message": "Set up Github Actions"
},
+ "setUpKubernetes": {
+ "message": "Set up Kubernetes"
+ },
"setUpGitlabCICD": {
"message": "Set up GitLab CI/CD"
},
"setUpAnsible": {
"message": "Set up Ansible"
},
+ "rustSDKRepo": {
+ "message": "View Rust repository"
+ },
"cSharpSDKRepo": {
"message": "View C# repository"
},
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/integrations/integrations.component.spec.ts b/bitwarden_license/bit-web/src/app/secrets-manager/integrations/integrations.component.spec.ts
index 10fbaa1f3fb..6c8ea28bc2f 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/integrations/integrations.component.spec.ts
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/integrations/integrations.component.spec.ts
@@ -68,10 +68,10 @@ describe("IntegrationsComponent", () => {
(integrationList.componentInstance as IntegrationGridComponent).integrations.map(
(i) => i.name,
),
- ).toEqual(["GitHub Actions", "GitLab CI/CD", "Ansible"]);
+ ).toEqual(["GitHub Actions", "GitLab CI/CD", "Ansible", "Kubernetes Operator"]);
expect(
(sdkList.componentInstance as IntegrationGridComponent).integrations.map((i) => i.name),
- ).toEqual(["C#", "C++", "Go", "Java", "JS WebAssembly", "php", "Python", "Ruby"]);
+ ).toEqual(["Rust", "C#", "C++", "Go", "Java", "JS WebAssembly", "php", "Python", "Ruby"]);
});
});
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/integrations/integrations.component.ts b/bitwarden_license/bit-web/src/app/secrets-manager/integrations/integrations.component.ts
index f11048b6a30..9e846d45034 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/integrations/integrations.component.ts
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/integrations/integrations.component.ts
@@ -14,6 +14,14 @@ export class IntegrationsComponent {
constructor(i18nService: I18nService) {
this.integrationsAndSdks = [
+ {
+ name: "Rust",
+ linkText: i18nService.t("rustSDKRepo"),
+ linkURL: "https://github.com/bitwarden/sdk",
+ image: "../../../../../../../images/secrets-manager/sdks/rust.svg",
+ imageDarkMode: "../../../../../../../images/secrets-manager/sdks/rust-white.svg",
+ type: IntegrationType.SDK,
+ },
{
name: "GitHub Actions",
linkText: i18nService.t("setUpGithubActions"),
@@ -94,6 +102,14 @@ export class IntegrationsComponent {
image: "../../../../../../../images/secrets-manager/sdks/ruby.png",
type: IntegrationType.SDK,
},
+ {
+ name: "Kubernetes Operator",
+ linkText: i18nService.t("setUpKubernetes"),
+ linkURL: "https://bitwarden.com/help/secrets-manager-kubernetes-operator/",
+ image: "../../../../../../../images/secrets-manager/integrations/kubernetes.svg",
+ type: IntegrationType.Integration,
+ newBadgeExpiration: "2024-8-12",
+ },
];
}