diff --git a/pages/keys.ftl b/pages/keys.ftl new file mode 100644 index 00000000..6ce59f77 --- /dev/null +++ b/pages/keys.ftl @@ -0,0 +1,46 @@ +<#import "/templates/template.ftl" as tmpl> + +<@tmpl.page current="keys" title="Keycloak Signing Keys"> + +
+

Keycloak Signing Keys

+ +

+ We use a number of keys to sign artifacts. At the moment we are only signing Maven artifacts and + the Terraform provider, but are looking to expanding this to downloads from the website and containers + in the future. +

+ + + + + + + + + + + + + + + + + + + + +
IDUIDUsageKey
861ab50e8cc6611fb6bc01a6b8f12ea26fd6eebaKeycloak Bot
keycloak.bot@gmail.com
Maven artifacts after January 2024 + + + asc + +
d77f6183986627e454951a5ca63faed146e27e2aKeycloak Terraform Team
keycloak-maintainers@googlegroups.com>
Terraform provider + + + asc + +
+
+ + diff --git a/src/main/java/org/keycloak/webbuilder/builders/AppBuilder.java b/src/main/java/org/keycloak/webbuilder/builders/AppBuilder.java index 3386e5f4..1406a10b 100644 --- a/src/main/java/org/keycloak/webbuilder/builders/AppBuilder.java +++ b/src/main/java/org/keycloak/webbuilder/builders/AppBuilder.java @@ -9,8 +9,10 @@ import org.keycloak.webbuilder.utils.JsonParser; import java.io.File; +import java.nio.file.CopyOption; import java.nio.file.Files; import java.nio.file.Path; +import java.nio.file.StandardCopyOption; import java.util.HashMap; import java.util.Map; import java.util.Set; @@ -59,7 +61,7 @@ private void installPackage(String name, String version) throws Exception { // Resolve target path and copy file. Path targetPath = installationPath.resolve(entryPath); Files.createDirectories(targetPath.getParent()); - Files.copy(tarball, targetPath); + Files.copy(tarball, targetPath, StandardCopyOption.REPLACE_EXISTING); } // Add package to the imports so it can be written to the import map later. diff --git a/static/keys/keycloak-2.asc b/static/keys/keycloak-2.asc new file mode 100644 index 00000000..25c1b04a --- /dev/null +++ b/static/keys/keycloak-2.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Comment: Hostname: +Version: Hockeypuck 2.2 + +xjMEZcsYGxYJKwYBBAHaRw8BAQdAA32swlQ3Z3tyI0iJAY0XMQEVwUXe7nHnjKWs +OCdIPNjNJUtleWNsb2FrIEJvdCA8a2V5Y2xvYWsuYm90QGdtYWlsLmNvbT7CmQQT +FgoAQRYhBIYatQ6MxmEftrwBprjxLqJv1u66BQJlyxgbAhsDBQkFo5qABQsJCAcC +AiICBhUKCQgLAgQWAgMBAh4HAheAAAoJELjxLqJv1u66mOwBANRuVTHzqTknxFKQ +pi5Mrb2oBbImTEgLkiUYzKidRMlxAP9C01g/l1/6EqGoW8EVwx5ZpjvoyPa9xGrH +oYk8lSh8Ds44BGXLGBsSCisGAQQBl1UBBQEBB0BP0g9y7SpLR8mx+JvOKLactT1O +ukxvjuc25/TqxVKDJQMBCAfCfgQYFgoAJhYhBIYatQ6MxmEftrwBprjxLqJv1u66 +BQJlyxgbAhsMBQkFo5qAAAoJELjxLqJv1u66L0sBANSOIz9YtRp6lKeUf/MFp7aX +F3SbVD+A1zcxAkG7zb8UAP9wEZEe9LJRj+vvMA//B2dkldazB5XSd8kQMzbCZHwL +Cw== +=IJm3 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/static/keys/keycloak-terraform-1.asc b/static/keys/keycloak-terraform-1.asc new file mode 100644 index 00000000..171a39d4 --- /dev/null +++ b/static/keys/keycloak-terraform-1.asc @@ -0,0 +1,52 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +=65co +-----END PGP PUBLIC KEY BLOCK-----