Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • stackspin/stackspin-flux-example
  • xeruf/stackspout
2 results
Show changes
# For kimai2
apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: HelmRepository
metadata:
name: robjuz
namespace: flux-system
spec:
interval: 60m
url: https://robjuz.github.io/helm-charts/
apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: HelmRepository
metadata:
name: truecharts
namespace: flux-system
spec:
interval: 60m
url: https://charts.truecharts.org
apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: HelmRepository
metadata:
name: vikunja
namespace: flux-system
spec:
interval: 60m
type: "oci"
url: oci://kolaente.dev/vikunja
#url: https://kolaente.dev/api/packages/vikunja/helm
apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: HelmRepository
metadata:
name: zammad
namespace: flux-system
spec:
interval: 60m
url: https://zammad.github.io/zammad-helm
#!/usr/bin/env bash
kubectl get namespace stackspout 2>/dev/null || kubectl create namespace stackspout
echo "Creating / Updating gitRepository stackspout"
flux create source git stackspout \
--url=https://open.greenhost.net/xeruf/stackspout.git \
--branch=main \
--interval=5m
echo "Creating / Updating kustomization stackspout"
flux create kustomization stackspout \
--source=GitRepository/stackspout \
--path="./infrastructure/kustomizations/" \
--prune=true \
--interval=5m
# This list of apps is loaded by the Stackspin dashboard on startup, and it
# will insert any missing entries into the Stackspin database (`apps` table).
# Processed in https://open.greenhost.net/stackspin/dashboard/-/blob/main/backend/areas/apps/models.py?ref_type=heads#L135
apiVersion: v1
kind: ConfigMap
metadata:
name: stackspin-apps-custom
namespace: flux-system
data:
vikunja: |
name: "Vikunja Tasks"
gitea: |
name: "Gitea Code"
forgejo: |
name: "Forgejo"
invoiceninja: |
name: "Invoiceninja Billing"
---
# This list of OAuth clients with their corresponding apps is loaded by the
# Stackspin dashboard on startup, and it will insert any missing entries into
# the Stackspin database (`oauthclient_apps` table).
apiVersion: v1
kind: ConfigMap
metadata:
name: stackspin-oauthclients-custom
namespace: flux-system
data:
vikunja: vikunja
gitea: gitea
forgejo: forgejo
apiVersion: v1
kind: ConfigMap
metadata:
namespace: stackspin-apps
name: stackspin-nextcloud-override
data:
values.yaml: |
nextcloud:
# https://artifacthub.io/packages/helm/nextcloud/nextcloud#configuration
# https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html#user-experience
#'defaultapp' => 'dashboard,files',
# https://github.com/moment/moment/tree/2.18.1/locale
#'default_language' => 'en_de', # https://www.transifex.com/explore/languages/
#'theme' => 'dark',
nextcloud:
configs:
defaults.config.php: |-
<?php
$CONFIG = array (
'allow_user_to_change_display_name' => false,
'default_phone_region' => 'DE',
'default_locale' => 'en-gb',
'lost_password_link' => 'https://dashboard.${domain}/web/recovery',
'simpleSignUpLink.shown' => false,
'enable_previews' => true,
'preview_libreoffice_path' => '/usr/bin/libreoffice',
'enabledPreviewProviders' =>
array (
0 => 'OC\\Preview\\TXT',
1 => 'OC\\Preview\\MarkDown',
2 => 'OC\\Preview\\OpenDocument',
3 => 'OC\\Preview\\PDF',
4 => 'OC\\Preview\\MSOffice2003',
5 => 'OC\\Preview\\MSOfficeDoc',
6 => 'OC\\Preview\\Image',
7 => 'OC\\Preview\\Photoshop',
8 => 'OC\\Preview\\TIFF',
9 => 'OC\\Preview\\SVG',
10 => 'OC\\Preview\\Font',
11 => 'OC\\Preview\\MP3',
12 => 'OC\\Preview\\Movie',
13 => 'OC\\Preview\\MKV',
14 => 'OC\\Preview\\MP4',
15 => 'OC\\Preview\\AVI',
)
);
#extraVolumes:
# - name: nextcloud-poststart
# configMap:
# name: nextcloud-poststart-config
#extraVolumeMounts:
# - name: nextcloud-poststart
# mountPath: /opt
#lifecycle:
# postStartCommand:
# - '/bin/bash'
# - '-c'
# - '/opt/setup.sh && /var/local/setup-apps.sh'
apps:
custom:
# Basics
- name: bruteforcesettings
enabled: false
- name: password_policy
enabled: false
- name: photos
enabled: false
- name: passwords
enabled: false
- name: contacts
enabled: true
# Common Apps
- name: external
enabled: true
- name: polls
enabled: false
#unsure - maybe redundant to forms?
- name: forms
enabled: true
#- name: spreed
# enabled: false
# redundant to Zulip & Jitsi
- name: appointments
enabled: true
# Management
- name: deck
enabled: true
- name: tasks
enabled: true
# Convenience
- name: files_rightclick
enabled: true
- name: metadata
enabled: true
- name: previewgenerator
enabled: true
# TODO handy but incompatible
#- name: extract
# enabled: false
# Collaborative apps
#- name: files_markdown
# enabled: false
#- name: files_texteditor
# enabled: true
- name: notes
enabled: true
- name: drawio
enabled: true
- name: files_mindmap
enabled: true
- name: maps
enabled: true
- name: jitsi
enabled: false
# waiting for /var/lib/Stackspin/local-storage/pvc-3b008674-544c-46e7-b456-f20932eb9f23_stackspin-apps_nextcloud-files/custom_apps
# Aesthetics
#- name: theming
# enabled: true
- name: apporder
enabled: false
- name: side_menu
enabled: true
- name: breezedark
enabled: true
#- name: unsplash
# enabled: true
# Flow
- name: analytics
enabled: true
- name: workflow_pdf_converter
enabled: true
#- name: files_accesscontrol
# enabled: false
#- name: files_automatedtagging
# enabled: false
#- name: workflow_media_converter
# enabled: false
#- name: workflow_ocr
# enabled: false
# Testing
- name: event_update_notification
enabled: false
#- name: calendar_resource_management
# enabled: true
# TODO install via CLI
# TODO disabling user status, files_comments, support, event_update_notification (Notifications for calendar event updates), bruteforcesettings
# disable tasks soon
# configure firstrunwizard
# preconfigured: share by mail - https://apps.nextcloud.com/apps/socialsharing_email
---
apiVersion: v1
kind: ConfigMap
metadata:
namespace: stackspin-apps
name: stackspin-nextcloud-setup
data:
setup.sh: |
#!/bin/bash
set -e
exec > /var/www/tmp/setup-$(date +"%s").log
exec 2> /var/www/tmp/setup-$(date +"%s")_error.log
apt update
apt install --yes ffmpeg imagemagick ghostscript libreoffice libreoffice-l10n-de libreoffice-help-de
apiVersion: v1
kind: ConfigMap
metadata:
namespace: stackspin
name: stackspin-nginx-override
data:
values.yaml: |
# https://artifacthub.io/packages/helm/ingress-nginx/ingress-nginx
controller:
service:
externalTrafficPolicy: "Cluster"
annotations:
metallb.universe.tf/allow-shared-ip: "share-ipv4"
apiVersion: v1
kind: ConfigMap
metadata:
namespace: stackspin-apps
name: stackspin-zulip-override
data:
values.yaml: |
zulip:
environment:
SETTING_PUSH_NOTIFICATION_BOUNCER_URL: 'https://push.zulipchat.com'
# https://github.com/rancher/local-path-provisioner?tab=readme-ov-file#storage-classes
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: local-path-retain
provisioner: cluster.local/local-path-provisioner
reclaimPolicy: Retain
volumeBindingMode: WaitForFirstConsumer
apiVersion: v1
kind: ConfigMap
metadata:
namespace: kube-system
name: stackspin-local-path-provisioner-override
data:
values.yaml: |
storageClass:
reclaimPolicy: Retain