This commit is contained in:
Eric Meehan 2024-11-18 19:08:05 -05:00
parent 67778bbe57
commit 81b3f9b324
3 changed files with 58 additions and 148 deletions

View File

@ -1,5 +1,5 @@
---
# tasks file for gitlab
# tasks file for gitea
- name: Create git namespace
k8s:
state: present
@ -9,14 +9,14 @@
metadata:
name: git
- name: Create PVC for PostgreSQL
- name: Create PVC for MySQL
k8s:
state: present
definition:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: postgres
name: mysql
namespace: git
spec:
accessModes:
@ -25,74 +25,74 @@
requests:
storage: 64Gi
- name: Create Deployment for PostgreSQL
- name: Create Deployment for MySQL
k8s:
state: present
definition:
apiVersion: v1
kind: Deployment
metadata:
name: postgres
name: mysql
namespace: git
labels:
app: postgres
app: mysql
spec:
replicas: 1
selector:
matchLabels:
app: postgres
app: mysql
template:
metadata:
labels:
app: postgres
app: mysql
spec:
containers:
- name: postgres
image: postgres
- name: mysql
image: mysql
volumeMounts:
- name: data
mountPath: /var/lib/postgresql/data
mountPath: /var/lib/mysql
ports:
- containerPort: 5432
- containerPort: 3306
env:
- name: PGDATA
value: /var/lib/postgresql/data/pgdata
- name: POSTGRES_DB
value: gitlabhq_production
- name: POSTGRES_USER
value: gitlab
- name: POSTGRES_PASSWORD
value: "{{ gitlab_postgres_password }}"
- name: MYSQL_ROOT_PASSWORD
value: "{{ mysql_root_password }}"
- name: MYSQL_DATABASE
value: gitea
- name: MYSQL_USER
value: gitea
- name: MYSQL_PASSWORD
value: "{{ gitea_mysql_password }}"
volumes:
- name: data
persistentVolumeClaim:
claimName: postgres
claimName: mysql
- name: Create Service for PostgreSQL
- name: Create Service for MySQL
k8s:
state: present
definition:
apiVersion: v1
kind: Service
metadata:
name: postgres
name: mysql
namespace: git
spec:
selector:
app: postgres
app: mysql
ports:
- port: 5432
name: postgres
- port: 3306
name: mysql
type: ClusterIP
- name: Create PVC for GitLab
- name: Create PVC for Gitea
k8s:
state: present
definition:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: gitlab
name: gitea
namespace: git
spec:
accessModes:
@ -101,65 +101,51 @@
requests:
storage: 128Gi
- name: Create Deployment for GitLab
- name: Create Deployment for Gitea
k8s:
state: present
definition:
apiVersion: v1
kind: Deployment
metadata:
name: gitlab
name: gitea
namespace: git
labels:
app: gitlab
app: gitea
spec:
replicas: 1
selector:
matchLabels:
app: gitlab
app: gitea
template:
metadata:
labels:
app: gitlab
app: gitea
spec:
containers:
- name: gitlab
image: gitlab/gitlab-ce
- name: gitea
image: gitea/gitea
volumeMounts:
- name: data
mountPath: /var/opt/gitlab
mountPath: /data
ports:
- containerPort: 80
- containerPort: 3000
- containerPort: 22
env:
- name: GITLAB_OMNIBUS_CONFIG
value: >
external_url 'https://git.eom.dev/';
postgresql['enable'] = false;
gitlab_rails['lfs_enabled'] = true;
gitlab_rails['db_adapter'] = 'postgresql';
gitlab_rails['db_host'] = 'postgres';
gitlab_rails['db_password'] = '{{ gitlab_postgres_password }}';
nginx['listen_port'] = 80;
nginx['listen_https'] = false;
gitlab_rails['ldap_enabled'] = true;
gitlab_rails['ldap_servers'] = {
'main' => {
'label' => 'OpenLDAP',
'host' => 'openldap.auth.svc.cluster.local',
'port' => 389,
'encryption' => 'plain',
'uid' => 'uid',
'bind_dn' => 'cn=readonly,dc=eom,dc=dev',
'password' => '{{ ldap_readonly_password }}',
'base' => 'dc=eom,dc=dev',
'user_filter' => '(|(objectclass=inetOrgPerson))'
}
}
- name: GITEA__database__DB_TYPE
value: mysql
- name: GITEA__database__HOST
value: mysql
- name: GITEA__database__NAME
value: gitea
- name: GITEA__database__USER
value: gitea
- name: GITEA__database__PASSWD
value: "{{ gitea_mysql_password }}"
volumes:
- name: data
persistentVolumeClaim:
claimName: gitlab
claimName: gitea
- name: Create Service for GitLab
k8s:
@ -168,15 +154,16 @@
apiVersion: v1
kind: Service
metadata:
name: gitlab
name: gitea
namespace: git
spec:
selector:
app: gitlab
app: gitea
ports:
- port: 22
name: ssh
- port: 80
targetPort: 3000
name: http
type: LoadBalancer
@ -189,7 +176,7 @@
metadata:
annotations:
cert-manager.io/cluster-issuer: ca-issuer
name: gitlab
name: gitea
namespace: git
spec:
ingressClassName: nginx
@ -201,10 +188,10 @@
path: /
backend:
service:
name: gitlab
name: gitea
port:
number: 80
tls:
- hosts:
- git.eom.dev
secretName: gitlab
secretName: gitea

View File

@ -1,4 +1,4 @@
---
# tasks file for eom
- name: Deploy
include_tasks: social.yaml
include_tasks: git.yaml

View File

@ -9,82 +9,6 @@
metadata:
name: stream
- name: Create PVC for PostgreSQL
k8s:
state: present
definition:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: postgres
namespace: stream
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 64Gi
- name: Create Deployment for PostgreSQL
k8s:
state: present
definition:
apiVersion: v1
kind: Deployment
metadata:
name: postgres
namespace: stream
labels:
app: postgres
spec:
replicas: 1
selector:
matchLabels:
app: postgres
template:
metadata:
labels:
app: postgres
spec:
containers:
- name: postgres
image: postgres
volumeMounts:
- name: data
mountPath: /var/lib/postgresql/data
ports:
- containerPort: 5432
env:
- name: PGDATA
value: /var/lib/postgresql/data/pgdata
- name: POSTGRES_DB
value: owncast
- name: POSTGRES_USER
value: owncast
- name: POSTGRES_PASSWORD
value: "{{ owncast_postgres_password }}"
volumes:
- name: data
persistentVolumeClaim:
claimName: postgres
- name: Create Service for PostgreSQL
k8s:
state: present
definition:
apiVersion: v1
kind: Service
metadata:
name: postgres
namespace: stream
spec:
selector:
app: postgres
ports:
- port: 5432
name: postgres
type: ClusterIP
- name: Create PVC for OwnCast
k8s:
state: present
@ -152,8 +76,7 @@
ports:
- port: 1935
name: rtmp
- port: 80
targetPort: 8080
- port: 8080
name: http
type: LoadBalancer
@ -178,9 +101,9 @@
path: /
backend:
service:
name: stream
name: owncast
port:
number: 80
number: 8080
tls:
- hosts:
- stream.eom.dev