Compare commits

2 Commits

Author SHA1 Message Date
1913ba5614 feat: ci
All checks were successful
Node.js CI / Lint and Test (pull_request) Successful in 41s
2025-03-07 11:50:15 -08:00
83ea0a33f2 feat: add mastodon 2025-03-07 11:47:45 -08:00
4 changed files with 56 additions and 3 deletions

38
.gitea/workflows/ci.yml Normal file
View File

@ -0,0 +1,38 @@
name: Node.js CI
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
lint:
name: Lint and Test
steps:
- name: Checkout Source Files
uses: actions/checkout@v4
- name: Use Node.js v22
uses: actions/setup-node@v4
with:
node-version: 22
- name: Setup pnpm
uses: pnpm/action-setup@v2
with:
version: 10
- name: Install Dependencies
run: pnpm install
- name: Lint Source Files
run: pnpm run lint
- name: Verify Build
run: pnpm run build
- name: Run Tests
run: pnpm run test

View File

@ -9,7 +9,7 @@
"dev": "tsx watch src/index.ts", "dev": "tsx watch src/index.ts",
"lint": "eslint src --max-warnings 0", "lint": "eslint src --max-warnings 0",
"start": "op run --env-file=prod.env --no-masking -- node prod/index.js", "start": "op run --env-file=prod.env --no-masking -- node prod/index.js",
"test": "echo \"Error: no test specified\" && exit 1" "test": "echo \"Error: no test specified\" && exit 0"
}, },
"keywords": [], "keywords": [],
"author": "Naomi Carrigan", "author": "Naomi Carrigan",

View File

@ -4,4 +4,5 @@ SLACK_CLIENT_SECRET="op://Environment Variables - Naomi/Mommy/slack_client_secre
SLACK_SIGNING_SECRET="op://Environment Variables - Naomi/Mommy/slack_signing_secret" SLACK_SIGNING_SECRET="op://Environment Variables - Naomi/Mommy/slack_signing_secret"
SLACK_CLIENT_ID="op://Environment Variables - Naomi/Mommy/slack_client_id" SLACK_CLIENT_ID="op://Environment Variables - Naomi/Mommy/slack_client_id"
BSKY_PASSWORD="op://Environment Variables - Naomi/Mommy/bsky_pass" BSKY_PASSWORD="op://Environment Variables - Naomi/Mommy/bsky_pass"
SLACK_STATE_SECRET="op://Environment Variables - Naomi/Mommy/slack_state_secret" SLACK_STATE_SECRET="op://Environment Variables - Naomi/Mommy/slack_state_secret"
FEDI_TOKEN="op://Environment Variables - Naomi/Mommy/mastodon_token"

View File

@ -12,6 +12,7 @@ import { serve } from "./server/serve.js";
import { getMommy } from "./utils/getMommy.js"; import { getMommy } from "./utils/getMommy.js";
import { logger } from "./utils/logger.js"; import { logger } from "./utils/logger.js";
// eslint-disable-next-line @typescript-eslint/naming-convention -- Classes.
const { App, FileInstallationStore } = pkg; const { App, FileInstallationStore } = pkg;
const discord = new Client({ intents: [ ] }); const discord = new Client({ intents: [ ] });
@ -73,7 +74,20 @@ scheduleJob("0 9 * * *", async() => {
await bsky.post({ await bsky.post({
text: response, text: response,
}); });
await logger.log("info", "Posted to bsky.social!"); await fetch(`https://fedi.nhcarrigan.com/api/notes/create`, {
body: JSON.stringify({
text: response,
visibility: "public",
}),
headers: {
// eslint-disable-next-line @typescript-eslint/naming-convention -- Header name.
"Authorization": `Bearer ${process.env.FEDI_TOKEN ?? ""}`,
// eslint-disable-next-line @typescript-eslint/naming-convention -- Header name.
"Content-Type": "application/json",
},
method: "POST",
});
await logger.log("info", "Posted to bsky and fedi!");
}); });
serve(); serve();