Skip to content

Commit c6fa057

Browse files
committed
support for bluesky service records
1 parent 212c386 commit c6fa057

36 files changed

+55
-166
lines changed

dnsconfig.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,10 @@ for (var subdomain in domains) {
155155
records.push(TXT("_vercel." + subdomainName, "\"" + data.services.vercel + "\""));
156156
}
157157
}
158+
159+
if (data.services.bluesky) {
160+
records.push(TXT("_atproto." + subdomainName, "\"" + data.services.bluesky + "\""));
161+
}
158162
}
159163
}
160164

domains/_atproto.alvin.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/_atproto.catto24.json

Lines changed: 0 additions & 10 deletions
This file was deleted.

domains/_atproto.clyron.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/_atproto.crischutu07.json

Lines changed: 0 additions & 10 deletions
This file was deleted.

domains/_atproto.exyxz.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/_atproto.hcj.json

Lines changed: 0 additions & 10 deletions
This file was deleted.

domains/_atproto.horibyte.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/_atproto.jumanji.json

Lines changed: 0 additions & 10 deletions
This file was deleted.

domains/_atproto.lua.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/_atproto.luihh.json

Lines changed: 0 additions & 10 deletions
This file was deleted.

domains/_atproto.lumi.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/_atproto.narasima.json

Lines changed: 0 additions & 10 deletions
This file was deleted.

domains/_atproto.notcoded.json

Lines changed: 0 additions & 11 deletions
This file was deleted.

domains/_atproto.priyanshu.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/_atproto.raccoon.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/_atproto.thelamplighter.json

Lines changed: 0 additions & 9 deletions
This file was deleted.

domains/alvin.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
"vc-domain-verify=www.todo.alvin.is-a.dev,affd5e1204871843ebb8",
2525
"vc-domain-verify=sign.alvin.is-a.dev,2563e8f2f9edc85132ac",
2626
"vc-domain-verify=www.sign.alvin.is-a.dev,94900e209df86ce94741"
27-
]
27+
],
28+
"bluesky": "did=did:plc:jkk7sl4llede4zzj2ctgkwsc"
2829
}
2930
}

domains/catto24.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"CNAME": "catto24.github.io"
99
},
1010
"services": {
11-
"discord": "dh=cb090910b5977bb43674000fab99c3a76492ac78"
11+
"discord": "dh=cb090910b5977bb43674000fab99c3a76492ac78",
12+
"bluesky": "did=did:plc:whzff4s3db6taso3s43ylrou"
1213
}
1314
}

domains/clyron.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
"CNAME": "theclyron.github.io"
88
},
99
"services": {
10-
"discord": "dh=08fd1efb158b657de5293ec643a8426a20a93ede"
10+
"discord": "dh=08fd1efb158b657de5293ec643a8426a20a93ede",
11+
"bluesky": "did=did:plc:fqvzbqsjzjkl4o66rfp6cgk3"
1112
}
1213
}

domains/crischutu07.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
"TXT": "v=spf1 include:spf.improvmx.com ~all"
1515
},
1616
"services": {
17-
"discord": "dh=fffa03e2584e730d2c0166aaa6fe846542439b19"
17+
"discord": "dh=fffa03e2584e730d2c0166aaa6fe846542439b19",
18+
"bluesky": "did=did:plc:tfpfqi3qewuc5ugaipb57waa"
1819
}
1920
}

domains/exyxz.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"CNAME": "exyxz.github.io"
99
},
1010
"services": {
11-
"discord": "dh=529be62f885915368b4b5c20beaef95a1c55ea98"
11+
"discord": "dh=529be62f885915368b4b5c20beaef95a1c55ea98",
12+
"bluesky": "did=did:plc:73r55srxmmlhhiof7fnllisy"
1213
}
1314
}

domains/hcj.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
},
99
"services": {
1010
"discord": "dh=4d34d136feda8f0fade8d9cbf34cfb3ff0adee15",
11-
"vercel": "vc-domain-verify=hcj.is-a.dev,010396202f45aacdad27"
11+
"vercel": "vc-domain-verify=hcj.is-a.dev,010396202f45aacdad27",
12+
"bluesky": "did:plc:5f2c6awh4ffekm7srmi4d6zg"
1213
}
1314
}

domains/horibyte.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,8 @@
55
},
66
"records": {
77
"CNAME": "horibyte.github.io"
8+
},
9+
"services": {
10+
"bluesky": "did=did:plc:5ls3iv54vrppjxbs5ztocd75"
811
}
912
}

domains/jumanji.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
},
1111
"services": {
1212
"discord": "dh=aa51fc97861c871fc4daece76efa42c15712f116",
13-
"vercel": "vc-domain-verify=jumanji.is-a.dev,291766e76a7ab5de1bc7"
13+
"vercel": "vc-domain-verify=jumanji.is-a.dev,291766e76a7ab5de1bc7",
14+
"bluesky": "did=did:plc:nrjpabfv3zoxd6kiwr6fs4lq"
1415
}
1516
}

domains/lua.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
"A": ["75.119.201.51"]
1010
},
1111
"services": {
12-
"discord": "dh=970cb15c19a813efa00124e99f198cbac7942338"
12+
"discord": "dh=970cb15c19a813efa00124e99f198cbac7942338",
13+
"bluesky": "did=did:plc:j7iap5lpvblnrr7lygisgjzp"
1314
}
1415
}

domains/luihh.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
"proxied": true,
2121
"services": {
2222
"discord": "dh=81d234bda025f0796690ab6cf411be3a6b6c73c2",
23-
"vercel": "vc-domain-verify=luihh.is-a.dev,918089867ac61f642dfc"
23+
"vercel": "vc-domain-verify=luihh.is-a.dev,918089867ac61f642dfc",
24+
"bluesky": "did=did:plc:nkzlgllahrw2v2y6p4inqx6t"
2425
}
2526
}

domains/lumi.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
"TXT": "v=spf1 include:spf.improvmx.com ~all"
1010
},
1111
"services": {
12-
"discord": "dh=e00668e963ac416881a25e0bb5f87429a5eb0792"
12+
"discord": "dh=e00668e963ac416881a25e0bb5f87429a5eb0792",
13+
"bluesky": "did=did:plc:c6m5rghb7tkmf5isd3pqjpbt"
1314
}
1415
}

domains/narasima.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
},
1212
"services": {
1313
"discord": "dh=d54feeb331611626de2134ef368bdcf7691cbbb3",
14-
"vercel": "vc-domain-verify=blog.narasima.is-a.dev,f77f79e5650f4790387a"
14+
"vercel": "vc-domain-verify=blog.narasima.is-a.dev,f77f79e5650f4790387a",
15+
"bluesky": "did=did:plc:u5uxl7mjlywolajtgso2ouoe"
1516
}
1617
}

domains/notcoded.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"CNAME": "not-coded.github.io"
99
},
1010
"services": {
11-
"discord": "dh=0a6a5afd3a6ee9b2709a43a77e6679a2e9969384"
11+
"discord": "dh=0a6a5afd3a6ee9b2709a43a77e6679a2e9969384",
12+
"bluesky": "did=did:plc:hvgfiqmdl5sqcba2453dfpxe"
1213
}
1314
}

domains/priyanshu.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"CNAME": "priyanshu.pages.dev"
99
},
1010
"services": {
11-
"discord": "dh=4784b7e772166e35d7f9a41207e1ddf7e3d57f82"
11+
"discord": "dh=4784b7e772166e35d7f9a41207e1ddf7e3d57f82",
12+
"bluesky": "did=did:plc:psimj7hgshwoets2jvd6caib"
1213
}
1314
}

domains/raccoon.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
"CNAME": "nilsraccoon.github.io"
88
},
99
"services": {
10-
"discord": "dh=e9381b84c8007443b186820d32a3797bd8fa537d"
10+
"discord": "dh=e9381b84c8007443b186820d32a3797bd8fa537d",
11+
"bluesky": "did=did:plc:25w7vwbzb2e3h7cnflqskp37"
1112
}
1213
}

domains/thelamplighter.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,8 @@
55
},
66
"records": {
77
"URL": "https://github.com/thelamplighter-0"
8+
},
9+
"services": {
10+
"bluesky": "did=did:plc:g3ej5yewgi7ee7uipfzyrczc"
811
}
912
}

tests/domains.test.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,13 @@ t("Disallow nested subdomains when parent has specific service records", (t) =>
121121
`${file}: Nested subdomain "_vercel.${subdomain}" should not exist when services.vercel is present`
122122
);
123123
}
124+
125+
if (data?.services?.bluesky) {
126+
t.false(
127+
files.includes(`_atproto.${file}`),
128+
`${file}: Nested subdomain "_atproto.${subdomain}" should not exist when services.bluesky is present`
129+
);
130+
}
124131
});
125132

126133
t.pass();

tests/json.test.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,10 @@ async function processFile(file, t) {
164164
`${file}: services.vercel should be an array or string`
165165
);
166166
}
167+
168+
if (data.services.bluesky) {
169+
t.true(typeof data.services.bluesky === "string", `${file}: services.bluesky should be a string`);
170+
}
167171
}
168172

169173
for (const field of blockedFields) {

tests/records.test.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -356,6 +356,12 @@ t("All files should have valid service records", (t) => {
356356
t.true(value.length >= 48, `${file}: Vercel service token should be 48 characters or longer`);
357357
});
358358
}
359+
360+
const atprotoRegex = /^did=did:plc:[a-z0-9]{24}$/;
361+
362+
if (data?.services?.bluesky) {
363+
t.true(atprotoRegex.test(data.services.bluesky), `${file}: Invalid Bluesky service record format`);
364+
}
359365
});
360366

361367
t.pass();

0 commit comments

Comments
 (0)