Compare commits
11 Commits
10.1.4+202
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 27275c3a44 | |||
|
ffcdc72353
|
|||
| 6d5982a695 | |||
|
cf012125bf
|
|||
| 1f437a5352 | |||
|
9a6bc0901d
|
|||
|
eca3313008
|
|||
|
51e2f6c58b
|
|||
|
7649c30b79
|
|||
| 87dbdd8df2 | |||
| 6df2067560 |
39
abra.sh
39
abra.sh
@ -6,7 +6,7 @@ export FLOW_RECOVERY_VERSION=v2
|
||||
export FLOW_TRANSLATION_VERSION=v3
|
||||
export SYSTEM_BRAND_VERSION=v4
|
||||
export NEXTCLOUD_CONFIG_VERSION=v3
|
||||
export WORDPRESS_CONFIG_VERSION=v4
|
||||
export WORDPRESS_CONFIG_VERSION=v6
|
||||
export MATRIX_CONFIG_VERSION=v3
|
||||
export WEKAN_CONFIG_VERSION=v5
|
||||
export VIKUNJA_CONFIG_VERSION=v3
|
||||
@ -313,14 +313,37 @@ import os
|
||||
my_token = '$TOKEN'
|
||||
application = '$1'
|
||||
icon_path = '$2'
|
||||
url = f'https://$DOMAIN/api/v3/core/applications/{application}/set_icon/'
|
||||
headers = {'Authorization':f'Bearer {my_token}'}
|
||||
base_url = f'https://$DOMAIN/api/v3'
|
||||
headers = {'Authorization': f'Bearer {my_token}'}
|
||||
|
||||
name_img = os.path.basename(icon_path)
|
||||
|
||||
# Upload file via the file management API
|
||||
with open(icon_path, 'rb') as img:
|
||||
name_img = os.path.basename(icon_path)
|
||||
files= {'file': (name_img,img,'image/png') }
|
||||
with requests.Session() as s:
|
||||
r = s.post(url,files=files,headers=headers)
|
||||
print(r.status_code)
|
||||
r = requests.post(
|
||||
f'{base_url}/admin/file/',
|
||||
files={'file': (name_img, img, 'image/png')},
|
||||
data={'name': name_img},
|
||||
headers=headers,
|
||||
)
|
||||
if r.status_code == 400 and 'already exists' in r.text:
|
||||
print(f'{name_img} already uploaded')
|
||||
elif r.status_code != 200:
|
||||
print(f'Upload failed: {r.status_code} {r.text}')
|
||||
exit(1)
|
||||
else:
|
||||
print(f'Uploaded {name_img}')
|
||||
|
||||
# Set the icon on the application
|
||||
r = requests.patch(
|
||||
f'{base_url}/core/applications/{application}/',
|
||||
json={'meta_icon': name_img},
|
||||
headers=headers,
|
||||
)
|
||||
if r.status_code == 200:
|
||||
print(f'Set icon for {application}')
|
||||
else:
|
||||
print(f'Failed to set icon: {r.status_code} {r.text}')
|
||||
"""
|
||||
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
authentik_ldap:
|
||||
image: ghcr.io/goauthentik/ldap:2025.10.2
|
||||
image: ghcr.io/goauthentik/ldap:2026.2.1
|
||||
# Optionally specify which networks the container should be
|
||||
# might be needed to reach the core authentik server
|
||||
networks:
|
||||
|
||||
17
compose.yml
17
compose.yml
@ -34,7 +34,7 @@ x-env: &env
|
||||
version: '3.8'
|
||||
services:
|
||||
app:
|
||||
image: ghcr.io/goauthentik/server:2025.10.2
|
||||
image: ghcr.io/goauthentik/server:2026.2.1
|
||||
command: server
|
||||
depends_on:
|
||||
- db
|
||||
@ -45,8 +45,9 @@ services:
|
||||
- secret_key
|
||||
- email_pass
|
||||
volumes:
|
||||
- data:/data
|
||||
- media:/media
|
||||
- assets:/web/dist/assets
|
||||
- custom_assets:/web/dist/assets
|
||||
- templates:/templates
|
||||
networks:
|
||||
- internal
|
||||
@ -61,7 +62,7 @@ services:
|
||||
deploy:
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.docker.network=proxy"
|
||||
- "traefik.swarm.network=proxy"
|
||||
- "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=9000"
|
||||
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})"
|
||||
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
|
||||
@ -69,14 +70,14 @@ services:
|
||||
- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect,${STACK_NAME}-frameOptions,${STACK_NAME}-redirect"
|
||||
- "traefik.http.middlewares.${STACK_NAME}-frameOptions.headers.customFrameOptionsValue=SAMEORIGIN"
|
||||
- "traefik.http.middlewares.${STACK_NAME}-frameOptions.headers.contentSecurityPolicy=frame-ancestors ${X_FRAME_OPTIONS_ALLOW_FROM}"
|
||||
- "coop-cloud.${STACK_NAME}.version=10.1.4+2025.10.2"
|
||||
- "coop-cloud.${STACK_NAME}.version=11.0.3+2026.2.1"
|
||||
- "traefik.http.middlewares.${STACK_NAME}-redirect.redirectregex.regex=^https://(${REDIRECTS})/(.*)"
|
||||
- "traefik.http.middlewares.${STACK_NAME}-redirect.redirectregex.replacement=https://${DOMAIN}/$${2}"
|
||||
- "traefik.http.middlewares.${STACK_NAME}-redirect.redirectregex.permanent=true"
|
||||
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT}"
|
||||
|
||||
worker:
|
||||
image: ghcr.io/goauthentik/server:2025.10.2
|
||||
image: ghcr.io/goauthentik/server:2026.2.1
|
||||
command: worker
|
||||
depends_on:
|
||||
- db
|
||||
@ -90,6 +91,7 @@ services:
|
||||
- internal
|
||||
- proxy
|
||||
volumes:
|
||||
- data:/data
|
||||
- media:/media
|
||||
- /dev/null:/blueprints/default/flow-oobe.yaml
|
||||
- templates:/templates
|
||||
@ -116,7 +118,7 @@ services:
|
||||
start_period: 5m
|
||||
|
||||
db:
|
||||
image: postgres:15.15
|
||||
image: postgres:15.17
|
||||
secrets:
|
||||
- db_password
|
||||
configs:
|
||||
@ -173,10 +175,11 @@ networks:
|
||||
internal:
|
||||
|
||||
volumes:
|
||||
data:
|
||||
media:
|
||||
certs:
|
||||
templates:
|
||||
assets:
|
||||
custom_assets:
|
||||
database:
|
||||
|
||||
configs:
|
||||
|
||||
BIN
icons/nuudel.png
Normal file
BIN
icons/nuudel.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.7 KiB |
68
icons/talk.svg
Normal file
68
icons/talk.svg
Normal file
@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
inkscape:version="1.1-dev (f9311a1, 2019-12-25)"
|
||||
sodipodi:docname="talk8.svg"
|
||||
id="svg19"
|
||||
xml:space="preserve"
|
||||
viewBox="0 0 1024 1024"
|
||||
version="1.1"
|
||||
stroke-miterlimit="1.4142"
|
||||
stroke-linejoin="round"
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"><metadata
|
||||
id="metadata23"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><sodipodi:namedview
|
||||
inkscape:current-layer="svg19"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="23"
|
||||
inkscape:window-x="1440"
|
||||
inkscape:cy="522.40348"
|
||||
inkscape:cx="510.51379"
|
||||
inkscape:zoom="0.67285156"
|
||||
showgrid="false"
|
||||
id="namedview21"
|
||||
inkscape:window-height="1035"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0"
|
||||
guidetolerance="10"
|
||||
gridtolerance="10"
|
||||
objecttolerance="10"
|
||||
borderopacity="1"
|
||||
inkscape:document-rotation="0"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff" /><defs
|
||||
id="defs15"><linearGradient
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(8.96 0 0 8.96 -7.8457e-5 .00019795)"
|
||||
y2="-7.6294e-6"
|
||||
y1="150"
|
||||
x2="150"
|
||||
x1="18.23"
|
||||
id="a"><stop
|
||||
id="stop10"
|
||||
offset="0"
|
||||
stop-color="#0082c9" /><stop
|
||||
id="stop12"
|
||||
offset="1"
|
||||
stop-color="#1cafff" /></linearGradient></defs>
|
||||
<rect
|
||||
id="rect17"
|
||||
fill-rule="evenodd"
|
||||
fill="url(#a)"
|
||||
height="1024"
|
||||
width="1024" /><path
|
||||
style="fill:#ffffff"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 511.95919,186 A 325.96385,325.95103 0 0 0 186,511.96034 325.96385,325.95103 0 0 0 511.95919,837.91133 325.96385,325.95103 0 0 0 681.04889,790.22529 c 40.06218,15.91895 129.79781,63.14682 151.15526,42.74701 22.3177,-21.31206 -26.20129,-121.61808 -37.83331,-158.89148 A 325.96385,325.95103 0 0 0 837.91466,511.95755 325.96385,325.95103 0 0 0 511.96013,186.01118 Z m 0.0373,123.92323 A 202.1178,202.11161 0 0 1 714.11425,512.03485 202.1178,202.11161 0 0 1 511.99645,714.13247 202.1178,202.11161 0 0 1 309.87866,512.03485 202.1178,202.11161 0 0 1 511.99645,309.92323 Z"
|
||||
stroke-width="0.14"
|
||||
fill="#000"
|
||||
id="path25" /></svg>
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
1
release/10.2.0+2025.12.4
Normal file
1
release/10.2.0+2025.12.4
Normal file
@ -0,0 +1 @@
|
||||
This is an intermediate release (required for migrations) before upgrading to 2026.x.
|
||||
3
release/11.0.0+2026.2.1
Normal file
3
release/11.0.0+2026.2.1
Normal file
@ -0,0 +1,3 @@
|
||||
You must deploy 10.2.0+2025.12.4 first, before deploying this version, if upgrading from 2025.10 or earlier.
|
||||
Skipping the intermediate version will cause a migration error (although rolled back safely, no data loss).
|
||||
|
||||
1
release/11.0.2+2026.2.1
Normal file
1
release/11.0.2+2026.2.1
Normal file
@ -0,0 +1 @@
|
||||
WARNING: This update will clear all custom assets in /web/dist/asssts. You might need to run customize() again.
|
||||
@ -52,7 +52,7 @@ entries:
|
||||
name: {{ env "WORDPRESS_GROUP" }}
|
||||
attrs:
|
||||
users:
|
||||
- 1
|
||||
- !Find [authentik_core.user, [username, "akadmin"]]
|
||||
id: wordpress_group
|
||||
model: authentik_core.group
|
||||
|
||||
|
||||
Reference in New Issue
Block a user