diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..16e22df --- /dev/null +++ b/.drone.yml @@ -0,0 +1,41 @@ +--- +kind: pipeline +name: deploy to swarm-test.autonomic.zone +steps: + - name: deployment + image: git.coopcloud.tech/coop-cloud/stack-ssh-deploy:latest + settings: + host: swarm-test.autonomic.zone + stack: federatedwiki + generate_secrets: true + purge: true + deploy_key: + from_secret: drone_ssh_swarm_test + networks: + - proxy + environment: + DOMAIN: federatedwiki.swarm-test.autonomic.zone + STACK_NAME: federatedwiki + LETS_ENCRYPT_ENV: production + INSTALL_SH_VERSION: v1 + CONFIG_JSON_VERSION: v1 + CONFIG_OWNER_JSON_VERSION: v1 +trigger: + branch: + - 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 diff --git a/.env.sample b/.env.sample index 7f1e5a4..0f41533 100644 --- a/.env.sample +++ b/.env.sample @@ -5,8 +5,19 @@ DOMAIN=federatedwiki.example.com #EXTRA_DOMAINS=', `www.federatedwiki.example.com`' LETS_ENCRYPT_ENV=production +COMPOSE_FILE="compose.yml" + +# Change to an absolute path to use a bind-mount, e.g. /opt/fedwiki +FEDWIKI_VOLUME="fedwiki" + +# custom wiki.cafe image, for working oauth2 support +#COMPOSE_FILE="$COMPOSE_FILE:compose.wikicafe.yml" + # Predefined "owner" security -#COMPOSE_FILE="compose.yml:compose.owner.yml" +#COMPOSE_FILE="$COMPOSE_FILE:compose.owner.yml" + +# persistent lib volume / node_modules directory, e.g. for plugmatic +#COMPOSE_FILE="$COMPOSE_FILE:compose.lib.yml" COOKIE_SECRET="asflkjqpweoriuwpeogdjgbpdofigh" AUTHOR="Baja Colorado" diff --git a/README.md b/README.md index e820ab0..30f8cef 100644 --- a/README.md +++ b/README.md @@ -18,9 +18,9 @@ Share pages circulating within a creative commons 1. Set up Docker Swarm and [`abra`] 2. Deploy [`coop-cloud/traefik`] 3. `abra app new federatedwiki` -4. `abra app YOURAPPDOMAIN config` - be sure to change `DOMAIN` to something that resolves to +4. `abra app config YOURAPPDOMAIN` - be sure to change `DOMAIN` to something that resolves to your Docker swarm box -5. `abra app YOURAPPDOMAIN deploy` +5. `abra app deploy YOURAPPDOMAIN` [`abra`]: https://git.autonomic.zone/autonomic-cooperative/abra [`coop-cloud/traefik`]: https://git.autonomic.zone/coop-cloud/traefik diff --git a/compose.lib.yml b/compose.lib.yml new file mode 100644 index 0000000..5de1e75 --- /dev/null +++ b/compose.lib.yml @@ -0,0 +1,10 @@ +--- +version: "3.8" + +services: + app: + volumes: + - "fedwiki_lib:/home/node/lib" + +volumes: + fedwiki_lib: diff --git a/compose.wikicafe.yml b/compose.wikicafe.yml new file mode 100644 index 0000000..7b267f5 --- /dev/null +++ b/compose.wikicafe.yml @@ -0,0 +1,6 @@ +--- +version: "3.8" + +services: + app: + image: git.coopcloud.tech/wiki-cafe/wiki-farm:latest diff --git a/compose.yml b/compose.yml index 5b0ea75..5a0f3c5 100644 --- a/compose.yml +++ b/compose.yml @@ -3,11 +3,11 @@ version: "3.8" services: app: - image: dobbs/farm:1.0.13 + image: dobbs/farm:1.0.18 command: /bin/sh config/install.sh volumes: - "fedwiki_friends:/home/node/config" - - "fedwiki:/home/node/.wiki" + - "${FEDWIKI_VOLUME}:/home/node/.wiki" networks: - proxy configs: @@ -32,7 +32,12 @@ services: - "traefik.http.routers.${STACK_NAME}.tls.domains[0].main=${DOMAIN}" - "traefik.http.routers.${STACK_NAME}.tls.domains[0].sans=*.${DOMAIN}" - "traefik.http.routers.${STACK_NAME}.priority=1" - - "coop-cloud.${STACK_NAME}.version=0.1.0+1.0.13" + - "caddy=https://${DOMAIN}, https://*.${DOMAIN}, https://*.*.${DOMAIN}, https://*.*.*.${DOMAIN}" + - "caddy.reverse_proxy={{upstreams 3000}}" + - "caddy.tls.on_demand=" + - "backupbot.backup=true" + - "backupbot.backup.path=/home/node/.wiki" + - "coop-cloud.${STACK_NAME}.version=1.0.1+1.0.18" # healthcheck: # test: ["CMD", "curl", "-f", "http://localhost"] # interval: 30s diff --git a/release/1.0.0+1.0.18 b/release/1.0.0+1.0.18 new file mode 100644 index 0000000..1d777c6 --- /dev/null +++ b/release/1.0.0+1.0.18 @@ -0,0 +1,7 @@ +WARNING! 🚨 + +There is a new mandatory config option, FEDWIKI_VOLUME -- please copy the +default value from the recipe .env.sample to your .env file on upgrade. + +If you haven't done that yet, best to bail with Ctrl+C, then add the option, +then re-run this `abra app upgrade ...` command