From e772abaf9618dc2da9d1da1e420ffb4ca5af227e Mon Sep 17 00:00:00 2001
From: Ian Wienand <iwienand@redhat.com>
Date: Wed, 25 Aug 2021 12:55:21 +1000
Subject: [PATCH] gitea: use assets bundle

This uses the opendev assets bundle image created with
I3166679bde6d771276289b9d32e7e4407957b2f8.

The mount options require using BuildKit, hence the Dockerfile update.

Otherwise conceptually it's fairly simple; copy in the files from the
opendevorg/assets image rather than the file-system.

Change-Id: I36bdc76471eec5380a676ebcdd885a88d3985976
---
 docker/gitea/Dockerfile                       |   2 +
 docker/gitea/custom/public/img/favicon.ico    | Bin 15086 -> 0 bytes
 docker/gitea/custom/public/img/logo.svg       |  49 ------------------
 docker/gitea/custom/public/img/opendev-sm.png | Bin 7509 -> 0 bytes
 zuul.d/docker-images/gitea.yaml               |   3 ++
 zuul.d/project.yaml                           |  12 ++++-
 6 files changed, 15 insertions(+), 51 deletions(-)
 delete mode 100644 docker/gitea/custom/public/img/favicon.ico
 delete mode 100644 docker/gitea/custom/public/img/logo.svg
 delete mode 100644 docker/gitea/custom/public/img/opendev-sm.png

diff --git a/docker/gitea/Dockerfile b/docker/gitea/Dockerfile
index f6442efae9..9833b72b32 100644
--- a/docker/gitea/Dockerfile
+++ b/docker/gitea/Dockerfile
@@ -1,3 +1,4 @@
+# syntax=docker/dockerfile:1.3
 # Copyright (c) 2018 Red Hat, Inc.
 # Copyright (c) 2016 The Gitea Authors
 # Copyright (c) 2015 The Gogs Authors
@@ -82,6 +83,7 @@ RUN ln -s /app/gitea/gitea /usr/local/bin/gitea
 
 # Copy our custom templates
 COPY custom/ /custom/
+RUN --mount=type=bind,from=opendevorg/assets,target=/tmp/assets cp /tmp/assets/* /custom/public/img/
 
 ENV GITEA_CUSTOM /custom
 
diff --git a/docker/gitea/custom/public/img/favicon.ico b/docker/gitea/custom/public/img/favicon.ico
deleted file mode 100644
index 8a92dda1e934170c0a28ea1a969683db9a78e422..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 15086
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

diff --git a/docker/gitea/custom/public/img/logo.svg b/docker/gitea/custom/public/img/logo.svg
deleted file mode 100644
index 213491a130..0000000000
--- a/docker/gitea/custom/public/img/logo.svg
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   id="svg2"
-   version="1.1"
-   xml:space="preserve"
-   width="177.285"
-   height="177.285"
-   viewBox="0 0 177.28501 177.28501"><metadata
-     id="metadata8"><rdf:RDF><cc:Work
-         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
-     id="defs6"><clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath66"><path
-         d="m 533,244.125 h 72 V 316 h -72 z"
-         id="path68" /></clipPath><clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath82"><path
-         d="M 471.926,323 H 499 v 28 h -27.074 z"
-         id="path84" /></clipPath><clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath92"><path
-         d="m 502,323 h 27 v 37.035 h -27 z"
-         id="path94" /></clipPath><clipPath
-       clipPathUnits="userSpaceOnUse"
-       id="clipPath110"><path
-         d="m 645,324 h 21.719 v 26 H 645 Z"
-         id="path112" /></clipPath></defs><g
-     transform="matrix(2.5,0,0,2.5,-1334.6675,-610.3125)"
-     id="g62"><g
-       clip-path="url(#clipPath66)"
-       id="g64"><path
-         id="path70"
-         style="fill:#ee265e;fill-opacity:1;fill-rule:nonzero;stroke:none"
-         d="m 604.781,279.582 c 0,-19.582 -15.875,-35.457 -35.457,-35.457 -19.582,0 -35.457,15.875 -35.457,35.457 0,19.582 15.875,35.457 35.457,35.457 19.582,0 35.457,-15.875 35.457,-35.457" /><path
-         id="path72"
-         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-         d="m 546.879,284.004 c 0,-3 2.441,-5.442 5.441,-5.442 3,0 5.442,2.442 5.442,5.442 0,3.004 -2.442,5.441 -5.442,5.441 -3,0 -5.441,-2.437 -5.441,-5.441 m 13.004,0 c 0,-4.168 -3.391,-7.563 -7.563,-7.563 -4.172,0 -7.562,3.395 -7.562,7.563 0,4.172 3.39,7.566 7.562,7.566 4.172,0 7.563,-3.394 7.563,-7.566" /><path
-         id="path74"
-         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-         d="m 583.555,289.449 h -5.442 c -3,0 -5.441,-2.441 -5.441,-5.445 0,-3 2.441,-5.442 5.441,-5.442 h 5.442 z m 1.062,-13.008 h -6.504 c -4.172,0 -7.562,3.395 -7.562,7.563 0,4.172 3.39,7.566 7.562,7.566 h 6.504 c 0.586,0 1.059,-0.476 1.059,-1.062 V 277.5 c 0,-0.586 -0.473,-1.059 -1.059,-1.059" /><path
-         id="path76"
-         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
-         d="m 590.906,285.203 c -0.664,0 -1.199,-0.539 -1.199,-1.199 0,-0.66 0.535,-1.195 1.199,-1.195 0.66,0 1.196,0.535 1.196,1.195 0,0.66 -0.536,1.199 -1.196,1.199 m 0,10.465 c 0.66,0 1.196,0.539 1.196,1.199 0,0.66 -0.536,1.199 -1.196,1.199 -0.664,0 -1.199,-0.539 -1.199,-1.199 0,-0.66 0.535,-1.199 1.199,-1.199 m -52.019,-15.242 c 0.222,-0.227 0.527,-0.352 0.843,-0.352 0.321,0 0.622,0.125 0.848,0.352 0.469,0.469 0.469,1.23 0,1.695 -0.453,0.453 -1.242,0.453 -1.695,0 -0.465,-0.465 -0.465,-1.226 0.004,-1.695 m 10.359,-7.742 c -0.453,0.453 -1.242,0.453 -1.695,0 -0.469,-0.469 -0.469,-1.227 0,-1.696 0.234,-0.234 0.539,-0.351 0.847,-0.351 0.309,0 0.614,0.117 0.848,0.351 0.465,0.469 0.465,1.227 0,1.696 m 45.566,-13.707 h -10.195 c -0.586,0 -1.062,0.476 -1.062,1.062 v 10.043 h -5.512 c -5.828,0 -10.828,3.609 -12.898,8.707 -0.676,-1.652 -1.68,-3.195 -3.02,-4.535 -2.887,-2.887 -6.797,-4.313 -10.836,-4.02 -0.148,-0.265 -0.32,-0.519 -0.543,-0.746 -1.293,-1.293 -3.398,-1.293 -4.695,0 -1.293,1.293 -1.293,3.399 0,4.696 0.629,0.625 1.461,0.972 2.347,0.972 0.887,0 1.719,-0.347 2.348,-0.972 0.52,-0.52 0.82,-1.176 0.922,-1.852 3.344,-0.176 6.566,1.031 8.957,3.422 4.602,4.601 4.602,12.09 0,16.691 -4.602,4.602 -12.086,4.602 -16.687,0 -2.137,-2.136 -3.34,-4.945 -3.438,-7.949 0.594,-0.141 1.137,-0.434 1.578,-0.875 1.293,-1.293 1.293,-3.398 0,-4.695 -1.254,-1.254 -3.441,-1.25 -4.691,0 -1.297,1.297 -1.297,3.402 -0.004,4.695 0.293,0.289 0.629,0.512 0.988,0.672 0.051,3.648 1.481,7.066 4.067,9.652 2.714,2.715 6.277,4.071 9.843,4.071 3.567,0 7.129,-1.356 9.844,-4.071 1.363,-1.363 2.379,-2.937 3.059,-4.621 2.093,5.043 7.066,8.602 12.859,8.602 h 9.73 c 0.446,1.308 1.676,2.262 3.133,2.262 1.828,0 3.317,-1.493 3.317,-3.321 0,-1.832 -1.489,-3.32 -3.317,-3.32 -1.457,0 -2.687,0.949 -3.133,2.258 h -9.73 c -6.508,0 -11.801,-5.293 -11.801,-11.801 0,-6.508 5.293,-11.801 11.801,-11.801 h 6.574 c 0.586,0 1.059,-0.473 1.059,-1.058 v -10.047 h 8.078 v 2.722 l -2.852,0.004 c -0.582,0 -1.058,0.477 -1.058,1.059 v 15.992 c -1.309,0.445 -2.258,1.672 -2.258,3.129 0,1.832 1.488,3.32 3.32,3.32 1.828,0 3.317,-1.488 3.317,-3.32 0,-1.457 -0.95,-2.684 -2.258,-3.129 v -14.93 l 2.847,-0.004 c 0.586,0 1.059,-0.476 1.059,-1.058 v -4.844 c 0,-0.586 -0.473,-1.062 -1.059,-1.062" /></g></g></svg>
\ No newline at end of file
diff --git a/docker/gitea/custom/public/img/opendev-sm.png b/docker/gitea/custom/public/img/opendev-sm.png
deleted file mode 100644
index 789b7c90736b4af9a5807704617bb9de58976a49..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 7509
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

diff --git a/zuul.d/docker-images/gitea.yaml b/zuul.d/docker-images/gitea.yaml
index 9e32a0ad3e..d4bf28fab7 100644
--- a/zuul.d/docker-images/gitea.yaml
+++ b/zuul.d/docker-images/gitea.yaml
@@ -34,8 +34,10 @@
     name: system-config-build-image-gitea
     description: Build a gitea image.
     parent: system-config-build-image
+    requires: assets-container-image
     provides: gitea-container-image
     vars: &gitea_vars
+      docker_use_buildkit: true
       docker_images:
         - context: docker/gitea
           target: gitea
@@ -51,6 +53,7 @@
     name: system-config-upload-image-gitea
     description: Build and upload a gitea image.
     parent: system-config-upload-image
+    requires: assets-container-image
     provides: gitea-container-image
     vars: *gitea_vars
     files: *gitea_files
diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml
index f55e0031fd..4c19ae6c3e 100644
--- a/zuul.d/project.yaml
+++ b/zuul.d/project.yaml
@@ -113,7 +113,11 @@
               - name: system-config-build-image-python-base-3.8
                 soft: true
         - system-config-build-image-etherpad
-        - system-config-build-image-gitea
+        - system-config-build-image-gitea:
+            dependencies:
+              - name: opendev-buildset-registry
+              - name: system-config-build-image-assets
+                soft: true
         - system-config-build-image-grafana
         - system-config-build-image-haproxy-statsd:
             dependencies:
@@ -257,7 +261,11 @@
         - system-config-upload-image-hound
         - system-config-upload-image-assets
         - system-config-upload-image-etherpad
-        - system-config-upload-image-gitea
+        - system-config-upload-image-gitea:
+            dependencies:
+              - name: opendev-buildset-registry
+              - name: system-config-upload-image-assets
+                soft: true
         - system-config-upload-image-grafana
         - system-config-upload-image-refstack
         - system-config-upload-image-haproxy-statsd: