generated from will/eec-courses-template
Customize eec-courses-template for sunfloweracressoaps.com
Sync courses / sync (push) Successful in 5s
Sync courses / sync (push) Successful in 5s
Wire the sync workflow to eec-sunfloweracres, and add a real four-part welcome/nurture course that also grows the sunfloweracres-list mailing list via signup_list_name. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
# __CLIENT__-eec-courses
|
||||
# sunfloweracres-eec-courses
|
||||
|
||||
Course content for [eec](https://gitea.reground.org/will/eec), the self-paced
|
||||
email course engine — this instance served at eec.__DOMAIN__. Push to
|
||||
`master` and CI syncs `courses/` straight to production — there's no staging
|
||||
step, so treat a push here the same as a push to `eec` itself.
|
||||
email course engine — this instance served at eec.sunfloweracressoaps.com.
|
||||
Push to `master` and CI syncs `courses/` straight to production — there's no
|
||||
staging step, so treat a push here the same as a push to `eec` itself.
|
||||
|
||||
Full reference for course/step file format, `course.yml` fields, the
|
||||
readiness step, drip-triggered courses, and sync guardrails lives in the
|
||||
@@ -14,26 +14,32 @@ format is identical, only the target instance differs.
|
||||
|
||||
```
|
||||
courses/
|
||||
<slug>/
|
||||
welcome/
|
||||
course.yml
|
||||
day-0.md
|
||||
day-1.md
|
||||
...
|
||||
day-2.md
|
||||
day-3.md
|
||||
```
|
||||
|
||||
`welcome` is Sunflower Acres' welcome/nurture sequence, and doubles as the
|
||||
site's mailing-list signup mechanism — the course's own public signup form
|
||||
at eec.sunfloweracressoaps.com adds the subscriber to the
|
||||
`sunfloweracres-list` Listmonk list immediately (`signup_list_name` in
|
||||
`course.yml`, no click required), then sends four emails over the following
|
||||
days: the current bar lineup, the cold-process/six-week-cure story, and a
|
||||
soft close pointing back at the shop.
|
||||
|
||||
**Status: live, `active: true`.** All four steps have real content — no
|
||||
placeholders. Update copy in place as the product lineup or stock status
|
||||
changes; the emails currently reflect the lineup as of this course's launch,
|
||||
so revisit them if bars are added, discontinued, or restocked in a way
|
||||
that's stale here.
|
||||
|
||||
## Deploying
|
||||
|
||||
Push to `master` → `.gitea/workflows/sync.yml` tars up `courses/` and
|
||||
`POST`s it to this domain's `eec-__CLIENT__` container over the internal
|
||||
Docker network, authenticated with `__CLIENT___EEC_SYNC_TOKEN` (a Gitea
|
||||
Actions secret shared with the `eec-__CLIENT__` Ansible role's copy). No
|
||||
`POST`s it to this domain's `eec-sunfloweracres` container over the internal
|
||||
Docker network, authenticated with `SUNFLOWERACRES_EEC_SYNC_TOKEN` (a Gitea
|
||||
Actions secret shared with the `eec-sunfloweracres` Ansible role's copy). No
|
||||
separate deploy step, no staging — a push here goes live immediately.
|
||||
|
||||
---
|
||||
|
||||
**Generating a new client repo from this template:**
|
||||
|
||||
1. Gitea → "Generate Repo" from this template repo's page, named `<client>-eec-courses`.
|
||||
2. Find/replace `__CLIENT__` → the client's slug (must match the `eec-<client>` container name) and `__DOMAIN__` → the client's domain, in this README and in `.gitea/workflows/sync.yml`.
|
||||
3. Add the `<CLIENT>_EEC_SYNC_TOKEN` Actions secret to the new repo (Gitea does not carry secrets over from a template) — value must match the `eec-<client>` Ansible role's copy.
|
||||
4. Delete this "Generating a new client repo" section from the new repo's README once done.
|
||||
|
||||
Reference in New Issue
Block a user