Skip to content

feat: use smart git-http-server#3103

Open
CasLubbers wants to merge 59 commits intomainfrom
APL-1704
Open

feat: use smart git-http-server#3103
CasLubbers wants to merge 59 commits intomainfrom
APL-1704

Conversation

@CasLubbers
Copy link
Copy Markdown
Contributor

📌 Summary

🔍 Reviewer Notes

🧹 Checklist

  • Code is readable, maintainable, and robust.
  • Unit tests added/updated

Copy link
Copy Markdown
Contributor

@j-zimnowoda j-zimnowoda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. I have successfully deployed. ✅

  2. I like the fact that it is using istio sidecar, so mTLS can be set between communicating parties. ✅

  3. I am wondering if mtls should be enforced though ⚠️

  4. I was also able to clone the repo::white_check_mark:

kubectl port-forward --namespace git-server svc/git-server 9090:80
git clone http://127.0.0.1:9090/otomi/values.git
kubectl get secret git-server-credentials -n git-server -o jsonpath='{.data.password}'
  1. After enabling gitea things get messy, so fine tuning needs to be done so the platform does not try to switch to gitea. ⚠️

Comment thread charts/git-server/values.yaml Outdated
repoName: otomi/values.git

image:
repository: docker.io/clubbers1892/simple-git-server
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once PoC is approved we will host it at docker.io/linode

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We also need to review the code of simple-git-server ?

Comment thread charts/git-server/values.yaml Outdated
Comment thread helmfile.d/helmfile-03.init.yaml.gotmpl Outdated
Comment thread charts/git-server/templates/deployment.yaml Outdated
Copy link
Copy Markdown
Collaborator

@ferruhcihan ferruhcihan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work, overall looks good to me. Just consider adding a securityContext (runAsNonRoot, drop capabilities) and/or an egress rule to the network policy to harden the deployment.

Comment thread charts/git-server/values.yaml Outdated
kind: PersistentVolumeClaim
metadata:
name: git-server-data
namespace: {{ .Release.Namespace }}
Copy link
Copy Markdown
Collaborator

@ferruhcihan ferruhcihan Apr 8, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
namespace: {{ .Release.Namespace }}
namespace: {{ .Release.Namespace }}
annotations:
"helm.sh/resource-policy": keep

Should we add this annotation to prevent data loss?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do not think we need it. After installation we would like that the git-server gets fully teared down. If we add this policy the PVC will keep on existing forever.

@CasLubbers CasLubbers marked this pull request as ready for review April 15, 2026 06:48
@svcAPLBot
Copy link
Copy Markdown
Contributor

svcAPLBot commented Apr 15, 2026

Comparison of Helm chart templating output:

# apl-operator/templates/deployment.yaml

@@ spec.template.spec.containers.apl-operator.image @@
! ± value change
- linode/apl-core:main
+ docker.io/linode/apl-core:main

# New file added: git-server-git-server
# New file added: git-server-git-server-artifacts
# otomi-api/templates/core-config.yaml

@@ data.core.yaml @@
! ± value change in multiline text (one insert, no deletions)
  adminApps:
  - deps:
    - prometheus
    ingress:
  
  [618 lines unchanged)]
  
    - app: harbor
      name: harbor
    - disableIstioInjection: true
      name: apl-harbor-operator
+   - name: git-server
    - name: gitea
    - disableIstioInjection: true
      name: apl-gitea-operator
    - disableIstioInjection: true
  
  [103 lines unchanged)]
  
      svc: tekton-dashboard
      type: public
    name: tekton
    ownHost: true

# otomi-api/templates/deployment.yaml

# rabbitmq-cluster-operator/templates/messaging-topology-operator/validating-webhook-configuration.yaml

# values-repo.yaml

@CasLubbers
Copy link
Copy Markdown
Contributor Author

CasLubbers commented Apr 16, 2026

Still need to test migration
Migration is working. Git-server is disabled when migrating and git values are not adjusted.

Comment thread charts/git-server/values.yaml Outdated
repoName: otomi/values.git

image:
repository: docker.io/clubbers1892/simple-git-server
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We also need to review the code of simple-git-server ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants