From 3c0d8fe149e12195fe3326beaa8cc4b2f4edf3ca Mon Sep 17 00:00:00 2001
From: Sergejs Kostjucenko <85877331+sergejparity@users.noreply.github.com>
Date: Wed, 15 Feb 2023 22:35:16 +0200
Subject: [PATCH] CI add subkey docker image description and CI job to publish
 it to the hub.docker.com (#13392)

* Add subkey docker image description and ci job to publish it

* Add link to docs

* fix formatting

* fix ci
---
 .../ci/docker/subkey.Dockerfile.README.md     |  8 +++++++
 .../scripts/ci/gitlab/pipeline/publish.yml    | 21 +++++++++++++++++++
 2 files changed, 29 insertions(+)
 create mode 100644 substrate/scripts/ci/docker/subkey.Dockerfile.README.md

diff --git a/substrate/scripts/ci/docker/subkey.Dockerfile.README.md b/substrate/scripts/ci/docker/subkey.Dockerfile.README.md
new file mode 100644
index 00000000000..30a5e821215
--- /dev/null
+++ b/substrate/scripts/ci/docker/subkey.Dockerfile.README.md
@@ -0,0 +1,8 @@
+# The `subkey` program is a key management utility for Substrate-based blockchains. You can use the `subkey` program to perform the following tasks:
+
+* Generate and inspect cryptographically-secure public and private key pairs.
+* Restore keys from secret phrases and raw seeds.
+* Sign and verify signatures on messages.
+* Sign and verify signatures for encoded transactions.
+* Derive hierarchical deterministic child key pairs.
+* [Documentation](https://docs.substrate.io/reference/command-line-tools/subkey/)
\ No newline at end of file
diff --git a/substrate/scripts/ci/gitlab/pipeline/publish.yml b/substrate/scripts/ci/gitlab/pipeline/publish.yml
index 4eafb0a0553..9f075903697 100644
--- a/substrate/scripts/ci/gitlab/pipeline/publish.yml
+++ b/substrate/scripts/ci/gitlab/pipeline/publish.yml
@@ -49,6 +49,19 @@
     DOCKER_USER:                   $Docker_Hub_User_Parity
     DOCKER_PASS:                   $Docker_Hub_Pass_Parity
 
+.push-docker-image-description:
+  stage:                           publish
+  extends:
+    - .kubernetes-env
+    - .publish-refs
+  variables:
+    CI_IMAGE:                      paritytech/docker-description
+    DOCKERHUB_REPOSITORY:          parity/$PRODUCT
+    DOCKER_USERNAME:               $Docker_Hub_User_Parity
+    DOCKER_PASSWORD:               $Docker_Hub_Pass_Parity
+    README_FILEPATH:               $CI_PROJECT_DIR/scripts/ci/docker/$PRODUCT.Dockerfile.README.md
+  script:
+    - echo # Dummy command to satisfy GitLab CI linter.
 
 # publish image to docker.io/paritypr, (e.g. for later use in zombienet testing)
 .build-push-image-temporary:
@@ -90,6 +103,14 @@ publish-docker-subkey:
   variables:
     PRODUCT:                       subkey
 
+publish-docker-description-subkey:
+  extends:                         .push-docker-image-description
+  needs:
+    - job:                         build-subkey-linux
+  variables:
+    PRODUCT:                       subkey
+    SHORT_DESCRIPTION:             "The subkey program is a key management utility for Substrate-based blockchains."
+
 publish-s3-release:
   stage:                           publish
   extends:
-- 
GitLab