Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepwork for self-hosted release #54

Merged
merged 1 commit into from
Dec 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .changes/unreleased/Bugfix-20241206-121113.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
kind: Bugfix
body: 'BREAKING CHANGE: Fix opslevel self-hosted chart certification configuration
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Suggested change
body: 'BREAKING CHANGE: Fix opslevel self-hosted chart certification configuration
body: 'BREAKING CHANGE: Fix opslevel self-hosted chart certificate configuration

to work like other secret configurtion and actually inject the cert'
time: 2024-12-06T12:11:13.20789-06:00
4 changes: 4 additions & 0 deletions .changes/unreleased/Bugfix-20241206-121238.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
kind: Bugfix
body: Fix opslevel self-hosted chart to properly account for external eq false and
create flags when generating secret resources
time: 2024-12-06T12:12:38.726022-06:00
3 changes: 3 additions & 0 deletions .changes/unreleased/Feature-20241206-120933.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
kind: Feature
body: Give opslevel self-hosted chart the ability to configure pod annotations
time: 2024-12-06T12:09:33.288069-06:00
3 changes: 3 additions & 0 deletions .changes/unreleased/Feature-20241206-120948.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
kind: Feature
body: Give opslevel self-hosted chart the ability to configure service account annotations
time: 2024-12-06T12:09:48.694907-06:00
3 changes: 3 additions & 0 deletions .changes/unreleased/Feature-20241206-121002.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
kind: Feature
body: Give opslevel self-hosted chart the ability to configure service annotations
time: 2024-12-06T12:10:02.809246-06:00
3 changes: 3 additions & 0 deletions .changes/unreleased/Feature-20241206-121017.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
kind: Feature
body: Give opslevel self-hosted chart the ability to configure an ingress resource
time: 2024-12-06T12:10:17.886563-06:00
3 changes: 3 additions & 0 deletions .changes/unreleased/Feature-20241206-121145.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
kind: Feature
body: Give opslevel self-hosted chart ability to configure certificate key
time: 2024-12-06T12:11:45.26424-06:00
4 changes: 4 additions & 0 deletions .changes/unreleased/Feature-20241206-121318.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
kind: Feature
body: Update opslevel self-hosted chart to remove all migrations init containers in
favor of /bin/run script
time: 2024-12-06T12:13:18.357076-06:00
4 changes: 4 additions & 0 deletions .changes/unreleased/Feature-20241206-121413.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
kind: Feature
body: Change opslevel self-hosted chart to use explict sidekiq queue list instead
of hardcoded files - similar to SAAS
time: 2024-12-06T12:14:13.290775-06:00
6 changes: 3 additions & 3 deletions charts/opslevel/Chart.lock
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
dependencies:
- name: replicated
repository: oci://registry.replicated.com/library
version: 1.0.0-beta.20
digest: sha256:e204abb218418ec5a838017eadae64d5c882c140861707ce0f6db306a86c9018
generated: "2024-06-03T20:36:33.447884-05:00"
version: 1.0.0-beta.31
digest: sha256:6d6190e56b76a579495d63a8d757870ddb449edb0ed239b1afe33a6ea363883b
generated: "2024-12-06T12:07:52.829619-06:00"
4 changes: 2 additions & 2 deletions charts/opslevel/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
apiVersion: "v2"
name: "opslevel"
type: "application"
version: "2024.10.17"
version: "2024.12.5"
appVersion: "2024.10.15"
description: "The OpsLevel internal developer portal helps your team ship fast without risking your software standards."
home: "https://www.opslevel.com/"
Expand All @@ -12,4 +12,4 @@ maintainers:
dependencies:
- name: 'replicated'
repository: 'oci://registry.replicated.com/library'
version: '1.0.0-beta.20'
version: '1.0.0-beta.31'
Binary file removed charts/opslevel/charts/replicated-1.0.0-beta.20.tgz
Binary file not shown.
Binary file not shown.
18 changes: 13 additions & 5 deletions charts/opslevel/templates/opslevel/ingress.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,20 @@ spec:
{{- if .Values.opslevel.ingress.ingressClassName }}
ingressClassName: {{ .Values.opslevel.ingress.ingressClassName}}
{{- end }}
{{- with .Values.opslevel.ingress.tls }}
{{- if .Values.opslevel.ingress.tls }}
tls:
{{ toYaml . | indent 6 }}
- hosts:
- '{{ .Values.opslevel.subdomain }}.{{ .Values.opslevel.domain }}'
{{- end }}
{{- with .Values.opslevel.ingress.rules }}
rules:
{{ toYaml . | indent 6 }}
{{- end }}
- host: '{{ .Values.opslevel.subdomain }}.{{ .Values.opslevel.domain }}'
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: {{ .Values.opslevel.service.name }}
port:
name: http
{{- end }}
7 changes: 1 addition & 6 deletions charts/opslevel/templates/opslevel/scheduler.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,6 @@ spec:
value: "1"
- name: SIDEKIQ_SCHEDULER
value: "true"
- name: DD_AGENT_HOST
valueFrom:
fieldRef:
fieldPath: status.hostIP
envFrom: &envFrom
- configMapRef:
name: 'opslevel'
Expand All @@ -88,8 +84,7 @@ spec:
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- ./bin/run
- sidekiq
envFrom: *envFrom
env: *env
Expand Down
35 changes: 8 additions & 27 deletions charts/opslevel/templates/opslevel/web.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ spec:
matchLabels:
app.kuberntes.io/component: web
app.kubernetes.io/part-of: opslevel
{{- if .Values.certificate.enabled }}
initContainers:
{{- if .Values.certificate.enabled }}
- name: init-certs
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
Expand All @@ -58,42 +58,23 @@ spec:
- name: ca
mountPath: /data
readOnly: false
{{- end }}
- name: migrations
{{- end }}
containers:
- name: web
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- rake
- db:abort_if_pending_migrations
envFrom: &envFrom
- ./bin/run
- puma
- -C ./config/puma.rb
envFrom:
- configMapRef:
name: 'opslevel'
- secretRef:
name: 'opslevel'
- secretRef:
name: '{{ .Values.redis.secret.name }}'
{{- template "opslevel.integration.secrets" . }}
{{- if .Values.certificate.enabled }}
volumeMounts:
- name: certificate
mountPath: /usr/local/share/ca-certificates/custom-cert.crt
subPath: custom-cert.crt
readOnly: false
- name: ca
mountPath: /etc/ssl/certs
{{- end }}
containers:
- name: web
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- puma
- -C ./config/puma.rb
envFrom: *envFrom
ports:
- name: http
containerPort: 3000
Expand Down
39 changes: 9 additions & 30 deletions charts/opslevel/templates/opslevel/worker-faktory.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ spec:
{{- template "global.nodeSelector" . }}
priorityClassName: opslevel-normal
terminationGracePeriodSeconds: 300
{{- if .Values.certificate.enabled }}
initContainers:
{{- if .Values.certificate.enabled }}
- name: init-certs
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
Expand All @@ -50,44 +50,23 @@ spec:
- name: ca
mountPath: /data
readOnly: false
{{- end }}
- name: migrations
{{- end }}
containers:
- name: worker-faktory
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- rake
- db:abort_if_pending_migrations
envFrom: &envFrom
- ./bin/run
- faktory-worker
- -C config/faktory.yml
envFrom:
- configMapRef:
name: 'opslevel'
- secretRef:
name: 'opslevel'
- secretRef:
name: '{{ .Values.redis.secret.name }}'
{{- template "opslevel.integration.secrets" . }}
{{- if .Values.certificate.enabled }}
volumeMounts:
- name: certificate
mountPath: /usr/local/share/ca-certificates/custom-cert.crt
subPath: custom-cert.crt
readOnly: false
- name: ca
mountPath: /etc/ssl/certs
{{- end }}
containers:
- name: worker-faktory
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- faktory-worker
- -C config/faktory.yml
envFrom: *envFrom
env:
- name: SIDEKIQ_CONCURRENCY
value: "3"
{{- with .Values.opslevel.workerLow.resources }}
resources:
{{- toYaml . | nindent 12 }}
Expand Down
47 changes: 17 additions & 30 deletions charts/opslevel/templates/opslevel/worker-high.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ spec:
{{- template "global.nodeSelector" . }}
priorityClassName: opslevel-normal
terminationGracePeriodSeconds: 300
{{- if .Values.certificate.enabled }}
initContainers:
{{- if .Values.certificate.enabled }}
- name: init-certs
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
Expand All @@ -50,44 +50,31 @@ spec:
- name: ca
mountPath: /data
readOnly: false
{{- end }}
- name: migrations
{{- end }}
containers:
- name: high-priority
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- rake
- db:abort_if_pending_migrations
envFrom: &envFrom
- ./bin/run
- sidekiq
- --concurrency 5
- --timeout 290
- --queue mailers,3
- --queue alert_sources_sync_HIGH,1
- --queue documents_HIGH,1
- --queue custom_actions_HIGH,1
- --queue integration_data_sync_HIGH,1
- --queue checks,1
- --queue runners,1
envFrom:
- configMapRef:
name: 'opslevel'
- secretRef:
name: 'opslevel'
- secretRef:
name: '{{ .Values.redis.secret.name }}'
{{- template "opslevel.integration.secrets" . }}
{{- if .Values.certificate.enabled }}
volumeMounts:
- name: certificate
mountPath: /usr/local/share/ca-certificates/custom-cert.crt
subPath: custom-cert.crt
readOnly: false
- name: ca
mountPath: /etc/ssl/certs
{{- end }}
containers:
- name: high-priority
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- sidekiq
- -C ./config/high-priority-sidekiq.yml
env:
- name: SIDEKIQ_CONCURRENCY
value: "3"
envFrom: *envFrom
{{- with .Values.opslevel.workerHigh.resources }}
resources:
{{- toYaml . | nindent 12 }}
Expand Down
46 changes: 16 additions & 30 deletions charts/opslevel/templates/opslevel/worker-low.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ spec:
{{- template "global.nodeSelector" . }}
priorityClassName: opslevel-normal
terminationGracePeriodSeconds: 300
{{- if .Values.certificate.enabled }}
initContainers:
{{- if .Values.certificate.enabled }}
- name: init-certs
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
Expand All @@ -50,44 +50,30 @@ spec:
- name: ca
mountPath: /data
readOnly: false
{{- end }}
- name: migrations
{{- end }}
containers:
- name: low-priority
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- rake
- db:abort_if_pending_migrations
envFrom: &envFrom
- ./bin/run
- sidekiq
- --concurrency 5
- --timeout 290
- --queue checks_LOW,2
- --queue alert_sources_sync,1
- --queue documents,1
- --queue scheduler_LOW,1
- --queue integration_data_sync_LOW,1
- --queue default,1
envFrom:
- configMapRef:
name: 'opslevel'
- secretRef:
name: 'opslevel'
- secretRef:
name: '{{ .Values.redis.secret.name }}'
{{- template "opslevel.integration.secrets" . }}
{{- if .Values.certificate.enabled }}
volumeMounts:
- name: certificate
mountPath: /usr/local/share/ca-certificates/custom-cert.crt
subPath: custom-cert.crt
readOnly: false
- name: ca
mountPath: /etc/ssl/certs
{{- end }}
containers:
- name: low-priority
image: "{{ template "opslevel.image" . }}"
imagePullPolicy: IfNotPresent
args:
- bundle
- exec
- sidekiq
- -C ./config/low-priority-sidekiq.yml
env:
- name: SIDEKIQ_CONCURRENCY
value: "3"
envFrom: *envFrom
{{- with .Values.opslevel.workerLow.resources }}
resources:
{{- toYaml . | nindent 12 }}
Expand Down
Loading