Standardize config.

This commit is contained in:
2026-05-23 19:51:33 +00:00
parent e2e3f730a5
commit 6b5325c6f3
87 changed files with 426 additions and 531 deletions

View File

@@ -1,11 +1,6 @@
# Decidim
Decidim is a participatory democracy framework for cities and organizations. Built in Ruby on Rails, it enables citizen participation through proposals, debates, and voting. Includes Sidekiq for background job processing.
## Dependencies
- **PostgreSQL** - Database for storing participatory processes and user data
- **Redis** - Used for Sidekiq background job processing
Decidim is a participatory democracy framework for cities and organizations. It enables citizen participation through proposals, debates, and voting.
## Configuration
@@ -16,20 +11,3 @@ Key settings configured through your instance's `config.yaml`:
- **systemAdminEmail** - System admin email (defaults to your operator email)
- **storage** - Persistent volume size (default: `20Gi`)
- **SMTP** - Email delivery settings inherited from your Wild Cloud instance
## Access
After deployment, Decidim will be available at:
- `https://decidim.{your-cloud-domain}`
## First-Time Setup
1. Add and deploy the app:
```bash
wild app add decidim
wild app deploy decidim
```
2. Log in with the system admin credentials configured during setup
3. Create your first organization and configure participatory processes

View File

@@ -54,7 +54,7 @@ spec:
echo "Database initialization completed successfully"
env:
- name: POSTGRES_HOST
value: {{ .dbHostname }}
value: {{ .db.host }}
- name: POSTGRES_ADMIN_USER
value: postgres
- name: POSTGRES_ADMIN_PASSWORD
@@ -63,9 +63,9 @@ spec:
name: decidim-secrets
key: postgres.password
- name: DB_NAME
value: {{ .dbName }}
value: {{ .db.name }}
- name: DB_USER
value: {{ .dbUsername }}
value: {{ .db.user }}
- name: DB_PASSWORD
valueFrom:
secretKeyRef:

View File

@@ -55,7 +55,7 @@ spec:
- name: RAILS_ENV
value: "production"
- name: PORT
value: "{{ .port }}"
value: "3000"
- name: RAILS_LOG_TO_STDOUT
value: "true"
# Database configuration
@@ -66,7 +66,7 @@ spec:
key: dbUrl
# Redis configuration
- name: REDIS_HOSTNAME
value: {{ .redisHostname }}
value: {{ .redis.host }}
- name: REDIS_PASSWORD
valueFrom:
secretKeyRef:
@@ -112,11 +112,11 @@ spec:
key: systemAdminPassword
ports:
- name: http
containerPort: {{ .port }}
containerPort: 3000
protocol: TCP
livenessProbe:
tcpSocket:
port: {{ .port }}
port: 3000
initialDelaySeconds: 300
periodSeconds: 30
timeoutSeconds: 10
@@ -124,7 +124,7 @@ spec:
failureThreshold: 6
readinessProbe:
tcpSocket:
port: {{ .port }}
port: 3000
initialDelaySeconds: 180
periodSeconds: 30
timeoutSeconds: 10
@@ -182,7 +182,7 @@ spec:
key: dbUrl
# Redis configuration
- name: REDIS_HOSTNAME
value: {{ .redisHostname }}
value: {{ .redis.host }}
- name: REDIS_PASSWORD
valueFrom:
secretKeyRef:

View File

@@ -23,4 +23,4 @@ spec:
service:
name: decidim
port:
number: {{ .port }}
number: 3000

View File

@@ -1,7 +1,7 @@
name: decidim
is: decidim
description: Decidim is a participatory democracy framework for cities and organizations. Built in Ruby on Rails, it enables citizen participation through proposals, debates, and voting. Includes Sidekiq for background job processing.
version: 0.31.0
version: 0.31.0-1
icon: https://raw.githubusercontent.com/decidim/decidim/develop/logo.svg
requires:
- name: postgres
@@ -11,27 +11,27 @@ requires:
- name: smtp
defaultConfig:
namespace: decidim
externalDnsDomain: "{{ .cloud.domain }}"
timezone: UTC
port: 3000
externalDnsDomain: '{{ .cloud.domain }}'
storage: 20Gi
systemAdminEmail: "{{ .operator.email }}"
siteName: "Decidim"
systemAdminEmail: '{{ .operator.email }}'
siteName: 'Decidim'
domain: decidim.{{ .cloud.domain }}
dbHostname: "{{ .apps.postgres.host }}"
dbPort: "{{ .apps.postgres.port }}"
dbUsername: decidim
dbName: decidim
redisHostname: "{{ .apps.redis.host }}"
tlsSecretName: wildcard-wild-cloud-tls
db:
host: '{{ .apps.postgres.host }}'
port: '{{ .apps.postgres.port }}'
name: decidim
user: decidim
redis:
host: '{{ .apps.redis.host }}'
smtp:
enabled: true
host: "{{ .apps.smtp.host }}"
port: "{{ .apps.smtp.port }}"
user: "{{ .apps.smtp.user }}"
from: "{{ .apps.smtp.from }}"
tls: "{{ .apps.smtp.tls }}"
startTls: "{{ .apps.smtp.startTls }}"
host: '{{ .apps.smtp.host }}'
port: '{{ .apps.smtp.port }}'
user: '{{ .apps.smtp.user }}'
from: '{{ .apps.smtp.from }}'
tls: '{{ .apps.smtp.tls }}'
startTls: '{{ .apps.smtp.startTls }}'
defaultSecrets:
- key: systemAdminPassword
- key: secretKeyBase
@@ -39,7 +39,7 @@ defaultSecrets:
- key: smtpPassword
- key: dbPassword
- key: dbUrl
default: "postgres://{{ .app.dbUsername }}:{{ .secrets.dbPassword }}@{{ .app.dbHostname }}:{{ .app.dbPort }}/{{ .app.dbName }}"
default: "postgres://{{ .app.db.user }}:{{ .secrets.dbPassword }}@{{ .app.db.host }}:{{ .app.db.port }}/{{ .app.db.name }}"
requiredSecrets:
- postgres.password
- redis.password

View File

@@ -9,7 +9,7 @@ spec:
component: web
ports:
- name: http
port: {{ .port }}
port: 3000
targetPort: http
protocol: TCP
type: ClusterIP