| * Garage |
| |
| S3-compatible object storage for GitLab (replaces the bundled MinIO, |
| which was removed in GitLab chart 10). |
| |
| ** Installation |
| The Helm chart is not published to a repository; check out the |
| Garage source tree (tag =v2.3.0=) and install from there: |
| |
| #+BEGIN_SRC shell-script |
| helm -n garage upgrade --install garage garage/script/helm/garage -f values.yaml --create-namespace |
| #+END_SRC |
| |
| ** Layout, buckets and key |
| #+BEGIN_SRC shell-script |
| kubectl -n garage exec garage-0 -- /garage layout assign -z dc1 -c 20G <node-id> |
| kubectl -n garage exec garage-0 -- /garage layout apply --version 1 |
| kubectl -n garage exec garage-0 -- /garage key create gitlab-app-key |
| for b in git-lfs gitlab-agent-plan-content gitlab-artifacts gitlab-backups gitlab-ci-secure-files \ |
| gitlab-dependency-proxy gitlab-mr-diffs gitlab-packages gitlab-pages gitlab-terraform-state \ |
| gitlab-uploads registry runner-cache tmp; do |
| kubectl -n garage exec garage-0 -- /garage bucket create $b |
| kubectl -n garage exec garage-0 -- /garage bucket allow --read --write --owner $b --key gitlab-app-key |
| done |
| #+END_SRC |
| |
| The key goes into the secrets =gitlab-object-storage=, |
| =gitlab-object-storage-s3cmd= and =gitlab-registry-storage= |
| (namespace =gitlab-system=, key =config=), as described in |
| https://docs.gitlab.com/charts/installation/migration/bundled_chart_migration/ |