diff --git a/apps/gitlab/env/k3s-cluster/config.json b/apps/gitlab/env/k3s-cluster/config.json new file mode 100644 index 0000000..a1bf127 --- /dev/null +++ b/apps/gitlab/env/k3s-cluster/config.json @@ -0,0 +1,12 @@ +{ + "appName": "gitlab", + "userGivenName": "gitlab", + "namespace": "gitlab", + "destNamespace": "gitlab", + "destServer": "https://kubernetes.default.svc", + "srcPath": "apps/gitlab/env/k3s-cluster", + "srcRepoURL": "https://github.com/3dwardch3ng/home-cluster-ops.git", + "srcTargetRevision": "", + "labels": null, + "annotations": null +} \ No newline at end of file diff --git a/apps/gitlab/env/k3s-cluster/deployment.yaml b/apps/gitlab/env/k3s-cluster/deployment.yaml new file mode 100644 index 0000000..6c6aed8 --- /dev/null +++ b/apps/gitlab/env/k3s-cluster/deployment.yaml @@ -0,0 +1,60 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: gitlab + namespace: gitlab + labels: + app.kubernetes.io/name: gitlab +spec: + selector: + matchLabels: + app.kubernetes.io/name: gitlab + template: + metadata: + labels: + app.kubernetes.io/name: gitlab + spec: + containers: + - name: gitlab + image: gitlab/gitlab-ce:17.2.1-ce.0 + securityContext: + allowPrivilegeEscalation: false + env: + - name: GITLAB_OMNIBUS_CONFIG + value: "external_url 'https://gitlab.cluster.edward.sydney'" + ports: + - protocol: TCP + containerPort: 443 + name: https + - protocol: TCP + containerPort: 80 + name: http + - protocol: TCP + containerPort: 22 + name: ssh + volumeMounts: + - name: dshm + mountPath: /dev/shm + - name: gitlab-config + mountPath: /etc/config + - name: gitlab-log + mountPath: /var/log/gitlab + - name: gitlab-data + mountPath: /var/opt/gitlab + volumes: + - name: dshm + emptyDir: + medium: Memory + sizeLimit: 1Gi + - name: gitlab-config + hostPath: + path: /mnt/nfs/AppData/gitlab/config + type: Directory + - name: gitlab-log + hostPath: + path: /mnt/nfs/AppData/gitlab/log + type: Directory + - name: gitlab-data + hostPath: + path: /mnt/nfs/AppData/gitlab/data + type: Directory diff --git a/apps/gitlab/env/k3s-cluster/kustomization.yaml b/apps/gitlab/env/k3s-cluster/kustomization.yaml new file mode 100644 index 0000000..87b09a3 --- /dev/null +++ b/apps/gitlab/env/k3s-cluster/kustomization.yaml @@ -0,0 +1,5 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ./deployment.yaml + - ./service.yaml \ No newline at end of file diff --git a/apps/gitlab/env/k3s-cluster/service.yaml b/apps/gitlab/env/k3s-cluster/service.yaml new file mode 100644 index 0000000..7ed72c5 --- /dev/null +++ b/apps/gitlab/env/k3s-cluster/service.yaml @@ -0,0 +1,25 @@ +apiVersion: v1 +kind: Service +metadata: + name: gitlab + namespace: gitlab + labels: + app.kubernetes.io/name: gitlab +spec: + selector: + app.kubernetes.io/name: gitlab + type: LoadBalancer + internalTrafficPolicy: Cluster + ports: + - protocol: TCP + port: 10080 + targetPort: 80 + name: http + - protocol: TCP + port: 10443 + targetPort: 443 + name: https + - protocol: TCP + port: 10022 + targetPort: 22 + name: ssh diff --git a/resources/namespaces/env/k3s-cluster/templates/gitlab.yaml b/resources/namespaces/env/k3s-cluster/templates/gitlab.yaml new file mode 100644 index 0000000..df426d2 --- /dev/null +++ b/resources/namespaces/env/k3s-cluster/templates/gitlab.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Namespace +metadata: + annotations: + argocd.argoproj.io/sync-options: Prune=false + creationTimestamp: null + name: gitlab +spec: {} +status: {}