7 Commits

5 changed files with 37 additions and 32 deletions

View File

@ -6,33 +6,27 @@ steps:
image: git.coopcloud.tech/coop-cloud/stack-ssh-deploy:latest image: git.coopcloud.tech/coop-cloud/stack-ssh-deploy:latest
settings: settings:
host: swarm-test.autonomic.zone host: swarm-test.autonomic.zone
stack: {{ .Name }} stack: civicrm-wordpress
generate_secrets: true generate_secrets: true
purge: true purge: true
deploy_key: deploy_key:
from_secret: drone_ssh_swarm_test from_secret: drone_ssh_swarm_test
networks: networks:
- proxy proxy
environment: environment:
DOMAIN: {{ .Name }}.swarm-test.autonomic.zone DOMAIN: civicrm-wordpress.swarm-test.autonomic.zone
STACK_NAME: {{ .Name }} STACK_NAME: civicrm-wordpress
LETS_ENCRYPT_ENV: production LETS_ENCRYPT_ENV: production
EXTRA_VOLUME: "/dev/null:/tmp/.dummy"
APACHE_SITES_AVAILABLE_CONF_VERSION: v1
CIVICRM_SETTINGS_PHP_VERSION: v1
ENTRYPOINT_VERSION: v1
SECRET_DB_PASSWORD_VERSION: v1
SECRET_DB_ROOT_PASSWORD_VERSION: v1
SECRET_CIVICRM_SITE_KEY_VERSION: 'v1'
SECRET_CIVICRM_CRED_KEY_VERSION: 'v1'
SECRET_CIVICRM_SIGN_KEY_VERSION: 'v1'
CIVICRM_COMPONENTS: 'CiviEvent,CiviContribute,CiviMember,CiviMail,CiviReport'
trigger: trigger:
branch: branch:
- main - main
---
kind: pipeline
name: generate recipe catalogue
steps:
- name: release a new version
image: plugins/downstream
settings:
server: https://build.coopcloud.tech
token:
from_secret: drone_abra-bot_token
fork: true
repositories:
- coop-cloud/auto-recipes-catalogue-json
trigger:
event: tag

View File

@ -1,4 +1,4 @@
TYPE=civicrm TYPE=civicrm-wordpress
DOMAIN=civicrm.example.com DOMAIN=civicrm.example.com
@ -10,12 +10,13 @@ LETS_ENCRYPT_ENV=production
PROJECT_NAME=example PROJECT_NAME=example
CIVICRM_COMPONENTS=CiviEvent,CiviContribute,CiviMember,CiviMail,CiviReport CIVICRM_COMPONENTS=CiviEvent,CiviContribute,CiviMember,CiviMail,CiviReport
# CIVICRM_EXTENSIONS=shoreditch mosaico # CIVICRM_EXTENSIONS=mosaico
CIVICRM_DB_NAME=civicrm CIVICRM_DB_NAME=civicrm
CIVICRM_DB_USER=civicrm CIVICRM_DB_USER=civicrm
CIVICRM_DB_HOST=mysql CIVICRM_DB_HOST=mysql
CIVICRM_DB_PORT=3306 CIVICRM_DB_PORT=3306
WORDPRESS_ADMIN_EMAIL=
WORDPRESS_DB_NAME=wordpress WORDPRESS_DB_NAME=wordpress
WORDPRESS_DB_USER=wordpress WORDPRESS_DB_USER=wordpress
WORDPRESS_DB_HOST=mysql WORDPRESS_DB_HOST=mysql
@ -34,3 +35,4 @@ SECRET_DB_ROOT_PASSWORD_VERSION=v1
SECRET_CIVICRM_SITE_KEY_VERSION=v1 # length=16 SECRET_CIVICRM_SITE_KEY_VERSION=v1 # length=16
SECRET_CIVICRM_CRED_KEY_VERSION=v1 # length=43 SECRET_CIVICRM_CRED_KEY_VERSION=v1 # length=43
SECRET_CIVICRM_SIGN_KEY_VERSION=v1 # length=43 SECRET_CIVICRM_SIGN_KEY_VERSION=v1 # length=43
SECRET_WORDPRESS_ADMIN_PASSWORD_VERSION=v1

View File

@ -26,11 +26,11 @@ For more, see [`docs.coopcloud.tech`](https://docs.coopcloud.tech).
### Install extensions ### Install extensions
set them in the env config and run: `abra app cmd civi.dev.local-it.cloud app install_extensions` set them in the env config and run: `abra app cmd civi.example.org app install_extensions`
to install unoffical extension run smth like: to install unoffical extension run smth like:
``` ```
abra app cmd civi.dev.local-it.cloud app install_custom_extension shoreditch https://github.com/civicrm/org.civicrm.shoreditch abra app cmd civi.example.org app install_custom_extension shoreditch https://github.com/civicrm/org.civicrm.shoreditch
abra app cmd civi.dev.local-it.cloud app install_custom_extension shoreditchwpworkarounds https://lab.civicrm.org/extensions/shoreditchwpworkarounds.git abra app cmd civi.example.org app install_custom_extension shoreditchwpworkarounds https://lab.civicrm.org/extensions/shoreditchwpworkarounds.git
``` ```

View File

@ -3,7 +3,7 @@ version: "3.8"
services: services:
app: app:
image: michaelmcandrew/civicrm:5.59.4-wordpress-php8.1 image: michaelmcandrew/civicrm:5.80.0-wordpress-php8.1
hostname: civicrm hostname: civicrm
environment: environment:
- PROJECT_NAME - PROJECT_NAME
@ -24,16 +24,18 @@ services:
- SMTP_PORT - SMTP_PORT
- SMTP_USER - SMTP_USER
- SMTP_PASSWORD_FILE=/run/secrets/smtp_password - SMTP_PASSWORD_FILE=/run/secrets/smtp_password
- WORDPRESS_ADMIN_PASSWORD_FILE=/run/secrets/wordpress_admin_password
secrets: secrets:
- db_password - db_password
- civicrm_site_key - civicrm_site_key
- civicrm_cred_key - civicrm_cred_key
- civicrm_sign_key - civicrm_sign_key
- smtp_password - smtp_password
- wordpress_admin_password
volumes: volumes:
- data:/var/www/html/wp-content/uploads - data:/var/www/html/wp-content/uploads
networks: networks:
- default - internal
- proxy - proxy
configs: configs:
- source: apache-sites-available-conf - source: apache-sites-available-conf
@ -57,7 +59,7 @@ services:
#- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect" #- "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}-redirect"
#- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true" #- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLForceHost=true"
#- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}" #- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}"
- "coop-cloud.${STACK_NAME}.version=0.1.0+5.59.4-wordpress-php8.1" - "coop-cloud.${STACK_NAME}.version=0.1.1+5.59.4-wordpress-php8.1"
- "backupbot.backup=true" - "backupbot.backup=true"
- "backupbot.backup.path=/var/www/html/wp-content/uploads" - "backupbot.backup.path=/var/www/html/wp-content/uploads"
healthcheck: healthcheck:
@ -90,6 +92,8 @@ services:
timeout: 10s timeout: 10s
retries: 10 retries: 10
start_period: 1m start_period: 1m
networks:
- internal
deploy: deploy:
restart_policy: restart_policy:
condition: on-failure condition: on-failure
@ -114,6 +118,7 @@ services:
networks: networks:
proxy: proxy:
external: true external: true
internal:
volumes: volumes:
mariadb: mariadb:
@ -154,3 +159,6 @@ secrets:
civicrm_sign_key: civicrm_sign_key:
external: true external: true
name: ${STACK_NAME}_civicrm_sign_key_${SECRET_CIVICRM_SIGN_KEY_VERSION} name: ${STACK_NAME}_civicrm_sign_key_${SECRET_CIVICRM_SIGN_KEY_VERSION}
wordpress_admin_password:
external: true
name: ${STACK_NAME}_wordpress_admin_password_${SECRET_WORDPRESS_ADMIN_PASSWORD_VERSION}

View File

@ -28,6 +28,7 @@ file_env "CIVICRM_DB_PASS"
file_env "CIVICRM_SITE_KEY" file_env "CIVICRM_SITE_KEY"
file_env "CIVICRM_CRED_KEYS" file_env "CIVICRM_CRED_KEYS"
file_env "SMTP_PASSWORD" file_env "SMTP_PASSWORD"
file_env "WORDPRESS_ADMIN_PASSWORD"
if [[ "${1-default}" == "cron" ]]; then if [[ "${1-default}" == "cron" ]]; then
echo "============ Running cron job ============" echo "============ Running cron job ============"
@ -36,7 +37,7 @@ if [[ "${1-default}" == "cron" ]]; then
exit $? exit $?
fi fi
until mysql -e '\q' -h db -p"${WORDPRESS_DB_PASS}" && mysql -e '\q' -h "${CIVICRM_DB_HOST}" -p"${CIVICRM_DB_PASS}"; do until mysql -e '\q' -h"${WORDPRESS_DB_HOST}" -u"${WORDPRESS_DB_USER}" -p"${WORDPRESS_DB_PASS}" && mysql -e '\q' -h"${CIVICRM_DB_HOST}" -u"${CIVICRM_DB_USER}" -p"${CIVICRM_DB_PASS}"; do
echo "============ Waiting for db container to come up============" echo "============ Waiting for db container to come up============"
sleep 2 sleep 2
done; done;
@ -49,7 +50,7 @@ if su civicrm -c "wp core is-installed"; then
echo "============ Wordpress already installed ============" echo "============ Wordpress already installed ============"
else else
echo "============ Installing Wordpress ============" echo "============ Installing Wordpress ============"
su civicrm -c "wp core install --locale=de_DE --url=$BASE_URL --title=$PROJECT_NAME --admin_user=admin --admin_email=$SMTP_USER" su civicrm -c "wp core install --locale=de_DE --url=$BASE_URL --title=$PROJECT_NAME --admin_user=admin --admin_email=$WORDPRESS_ADMIN_EMAIL --admin_password='$WORDPRESS_ADMIN_PASSWORD'"
su civicrm -c "wp language core install de_DE" su civicrm -c "wp language core install de_DE"
su civicrm -c "wp language core activate de_DE" su civicrm -c "wp language core activate de_DE"
fi fi