mirror of
https://pagure.io/fedora-infra/ansible.git
synced 2026-05-11 10:32:27 +08:00
[mdapi] Only reflect the GO changes on staging
Production is not ready yet to work with that changes. Let us separate them using jinja templating.
This commit is contained in:
@@ -61,7 +61,7 @@
|
||||
|
||||
- role: openshift/object
|
||||
object_app: mdapi
|
||||
object_file: cron.yml
|
||||
object_template: cron.yml
|
||||
object_objectname: cron.yml
|
||||
tags:
|
||||
- cron-job
|
||||
@@ -88,7 +88,7 @@
|
||||
|
||||
- role: openshift/object
|
||||
object_app: mdapi
|
||||
object_file: deploymentconfig.yml
|
||||
object_template: deploymentconfig.yml
|
||||
object_objectname: deploymentconfig.yml
|
||||
|
||||
- role: openshift/rollout
|
||||
|
||||
@@ -1,4 +1,26 @@
|
||||
{% macro load_file(filename) %}{% include filename %}{%- endmacro -%}
|
||||
{% if env == "staging" %}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: mdapi-configmap
|
||||
labels:
|
||||
app: mdapi
|
||||
data:
|
||||
mdapi.cfg: |-
|
||||
{{ load_file('mdapi.cfg') | indent }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: mdapi-myconfigpy-configmap
|
||||
labels:
|
||||
app: mdapi
|
||||
data:
|
||||
myconfig.py: |-
|
||||
{{ load_file('myconfig.py') | indent }}
|
||||
{% endif %}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
|
||||
@@ -18,8 +18,20 @@ spec:
|
||||
containers:
|
||||
- name: mdapi
|
||||
image: image-registry.openshift-image-registry.svc:5000/mdapi/mdapi:latest
|
||||
{% if env == "staging" %}
|
||||
command: ["bash", "-c", "/metasource/meta -loglevel info -location /var/tmp database"]
|
||||
{% else %}
|
||||
command: ["bash", "-c", "/usr/local/bin/mdapi --conffile /etc/mdapi/confdata/myconfig.py database"]
|
||||
{% endif %}
|
||||
volumeMounts:
|
||||
{% if env != "staging" %}
|
||||
- name: myconfigpy-volume
|
||||
mountPath: /etc/mdapi/confdata/
|
||||
readOnly: true
|
||||
- name: config-volume
|
||||
mountPath: /etc/mdapi
|
||||
readOnly: true
|
||||
{% endif %}
|
||||
- name: data-volume
|
||||
mountPath: /var/tmp
|
||||
- name: fedora-messaging-config-volume
|
||||
@@ -36,6 +48,16 @@ spec:
|
||||
readOnly: true
|
||||
restartPolicy: Never
|
||||
volumes:
|
||||
{% if env != "staging" %}
|
||||
- name: myconfigpy-volume
|
||||
configMap:
|
||||
defaultMode: 420
|
||||
name: mdapi-myconfigpy-configmap
|
||||
- name: config-volume
|
||||
configMap:
|
||||
defaultMode: 420
|
||||
name: mdapi-configmap
|
||||
{% endif %}
|
||||
- name: data-volume
|
||||
persistentVolumeClaim:
|
||||
claimName: mdapi-storage
|
||||
@@ -20,13 +20,23 @@ spec:
|
||||
containers:
|
||||
- name: mdapi
|
||||
image: registry/mdapi:latest
|
||||
{% if env == "staging" %}
|
||||
command: ["/metasource/meta"]
|
||||
args: ["-location", "/var/tmp", "-loglevel", "info", "dispense"]
|
||||
{% endif %}
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
volumeMounts:
|
||||
- name: data-volume
|
||||
mountPath: /var/tmp/
|
||||
{% if env != "staging" %}
|
||||
- name: myconfigpy-volume
|
||||
mountPath: /etc/mdapi/confdata/
|
||||
readOnly: true
|
||||
- name: config-volume
|
||||
mountPath: /etc/mdapi
|
||||
readOnly: true
|
||||
{% endif %}
|
||||
readinessProbe:
|
||||
timeoutSeconds: 5
|
||||
initialDelaySeconds: 60
|
||||
@@ -43,6 +53,14 @@ spec:
|
||||
port: 8080
|
||||
resources:
|
||||
volumes:
|
||||
{% if env != "staging" %}
|
||||
- name: config-volume
|
||||
configMap:
|
||||
name: mdapi-configmap
|
||||
- name: myconfigpy-volume
|
||||
configMap:
|
||||
name: mdapi-myconfigpy-configmap
|
||||
{% endif %}
|
||||
- name: data-volume
|
||||
persistentVolumeClaim:
|
||||
claimName: mdapi-storage
|
||||
10
roles/openshift-apps/mdapi/templates/mdapi.cfg
Normal file
10
roles/openshift-apps/mdapi/templates/mdapi.cfg
Normal file
@@ -0,0 +1,10 @@
|
||||
HOST = '*'
|
||||
PORT = '8080'
|
||||
DL_VERIFY = False
|
||||
{% if env == 'staging' %}
|
||||
KOJI_REPO = 'https://koji.stg.fedoraproject.org/repos/'
|
||||
DL_SERVER = 'http://dl.{{datacenter}}.fedoraproject.org'
|
||||
{% else %}
|
||||
KOJI_REPO = 'https://koji.fedoraproject.org/repos/'
|
||||
DL_SERVER = 'http://dl.{{datacenter}}.fedoraproject.org'
|
||||
{% endif %}
|
||||
93
roles/openshift-apps/mdapi/templates/myconfig.py
Normal file
93
roles/openshift-apps/mdapi/templates/myconfig.py
Normal file
@@ -0,0 +1,93 @@
|
||||
"""
|
||||
mdapi
|
||||
Copyright (C) 2015-2022 Red Hat, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
Any Red Hat trademarks that are incorporated in the source
|
||||
code or documentation are not subject to the GNU General Public
|
||||
License and may only be used or replicated with the express permission
|
||||
of Red Hat, Inc.
|
||||
"""
|
||||
|
||||
"""
|
||||
mdapi default configuration.
|
||||
"""
|
||||
|
||||
# url to the database server:
|
||||
DB_FOLDER = "/var/tmp"
|
||||
|
||||
LOGGING = {
|
||||
"version": 1,
|
||||
"disable_existing_loggers": False,
|
||||
"formatters": {
|
||||
"standard": {
|
||||
"format": "%(asctime)s [%(levelname)s] %(message)s",
|
||||
"datefmt": "[%Y-%m-%d %I:%M:%S %z]",
|
||||
},
|
||||
},
|
||||
"handlers": {
|
||||
"console": {
|
||||
"level": "INFO",
|
||||
"formatter": "standard",
|
||||
"class": "logging.StreamHandler",
|
||||
"stream": "ext://sys.stdout",
|
||||
},
|
||||
},
|
||||
# The root logger configuration; this is a catch-all configuration
|
||||
# that applies to all log messages not handled by a different logger
|
||||
"root": {
|
||||
"level": "INFO",
|
||||
"handlers": ["console"],
|
||||
},
|
||||
}
|
||||
|
||||
"""
|
||||
Database fetching configuration
|
||||
"""
|
||||
|
||||
KOJI_REPO = "https://kojipkgs.fedoraproject.org/repos"
|
||||
PKGDB2_URL = "https://admin.fedoraproject.org/pkgdb"
|
||||
DL_SERVER = "https://dl.fedoraproject.org"
|
||||
|
||||
# Enforce, or not, checking the SSL certs
|
||||
PKGDB2_VERIFY = True
|
||||
|
||||
# Valid for both koji and the download server
|
||||
DL_VERIFY = True
|
||||
|
||||
# Whether to publish to Fedora Messaging
|
||||
{% if env == "staging" %}
|
||||
PUBLISH_CHANGES = False
|
||||
{% else %}
|
||||
PUBLISH_CHANGES = True
|
||||
{% endif %}
|
||||
|
||||
# How long to wait between retries if processing failed
|
||||
CRON_SLEEP = 30
|
||||
|
||||
repomd_xml_namespace = {
|
||||
"repo": "http://linux.duke.edu/metadata/repo",
|
||||
"rpm": "http://linux.duke.edu/metadata/rpm",
|
||||
}
|
||||
|
||||
"""
|
||||
Application service configuration
|
||||
"""
|
||||
|
||||
APPSERVE = {
|
||||
"logging": {"level": LOGGING["root"]["level"]},
|
||||
"bind": "0.0.0.0:8080",
|
||||
"worker_class": "aiohttp.GunicornUVLoopWebWorker",
|
||||
}
|
||||
Reference in New Issue
Block a user