feat: Add version/metadata API endpoint
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
parent
740b6b3dc9
commit
cbedc9679f
@ -16,14 +16,16 @@
|
||||
{ 'components': (
|
||||
metacluster_chartvalues |
|
||||
combine({ 'clusterapi': components.clusterapi }) |
|
||||
combine({ 'kubevip' : components.kubevip }) )
|
||||
combine({ 'kubevip' : components.kubevip }) ),
|
||||
'appliance': {
|
||||
'version': (applianceversion)
|
||||
}
|
||||
} | to_nice_yaml(indent=2, width=4096)
|
||||
}}
|
||||
|
||||
- name: Aggregate chart_values into dict
|
||||
ansible.builtin.set_fact:
|
||||
workloadcluster_chartvalues: "{{ workloadcluster_chartvalues | default({}) | combine({ item.key: { 'chart_values': (item.value.chart_values | default('') | from_yaml) } }) }}"
|
||||
# when: item.value.chart_values is defined
|
||||
loop: "{{ query('ansible.builtin.dict', downstream.helm_charts) }}"
|
||||
loop_control:
|
||||
label: "{{ item.key }}"
|
||||
|
@ -0,0 +1,27 @@
|
||||
- block:
|
||||
- name: Install json-server chart
|
||||
kubernetes.core.helm:
|
||||
name: json-server
|
||||
chart_ref: /opt/metacluster/helm-charts/json-server
|
||||
release_namespace: json-server
|
||||
create_namespace: true
|
||||
wait: false
|
||||
kubeconfig: "{{ kubeconfig.path }}"
|
||||
values: "{{ components['json-server'].chart_values }}"
|
||||
|
||||
- name: Ensure json-server API availability
|
||||
ansible.builtin.uri:
|
||||
url: https://version.{{ vapp['metacluster.fqdn'] }}/healthz
|
||||
method: GET
|
||||
register: api_readycheck
|
||||
until:
|
||||
- api_readycheck.json.status is defined
|
||||
- api_readycheck.json.status == 'running'
|
||||
retries: "{{ playbook.retries }}"
|
||||
delay: "{{ (storage_benchmark | int) * (playbook.delay.long | int) }}"
|
||||
|
||||
module_defaults:
|
||||
ansible.builtin.uri:
|
||||
validate_certs: no
|
||||
status_code: [200, 201]
|
||||
body_format: json
|
@ -1,5 +1,6 @@
|
||||
- import_tasks: init.yml
|
||||
- import_tasks: k3s.yml
|
||||
- import_tasks: json-server.yml
|
||||
- import_tasks: assets.yml
|
||||
- import_tasks: kube-vip.yml
|
||||
- import_tasks: storage.yml
|
||||
|
@ -51,6 +51,8 @@ platform:
|
||||
url: https://prometheus-community.github.io/helm-charts
|
||||
- name: smallstep
|
||||
url: https://smallstep.github.io/helm-charts/
|
||||
- name: spamasaurus
|
||||
url: https://code.spamasaurus.com/api/packages/djpbessems/helm
|
||||
|
||||
components:
|
||||
|
||||
@ -225,6 +227,34 @@ components:
|
||||
registry:
|
||||
size: 25Gi
|
||||
|
||||
json-server:
|
||||
helm:
|
||||
version: v0.5.1
|
||||
chart: spamasaurus/json-server
|
||||
parse_logic: helm template . | yq --no-doc eval '.. | .image? | select(.)' | sort -u | awk '!/ /'
|
||||
chart_values: !unsafe |
|
||||
ingress:
|
||||
enabled: true
|
||||
hosts:
|
||||
- host: version.{{ vapp['metacluster.fqdn'] }}
|
||||
paths:
|
||||
- path: /
|
||||
pathType: Prefix
|
||||
seedData:
|
||||
configInline: |
|
||||
{
|
||||
"appliance": { "version": "{{ appliance.version }}" },
|
||||
"components": [
|
||||
{ "app": "argo-cd", "version": "{{ components[argo-cd].helm.version }}" },
|
||||
{ "app": "cert-manager", "version": "{{ components[cert-manager].helm.version }}" },
|
||||
{ "app": "cluster-api",
|
||||
"management": { "foo": "bar" },
|
||||
"workload": { "foo": "bar" }
|
||||
}
|
||||
],
|
||||
"healthz": { "status": "running" }
|
||||
}
|
||||
|
||||
# keycloakx:
|
||||
# helm:
|
||||
# version: 2.1.1 # (= Keycloak 20.0.3)
|
||||
|
Loading…
Reference in New Issue
Block a user