use FORGEJO_BASE_URL
This commit is contained in:
parent
ae0e13eb8d
commit
1782480ed0
5 changed files with 22 additions and 4 deletions
1
.env.example
Normal file
1
.env.example
Normal file
|
@ -0,0 +1 @@
|
||||||
|
FORGEJO_BASE_URL=https://git.gay
|
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -1,4 +1,8 @@
|
||||||
node_modules/
|
node_modules/
|
||||||
|
|
||||||
|
.env
|
||||||
|
.env.*
|
||||||
|
!.env.example
|
||||||
|
|
||||||
# we're a pnpm household now
|
# we're a pnpm household now
|
||||||
package-lock.json
|
package-lock.json
|
|
@ -17,6 +17,7 @@
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@besties/html2png": "^0.1.8",
|
"@besties/html2png": "^0.1.8",
|
||||||
|
"dotenv": "^16.3.1",
|
||||||
"eta": "^3.1.0",
|
"eta": "^3.1.0",
|
||||||
"express": "^4.18.2",
|
"express": "^4.18.2",
|
||||||
"node-fetch": "^3.3.2"
|
"node-fetch": "^3.3.2"
|
||||||
|
|
8
pnpm-lock.yaml
generated
8
pnpm-lock.yaml
generated
|
@ -8,6 +8,9 @@ dependencies:
|
||||||
'@besties/html2png':
|
'@besties/html2png':
|
||||||
specifier: ^0.1.8
|
specifier: ^0.1.8
|
||||||
version: 0.1.8
|
version: 0.1.8
|
||||||
|
dotenv:
|
||||||
|
specifier: ^16.3.1
|
||||||
|
version: 16.3.1
|
||||||
eta:
|
eta:
|
||||||
specifier: ^3.1.0
|
specifier: ^3.1.0
|
||||||
version: 3.1.0
|
version: 3.1.0
|
||||||
|
@ -503,6 +506,11 @@ packages:
|
||||||
domhandler: 5.0.3
|
domhandler: 5.0.3
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
|
/dotenv@16.3.1:
|
||||||
|
resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==}
|
||||||
|
engines: {node: '>=12'}
|
||||||
|
dev: false
|
||||||
|
|
||||||
/ee-first@1.1.1:
|
/ee-first@1.1.1:
|
||||||
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
|
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
|
||||||
dev: false
|
dev: false
|
||||||
|
|
12
server.js
12
server.js
|
@ -1,3 +1,4 @@
|
||||||
|
import 'dotenv/config'
|
||||||
import express from 'express'
|
import express from 'express'
|
||||||
import { Eta } from 'eta'
|
import { Eta } from 'eta'
|
||||||
import render, { renderHtml } from './lib/render.js'
|
import render, { renderHtml } from './lib/render.js'
|
||||||
|
@ -6,6 +7,9 @@ import fetch from 'node-fetch'
|
||||||
// satori is using the native fetch api, causing a warning, so make node-fetch the default
|
// satori is using the native fetch api, causing a warning, so make node-fetch the default
|
||||||
globalThis.fetch = fetch
|
globalThis.fetch = fetch
|
||||||
|
|
||||||
|
const forgejoBaseUrl = process.env.FORGEJO_BASE_URL
|
||||||
|
if (!forgejoBaseUrl) throw new Error('FORGEJO_BASE_URL unspecified')
|
||||||
|
|
||||||
const debug = process.env.DEBUG ? true : false
|
const debug = process.env.DEBUG ? true : false
|
||||||
|
|
||||||
const eta = new Eta({
|
const eta = new Eta({
|
||||||
|
@ -34,7 +38,7 @@ function getLanguagePercentages(languages) {
|
||||||
|
|
||||||
app.get('/:owner/:repo', async function (req, res) {
|
app.get('/:owner/:repo', async function (req, res) {
|
||||||
const repoResp = await fetch(
|
const repoResp = await fetch(
|
||||||
`https://git.gay/api/v1/repos/${encodeURIComponent(
|
`${forgejoBaseUrl}/api/v1/repos/${encodeURIComponent(
|
||||||
req.params.owner
|
req.params.owner
|
||||||
)}/${encodeURIComponent(req.params.repo)}`
|
)}/${encodeURIComponent(req.params.repo)}`
|
||||||
)
|
)
|
||||||
|
@ -47,7 +51,7 @@ app.get('/:owner/:repo', async function (req, res) {
|
||||||
let languages = {}
|
let languages = {}
|
||||||
if (!repo.empty && repo.languages_url) {
|
if (!repo.empty && repo.languages_url) {
|
||||||
const languagesResp = await fetch(
|
const languagesResp = await fetch(
|
||||||
`https://git.gay/api/v1/repos/${encodeURIComponent(
|
`${forgejoBaseUrl}/api/v1/repos/${encodeURIComponent(
|
||||||
req.params.owner
|
req.params.owner
|
||||||
)}/${encodeURIComponent(req.params.repo)}/languages`
|
)}/${encodeURIComponent(req.params.repo)}/languages`
|
||||||
)
|
)
|
||||||
|
@ -72,7 +76,7 @@ app.get('/:owner/:repo', async function (req, res) {
|
||||||
|
|
||||||
app.get('/:owner/:repo/issue/:num', async function (req, res) {
|
app.get('/:owner/:repo/issue/:num', async function (req, res) {
|
||||||
const issueResp = await fetch(
|
const issueResp = await fetch(
|
||||||
`https://git.gay/api/v1/repos/${encodeURIComponent(
|
`${forgejoBaseUrl}/api/v1/repos/${encodeURIComponent(
|
||||||
req.params.owner
|
req.params.owner
|
||||||
)}/${encodeURIComponent(req.params.repo)}/issues/${encodeURIComponent(
|
)}/${encodeURIComponent(req.params.repo)}/issues/${encodeURIComponent(
|
||||||
req.params.num
|
req.params.num
|
||||||
|
@ -86,7 +90,7 @@ app.get('/:owner/:repo/issue/:num', async function (req, res) {
|
||||||
const issue = await issueResp.json()
|
const issue = await issueResp.json()
|
||||||
let languages = {}
|
let languages = {}
|
||||||
const languagesResp = await fetch(
|
const languagesResp = await fetch(
|
||||||
`https://git.gay/api/v1/repos/${encodeURIComponent(
|
`${forgejoBaseUrl}/api/v1/repos/${encodeURIComponent(
|
||||||
req.params.owner
|
req.params.owner
|
||||||
)}/${encodeURIComponent(req.params.repo)}/languages`
|
)}/${encodeURIComponent(req.params.repo)}/languages`
|
||||||
)
|
)
|
||||||
|
|
Loading…
Add table
Reference in a new issue