Skip to content

Commit

Permalink
Fix/deployment/445 (#23)
Browse files Browse the repository at this point in the history
Creates a new weekly validation job for "minor" gitlab instances:
- gitlab.gnome.org
- gitlab.freedesktop.org
- salsa.debian.org

Merge after: packit/deployment#484
  • Loading branch information
majamassarini authored May 5, 2023
2 parents 233e7b2 + f6ca977 commit 3a9220a
Show file tree
Hide file tree
Showing 11 changed files with 82 additions and 26 deletions.
2 changes: 1 addition & 1 deletion helm-charts/packit-service-validation/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name : packit-service-validation
description : Helm chart for deploying packit-service-validation app
type : application
# Increment each time you make changes to the chart and its templates.
version : 1.2.1
version : 1.3.0

keywords:
- python
Expand Down
Original file line number Diff line number Diff line change
@@ -1,36 +1,58 @@
# https://docs.openshift.com/container-platform/latest/rest_api/workloads_apis/cronjob-batch-v1.html
{{- range $cronjob := $.Values.cronjobs }}
apiVersion: batch/v1
kind: CronJob
metadata:
name: {{ .Release.Name }}
name: {{ $.Release.Name }}-{{ $cronjob.id }}
spec:
schedule: {{ .Values.cronjob.schedule | quote }}
schedule: {{ $cronjob.schedule | quote }}
jobTemplate:
spec:
activeDeadlineSeconds: {{ .Values.cronjob.activeDeadlineSeconds }}
activeDeadlineSeconds: {{ $cronjob.activeDeadlineSeconds }}
template:
spec:
containers:
- name: run-validation
image: "{{ .Values.image.repo }}:{{ .Values.image.tag }}"
image: "{{ $.Values.image.repo }}:{{ $.Values.image.tag }}"
env:
{{- if eq $cronjob.id "daily-validation" }}
- name: GITHUB_TOKEN
valueFrom:
secretKeyRef:
name: {{ .Release.Name }}-github
name: {{ $.Release.Name }}-github
key: token
- name: GITLAB_TOKEN
valueFrom:
secretKeyRef:
name: {{ .Release.Name }}-gitlab
name: {{ $.Release.Name }}-gitlab
key: token
{{- end }}
{{- if eq $cronjob.id "weekly-validation"}}
- name: GITLAB_GNOME_TOKEN
valueFrom:
secretKeyRef:
name: {{ $.Release.Name }}-gitlab-gnome
key: token
- name: GITLAB_FREEDESKTOP_TOKEN
valueFrom:
secretKeyRef:
name: {{ $.Release.Name }}-gitlab-freedesktop
key: token
- name: SALSA_DEBIAN_TOKEN
valueFrom:
secretKeyRef:
name: {{ $.Release.Name }}-salsa-debian
key: token
{{- end }}
- name: SENTRY_SECRET
valueFrom:
secretKeyRef:
name: {{ .Release.Name }}-sentry
name: {{ $.Release.Name }}-sentry
key: dsn
- name: DEPLOYMENT
value: {{ .Values.deployment }}
value: {{ $.Values.deployment }}
resources:
{{- toYaml .Values.resources | nindent 14 }}
{{- toYaml $.Values.resources | nindent 14 }}
restartPolicy: OnFailure
---
{{- end }}
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}-github
namespace: {{ .Release.Namespace }}
name: {{ $.Release.Name }}-github
type: Opaque
data:
token: "{{ .Values.secrets.github }}"
token: "{{ $.Values.secrets.github }}"
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ $.Release.Name }}-gitlab-freedesktop
type: Opaque
data:
token: "{{ $.Values.secrets.gitlabfreedesktop }}"
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ $.Release.Name }}-gitlab-gnome
type: Opaque
data:
token: "{{ $.Values.secrets.gitlabgnome }}"
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}-gitlab
namespace: {{ .Release.Namespace }}
name: {{ $.Release.Name }}-gitlab
type: Opaque
data:
token: "{{ .Values.secrets.gitlab }}"
token: "{{ $.Values.secrets.gitlab }}"
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ $.Release.Name }}-salsa-debian
type: Opaque
data:
token: "{{ $.Values.secrets.salsadebian }}"
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}-sentry
namespace: {{ .Release.Namespace }}
name: {{ $.Release.Name }}-sentry
type: Opaque
data:
dsn: "{{ .Values.secrets.sentry }}"
dsn: "{{ $.Values.secrets.sentry }}"
19 changes: 14 additions & 5 deletions helm-charts/packit-service-validation/values.yaml
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
deployment: ~

# Cron job parameters
cronjob:
# runs every day at 4 a.m.
schedule: "0 4 * * *"
# maximum duration is 4 hours
activeDeadlineSeconds: 14400
cronjobs:
- id: "daily-validation"
# runs every day at 4 a.m.
schedule: "0 4 * * *"
# maximum duration is 4 hours
activeDeadlineSeconds: 14400
- id: "weekly-validation"
# runs on wednesday at 4 a.m.
schedule: "0 4 * * wed"
# maximum duration is 4 hours
activeDeadlineSeconds: 14400

# Container image
image:
Expand All @@ -28,3 +34,6 @@ secrets:
sentry: ~
github: ~
gitlab: ~
gitlabgnome: ~
gitlabfreedesktop: ~
salsadebian: ~
2 changes: 1 addition & 1 deletion values/packit-service-validation/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ CHART ?= ../../helm-charts/packit-service-validation/
# Upgrade (or install if doesn't exist) the release/chart with values from $(DEPLOYMENT).yaml
# You have to be logged in a cluster
install:
helm upgrade $(EXTRA_OPTIONS) --install --cleanup-on-fail packit-$(DEPLOYMENT)-validation $(CHART) --set secrets.sentry=${SENTRY} --set secrets.github=${GITHUB} --set secrets.gitlab=${GITLAB} --values $(DEPLOYMENT).yaml
helm upgrade $(EXTRA_OPTIONS) --install --cleanup-on-fail packit-$(DEPLOYMENT)-validation $(CHART) --set secrets.sentry=${SENTRY} --set secrets.github=${GITHUB} --set secrets.gitlab=${GITLAB} --set secrets.gitlabgnome=${GITLAB_GNOME} --set secrets.gitlabfreedesktop=${GITLAB_FREEDESKTOP} --set secrets.salsadebian=${SALSA_DEBIAN} --values $(DEPLOYMENT).yaml

# Generate the templates on cluster but doesn't perform the upgrade/install
# You have to be logged in a cluster
Expand Down
9 changes: 8 additions & 1 deletion values/packit-service-validation/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,18 @@ Login to [PSI](https://ocp4.psi.redhat.com) and switch to `cyborg` project.

Get secrets from Bitwarden.
Sentry from `extra-vars.yml` in `secrets-packit-[prod|stg]` item,
GitHub token from `Release/usercont bot` item and GitLab token from `Gitlab.com account for validation` item.
GitHub token from `Release/usercont bot` item.
GitLab token from `Gitlab.com account for validation` item.
Gitlab gnome token for `packit-validation` user taken from `Gitlab (gnome.org)` item.
Gitlab freedesktop token for `packit-validation` user taken from `Gitlab (freedesktop.org)` item.
Gitlab salsa debian token for `packit-validation` user taken from `Gitlab (salsa.debian.org)` item.

export SENTRY=$( echo -n 'token from bitwarden' | base64 )
export GITHUB=$( echo -n 'token from bitwarden' | base64 )
export GITLAB=$( echo -n 'token from bitwarden' | base64 )
export GITLAB_GNOME=$( echo -n 'token from bitwarden' | base64 )
export GITLAB_FREEDESKTOP=$( echo -n 'token from bitwarden' | base64 )
export SALSA_DEBIAN=$( echo -n 'token from bitwarden' | base64 )

### Install from this repo

Expand Down

0 comments on commit 3a9220a

Please sign in to comment.