generated from will/eec-courses-template
Add welcome course, finish template substitution for west575
Sync courses / sync (push) Successful in 5s
Sync courses / sync (push) Successful in 5s
This commit is contained in:
@@ -13,8 +13,8 @@ jobs:
|
||||
run: |
|
||||
tar czf /tmp/courses.tar.gz courses
|
||||
status=$(curl -s -o /tmp/sync-response.json -w '%{http_code}' \
|
||||
-X POST "http://eec-__CLIENT__:8080/admin/sync" \
|
||||
-H "Authorization: Bearer ${__CLIENT___EEC_SYNC_TOKEN}" \
|
||||
-X POST "http://eec-west575:8080/admin/sync" \
|
||||
-H "Authorization: Bearer ${WEST575_EEC_SYNC_TOKEN}" \
|
||||
--data-binary @/tmp/courses.tar.gz)
|
||||
cat /tmp/sync-response.json
|
||||
echo
|
||||
@@ -23,4 +23,4 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
env:
|
||||
__CLIENT___EEC_SYNC_TOKEN: ${{ secrets.__CLIENT___EEC_SYNC_TOKEN }}
|
||||
WEST575_EEC_SYNC_TOKEN: ${{ secrets.WEST575_EEC_SYNC_TOKEN }}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# __CLIENT__-eec-courses
|
||||
# west575-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
|
||||
email course engine — this instance served at eec.west575.org. 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.
|
||||
|
||||
@@ -21,19 +21,16 @@ courses/
|
||||
...
|
||||
```
|
||||
|
||||
## Courses
|
||||
|
||||
| slug | how people get in |
|
||||
|---|---|
|
||||
| `welcome` | entered automatically on newsletter signup (`SUBSCRIBE_ENROLL_COURSE_SLUG` on the `eec-west575` deployment) — never linked publicly on its own |
|
||||
|
||||
## 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-west575` container over the internal
|
||||
Docker network, authenticated with `WEST575_EEC_SYNC_TOKEN` (a Gitea
|
||||
Actions secret shared with the `eec-west575` 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.
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
active: true
|
||||
slug: welcome
|
||||
name: "Going West — welcome"
|
||||
from_email: hello@west575.org
|
||||
ceiling_hours: 72
|
||||
|
||||
# Entered only via SUBSCRIBE_ENROLL_COURSE_SLUG on the eec-west575
|
||||
# deployment (see reground-infrastructure's eec-west575 role) — never
|
||||
# linked publicly on its own. Every newsletter signup on west575.org
|
||||
# lands here automatically the moment they join the list.
|
||||
|
||||
steps:
|
||||
- file: day-0.md
|
||||
- file: day-1.md
|
||||
- file: day-2.md
|
||||
@@ -0,0 +1,13 @@
|
||||
---
|
||||
subject: "Hi — you're on the list"
|
||||
---
|
||||
|
||||
Hi, I'm Will.
|
||||
|
||||
Thanks for subscribing to **Going West**. This isn't a newsletter with a theme — it's just where I write down what I'm actually working on and thinking about, in roughly the order it happens: infrastructure and small-business tooling, a short story or a submission log, whatever else seemed worth saying at the time.
|
||||
|
||||
No content calendar, no funnel, no "in this issue" formula. When I publish something worth your inbox, you'll hear about it. That's the whole deal.
|
||||
|
||||
I'll send a couple more short notes over the next few days — mostly so this doesn't feel like a black box you signed up for and forgot. After that, it's just posts as they happen.
|
||||
|
||||
— Will
|
||||
@@ -0,0 +1,16 @@
|
||||
---
|
||||
subject: "What actually ends up here"
|
||||
redirect_url: "https://west575.org/posts/"
|
||||
---
|
||||
|
||||
A quick note on what to expect, since "I write about whatever" is a little unhelpful on its own.
|
||||
|
||||
In practice it lands in a few overlapping piles: the infrastructure and ops work I do for a living (the unglamorous, mostly-invisible plumbing that keeps small businesses' sites and email actually running), fiction I'm working on or sending out, and the occasional post that's really about neither — just something I noticed or worked through.
|
||||
|
||||
I'm Catholic, and that shows up here the way it shows up in the rest of my life — as a lens I'm looking through, not a label on the content. You won't find a separate "faith" section. If it's relevant to what I'm writing about, it's in there; if it's not, it isn't.
|
||||
|
||||
If you want to see what that actually looks like in practice rather than in the abstract, here's what's up on the site right now:
|
||||
|
||||
[Read the latest]({{.AdvanceLink}})
|
||||
|
||||
— Will
|
||||
@@ -0,0 +1,11 @@
|
||||
---
|
||||
subject: "That's it for the intro"
|
||||
---
|
||||
|
||||
Last one of these — from here it's just posts as I write them, nothing scheduled or padded out to fill a sequence.
|
||||
|
||||
If something ever lands in your inbox and you want to argue with it, ask about it, or just say hi, reply to this email. I read everything that comes back, and I'd rather hear from an actual person than watch an open rate.
|
||||
|
||||
Thanks for being here.
|
||||
|
||||
— Will
|
||||
Reference in New Issue
Block a user