Merge branch 'main' into renovate/configure
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Check and Create PR (push) Has been skipped
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Generate list of added/modified/deleted services (push) Successful in 40s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Docker Compose Dry Run (push) Successful in 1m28s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Cloudflare DNS Setup (push) Successful in 28s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Update README & Generate List of Modified Services (push) Successful in 25s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / PR Merge (push) Has been skipped
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Docker Compose Deployment (push) Successful in 3m58s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Check and Create PR (push) Has been skipped
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Generate list of added/modified/deleted services (push) Successful in 40s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Docker Compose Dry Run (push) Successful in 1m28s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Cloudflare DNS Setup (push) Successful in 28s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Update README & Generate List of Modified Services (push) Successful in 25s
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / PR Merge (push) Has been skipped
Gitea Branch PR, Cloudflare DNS, README generation, & Docker Deployment / Docker Compose Deployment (push) Successful in 3m58s
This commit is contained in:
@@ -7,8 +7,6 @@ on:
|
||||
- 'main'
|
||||
paths:
|
||||
- '**/docker-compose.yml'
|
||||
- '**/pr-cloudflare-docker-deploy.yml'
|
||||
- '!ansible/**.yml'
|
||||
|
||||
env:
|
||||
FLARECTL_VERSION: '0.115.0'
|
||||
@@ -17,7 +15,7 @@ env:
|
||||
|
||||
jobs:
|
||||
check-and-create-pr:
|
||||
if: github.ref != 'refs/heads/main'
|
||||
if: github.ref != 'refs/heads/main' && !startsWith(github.ref_name, 'renovate/') && github.actor != 'renovate-bot'
|
||||
name: Check and Create PR
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
@@ -52,17 +50,39 @@ jobs:
|
||||
id: check-opened-pr-step
|
||||
continue-on-error: true
|
||||
run: |
|
||||
tea login add --name gitea-rinoa --url "${{ secrets.RINOA_GITEA_URL }}" --user gitea-sonarqube-bot --password "${{ secrets.BOT_GITEA_PASSWORD }}" --token ${{ secrets.BOT_GITEA_TOKEN }}
|
||||
pr_exists=$(tea pr list --repo ${{ github.repository }} --state open --fields index,title,head | egrep '\[DOCKER\].*${{ github.ref_name }}' | tail -1 | wc -l)
|
||||
tea login add \
|
||||
--name gitea-rinoa \
|
||||
--url "${{ secrets.RINOA_GITEA_URL }}" \
|
||||
--user gitea-sonarqube-bot \
|
||||
--password "${{ secrets.BOT_GITEA_PASSWORD }}" \
|
||||
--token ${{ secrets.BOT_GITEA_TOKEN }}
|
||||
|
||||
pr_exists=$(tea pr list \
|
||||
--repo ${{ github.repository }} \
|
||||
--state open \
|
||||
--fields index,title,head \
|
||||
| egrep '\[DOCKER\].*${{ github.ref_name }}' | tail -1 | wc -l)
|
||||
|
||||
echo "exists=$pr_exists" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Create PR
|
||||
if: ${{ steps.check-opened-pr-step.outputs.exists == '0' }}
|
||||
run: |
|
||||
tea login default gitea-rinoa
|
||||
pr_index_old=$(tea pr ls --repo ${{ github.repository }} --state all --fields index,title,head --output csv | sed -e 's|"||g' | egrep '^[0-9]' | head -1 | awk -F"," '{print $1}')
|
||||
|
||||
pr_index_old=$(tea pr ls \
|
||||
--repo ${{ github.repository }} \
|
||||
--state all --fields index,title,head \
|
||||
--output csv | sed -e 's|"||g' | \
|
||||
egrep '^[0-9]' | head -1 | awk -F"," '{print $1}')
|
||||
|
||||
pr_index_new=$(expr ${pr_index_old} + 1)
|
||||
tea pr c -r ${{ github.repository }} -t "[DOCKER] Automated PR for ${{ github.ref_name }} - #${pr_index_new}" -d "Automatically created PR for branch: ${{ github.ref_name }}" -a ${{ github.actor }} -L "Docker Compose"
|
||||
|
||||
tea pr c -r ${{ github.repository }} \
|
||||
-t "[DOCKER] Automated PR for ${{ github.ref_name }} - #${pr_index_new}" \
|
||||
-d "Automatically created PR for branch: ${{ github.ref_name }}" \
|
||||
-a ${{ github.actor }} \
|
||||
-L "Docker Compose"
|
||||
|
||||
- name: Gotify Notification
|
||||
uses: eikendev/gotify-action@master
|
||||
@@ -75,7 +95,6 @@ jobs:
|
||||
generate-service-list:
|
||||
name: Generate list of added/modified/deleted services
|
||||
runs-on: ubuntu-latest
|
||||
needs: [check-and-create-pr]
|
||||
outputs:
|
||||
svc_deploy_list: ${{ steps.detect_services.outputs.docker_svc_list }}
|
||||
steps:
|
||||
@@ -234,8 +253,19 @@ jobs:
|
||||
CF_API_TOKEN: ${{ secrets.CF_API_TOKEN }}
|
||||
CF_API_EMAIL: ${{ secrets.CF_API_EMAIL }}
|
||||
run: |
|
||||
yq '.services[].labels.swag_url' docker-compose.yml | egrep -v 'null' | sed -e 's|"||g' | awk -F'.' '{print $1}' | sort > compose_subdomains.txt
|
||||
flarectl --json dns list --zone "trez.wtf" --type=CNAME --content "trez.wtf" | jq '.[].Name' | sed -e 's|"||g' | awk -F"." '{print $1}' | sort > cloudflare_subdomains.txt
|
||||
yq '.services[].labels.swag_url' docker-compose.yml | \
|
||||
egrep -v 'null' | \
|
||||
sed -e 's|"||g' | \
|
||||
awk -F'.' '{print $1}' | \
|
||||
sort > compose_subdomains.txt
|
||||
|
||||
flarectl --json dns list \
|
||||
--zone "trez.wtf" \
|
||||
--type=CNAME \
|
||||
--content "trez.wtf" \
|
||||
| jq '.[].Name' | sed -e 's|"||g' | awk -F"." '{print $1}' | \
|
||||
sort > cloudflare_subdomains.txt
|
||||
|
||||
- name: Gotify Notification
|
||||
uses: eikendev/gotify-action@master
|
||||
with:
|
||||
@@ -327,6 +357,7 @@ jobs:
|
||||
pr-merge:
|
||||
name: PR Merge
|
||||
needs: [regenerate-readme-modified-services]
|
||||
if: github.ref != 'refs/heads/main' && !startsWith(github.ref_name, 'renovate/') && github.actor != 'renovate-bot'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
@@ -349,11 +380,28 @@ jobs:
|
||||
- name: PR Merge
|
||||
id: pr_merge
|
||||
run: |
|
||||
tea login add --name gitea-rinoa --url ${{ secrets.RINOA_GITEA_URL }} --user gitea-sonarqube-bot --password "${{ secrets.BOT_GITEA_PASSWORD }}" --token ${{ secrets.BOT_GITEA_TOKEN }}
|
||||
tea login add \
|
||||
--name gitea-rinoa \
|
||||
--url "${{ secrets.RINOA_GITEA_URL }}" \
|
||||
--user gitea-sonarqube-bot \
|
||||
--password "${{ secrets.BOT_GITEA_PASSWORD }}" \
|
||||
--token ${{ secrets.BOT_GITEA_TOKEN }}
|
||||
|
||||
tea login default gitea-rinoa
|
||||
|
||||
echo "Merging PR..."
|
||||
pr_index=$(tea pr ls --repo ${{ github.repository }} --state open --fields index,title,head,state --output csv | egrep ${{ github.ref_name }} | awk -F"," '{print $1}' | sed -e 's|"||g')
|
||||
tea pr m --repo ${{ github.repository }} --title "Auto Merge of PR ${pr_index} - ${{ github.ref_name }}" --message "Merged by ${{ github.actor }}" ${pr_index}
|
||||
|
||||
pr_index=$(tea pr ls \
|
||||
--repo ${{ github.repository }} \
|
||||
--state open --fields index,title,head,state \
|
||||
--output csv | \
|
||||
egrep ${{ github.ref_name }} | awk -F"," '{print $1}' | sed -e 's|"||g')
|
||||
|
||||
tea pr m \
|
||||
--repo ${{ github.repository }} \
|
||||
--title "Auto Merge of PR ${pr_index} - ${{ github.ref_name }}" \
|
||||
--message "Merged by ${{ github.actor }}" ${pr_index}
|
||||
|
||||
echo "pr_index=${pr_index}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Gotify Notification
|
||||
@@ -367,7 +415,7 @@ jobs:
|
||||
docker-compose-deploy:
|
||||
name: Docker Compose Deployment
|
||||
runs-on: ubuntu-latest
|
||||
needs: [generate-service-list, docker-compose-dry-run, pr-merge]
|
||||
needs: [generate-service-list, docker-compose-dry-run]
|
||||
env:
|
||||
VAULT_ADDR: ${{ secrets.RINOA_VAULT_ADDR }}
|
||||
VAULT_TOKEN: ${{ secrets.VAULT_GITEA_TOKEN }}
|
||||
@@ -395,7 +443,9 @@ jobs:
|
||||
|
||||
- name: Login to Gitea Container Registry
|
||||
run: |
|
||||
docker login -u gitea-sonarqube-bot -p ${RINOA_REGISTRY_PASSWORD} git.trez.wtf
|
||||
docker login -u gitea-sonarqube-bot \
|
||||
-p ${RINOA_REGISTRY_PASSWORD} \
|
||||
git.trez.wtf
|
||||
|
||||
- name: Gotify Notification
|
||||
uses: eikendev/gotify-action@master
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
| apcupsd-cgi | bnhf/apcupsd-cgi:latest |
|
||||
| apprise-api | lscr.io/linuxserver/apprise-api:latest |
|
||||
| archivebox | archivebox/archivebox:latest |
|
||||
| argus | quay.io/argus-io/argus:latest |
|
||||
| asciinema | ghcr.io/asciinema/asciinema-server:latest |
|
||||
| asciinema-pg-db | postgres:14-alpine |
|
||||
| audiobookshelf | ghcr.io/advplyr/audiobookshelf:latest |
|
||||
@@ -60,8 +59,6 @@
|
||||
| gitignore-io | guog/gitignore.io:latest |
|
||||
| gluetun | qmcgaw/gluetun:latest |
|
||||
| gotify | gotify/server |
|
||||
| graylog | graylog/graylog:6.1 |
|
||||
| graylog-datanode | graylog/graylog-datanode:6.1 |
|
||||
| guacamole | flcontainers/guacamole:latest |
|
||||
| homepage | ghcr.io/gethomepage/homepage:latest |
|
||||
| hugo | hugomods/hugo:exts |
|
||||
@@ -166,7 +163,6 @@
|
||||
| romm-valkey | docker.io/bitnami/valkey:latest |
|
||||
| sabnzbdvpn | ghcr.io/binhex/arch-sabnzbdvpn:latest |
|
||||
| sablier | sablierapp/sablier:latest |
|
||||
| scraparr | ghcr.io/thecfu/scraparr:latest |
|
||||
| scrutiny | ghcr.io/analogj/scrutiny:master-omnibus |
|
||||
| searxng | searxng/searxng:latest |
|
||||
| searxng-valkey | docker.io/bitnami/valkey:latest |
|
||||
|
||||
+1
-160
@@ -387,42 +387,6 @@ services:
|
||||
volumes:
|
||||
- ${DOCKER_VOLUME_CONFIG}/archivebox:/data
|
||||
# ./data/personas/Default/chrome_profile/Default:/data/personas/Default/chrome_profile/Default
|
||||
argus:
|
||||
container_name: argus
|
||||
environment:
|
||||
ARGUS_UID: ${PUID}
|
||||
ARGUS_GID: ${PGID}
|
||||
healthcheck:
|
||||
test: ["CMD", "/healthcheck", "http://localhost:8080/api/v1/healthcheck"]
|
||||
interval: 1m
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
image: quay.io/argus-io/argus:latest
|
||||
labels:
|
||||
swag: enable
|
||||
swag_proto: http
|
||||
swag_port: 8080
|
||||
swag_url: argus.${MY_TLD}
|
||||
swag.uptime-kuma.enabled: true
|
||||
swag.uptime-kuma.monitor.parent: Rinoa
|
||||
swag.uptime-kuma.name: Argus
|
||||
swag.uptime-kuma.monitor.url: https://argus.${MY_TLD}
|
||||
swag.uptime-kuma.monitor.interval: 300
|
||||
swag.uptime-kuma.monitor.retryInterval: 60
|
||||
swag.uptime-kuma.monitor.maxretries: 5
|
||||
homepage.group: System Administration
|
||||
homepage.name: Argus
|
||||
homepage.icon: release-argus.png
|
||||
homepage.href: https://argus.${MY_TLD}
|
||||
homepage.description: Software release monitoring and notifications
|
||||
ports:
|
||||
- 9857:8080
|
||||
profiles: ["rinoa-apps"]
|
||||
restart: always
|
||||
volumes:
|
||||
- ${DOCKER_VOLUME_CONFIG}/argus/config.yml:/app/config.yml
|
||||
- ${DOCKER_VOLUME_CONFIG}/argus/:/app/data/
|
||||
asciinema:
|
||||
container_name: asciinema
|
||||
depends_on:
|
||||
@@ -2081,97 +2045,6 @@ services:
|
||||
type: bind
|
||||
bind:
|
||||
create_host_path: true
|
||||
graylog:
|
||||
container_name: graylog
|
||||
hostname: graylog
|
||||
image: graylog/graylog:6.1
|
||||
depends_on:
|
||||
graylog-datanode:
|
||||
condition: service_started
|
||||
required: true
|
||||
mongodb:
|
||||
condition: service_started
|
||||
required: true
|
||||
entrypoint: /usr/bin/tini -- /docker-entrypoint.sh
|
||||
environment:
|
||||
GRAYLOG_NODE_ID_FILE: /usr/share/graylog/data/data/node-id
|
||||
GRAYLOG_PASSWORD_SECRET: ${GRAYLOG_PASSWORD_SECRET}
|
||||
GRAYLOG_ROOT_PASSWORD_SHA2: ${GRAYLOG_ROOT_PASSWORD_SHA2}
|
||||
GRAYLOG_HTTP_BIND_ADDRESS: 0.0.0.0:9000
|
||||
GRAYLOG_HTTP_EXTERNAL_URI: http://localhost:9000/
|
||||
GRAYLOG_MONGODB_URI: mongodb://graylog:${GRAYLOG_MONGODB_PASSWORD}@mongodb:27017/graylog?replicaSet=rinoa
|
||||
GRAYLOG_ROOT_EMAIL: charish.patel@${MY_TLD}
|
||||
GRAYLOG_TRANSPORT_EMAIL_AUTH_PASSWORD: ${POSTAL_SMTP_AUTH_PASSWORD}
|
||||
GRAYLOG_TRANSPORT_EMAIL_AUTH_USERNAME: ${POSTAL_SMTP_AUTH_USER}
|
||||
GRAYLOG_TRANSPORT_EMAIL_ENABLED: true
|
||||
GRAYLOG_TRANSPORT_EMAIL_FROM_EMAIL: noreply@${MY_TLD}
|
||||
GRAYLOG_TRANSPORT_EMAIL_HOSTNAME: postal-smtp
|
||||
GRAYLOG_TRANSPORT_EMAIL_PORT: 25
|
||||
GRAYLOG_TRANSPORT_EMAIL_USE_AUTH: true
|
||||
labels:
|
||||
homepage.group: Infrastructure/App Performance Monitoring
|
||||
homepage.name: Graylog
|
||||
homepage.href: https://logs.${MY_TLD}
|
||||
homepage.icon: sh-graylog.svg
|
||||
homepage.description: Log Management
|
||||
swag: enable
|
||||
swag_port: 9000
|
||||
swag_url: logs.${MY_TLD}
|
||||
swag_proto: http
|
||||
swag.uptime-kuma.enabled: true
|
||||
swag.uptime-kuma.monitor.parent: Rinoa
|
||||
swag.uptime-kuma.name: Graylog
|
||||
swag.uptime-kuma.monitor.url: https://logs.${MY_TLD}
|
||||
swag.uptime-kuma.monitor.interval: 300
|
||||
swag.uptime-kuma.monitor.retryInterval: 60
|
||||
swag.uptime-kuma.monitor.maxretries: 5
|
||||
ports:
|
||||
- 5044:5044/tcp # Beats
|
||||
- 5140:5140/udp # Syslog
|
||||
- 5140:5140/tcp # Syslog
|
||||
- 5555:5555/tcp # RAW TCP
|
||||
- 5555:5555/udp # RAW UDP
|
||||
- 13457:9000/tcp # Server API
|
||||
- 12201:12201/tcp # GELF TCP
|
||||
- 12201:12201/udp # GELF UDP
|
||||
#- 10000:10000/tcp # Custom TCP port
|
||||
#- 10000:10000/udp # Custom UDP port
|
||||
- 13301:13301/tcp # Forwarder data
|
||||
- 13302:13302/tcp # Forwarder config
|
||||
profiles: ["rinoa-apps"]
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- graylog-data:/usr/share/graylog/data/data
|
||||
graylog-datanode:
|
||||
container_name: graylog-datanode
|
||||
hostname: graylog-datanode
|
||||
image: graylog/graylog-datanode:6.1
|
||||
environment:
|
||||
GRAYLOG_NODE_NAME: graylog-datanode
|
||||
GRAYLOG_DATANODE_PASSWORD_SECRET: ${GRAYLOG_PASSWORD_SECRET}
|
||||
GRAYLOG_DATANODE_MONGODB_URI: mongodb://graylog:${GRAYLOG_MONGODB_PASSWORD}@mongodb:27017/graylog?replicaSet=rinoa
|
||||
GRAYLOG_PATH_REPO: graylog
|
||||
GRAYLOG_S3_CLIENT_DEFAULT_ACCESS_KEY: ${GRAYLOG_S3_ACCESS_KEY}
|
||||
GRAYLOG_S3_CLIENT_DEFAULT_ENDPOINT: minio:9000
|
||||
GRAYLOG_S3_CLIENT_DEFAULT_PATH_STYLE_ACCESS: 1
|
||||
GRAYLOG_S3_CLIENT_DEFAULT_PROTOCOL: http
|
||||
GRAYLOG_S3_CLIENT_DEFAULT_REGION: us-east-fh-pln
|
||||
GRAYLOG_S3_CLIENT_DEFAULT_SECRET_KEY: ${GRAYLOG_S3_SECRET_KEY}
|
||||
ports:
|
||||
- 8999:8999
|
||||
- 9200:9200
|
||||
- 9300:9300
|
||||
profiles: ["rinoa-apps"]
|
||||
restart: on-failure
|
||||
ulimits:
|
||||
memlock:
|
||||
hard: -1
|
||||
soft: -1
|
||||
nofile:
|
||||
soft: 65536
|
||||
hard: 65536
|
||||
volumes:
|
||||
- graylog-datanode:/var/lib/graylog-datanode
|
||||
guacamole:
|
||||
container_name: guacamole
|
||||
environment:
|
||||
@@ -5560,7 +5433,7 @@ services:
|
||||
RENOVATE_ONBOARDING: "true" # create onboarding PR if repo not configured
|
||||
RENOVATE_REQUIRE_CONFIG: "optional" # run even if no renovate config exists
|
||||
RENOVATE_REDIS_URL: redis://renovate-valkey:6379
|
||||
|
||||
LIBRECHAT_GITHUB_TOKEN: $LIBRECHAT_GITHUB_TOKEN}
|
||||
LOG_LEVEL: "info"
|
||||
|
||||
# --- Enable dependency dashboard ---
|
||||
@@ -5796,30 +5669,6 @@ services:
|
||||
- ${DOCKER_VOLUME_CONFIG}/sablier/state:/opt/sablier/state
|
||||
- ${DOCKER_VOLUME_CONFIG}/sablier/custom_themes:/opt/sablier/custom_themes
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
scraparr:
|
||||
container_name: scraparr
|
||||
depends_on:
|
||||
- bazarr
|
||||
- prowlarr
|
||||
- radarr
|
||||
- readarr
|
||||
- sonarr
|
||||
environment:
|
||||
BAZARR_API_KEY: ${BAZARR_API_KEY}
|
||||
BAZARR_URL: http://bazarr:6767
|
||||
PROWLARR_API_KEY: ${PROWLARR_API_KEY}
|
||||
PROWLARR_URL: http://prowlarr:9696
|
||||
RADARR_API_KEY: ${RADARR_API_KEY}
|
||||
RADARR_URL: http://radarr:7878
|
||||
READARR_API_KEY: ${READARR_API_KEY}
|
||||
READARR_URL: http://readarr:8787
|
||||
SONARR_API_KEY: ${SONARR_API_KEY}
|
||||
SONARR_URL: http://sonarr:8989
|
||||
image: ghcr.io/thecfu/scraparr:latest
|
||||
ports:
|
||||
- 7100:7100
|
||||
profiles: ["rinoa-apps"]
|
||||
restart: unless-stopped
|
||||
scrutiny:
|
||||
cap_add:
|
||||
- SYS_RAWIO
|
||||
@@ -7296,10 +7145,6 @@ volumes:
|
||||
name: fastenhealth-db
|
||||
gitea-pg-db:
|
||||
name: gitea-pg-db
|
||||
graylog-data:
|
||||
name: graylog-data
|
||||
graylog-datanode:
|
||||
name: graylog-datanode
|
||||
immich-model-cache:
|
||||
name: immich-model-cache
|
||||
immich-valkey-data:
|
||||
@@ -7382,8 +7227,6 @@ volumes:
|
||||
name: penpot-assets
|
||||
penpot-pg-data:
|
||||
name: penpot-pg-data
|
||||
pgbackweb-data:
|
||||
name: pgbackweb-data
|
||||
planka-favicons:
|
||||
name: planka-favicons
|
||||
planka-user-avatars:
|
||||
@@ -7398,8 +7241,6 @@ volumes:
|
||||
name: plant-it-valkey-data
|
||||
portainer-data:
|
||||
name: portainer-data
|
||||
portnote-db-data:
|
||||
name: portnote-db-data
|
||||
protonmail-data:
|
||||
name: protonmail-data
|
||||
reactive-resume-pg:
|
||||
|
||||
Reference in New Issue
Block a user