kZ~K4}K2R17iU=X|xr_5i;i!cO~+3pd#VnyfL>mrD#ZyUw$7Vhw#K!D39yu
z|326MaqmyG^!IZLd=iI20?!ic01pNiCWL}#p~l+{r{Ky28PKhUvLkrU+Xq$JhT1;5
zcK~v9HQ*T;PAwq^H8?(f!=ai04vWYk>e&N1=m*KFF?T#YK2{Q16Vv})KHG-E!ZOLJ
z{mTReE&2$=L*dZO%8z8<@-5OjFX4rfN%e>yTE3cxOg
zq3*#9Rd9ebq@$6dn%O0
zWd#RtaOvfGGPuFelkf<_3<_be@pY9t(;s?B-JRj?&GZcMcMoO-fENOthq@b^;qI#*
z41JFCygE1?lx6t^25^EwZzk89!9k?Qxp_Cs~&JBh?C9F==5^6v|
zu?2+go%F=-MWIiAPg2Kep6HxTc-kumhV~ou;;yl18H5oQ8mnOdGc>pY-y*>ruskCe
zd(WNuv+dBU3t1k)-kqq_ZY!io67C@;j%Ky8fUUQ2Zg4=$o$W@u#)}-Jg=7m%4Vm-xd|1
z`Yi>
zBzMnEsGTuo0HVm6*SK>U1UMl|eS9AM~`kJ{+15uE*wtbh&u^
zECcwT*TnqV)pEf<9t0f!s(p6ow6EcvT3{fc_#0$sZ`aEUdBhGd@{;g{uB_g^>;kg=
z29`8KUXQ_h8g>Xw(rm6N1D5%a-~g^S2cG0vnhOIs9_o0s5*!Y@5Ex4E`3r6@;7pR~
z4;v#U92RxF5B$9-RR4Pt(SWgCxDB3w0v01s8V@@wIr9jEcv
z25euzeR1^(=&bvHD+zSJrGPr{A8(j5*bF#B^iU_Z->`bYP6@69JMpgeLcrX91C~Nt
zb>36(ijPtqYW7P4D2DsJ&N-+XU0|Tz!XyB%*t)>;=Hf1P(?Hys!%lJ*;drmOi9cAWSu1VH{3p)`Sl1b8^X+)nCl
zFT|tZBVejSfA8F>C{J4mZh!Xb)&xL(ZX@9Bk8#ks{5=To5l`JOz$1hW`yp-sJCwH{
z>ZD23Vn9s2?bd?#OPxUQ%YD1=y2Hyhc#wss&W;zApJjmN=QX-6Z`0Qal6PE*b|Jnt
zAr$XwBF3(U&jA3$zfy;jH64Ck#M0u)(5;)!qM?%xCh8?9Z07|(d
z&|U4}@Et0^FoHpjhwd;`h-K6*#M6_>>BP4wrGSBQNBC7&vp2dfyw*jPc~^kafn9dz
zBbEQ64N&~6Ztd#%A5jq~;&Uo64W5`nT`(i@A9p)xX?r1pf<(aF()F_{?`08z!*9Ic
zVGHM9sF`?g3M+G1rxmkd{Z^+QSrSbDlL`&$T9uzQ0>{s5q7j5o^FHH{kBpRu7elZ!
zB(8|VAKc&&fKF5;@_!QJ8{n=yfPXgIjmF__pesk_vk_<0?KUEAiQPmu@x)1SJD#{D
z))1mKOfHA%9s*}0ofx7cXZd;R)G3zFPiVluhH=?--~Q?Fn;`k$Gx2WiLdb6-k%Rwv
zB$$!ksl;I#agf#7?t@YaSSWX(K-cFV=4GF|;Jr_CyPI@~r_^$;~^!eVC^`Q7)V`tUnj5hfEH1M6rv&aQZC4gakt#~ny`DI9mguEaFZnL@w6?<87GzWfAV
zBR;0bxrF~_)EmA&BfdcEn)GK;;QV=w?u(yuP$`-0Ksfs4A5Fkp5S9nN%=Bb2IdIq!
z9N{y#3daN_D~
z{$^RlJ<6Ca+Cr>?e|#xLd?V8Zn)mJq1_!>cf~Nd(53b8Uqwd5GJOsXQ`U(H}_Nkk0
z>)o;EpmjUWrFvl}D*paFR>>UZHYzqT3h
zzb4>h-SzGg#ta~Fd-A7oml9XazOISJh2Lp*wWs4h4e-Cp
zfp130DVqFHhsha~|C|~#d4->Jx;-W$9I6~ox0cLU{5zfuMLKt3zOTl*xofxST
z6x7#AE^dza&qi3KJDz%>2lKR`Dgcu`exd<;=@9&K1aR<8gt|W@Y3OuN9NuGb`C0yK
z@(Nz>cHIyt)UG$a5dLYOuCY*6I~HzWe(!qk)kzE5$$mEnwhs;1Zip_%QU|qA%-V5f
tltRQHB3=-6Vhw6{0xR_vbne {} }:
-let
- inherit (nixpkgs) pkgs;
-
- nixPackages = with pkgs; [
- yarn
- docker-compose
- dnsutils
- bun
- ];
-in
-pkgs.stdenv.mkDerivation {
- name = "env";
- buildInputs = nixPackages;
-}
diff --git a/dnsconfig.js b/dnsconfig.js
new file mode 100644
index 000000000..f053b8b4b
--- /dev/null
+++ b/dnsconfig.js
@@ -0,0 +1,128 @@
+var regNone = NewRegistrar("none");
+var providerCf = DnsProvider(NewDnsProvider("cloudflare"));
+
+var proxy = {
+ on: { "cloudflare_proxy": "on" },
+ off: { "cloudflare_proxy": "off" }
+};
+
+// Function to validate filenames according to the given rules
+function isValidFilename(filename) {
+ var regex = /^[a-z0-9]+(-[a-z0-9]+)*(\.[a-z0-9]+(-[a-z0-9]+)*)*\.json$/;
+ return regex.test(filename);
+}
+
+function getDomainsList(filesPath) {
+ var result = [];
+ var files = glob.apply(null, [filesPath, true, '.json']);
+
+ for (var i = 0; i < files.length; i++) {
+ var basename = files[i].split('/').reverse()[0];
+
+ if (!isValidFilename(basename)) {
+ console.log(`Skipping invalid file: ${basename}`);
+ continue;
+ }
+
+ var name = basename.split('.')[0];
+ result.push({ name: name, data: require(files[i]) });
+ }
+
+ return result;
+}
+
+var domains = getDomainsList('./domains');
+var commit = {};
+
+for (var idx in domains) {
+ var domainData = domains[idx].data;
+ var proxyState = proxy.off; // disabled by default
+
+ if (!commit[domainData.record.domain]) {
+ commit[domainData.record.domain] = [];
+ }
+
+ if (domainData.record.proxied === false) {
+ proxyState = proxy.off;
+ }
+
+ // Handle CNAME record
+ if (domainData.record.CNAME) {
+ commit[domainData.record.domain].push(
+ CNAME(domainData.subdomain, domainData.record.CNAME + ".", proxyState)
+ );
+ }
+
+ // Handle A records
+ if (domainData.record.A) {
+ for (var a in domainData.record.A) {
+ commit[domainData.record.domain].push(
+ A(domainData.subdomain, IP(domainData.record.A[a]), proxyState)
+ );
+ }
+ }
+
+ // Handle AAAA records
+ if (domainData.record.AAAA) {
+ for (var aaaa in domainData.record.AAAA) {
+ commit[domainData.record.domain].push(
+ AAAA(domainData.subdomain, domainData.record.AAAA[aaaa], proxyState)
+ );
+ }
+ }
+
+ // Handle MX records
+ if (domainData.record.MX) {
+ for (var mx in domainData.record.MX) {
+ commit[domainData.record.domain].push(
+ MX(domainData.subdomain, 10, domainData.record.MX[mx] + ".")
+ );
+ }
+ }
+
+ // Handle URL records (redirect)
+ if (domainData.record.URL) {
+ commit[domainData.record.domain].push(
+ URL(domainData.subdomain, domainData.record.URL)
+ );
+ }
+
+ // Handle NS records
+ if (domainData.record.NS) {
+ for (var ns in domainData.record.NS) {
+ commit[domainData.domain].push(
+ NS(domainData.subdomain, domainData.record.NS[ns] + ".")
+ );
+ }
+ }
+
+ // Handle SRV records
+ if (domainData.record.SRV) {
+ for (var srv in domainData.record.SRV) {
+ var srvRecord = domainData.record.SRV[srv];
+ commit[domainData.domain].push(
+ SRV(domainData.subdomain, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + ".")
+ );
+ }
+ }
+
+ // Handle TXT records
+ if (domainData.record.TXT) {
+ if (Array.isArray(domainData.record.TXT)) {
+ for (var txt in domainData.record.TXT) {
+ commit[domainData.record.domain].push(
+ TXT(domainData.subdomain, domainData.record.TXT[txt])
+ );
+ }
+ } else {
+ commit[domainData.record.domain].push(
+ TXT(domainData.subdomain, domainData.record.TXT)
+ );
+ }
+ }
+}
+
+// Commit all DNS records
+for (var domainName in commit) {
+ D(domainName, regNone, providerCf, commit[domainName]);
+}
diff --git a/docker-compose.yml b/docker-compose.yml
deleted file mode 100644
index 5b161f929..000000000
--- a/docker-compose.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-version: '3'
-services:
- dev:
- build:
- context: .
- dockerfile: ./Dockerfile
- volumes:
- - ./:/opt/app/code
diff --git a/package.json b/package.json
deleted file mode 100644
index ccc8dbd41..000000000
--- a/package.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "name": "is-a-dev-core",
- "version": "1.0.0",
- "description": "Register *.is-a.dev domains for free",
- "scripts": {
- "lint": "eslint utils scripts domains --ext .json,.js",
- "publish-records": "bun run -b ./scripts/register-domains.js",
- "dc": "docker-compose -p is-a-dev",
- "dc:start": "bun run dc up",
- "dc:shell": "bun run dc run dev /bin/bash"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/is-a-dev/register"
- },
- "author": "Akshay Nair ",
- "license": "GPL-3.0",
- "dependencies": {
- "ip-regex": "^5.0.0",
- "ramda": "^0.27.1"
- },
- "devDependencies": {
- "eslint": "^7.11.0",
- "eslint-plugin-json": "^2.1.2",
- "eslint-plugin-node": "^11.1.0"
- }
-}
diff --git a/scripts/action-utils.js b/scripts/action-utils.js
deleted file mode 100644
index 38a33a420..000000000
--- a/scripts/action-utils.js
+++ /dev/null
@@ -1,8 +0,0 @@
-module.exports = {
- hasLabel: (context, label) => {
- const pr = context.payload.pull_request || context.payload.issue;
- const { labels = [] } = pr;
-
- return !!labels.find(({ name }) => name === label);
- },
-};
diff --git a/scripts/certbot-auth.sh b/scripts/certbot-auth.sh
deleted file mode 100755
index 6b4ee8bc7..000000000
--- a/scripts/certbot-auth.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env bash
-
-echo "$PWD";
-
-echo "AUTH ::[$CERTBOT_VALIDATION]::[$CERTBOT_TOKEN]::[$CERTBOT_REMAINING_CHALLENGES]";
-echo "[$CERTBOT_DOMAIN]";
-
-sleep 1;
-./scripts/certbot.sh acme_txt "$CERTBOT_VALIDATION";
-
-echo "Going to sleep for a few minutes...";
-
-# TODO: Check if $CERTBOT_VALIDATION == $(./scripts/certbot.sh get-acme)?
-sleep $((3*60));
-
-./scripts/certbot.sh check;
-
diff --git a/scripts/certbot.sh b/scripts/certbot.sh
deleted file mode 100755
index ee84aa6d7..000000000
--- a/scripts/certbot.sh
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/usr/bin/env bash
-
-export NODE_ENV=production
-DRY_RUN=0
-if_dry_run() { [[ $DRY_RUN == 1 ]] && echo "$1" || echo "$2"; }
-
-generate_certificate() {
- outdir=$(mktemp -d /tmp/is-a-dev-certbot.XXXXX);
-
- certbot \
- --config-dir $outdir/config \
- --work-dir $outdir/work \
- --logs-dir $outdir/logs \
- certonly \
- --manual \
- --preferred-challenges=dns \
- --manual-auth-hook=./scripts/certbot-auth.sh \
- -m 'phenax5@gmail.com' \
- -d '*.is-a.dev,is-a.dev' \
- --agree-tos \
- $(if_dry_run "--dry-run" "");
-
- echo "+-----------------------------------------------+";
- echo "| Certificate output: |";
- echo "|= $outdir";
- echo "+-----------------------------------------------+";
-}
-
-update_record() {
- local method=$([[ "$1" == "add" ]] && echo "addZoneRecord" || echo "removeZoneRecord");
- local type="$2";
- local name="$3";
- local address="$4";
- local ttl=${5:-"1"};
- bun -e "
- const { domainService } = require('./utils/domain-service');
- const { ENV, DOMAIN_DOMAIN } = require('./utils/constants');
- const method = '$method';
- const name = '$name';
- const type = '$type';
-
- const record = { name, type, address: '$address', ttl: $ttl };
-
- async function main() {
- if (method === 'removeZoneRecord') {
- const data = await domainService.get({ customonly: 0, name: '$name.is-a.dev.', type });
- if (data.length > 0) {
- record.id = data[0].line;
- } else {
- throw new Error('Unable to find record');
- }
- }
-
- console.log('Uploading $name to', DOMAIN_DOMAIN, '(', ENV, ')...');
- const data = await domainService[method](record)();
- console.log(data.cpanelresult ? data.cpanelresult.data : data);
- }
-
- main().catch(console.error);
- "
-}
-
-update_acme_txt_record() {
- update_record add TXT '_acme-challenge' "$1";
-}
-
-reset_acme() {
- sleep 1;
- update_record remove TXT '_acme-challenge' '';
- update_record remove TXT '_acme-challenge' '';
- # update_record add CNAME 'www' "is-a-dev.github.io";
-}
-
-get_acme() { dig +noall +answer _acme-challenge.is-a.dev TXT | awk '{print $5}'; }
-
-case "$1" in
- check) echo "TXT record:: $(get_acme)" ;;
- get-acme) get_acme ;;
- cert) generate_certificate ;;
- acme_txt) update_acme_txt_record "$2" ;;
- reset) reset_acme ;;
- *) echo "Invalid command"; exit 1; ;;
-esac
-
-
-### STEPS ###
-# Run ./scripts/certbot.sh cert
-# cp -r /tmp/is-a-dev-whatever /opt/app/code/is-a-dev-cert
-# Upload cert.pem and privkey.pem (from config/live/is-a.dev/) contents to SSL > Manage SSL Sites
-# Run ./scripts/certbot.sh reset
-
diff --git a/scripts/register-domains.js b/scripts/register-domains.js
deleted file mode 100644
index 94bc02089..000000000
--- a/scripts/register-domains.js
+++ /dev/null
@@ -1,76 +0,0 @@
-const R = require("ramda");
-const {
- VALID_RECORD_TYPES,
- DOMAIN_HOST_IP,
- TTL,
- ENV,
-} = require("../utils/constants");
-const { domainService: dc } = require("../utils/domain-service");
-const { getDomains: gd } = require("../utils/get-domain");
-
-const getRecords = R.compose(R.toPairs, R.pick(VALID_RECORD_TYPES));
-
-const address = (type, value) => {
- if ("URL" === type) return `${value}`.replace(/\/$/g, "");
- if ("TXT" === type) return value;
- return (type === "CNAME" ? `${value}`.toLowerCase() : `${value}`).replace(
- /[/.]$/g,
- "",
- );
-};
-
-const toHostList = R.chain((data) => {
- // URL redirection must contain explicit A record
- // Wildcard A record breaks when used with MX
- // Ref: https://github.com/is-a-dev/register/issues/2365
- if ((data.record.URL && data.record.MX) || data.name === "@") {
- data.record.A = [DOMAIN_HOST_IP];
- }
-
- const records = getRecords(data.record);
-
- return R.chain(([recordType, values]) => {
- const valueList = Array.isArray(values) ? values : [values];
-
- return valueList.map((value, index) => ({
- name: data.name,
- type: recordType,
- address: address(recordType, value),
- ttl: TTL,
- ...(recordType === "MX" ? { priority: index + 20 } : {}),
- }));
- }, records);
-});
-
-const registerDomains = async ({
- domainService,
- getDomains,
- log = () => {},
-}) => {
- const domains = await getDomains().then(toHostList);
-
- if (domains.length === 0)
- return Promise.reject(new Error("Nothing to register"));
-
- log(`${domains.length} records found`);
- return domainService.updateHosts(domains);
-};
-
-const main = async () => {
- console.log(`Running in ${ENV} mode`);
- const result = await registerDomains({
- domainService: dc,
- getDomains: gd,
- log: console.log,
- });
- console.log(result);
-};
-
-if (require.main === module) {
- main().catch((e) => {
- console.error(e);
- process.exit(1);
- });
-} else {
- module.exports = { toHostList, registerDomains };
-}
diff --git a/scripts/reply.js b/scripts/reply.js
deleted file mode 100644
index dd4df142d..000000000
--- a/scripts/reply.js
+++ /dev/null
@@ -1,48 +0,0 @@
-const getInstructions = () => `
-The changes have been published!! It should reflect in less than 24 hours.
-
-## Here's what you need to do next
-If your domain points to a server you own, add \`domain-name.is-a.dev\` to your server config. For https, you will have to configure ssl certificate to allow the new subdomain.
-
-### For github pages users,
-* Go to your github page repo (\`user/user.github.io\`)
-* Open up the **settings** tab
-* Scroll down to the **Github pages** section
-* In the **Custom domain** text input, enter the domain you registered (\`domain-name.is-a.dev\`)
-* Check the **Enforce HTTPS** checkbox below the input
-* Give it some time to reflect and you should be good to go
-
-
-## Need help with your domain?
-If you are having trouble setting up your domain, [create an issue](https://github.com/is-a-dev/register/issues/new/choose). I will try my best to get back to you asap!
-
-
-## Made a mistake in the record?
-Don't worry, you can create a new pull request with the corrections
-
-
-## Love/Hate the service?
-**Love it?** Leave it a **star**! Also consider donating so that I can keep this service running forever!
-**Hate it?** Please leave your feedback by [creating an issue](https://github.com/is-a-dev/register/issues/new/choose). I would really like to keep improving this service for other users.
-
-
-## Wanna support this project?
-Help me in my mission to keep this service alive forever by donating!
-
-
-
-`;
-
-module.exports = {
- async instructions(context, github) {
- const pr = context.payload.issue || context.payload.pull_request;
- const { number } = pr;
-
- await github.issues.createComment({
- owner: context.repo.owner,
- repo: context.repo.repo,
- issue_number: number,
- body: getInstructions(),
- });
- },
-};
diff --git a/scripts/verify-record.sh b/scripts/verify-record.sh
deleted file mode 100644
index a4fc0da6a..000000000
--- a/scripts/verify-record.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env sh
-
-sed \
- -e 's/\.json.*$/.is-a.dev/g' \
- -e 's/^\s*domains\///g' \
- -e '/^\s*$/d' \
-| while read domain; do
- echo "$domain";
- dig "$domain" +noall +answer && echo "done" || echo "x";
-done;
-
diff --git a/tests/cpanel.test.js b/tests/cpanel.test.js
deleted file mode 100644
index b2415f8b4..000000000
--- a/tests/cpanel.test.js
+++ /dev/null
@@ -1,210 +0,0 @@
-const R = require("ramda");
-const { CpanelClient } = require("../utils/lib/cpanel");
-
-const mockFetch =
- (expectRequest, decorate = R.identity) =>
- (reqUrl, request) => {
- expectRequest(reqUrl, request);
- return Promise.resolve({
- json: async () => decorate(request),
- });
- };
-
-describe("Cpanel client", () => {
- describe("fetchzonerecords", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/json-api/cpanel?customonly=0&domain=a.b&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=fetchzone_records&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.zone.fetch();
- });
-
- it("should make the correct request with query", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/json-api/cpanel?customonly=0&domain=foobar.boeey&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=fetchzone_records&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.zone.fetch({ domain: "foobar.boeey" });
- });
- });
-
- describe("addzonerecord", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/json-api/cpanel?domain=a.b&name=googo&type=CNAME&cname=beey&ttl=2020&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=add_zone_record&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.zone.add({
- name: "googo",
- type: "boyee",
- cname: "beey",
- type: "CNAME",
- ttl: 2020,
- });
- });
- });
-
- describe("addzonerecord", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/json-api/cpanel?domain=a.b&line=500&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=remove_zone_record&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.zone.remove({
- line: 500,
- });
- });
- });
-
- describe("fetchredirections", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/execute/Mime/list_redirects?cpanel_jsonapi_user=boy&cpanel_jsonapi_module=Mime&cpanel_jsonapi_func=list_redirects&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.redirection.fetch();
- });
- });
- describe("addredirection", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/execute/Mime/add_redirect?domain=googo&destination=https%3A%2F%2Foodf.com&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=Mime&cpanel_jsonapi_func=add_redirect&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.redirection.add({
- domain: "googo",
- destination: "https://oodf.com",
- });
- });
- });
-
- describe("deleteredirection", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/execute/Mime/delete_redirect?domain=googo&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=Mime&cpanel_jsonapi_func=delete_redirect&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.redirection.remove({ domain: "googo" });
- });
- });
-});
diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js
deleted file mode 100644
index dfd6400ed..000000000
--- a/tests/domain-service.test.js
+++ /dev/null
@@ -1,421 +0,0 @@
-const R = require("ramda");
-const { getDomainService, diffRecords } = require("../utils/domain-service");
-const { DOMAIN_DOMAIN } = require("../utils/constants");
-
-const getCpanel = ({
- zone,
- addZone,
- removeZone,
- redir,
- addRedir,
- removeRedir,
- addEmail,
- removeEmail,
-} = {}) => ({
- zone: {
- fetch: (_) => zone(),
- add: (rec) => addZone(rec),
- remove: (rec) => removeZone(rec),
- },
- redirection: {
- fetch: (_) => redir(),
- add: (rec) => addRedir(rec),
- remove: (rec) => removeRedir(rec),
- },
- email: {
- add: (rec) => addEmail(rec),
- remove: (rec) => removeEmail(rec),
- },
-});
-
-describe("diffRecords", () => {
- it("should show added record", () => {
- const oldRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "111.1.1212.1" },
- ];
- const newRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "111.1.1212.1" },
- { name: "boo", type: "CNAME", address: "x.com" },
- ];
-
- const result = diffRecords(oldRecords, newRecords);
- expect(result).toEqual({
- remove: [],
- add: [{ name: "boo", type: "CNAME", address: "x.com" }],
- });
- });
-
- it("should show edited records", () => {
- const oldRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "111.1.1212.1" },
- ];
- const newRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "69.69.69.69" },
- ];
-
- const result = diffRecords(oldRecords, newRecords);
- expect(result).toEqual({
- remove: [{ name: "xa", type: "A", address: "111.1.1212.1" }],
- add: [{ name: "xa", type: "A", address: "69.69.69.69" }],
- });
- });
-
- it("should show added records with the same name and record type", () => {
- const oldRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "69.69.69.69" },
- ];
- const newRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "69.69.69.69" },
- { name: "xa", type: "A", address: "69.69.4.20" },
- ];
-
- const result = diffRecords(oldRecords, newRecords);
- expect(result).toEqual({
- remove: [],
- add: [{ name: "xa", type: "A", address: "69.69.4.20" }],
- });
- });
-
- it("should diff complex changes", () => {
- const oldRecords = [
- { name: "a", type: "CNAME", address: "fck.com." },
- { name: "b", type: "A", address: "69.69.69.69" },
- { name: "111", type: "CNAME", address: "x" },
- { name: "d", type: "A", address: "69.69.4.20" },
- ];
- const newRecords = [
- { name: "111", type: "CNAME", address: "x" },
- { name: "d", type: "CNAME", address: "duck.com" },
- { name: "a", type: "CNAME", address: "og.com" },
- { name: "b", type: "A", address: "69.69.69.69" },
- { name: "b", type: "A", address: "69.69.4.20" },
- { name: "c", type: "CNAME", address: "ccc.cc" },
- ];
-
- const result = diffRecords(oldRecords, newRecords);
- expect(result).toEqual({
- remove: [
- { name: "a", type: "CNAME", address: "fck.com." },
- { name: "d", type: "A", address: "69.69.4.20" },
- ],
- add: [
- { name: "d", type: "CNAME", address: "duck.com" },
- { name: "a", type: "CNAME", address: "og.com" },
- { name: "b", type: "A", address: "69.69.4.20" },
- { name: "c", type: "CNAME", address: "ccc.cc" },
- ],
- });
- });
-});
-
-describe("Domain service", () => {
- const addZone = jest.fn(async () => ({}));
- const removeZone = jest.fn(async () => ({}));
- const addRedir = jest.fn(async () => ({}));
- const removeRedir = jest.fn(async () => ({}));
- const addEmail = jest.fn(async () => ({}));
- const removeEmail = jest.fn(async () => ({}));
-
- const mockDS = ({ zones, redirections }) =>
- getDomainService({
- cpanel: getCpanel({
- zone: async () => zones,
- redir: async () => redirections,
- addZone,
- addEmail,
- addRedir,
- removeZone,
- removeRedir,
- removeEmail,
- }),
- });
-
- const getRecordCalls = (recfn) =>
- recfn.mock.calls
- .map(R.head)
- .map(
- R.pick([
- "name",
- "type",
- "address",
- "redirect",
- "domain",
- "line",
- "priority",
- "exchanger",
- ]),
- );
-
- beforeEach(() => {
- addZone.mockClear();
- removeZone.mockClear();
- addRedir.mockClear();
- removeRedir.mockClear();
- addEmail.mockClear();
- removeEmail.mockClear();
- });
-
- describe("getHosts", () => {
- it("should resolve with a list of hosts", async () => {
- const zones = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xx", type: "A", address: "111.1.1212.1" },
- ];
- const redirections = [];
- const zone = async () => zones;
- const redir = async () => redirections;
- const mockDomainService = getDomainService({
- cpanel: getCpanel({ zone, redir }),
- });
- const list = await mockDomainService.getHosts();
-
- expect(list).toEqual([
- { name: "xx", type: "CNAME", address: "fck.com" },
- { name: "xx", type: "A", address: "111.1.1212.1" },
- ]);
- });
-
- it("should resolve with a redirections", async () => {
- const zones = [
- { line: "111", name: "xx", type: "CNAME", address: "fck.com." },
- { line: "112", name: "xx", type: "A", address: "111.1.1212.1" },
- ];
- const redirections = [
- { domain: "foo.booboo.xyz", destination: "https://google.com" },
- { domain: "foo1.booboo.xyz", destination: "https://duck.com" },
- ];
- const zone = async () => zones;
- const redir = async () => redirections;
- const mockDomainService = getDomainService({
- cpanel: getCpanel({ zone, redir }),
- });
- const list = await mockDomainService.getHosts();
-
- expect(list).toEqual([
- { id: "111", name: "xx", type: "CNAME", address: "fck.com" },
- { id: "112", name: "xx", type: "A", address: "111.1.1212.1" },
- {
- id: `foo.${DOMAIN_DOMAIN}`,
- name: "foo",
- type: "URL",
- address: "https://google.com",
- },
- {
- id: `foo1.${DOMAIN_DOMAIN}`,
- name: "foo1",
- type: "URL",
- address: "https://duck.com",
- },
- ]);
- });
- });
-
- describe("updateHosts", () => {
- it("should append new hosts with existing ones and set it", async () => {
- const zones = [
- { line: 1, name: "a", type: "CNAME", address: "boo" },
- { line: 2, name: "b", type: "CNAME", address: "goo" },
- ];
- const redirections = [];
-
- const mockDomainService = mockDS({ zones, redirections });
- await mockDomainService.updateHosts([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "CNAME", address: "goo" },
- { name: "c", type: "A", address: "12.131321.213" },
- { name: "c", type: "MX", address: "foobar.com", priority: 2 },
- ]);
-
- expect(addZone).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(addZone)).toEqual([
- { name: "c", type: "A", address: "12.131321.213" },
- ]);
-
- expect(addEmail).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(addEmail)).toEqual([
- { domain: "c.is-a.dev", exchanger: "foobar.com", priority: 2 },
- ]);
-
- expect(removeZone).toHaveBeenCalledTimes(0);
- expect(removeEmail).toHaveBeenCalledTimes(0);
- });
-
- it("should update matching host and set it", async () => {
- const zones = [
- { line: 1, name: "a", type: "CNAME", address: "boo" },
- { line: 2, name: "b", type: "CNAME", address: "goo" },
- ];
- const redirections = [];
-
- const mockDomainService = mockDS({ zones, redirections });
- await mockDomainService.updateHosts([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "CNAME", address: "googoogaga" },
- ]);
-
- expect(addZone).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(addZone)).toEqual([
- { name: "b", type: "CNAME", address: "googoogaga" },
- ]);
- expect(removeZone).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(removeZone)).toEqual([{ line: 2 }]);
- });
-
- it("should update matching host and set it", async () => {
- const zones = [
- { line: 1, name: "a", type: "CNAME", address: "boo" },
- { line: 2, name: "b", type: "CNAME", address: "goo" },
- { line: 3, name: "b", type: "CNAME", address: "xaa" },
- ];
- const redirections = [];
-
- const mockDomainService = mockDS({ zones, redirections });
- await mockDomainService.updateHosts([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "CNAME", address: "googoogaga" },
- { name: "b", type: "CNAME", address: "farboo" },
- ]);
-
- expect(addZone).toHaveBeenCalledTimes(2);
- expect(getRecordCalls(addZone)).toEqual([
- { name: "b", type: "CNAME", address: "googoogaga" },
- { name: "b", type: "CNAME", address: "farboo" },
- ]);
- expect(removeZone).toHaveBeenCalledTimes(2);
- expect(getRecordCalls(removeZone)).toEqual([
- { line: 3 },
- { line: 2 },
- ]);
- });
-
- it("should workout this complex example", async () => {
- const zones = [
- { line: 1, name: "a", type: "CNAME", address: "world" },
- { line: 2, name: "b", type: "A", address: "1" },
- { line: 3, name: "b", type: "A", address: "2" },
- { line: 4, name: "c", type: "CNAME", address: "hello.com" },
- {
- line: 5,
- name: "c",
- type: "MX",
- address: "mx1.hello.com",
- priority: 20,
- },
- {
- line: 6,
- name: "c",
- type: "MX",
- address: "mx2.hello.com",
- priority: 21,
- },
- {
- line: 7,
- name: "b",
- type: "MX",
- address: "foo.bar",
- priority: 20,
- },
- { line: 101, name: "x", type: "A", address: "1" },
- { line: 99, name: "y", type: "A", address: "2" },
- { line: 100, name: "z", type: "A", address: "3" },
- ];
- const redirections = [
- {
- domain: `b.${DOMAIN_DOMAIN}`,
- destination: "https://foobar.com",
- },
- {
- domain: `c.${DOMAIN_DOMAIN}`,
- destination: "https://goobar.com",
- },
- {
- domain: `x.${DOMAIN_DOMAIN}`,
- destination: "https://example.com",
- },
- ];
-
- const mockDomainService = mockDS({ zones, redirections });
- await mockDomainService.updateHosts([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "A", address: "1" },
- { name: "b", type: "A", address: "2" },
- { name: "b", type: "A", address: "3" },
- { name: "b", type: "URL", address: "https://wowow.com" },
- { name: "c", type: "CNAME", address: "hello.com" },
- { name: "c", type: "URL", address: "https://goobar.com" },
- { name: "d", type: "CNAME", address: "helo.com" },
- { name: "d", type: "URL", address: "https://hhh.com" },
- { name: "x", type: "URL", address: "https://example69.com" },
- {
- name: "c",
- type: "MX",
- address: "mx2.hello.com",
- priority: 21,
- },
- { name: "a", type: "MX", address: "example.com", priority: 20 },
- ]);
-
- expect(addZone).toHaveBeenCalledTimes(3);
- expect(getRecordCalls(addZone)).toEqual([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "A", address: "3" },
- { name: "d", type: "CNAME", address: "helo.com" },
- ]);
- expect(removeZone).toHaveBeenCalledTimes(4);
- expect(getRecordCalls(removeZone)).toEqual([
- { line: 101 },
- { line: 100 },
- { line: 99 },
- { line: 1 },
- ]);
-
- expect(addEmail).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(addEmail)).toEqual([
- {
- domain: "a.is-a.dev",
- exchanger: "example.com",
- priority: 20,
- },
- ]);
- expect(removeEmail).toHaveBeenCalledTimes(2);
- expect(getRecordCalls(removeEmail)).toEqual([
- { domain: "b.is-a.dev", exchanger: "foo.bar", priority: 20 },
- {
- domain: "c.is-a.dev",
- exchanger: "mx1.hello.com",
- priority: 20,
- },
- ]);
-
- expect(addRedir).toHaveBeenCalledTimes(3);
- expect(getRecordCalls(addRedir)).toEqual([
- {
- domain: `b.${DOMAIN_DOMAIN}`,
- type: "permanent",
- redirect: "https://wowow.com",
- },
- {
- domain: `d.${DOMAIN_DOMAIN}`,
- type: "permanent",
- redirect: "https://hhh.com",
- },
- {
- domain: `x.${DOMAIN_DOMAIN}`,
- type: "permanent",
- redirect: "https://example69.com",
- },
- ]);
- expect(removeRedir).toHaveBeenCalledTimes(2);
- expect(getRecordCalls(removeRedir)).toEqual([
- { domain: `b.${DOMAIN_DOMAIN}` },
- { domain: `x.${DOMAIN_DOMAIN}` },
- ]);
- });
- });
-});
diff --git a/tests/domain-utils.test.js b/tests/domain-utils.test.js
deleted file mode 100644
index 896cf017d..000000000
--- a/tests/domain-utils.test.js
+++ /dev/null
@@ -1,8 +0,0 @@
-const { getDomains } = require("../utils/get-domain");
-
-describe("getDomains", () => {
- it("should resolve with the list of domains", async () => {
- const list = await getDomains();
- expect(Array.isArray(list)).toBe(true);
- });
-});
diff --git a/tests/domains.test.js b/tests/domains.test.js
deleted file mode 100644
index 75971b00b..000000000
--- a/tests/domains.test.js
+++ /dev/null
@@ -1,37 +0,0 @@
-const R = require("ramda");
-const fs = require("fs");
-const { getDomains } = require("../utils/get-domain");
-const { validateDomainData } = require("../utils/validations");
-const { DOMAINS_PATH } = require("../utils/constants");
-
-describe("Domains", () => {
- it("should all be json", async () => {
- const files = await fs.promises.readdir(DOMAINS_PATH, {});
- expect(files.filter((f) => !/\.json$/g.test(f)).length).toBe(0);
- });
-
- it("should be valid", (done) => {
- getDomains()
- .then(R.reject(R.propEq("name", "_psl")))
- .then(
- R.map((data) => {
- const { errors } = validateDomainData(data);
- if (errors.length) {
- const message = errors
- .map(
- ([key, { reason }]) =>
- `[${data.name}.${key}]: ${reason}`,
- )
- .join("\n");
- return `\nValidation errors in ${data.name}.json: \n${message}`;
- }
- return "";
- }),
- )
- .then(R.filter(R.complement(R.isEmpty)))
- .then((messages) =>
- messages.length ? done(messages.join("\n")) : done(),
- )
- .catch(done);
- });
-});
diff --git a/tests/register.test.js b/tests/register.test.js
deleted file mode 100644
index 6628df211..000000000
--- a/tests/register.test.js
+++ /dev/null
@@ -1,242 +0,0 @@
-const R = require("ramda");
-const { toHostList, registerDomains } = require("../scripts/register-domains");
-const { TTL, DOMAIN_DOMAIN } = require("../utils/constants");
-const { getDomainService } = require("../utils/domain-service");
-
-const getCpanel = ({
- zone,
- addZone,
- removeZone,
- redir,
- addRedir,
- removeRedir,
- addEmail,
- removeEmail,
-} = {}) => ({
- zone: {
- fetch: (_) => zone(),
- add: (rec) => addZone(rec),
- remove: (rec) => removeZone(rec),
- },
- redirection: {
- fetch: (_) => redir(),
- add: (rec) => addRedir(rec),
- remove: (rec) => removeRedir(rec),
- },
- email: {
- add: (rec) => addEmail(rec),
- remove: (rec) => removeEmail(rec),
- },
-});
-
-describe("toHostList", () => {
- it("should flatten domain data to list of hosts (without https)", () => {
- const res = toHostList([
- { name: "akshay", record: { CNAME: "phenax.github.io" } },
- { name: "foobar", record: { CNAME: "v.io" } },
- { name: "xx", record: { A: ["1.2.3.4", "5.6.3.2", "1.2.31.1"] } },
- {
- name: "xx",
- record: { CNAME: "foobar.com", MX: ["as.com", "f.com"] },
- },
- ]);
-
- expect(res).toEqual([
- {
- name: "akshay",
- type: "CNAME",
- address: "phenax.github.io",
- ttl: TTL,
- },
- { name: "foobar", type: "CNAME", address: "v.io", ttl: TTL },
- { name: "xx", type: "A", address: "1.2.3.4", ttl: TTL },
- { name: "xx", type: "A", address: "5.6.3.2", ttl: TTL },
- { name: "xx", type: "A", address: "1.2.31.1", ttl: TTL },
- { name: "xx", type: "CNAME", address: "foobar.com", ttl: TTL },
- {
- name: "xx",
- type: "MX",
- address: "as.com",
- priority: 20,
- ttl: TTL,
- },
- {
- name: "xx",
- type: "MX",
- address: "f.com",
- priority: 21,
- ttl: TTL,
- },
- ]);
- });
-});
-
-describe("registerDomains", () => {
- const addZone = jest.fn(async () => ({}));
- const removeZone = jest.fn(async () => ({}));
- const addRedir = jest.fn(async () => ({}));
- const removeRedir = jest.fn(async () => ({}));
- const addEmail = jest.fn(async () => ({}));
- const removeEmail = jest.fn(async () => ({}));
-
- const mockDS = ({ zones, redirections }) =>
- getDomainService({
- cpanel: getCpanel({
- zone: async () => zones,
- redir: async () => redirections,
- addZone,
- addEmail,
- addRedir,
- removeZone,
- removeRedir,
- removeEmail,
- }),
- });
-
- beforeEach(() => {
- addZone.mockClear();
- removeZone.mockClear();
- addRedir.mockClear();
- removeRedir.mockClear();
- addEmail.mockClear();
- removeEmail.mockClear();
- });
-
- it("should register the new set of hosts generated from domains list", async () => {
- const localHosts = [
- { name: "a", record: { CNAME: "hello" } },
- { name: "b", record: { CNAME: "xaa" } },
- ];
- const remoteHosts = [
- { line: 1, name: "a", type: "CNAME", address: "hello" },
- { line: 2, name: "b", type: "CNAME", address: "goo" },
- { line: 3, name: "b", type: "CNAME", address: "xaa" },
- ];
- const remoteRedirections = [];
-
- const domainService = mockDS({
- zones: remoteHosts,
- redirections: remoteRedirections,
- });
- await registerDomains({
- getDomains: async () => localHosts,
- domainService,
- });
-
- expect(addZone).toHaveBeenCalledTimes(0);
- expect(removeZone).toHaveBeenCalledTimes(1);
- expect(addRedir).toHaveBeenCalledTimes(0);
- expect(removeRedir).toHaveBeenCalledTimes(0);
- });
-
- it("should add the new set hosts", async () => {
- const localHosts = [
- { name: "a", record: { CNAME: "boo" } },
- {
- name: "b",
- record: {
- A: ["1.1.1.1", "1.1.1.2"],
- MX: "somemx",
- TXT: "some txt",
- },
- },
- { name: "c", record: { URL: "https://google.com" } },
- { name: "d", record: { CNAME: "foobar" } },
- {
- name: "e",
- record: { A: ["2.2.2.2"], TXT: ["some", "extra", "txt"] },
- },
- ];
- const remoteHosts = [
- { line: 1, name: "a", type: "CNAME", address: "boo" },
- { line: 2, name: "b", type: "MX", address: "othermx" },
- { line: 3, name: "d", type: "CNAME", address: "foobaz" },
- ];
- const remoteRedirections = [
- { domain: `b.${DOMAIN_DOMAIN}`, destination: "x" },
- { domain: `a.${DOMAIN_DOMAIN}`, destination: "y" },
- ];
-
- const domainService = mockDS({
- zones: remoteHosts,
- redirections: remoteRedirections,
- });
- await registerDomains({
- getDomains: async () => localHosts,
- domainService,
- });
-
- expect(addZone).toHaveBeenCalledTimes(8);
- expect(addZone.mock.calls).toEqual([
- [{ name: "b", type: "A", address: "1.1.1.1", line: undefined }],
- [{ name: "b", type: "A", address: "1.1.1.2", line: undefined }],
- [
- {
- name: "b",
- type: "TXT",
- address: "some txt",
- txtdata: "some txt",
- line: undefined,
- },
- ],
- [
- {
- name: "d",
- type: "CNAME",
- cname: "foobar",
- address: "foobar",
- line: undefined,
- },
- ],
- [{ name: "e", type: "A", address: "2.2.2.2", line: undefined }],
- [
- {
- name: "e",
- type: "TXT",
- address: "some",
- txtdata: "some",
- line: undefined,
- },
- ],
- [
- {
- name: "e",
- type: "TXT",
- address: "extra",
- txtdata: "extra",
- line: undefined,
- },
- ],
- [
- {
- name: "e",
- type: "TXT",
- address: "txt",
- txtdata: "txt",
- line: undefined,
- },
- ],
- ]);
-
- expect(removeZone).toHaveBeenCalledTimes(1);
- expect(removeZone.mock.calls).toEqual([[{ line: 3 }]]);
-
- expect(addRedir).toHaveBeenCalledTimes(1);
- expect(addRedir.mock.calls).toEqual([
- [
- {
- domain: "c.booboo.xyz",
- redirect: "https://google.com",
- redirect_wildcard: 1,
- redirect_www: 1,
- type: "permanent",
- },
- ],
- ]);
-
- expect(addEmail).toHaveBeenCalledTimes(1);
- expect(addEmail.mock.calls).toEqual([
- [{ domain: "b.is-a.dev", exchanger: "somemx", priority: 20 }],
- ]);
- });
-});
diff --git a/tests/validations.test.js b/tests/validations.test.js
deleted file mode 100644
index af27b68bb..000000000
--- a/tests/validations.test.js
+++ /dev/null
@@ -1,167 +0,0 @@
-const { validateDomainData, isValidDomain } = require("../utils/validations");
-const INVALID_NAMES = require("../utils/invalid-domains.json");
-
-const defaultDomain = {
- name: "aaa",
- record: {
- A: ["121.121.121.121"],
- },
- owner: {
- username: "betsy",
- email: "betsyfuckyoassup@foobar.com",
- },
-};
-
-const getstroflen = (len) => Array(len).fill("a").join("");
-
-describe("isValidMX", () => {
- it("should be valid mx record", () => {
- const cases = [
- { mx: "foobar.com", result: true },
- { mx: "as.as", result: true },
- { mx: "ASPMX.L.GOOGLE.COM", result: true },
- { mx: "ALT4.ASPMX.L.GOOGLE.COM", result: true },
- { mx: "hello", result: false },
- { mx: "helalsds-asd5sjdsd.com", result: true },
- { mx: "helalsds?asd5sjdsd.com", result: false },
- { mx: "helalsds_asd5sjdsd.com", result: false },
- ];
-
- cases.forEach(({ mx, result }) => {
- expect(isValidDomain(mx)).toBe(result);
- });
- });
-});
-
-describe("validateDomainData", () => {
- const invalidCases = [
- {},
- { name: "helo" },
- { name: "wwow", record: { A: ["12312"] } },
- ...[
- "",
- " ",
- undefined,
- "hlo wld",
- "g32++13",
- "ajsdD_123yq",
- "khsda%",
- "122*dsd",
- getstroflen(101),
- ].map((name) => ({
- ...defaultDomain,
- name,
- })),
- { ...defaultDomain, record: { CNAME: "sd", A: ["121,3213"] } },
- { ...defaultDomain, record: { A: ["121", "12"], FOOBAR: ["sd"] } },
- { ...defaultDomain, record: { A: [] } },
- { ...defaultDomain, owner: {} },
- { ...defaultDomain, owner: { username: "hwelo" } },
- { ...defaultDomain, owner: { email: "hwelo" } },
- { ...defaultDomain, record: { CNAME: "http://foobar.com" } },
- { ...defaultDomain, record: { CNAME: "https://foobar.com" } },
- { ...defaultDomain, record: { URL: "foobar.com" } },
- {
- ...defaultDomain,
- record: { CNAME: "foobar.com", A: ["11.22.22.33"] },
- },
- {
- ...defaultDomain,
- record: { CNAME: "foobar.com", MX: ["ALT4.ASPMX.L.GOOGLE.COM"] },
- },
- ...INVALID_NAMES.map((name) => ({ ...defaultDomain, name })).slice(
- 0,
- 1,
- ),
- { ...defaultDomain, name: "ww2.baa" },
- { ...defaultDomain, name: "help.baa" },
- { ...defaultDomain, name: "_github-pages-challenge-is-a-dev" },
- { ...defaultDomain, name: "_github-challenge-is-a-dev" },
- { ...defaultDomain, record: { AAAA: [] } },
- { ...defaultDomain, record: { AAAA: ["182.22.222.22", "::1"] } },
- { ...defaultDomain, record: { AAAA: "182.22.222.22" } },
- { ...defaultDomain, record: { A: "::1" } },
- { ...defaultDomain, name: "_discord" },
- { ...defaultDomain, name: "_gitlab-pages-verification-code" },
- { ...defaultDomain, name: "_acme-challenge" },
- { ...defaultDomain, name: "_dmarc" },
- { ...defaultDomain, name: "_gh-is-a-dev" },
- { ...defaultDomain, name: "_domainkey" },
- { ...defaultDomain, name: "_improvmx" },
- { ...defaultDomain, name: "_vercel" },
- ];
-
- const validCases = [
- defaultDomain,
- ...[
- "hello",
- "hello-world",
- "11111111111",
- "--wow--",
- "wow--",
- "--wow",
- ].map((name) => ({
- ...defaultDomain,
- name,
- })),
- {
- ...defaultDomain,
- description: getstroflen(99),
- },
- { ...defaultDomain, record: { CNAME: "aa.sd" } },
- { ...defaultDomain, record: { URL: "https://foobar.com" } },
- { ...defaultDomain, record: { URL: "http://foobar.com/foobar/" } },
- { ...defaultDomain, record: { MX: ["ALT4.ASPMX.L.GOOGLE.COM"] } },
- { ...defaultDomain, record: { TXT: "foobar wow nice!!!" } },
- {
- ...defaultDomain,
- record: { A: ["1.1.1.1"], MX: ["mx1.example.com"] },
- },
- { ...defaultDomain, name: "gogo.foo.bar" },
- { ...defaultDomain, name: "ww9.baa" },
- { ...defaultDomain, name: "_github-pages-challenge-phenax.akshay" },
- { ...defaultDomain, name: "_github-pages-challenge-hello01-ga" },
- { ...defaultDomain, name: "_github-pages-challenge-hello01_ga" },
- { ...defaultDomain, name: "_github-challenge-phenax.akshay" },
- { ...defaultDomain, name: "_github-challenge-hello01-ga" },
- { ...defaultDomain, name: "_github-challenge-hello01_ga" },
- {
- ...defaultDomain,
- record: { TXT: ["foobar wow nice!!!", "more text"] },
- },
- {
- ...defaultDomain,
- record: { AAAA: ["::1", "2001:db8:3333:4444:5555:6666:7777:8888"] },
- },
- { ...defaultDomain, record: { A: ["122.222.222.222"] } },
- { ...defaultDomain, name: "_discord.subdomain" },
- { ...defaultDomain, name: "_gitlab-pages-verification-code.subdomain" },
- { ...defaultDomain, name: "_acme-challenge.subdomain" },
- { ...defaultDomain, name: "_dmarc.subdomain" },
- { ...defaultDomain, name: "_gh-phenax.akshay" },
- { ...defaultDomain, name: "_gh-hello01-ga" },
- { ...defaultDomain, name: "_gh-hello01_ga" },
- { ...defaultDomain, name: "_domainkey.subdomain" },
- { ...defaultDomain, name: "mx._domainkey.subdomain" },
- { ...defaultDomain, name: '_improvmx.subdomain' },
- { ...defaultDomain, name: '_vercel.subdomain' },
- { ...defaultDomain, name: "a.b" },
- ];
-
- it("should return false for invalid data", () => {
- invalidCases.forEach((data) => {
- const { valid, errors } = validateDomainData(data);
- expect(valid).toBe(false);
- expect(errors.length).toBeGreaterThan(0);
- });
- });
-
- it("should return true if the name is valid", () => {
- validCases.forEach((data) => {
- const { valid, errors } = validateDomainData(data);
- if (!valid) console.log(JSON.stringify(errors, null, 2));
- expect(valid).toBe(true);
- expect(errors).toEqual([]);
- });
- });
-});
diff --git a/utils/constants.js b/utils/constants.js
deleted file mode 100644
index b0cf0079d..000000000
--- a/utils/constants.js
+++ /dev/null
@@ -1,30 +0,0 @@
-const path = require("path");
-
-const { NODE_ENV: ENV = "test" } = process.env;
-
-const {
- DOMAIN_USER,
- DOMAIN_API_KEY,
- DOMAIN_DOMAIN,
- DOMAIN_API_HOST,
- DOMAIN_API_PORT,
- DOMAIN_HOST_IP,
-} = process.env;
-
-const IS_TEST = ENV === "test";
-
-const DOMAINS_PATH = path.resolve("domains");
-
-module.exports = {
- ENV,
- IS_TEST,
- VALID_RECORD_TYPES: ["CNAME", "A", "URL", "MX", "TXT", "AAAA"],
- DOMAIN_DOMAIN: DOMAIN_DOMAIN || "booboo.xyz",
- DOMAIN_USER: IS_TEST ? "testuser" : DOMAIN_USER,
- DOMAIN_API_KEY: IS_TEST ? "testkey" : DOMAIN_API_KEY,
- DOMAIN_API_HOST: IS_TEST ? "example.com" : DOMAIN_API_HOST,
- DOMAIN_API_PORT: IS_TEST ? 6969 : DOMAIN_API_PORT,
- DOMAIN_HOST_IP,
- DOMAINS_PATH,
- TTL: 5 * 60 * 60,
-};
diff --git a/utils/domain-service.js b/utils/domain-service.js
deleted file mode 100644
index b76eeac01..000000000
--- a/utils/domain-service.js
+++ /dev/null
@@ -1,206 +0,0 @@
-const R = require("ramda");
-const { cpanel } = require("./lib/cpanel");
-const { DOMAIN_DOMAIN, VALID_RECORD_TYPES } = require("./constants");
-const { then, log, print, lazyTask, batchLazyTasks } = require("./helpers");
-
-const BATCH_SIZE = 1;
-
-const recordToRedirection = ({ name, address }) => ({
- domain: name === "@" ? DOMAIN_DOMAIN : `${name}.${DOMAIN_DOMAIN}`,
- redirect: address,
- type: "permanent",
- redirect_wildcard: 1,
- redirect_www: 1,
-});
-const recordToZone = ({ name, type, address, id, priority }) => ({
- line: id,
- name: name === "@" ? `${DOMAIN_DOMAIN}.` : name,
- type,
- address,
- ...(type === "MX" ? { priority } : {}),
- ...(type === "CNAME" ? { cname: address } : {}),
- ...(type === "TXT" ? { txtdata: address } : {}),
-});
-
-const cleanName = (name) =>
- [DOMAIN_DOMAIN, `${DOMAIN_DOMAIN}.`].includes(name)
- ? "@"
- : `${name}`
- .replace(new RegExp(`\\.${DOMAIN_DOMAIN}\\.?$`), "")
- .toLowerCase();
-
-const zoneToRecord = ({
- name,
- type,
- cname,
- address,
- priority,
- preference,
- exchange,
- record,
- line: id,
-}) => ({
- id,
- name: cleanName(name),
- type: `${type}`,
- address: `${exchange || cname || address || record}`
- .replace(/\.$/g, "")
- .toLowerCase(),
- priority: priority || preference,
-});
-const redirectionToRecord = ({ domain, destination }) => ({
- id: domain,
- name: cleanName(domain),
- type: "URL",
- address: `${destination}`.replace(/\/$/g, ""),
-});
-
-const recordToEmailMx = ({ name, address, priority }) => ({
- domain: `${name}.is-a.dev`,
- exchanger: address,
- priority,
-});
-
-const getHostKey = (host) =>
- `${host.name.toLowerCase()}##${host.type.toLowerCase()}##${host.address.toLowerCase()}`;
-
-const isReserved = (domain) =>
- domain.name.startsWith("*") || !VALID_RECORD_TYPES.includes(domain.type);
-
-const diffRecords = (oldRecords, newRecords) => {
- const isMatchingRecord = (a, b) => getHostKey(a) === getHostKey(b);
-
- const remove = R.differenceWith(isMatchingRecord, oldRecords, newRecords);
- const add = R.differenceWith(isMatchingRecord, newRecords, oldRecords);
-
- return { add, remove };
-};
-
-const executeBatch = (batches) =>
- batches.reduce((promise, batch, index) => {
- return promise.then(async () => {
- log(
- ">>> Running batch number:",
- index + 1,
- `(size: ${batch.length})`,
- );
-
- const values = await Promise.all(
- batch.map((fn) => fn().catch((e) => console.error(e))),
- );
-
- const results = values.map((data) =>
- R.pathOr({ result: data }, ["cpanelresult", "data", 0], data),
- );
- const failed = results.filter((x) => (x.result || {}).status != 1);
-
- log(`${values.length - failed.length}/${values.length}`);
- failed.length && log(JSON.stringify(failed, null, 2));
-
- return null;
- });
- }, Promise.resolve());
-
-const getDomainService = ({ cpanel }) => {
- const fetchZoneRecords = R.compose(
- then(R.reject(isReserved)),
- then(R.map(zoneToRecord)),
- cpanel.zone.fetch,
- );
- const fetchRedirections = R.compose(
- then(R.map(redirectionToRecord)),
- cpanel.redirection.fetch,
- );
-
- const addZoneRecord = lazyTask(
- R.compose(
- R.ifElse(
- R.propEq("type", "MX"),
- R.compose(cpanel.email.add, recordToEmailMx),
- cpanel.zone.add,
- ),
- recordToZone,
- print(
- (r) => `Adding zone for ${r.name}: (${r.type} ${r.address})...`,
- ),
- ),
- );
- const removeZoneRecord = lazyTask(
- R.compose(
- R.ifElse(
- R.propEq("type", "MX"),
- R.compose(cpanel.email.remove, recordToEmailMx),
- R.compose(cpanel.zone.remove, R.pick(["line"])),
- ),
- recordToZone,
- print(
- (r) =>
- `Deleting zone for ${r.name}: (${r.type} ${r.address})...`,
- ),
- ),
- );
- const addRedirection = lazyTask(
- R.compose(
- cpanel.redirection.add,
- recordToRedirection,
- print(({ name }) => `Adding redirection for ${name}`),
- ),
- );
- const removeRedirection = lazyTask(
- R.compose(
- cpanel.redirection.remove,
- R.pick(["domain"]),
- recordToRedirection,
- print(({ name }) => `Deleting redirection for ${name}`),
- ),
- );
-
- const getHosts = () =>
- Promise.all([fetchZoneRecords(), fetchRedirections()]).then(R.flatten);
-
- const addRecords = R.compose(
- batchLazyTasks(BATCH_SIZE),
- R.filter(Boolean),
- R.map(
- R.cond([
- [R.propEq("type", "URL"), addRedirection],
- [R.T, addZoneRecord],
- ]),
- ),
- );
- const removeRecords = R.compose(
- batchLazyTasks(BATCH_SIZE),
- R.map(
- R.cond([
- [R.propEq("type", "URL"), removeRedirection],
- [R.T, removeZoneRecord],
- ]),
- ),
- R.sort((a, b) => b.id - a.id),
- );
-
- const updateHosts = async (hosts) => {
- const remoteHostList = await getHosts();
- const { add, remove } = diffRecords(remoteHostList, hosts);
- console.log(`Adding ${add.length}; Removing ${remove.length}`);
-
- await executeBatch([...removeRecords(remove), ...addRecords(add)]);
- return { added: add.length, removed: remove.length };
- };
-
- return {
- getHosts,
- get: cpanel.zone.fetch,
- addZoneRecord,
- removeZoneRecord,
- updateHosts,
- };
-};
-
-const domainService = getDomainService({ cpanel });
-
-module.exports = {
- getDomainService,
- domainService,
- diffRecords,
-};
diff --git a/utils/get-domain.js b/utils/get-domain.js
deleted file mode 100644
index 064240358..000000000
--- a/utils/get-domain.js
+++ /dev/null
@@ -1,27 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const R = require("ramda");
-const { DOMAINS_PATH } = require("./constants");
-
-const toDomain = (str) => path.join(DOMAINS_PATH, str);
-
-const parseDomain = (name) => (str) => {
- try {
- return JSON.parse(str);
- } catch (e) {
- throw new Error(`Error: Could not parse ${name} => ${str}`);
- }
-};
-
-const toDomainData = (name) =>
- R.compose(parseDomain(name), R.toString, fs.readFileSync, toDomain)(name);
-
-const getDomains = () =>
- fs.promises.readdir(DOMAINS_PATH, {}).then(
- R.map((name) => ({
- ...toDomainData(name),
- name: name.replace(/\.json$/, ""),
- })),
- );
-
-module.exports = { getDomains };
diff --git a/utils/helpers.js b/utils/helpers.js
deleted file mode 100644
index 03369f2b7..000000000
--- a/utils/helpers.js
+++ /dev/null
@@ -1,54 +0,0 @@
-const R = require("ramda");
-const { IS_TEST } = require("./constants");
-
-const log = IS_TEST ? () => {} : console.log;
-const print = (fn) => (x) => log(fn(x)) || x;
-
-const between = (min, max) => (num) => num >= min && num <= max;
-const testRegex = (regex) => (str) => !!(str && str.match(regex));
-
-const validate = (pattern) => (data) =>
- R.compose(
- (invalidPairs) =>
- invalidPairs.length
- ? { errors: invalidPairs, valid: false }
- : { errors: [], valid: true },
- R.filter(([key, { fn }]) => (fn ? !fn(data[key]) : false)),
- R.toPairs,
- )(pattern);
-
-const or = R.anyPass;
-const and = R.allPass;
-
-const then = (fn) => (p) => p.then(fn);
-
-const lazyTask = (fn) => (data) => () => fn(data);
-
-const batchLazyTasks = (count) => (tasks) =>
- tasks.reduce((batches, task) => {
- if (batches.length === 0) return [[task]];
-
- const full = R.init(batches);
- const last = R.last(batches);
-
- if (last.length >= count) return [...batches, [task]];
- return [...full, [...last, task]];
- }, []);
-
-const withLengthGte = (n) => R.compose(R.gte(R.__, n), R.length);
-const withLengthEq = (n) => R.compose(R.equals(n), R.length);
-
-module.exports = {
- or,
- and,
- validate,
- between,
- testRegex,
- log,
- print,
- then,
- lazyTask,
- batchLazyTasks,
- withLengthEq,
- withLengthGte,
-};
diff --git a/utils/invalid-domains.json b/utils/invalid-domains.json
deleted file mode 100644
index 736faa9bd..000000000
--- a/utils/invalid-domains.json
+++ /dev/null
@@ -1,27 +0,0 @@
-[
- "0",
- "_acme-challenge",
- "_discord",
- "_dmarc",
- "_domainkey",
- "_gh-is-a-dev",
- "_github-challenge-is-a-dev",
- "_github-pages-challenge-is-a-dev",
- "_gitlab-pages-verification-code",
- "_improvmx",
- "_vercel",
- "con",
- "help",
- "no-reply",
- "noreply",
- "notification",
- "notifications",
- "support",
- "ww",
- "ww1",
- "ww2",
- "ww3",
- "ww4",
- "wwww",
- "your-domain-name"
-]
diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js
deleted file mode 100644
index 573a22e5e..000000000
--- a/utils/lib/cpanel.js
+++ /dev/null
@@ -1,123 +0,0 @@
-const R = require("ramda");
-const qs = require("querystring");
-const {
- DOMAIN_API_HOST,
- DOMAIN_API_PORT,
- DOMAIN_USER,
- DOMAIN_API_KEY,
- DOMAIN_DOMAIN,
-} = require("../constants");
-
-const CpanelClient = (options) => {
- const api =
- ({ basePath = "", action = "" }) =>
- (module, func, defaultQuery = {}) =>
- (q = {}) => {
- const query = {
- ...defaultQuery,
- ...q,
- cpanel_jsonapi_user: options.username,
- cpanel_jsonapi_module: module,
- cpanel_jsonapi_func: func,
- cpanel_jsonapi_apiversion: 2,
- };
-
- const request = {
- headers: {
- Authorization: `cpanel ${options.username}:${options.apiKey}`,
- },
- rejectUnauthorized: false,
- };
-
- const path = `${basePath}/${action}?${qs.stringify(query)}`;
- const reqUrl = `https://${options.host}:${options.port}/${path}`;
-
- const { fetch } = options.dependencies;
- return fetch(reqUrl, request).then((res) => res.json());
- };
-
- const api2 = api({ basePath: "json-api", action: "cpanel" });
- const uapi = (module, func, defaultQuery) =>
- api({ basePath: "execute", action: `${module}/${func}` })(
- module,
- func,
- defaultQuery,
- );
-
- return {
- zone: {
- // { customonly, domain }
- // -> [{ class, ttl, name, line, Line, cname, type, record }]
- fetch: R.compose(
- (p) => p.then(R.pathOr([], ["cpanelresult", "data"])),
- api2("ZoneEdit", "fetchzone_records", {
- customonly: 0,
- domain: options.domain,
- }),
- ),
-
- // { name, type(A|CNAME), cname, address, ttl }
- // -> {}
- add: api2("ZoneEdit", "add_zone_record", {
- domain: options.domain,
- }),
-
- // { line }
- // -> {}
- remove: api2("ZoneEdit", "remove_zone_record", {
- domain: options.domain,
- }),
- },
- redirection: {
- // {}
- // -> [{ domain, destination }]
- fetch: R.compose(
- (p) => p.then(R.pathOr([], ["data"])),
- uapi("Mime", "list_redirects"),
- ),
-
- // { domain, redirect, type(permanent|tmp), redirect_wildcard(0|1), redirect(0|1|2) }
- // -> {}
- add: uapi("Mime", "add_redirect"),
-
- // { domain }
- // -> {}
- remove: uapi("Mime", "delete_redirect"),
- },
- file: {
- write: uapi("Fileman", "save_file_content", {
- from_charset: "UTF-8",
- to_charset: "UTF-8",
- fallback: 1,
- }),
- },
- email: {
- // { domain, exchanger, priority }
- // -> {}
- add: uapi("Email", "add_mx", { alwaysaccept: "auto" }),
-
- // { domain, exchanger, priority }
- // -> {}
- remove: uapi("Email", "delete_mx", { alwaysaccept: "auto" }),
- },
- };
-};
-
-if (!DOMAIN_API_KEY) {
- console.error("Api key cannot be empty");
- process.exit(1);
-}
-
-const cpanel = CpanelClient({
- host: DOMAIN_API_HOST,
- port: DOMAIN_API_PORT,
- username: DOMAIN_USER,
- apiKey: DOMAIN_API_KEY,
- domain: DOMAIN_DOMAIN,
- dependencies: { fetch },
-});
-
-module.exports = {
- cpanel,
- CpanelClient,
-};
diff --git a/utils/validations.js b/utils/validations.js
deleted file mode 100644
index eea099cd4..000000000
--- a/utils/validations.js
+++ /dev/null
@@ -1,129 +0,0 @@
-const R = require("ramda");
-const { VALID_RECORD_TYPES } = require("./constants");
-const {
- or,
- and,
- validate,
- between,
- testRegex,
- withLengthEq,
- withLengthGte,
-} = require("./helpers");
-const INVALID_NAMES = require("./invalid-domains.json");
-const ipRegex_ = require("ip-regex");
-const ipRegex = ipRegex_.default ?? ipRegex_;
-
-const isValidURL = and([R.is(String), testRegex(/^https?:\/\//gi)]);
-
-const isValidDomain = and([
- R.is(String),
- testRegex(/^(([a-z0-9-_]+)\.)*(([a-z0-9-]+)\.)+[a-z]+$/gi),
-]);
-
-const validateCnameRecord = (type) =>
- and([
- R.propIs(String, type),
- R.compose(withLengthEq(1), R.keys), // CNAME cannot be used with any other record
- R.propSatisfies(withLengthGte(4), type),
- R.propSatisfies(isValidDomain, type),
- ]);
-
-const validateARecord = (type) =>
- and([
- R.propIs(Array, type),
- R.propSatisfies(withLengthGte(1), type),
- R.all(testRegex(ipRegex.v4({ exact: true }))),
- ]);
-
-const validateMXRecord = (type) =>
- and([
- R.propIs(Array, type),
- R.propSatisfies(withLengthGte(1), type),
- R.propSatisfies(R.all(isValidDomain), type),
- ]);
-
-const validateAAAARecord = R.propSatisfies(
- and([
- R.is(Array),
- withLengthGte(1),
- R.all(testRegex(ipRegex.v6({ exact: true }))),
- ]),
-);
-
-const checkRestrictedNames = R.complement(R.includes(R.__, INVALID_NAMES));
-
-const extraSupportedNames = [
- testRegex(/^_github(-pages)?-challenge-[a-z0-9-_]+$/i),
- R.equals("_discord"),
- R.equals("_gitlab-pages-verification-code"),
- R.equals("_acme-challenge"),
- R.equals("_dmarc"),
- R.equals("_domainkey"),
- R.equals("_improvmx"),
- R.equals("_vercel"),
- testRegex(/^_gh-[a-z0-9-_]+$/i),
-];
-
-const validateDomainData = validate({
- name: {
- reason: "The name of the file is invalid. It must be lowercased, alphanumeric and each component must be between 1-100 characters long.",
- fn: or([
- R.equals("@"),
- and([
- R.is(String),
- checkRestrictedNames,
- R.compose(
- R.all(
- or([
- and([
- R.compose(between(1, 100), R.length),
- testRegex(/^[a-z0-9-]+$/g),
- checkRestrictedNames,
- ]),
- ...extraSupportedNames,
- ]),
- ),
- R.split("."),
- ),
- ]),
- ]),
- },
- description: { reason: "", fn: R.T },
- repo: { reason: "", fn: R.T },
- owner: {
- reason: "`owner` key needs valid username and email properties.",
- fn: and([
- R.is(Object),
- R.complement(R.isEmpty),
- R.where({
- username: and([R.is(String), withLengthGte(1)]),
- email: R.is(String),
- }),
- ]),
- },
- record: {
- reason: "Invalid record(s) found. Please check the record types and values.",
- fn: and([
- R.is(Object),
- R.compose(
- R.isEmpty,
- R.difference(R.__, VALID_RECORD_TYPES),
- R.keys,
- ),
- R.cond([
- [R.has("CNAME"), validateCnameRecord("CNAME")],
- [R.has("A"), validateARecord("A")],
- [R.has("URL"), R.propSatisfies(isValidURL, "URL")],
- [R.has("MX"), validateMXRecord("MX")],
- [
- R.has("TXT"),
- R.propSatisfies(or([R.is(String), R.is(Array)]), "TXT"),
- ],
- [R.has("AAAA"), validateAAAARecord("AAAA")],
- [R.T, R.T],
- ]),
- ]),
- },
-});
-
-module.exports = { validateDomainData, isValidDomain };
From 8f9609d0c18fedd815560c7d809840fa4fa86bba Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 17:48:45 +0800
Subject: [PATCH 067/416] Update dnsconfig.js
---
dnsconfig.js | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index f053b8b4b..6a71add4f 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -46,13 +46,6 @@ for (var idx in domains) {
proxyState = proxy.off;
}
- // Handle CNAME record
- if (domainData.record.CNAME) {
- commit[domainData.record.domain].push(
- CNAME(domainData.subdomain, domainData.record.CNAME + ".", proxyState)
- );
- }
-
// Handle A records
if (domainData.record.A) {
for (var a in domainData.record.A) {
@@ -71,27 +64,27 @@ for (var idx in domains) {
}
}
+ // Handle CNAME record
+ if (domainData.record.CNAME) {
+ commit[domainData.record.domain].push(
+ CNAME(domainData.subdomain, `${domainData.record.CNAME}.`, proxyState)
+ );
+ }
+
// Handle MX records
if (domainData.record.MX) {
for (var mx in domainData.record.MX) {
commit[domainData.record.domain].push(
- MX(domainData.subdomain, 10, domainData.record.MX[mx] + ".")
+ MX(domainData.subdomain, 10, `${domainData.record.MX[mx]}.`)
);
}
}
- // Handle URL records (redirect)
- if (domainData.record.URL) {
- commit[domainData.record.domain].push(
- URL(domainData.subdomain, domainData.record.URL)
- );
- }
-
// Handle NS records
if (domainData.record.NS) {
for (var ns in domainData.record.NS) {
commit[domainData.domain].push(
- NS(domainData.subdomain, domainData.record.NS[ns] + ".")
+ NS(domainData.subdomain, `${domainData.record.NS[ns]}.`)
);
}
}
@@ -101,7 +94,7 @@ for (var idx in domains) {
for (var srv in domainData.record.SRV) {
var srvRecord = domainData.record.SRV[srv];
commit[domainData.domain].push(
- SRV(domainData.subdomain, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + ".")
+ SRV(domainData.subdomain, srvRecord.priority, srvRecord.weight, srvRecord.port, `${srvRecord.target}.`)
);
}
}
@@ -120,6 +113,13 @@ for (var idx in domains) {
);
}
}
+
+ // Handle URL records (redirect)
+ if (domainData.record.URL) {
+ commit[domainData.record.domain].push(
+ CNAME(domainData.subdomain, "redirect.is-a.dev.", proxyState)
+ );
+ }
}
// Commit all DNS records
From a6001376a3d1c6889306421ef2be4af0d54312df Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 17:51:32 +0800
Subject: [PATCH 068/416] why is www owned by me
---
domains/www.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/www.json b/domains/www.json
index 6ecfc95b2..af576c718 100644
--- a/domains/www.json
+++ b/domains/www.json
@@ -2,7 +2,7 @@
"description": "The is-a.dev website",
"repo": "https://github.com/is-a-dev/is-a-dev.github.io",
"owner": {
- "username": "wdhdev",
+ "username": "is-a-dev",
"email": ""
},
"record": {
From 15b411f65273fd22a9737234fc6d164a4711f3d0 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 17:52:36 +0800
Subject: [PATCH 069/416] Create redirect.json
---
domains/redirect.json | 9 +++++++++
1 file changed, 9 insertions(+)
create mode 100644 domains/redirect.json
diff --git a/domains/redirect.json b/domains/redirect.json
new file mode 100644
index 000000000..8b7a9f235
--- /dev/null
+++ b/domains/redirect.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "is-a-dev",
+ "email": ""
+ },
+ "record": {
+ "TXT": "RESERVED FOR REDIRECT URLS"
+ }
+}
From d0c54d56aabb50a8c7766903a4e07ee3aca6ec07 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 17:54:44 +0800
Subject: [PATCH 070/416] Update dnsconfig.js
---
dnsconfig.js | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index 6a71add4f..9b52705af 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -67,7 +67,7 @@ for (var idx in domains) {
// Handle CNAME record
if (domainData.record.CNAME) {
commit[domainData.record.domain].push(
- CNAME(domainData.subdomain, `${domainData.record.CNAME}.`, proxyState)
+ CNAME(domainData.subdomain, domainData.record.CNAME + ".", proxyState)
);
}
@@ -75,7 +75,7 @@ for (var idx in domains) {
if (domainData.record.MX) {
for (var mx in domainData.record.MX) {
commit[domainData.record.domain].push(
- MX(domainData.subdomain, 10, `${domainData.record.MX[mx]}.`)
+ MX(domainData.subdomain, 10, domainData.record.MX[mx] + ".")
);
}
}
@@ -84,7 +84,7 @@ for (var idx in domains) {
if (domainData.record.NS) {
for (var ns in domainData.record.NS) {
commit[domainData.domain].push(
- NS(domainData.subdomain, `${domainData.record.NS[ns]}.`)
+ NS(domainData.subdomain, domainData.record.NS[ns] + ".")
);
}
}
@@ -94,7 +94,7 @@ for (var idx in domains) {
for (var srv in domainData.record.SRV) {
var srvRecord = domainData.record.SRV[srv];
commit[domainData.domain].push(
- SRV(domainData.subdomain, srvRecord.priority, srvRecord.weight, srvRecord.port, `${srvRecord.target}.`)
+ SRV(domainData.subdomain, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + ".")
);
}
}
From 3cd7168bc0e8b9eda139ed8fb12c863ee816eb25 Mon Sep 17 00:00:00 2001
From: andrewstech
Date: Wed, 16 Oct 2024 09:57:27 +0000
Subject: [PATCH 071/416] New CI
---
dnsconfig.js | 6 +--
zone.js | 129 +++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 132 insertions(+), 3 deletions(-)
create mode 100644 zone.js
diff --git a/dnsconfig.js b/dnsconfig.js
index 9b52705af..00d2d5c8e 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -8,7 +8,7 @@ var proxy = {
// Function to validate filenames according to the given rules
function isValidFilename(filename) {
- var regex = /^[a-z0-9]+(-[a-z0-9]+)*(\.[a-z0-9]+(-[a-z0-9]+)*)*\.json$/;
+ var regex = /\.json$/;
return regex.test(filename);
}
@@ -20,7 +20,7 @@ function getDomainsList(filesPath) {
var basename = files[i].split('/').reverse()[0];
if (!isValidFilename(basename)) {
- console.log(`Skipping invalid file: ${basename}`);
+ console.log("Skipping invalid file:" + basename);
continue;
}
@@ -66,7 +66,7 @@ for (var idx in domains) {
// Handle CNAME record
if (domainData.record.CNAME) {
- commit[domainData.record.domain].push(
+ commit[domainData.domain].push(
CNAME(domainData.subdomain, domainData.record.CNAME + ".", proxyState)
);
}
diff --git a/zone.js b/zone.js
new file mode 100644
index 000000000..fb49a395b
--- /dev/null
+++ b/zone.js
@@ -0,0 +1,129 @@
+const fs = require('fs'); // Required for writing JSON to file
+
+var proxy = {
+ on: { "cloudflare_proxy": "on" },
+ off: { "cloudflare_proxy": "off" }
+};
+
+// Function to validate filenames according to the given rules
+function isValidFilename(filename) {
+ var regex = /^[a-z0-9]+(-[a-z0-9]+)*(\.[a-z0-9]+(-[a-z0-9]+)*)*\.json$/;
+ return regex.test(filename);
+}
+
+// Function to get the domains list from the domains folder
+function getDomainsList(filesPath) {
+ var result = [];
+ var files = glob.apply(null, [filesPath, true, '.json']);
+
+ for (var i = 0; i < files.length; i++) {
+ var basename = files[i].split('/').reverse()[0];
+
+ if (!isValidFilename(basename)) {
+ console.log(`Skipping invalid file: ${basename}`);
+ continue;
+ }
+
+ var name = basename.split('.')[0];
+ result.push({ name: name, data: require(files[i]) });
+ }
+
+ return result;
+}
+
+var domains = getDomainsList('./domains');
+var zoneFile = {}; // JSON object to hold all the DNS records
+
+for (var idx in domains) {
+ var domainData = domains[idx].data;
+ var proxyState = proxy.on; // enabled by default
+
+ // Initialize the domain entry in the zone file if not already there
+ if (!zoneFile[domainData.record.domain]) {
+ zoneFile[domainData.record.domain] = [];
+ }
+
+ // Check if proxy should be turned off
+ if (domainData.record.proxied === false) {
+ proxyState = proxy.off;
+ }
+
+ // Handle CNAME record
+ if (domainData.record.CNAME) {
+ zoneFile[domainData.record.domain].push({
+ type: "CNAME",
+ subdomain: domainData.subdomain,
+ value: domainData.record.CNAME + ".",
+ proxy: proxyState
+ });
+ }
+
+ // Handle A records
+ if (domainData.record.A) {
+ for (var a in domainData.record.A) {
+ zoneFile[domainData.record.domain].push({
+ type: "A",
+ subdomain: domainData.subdomain,
+ value: domainData.record.A[a],
+ proxy: proxyState
+ });
+ }
+ }
+
+ // Handle AAAA records
+ if (domainData.record.AAAA) {
+ for (var aaaa in domainData.record.AAAA) {
+ zoneFile[domainData.record.domain].push({
+ type: "AAAA",
+ subdomain: domainData.subdomain,
+ value: domainData.record.AAAA[aaaa],
+ proxy: proxyState
+ });
+ }
+ }
+
+ // Handle MX records
+ if (domainData.record.MX) {
+ for (var mx in domainData.record.MX) {
+ zoneFile[domainData.record.domain].push({
+ type: "MX",
+ subdomain: domainData.subdomain,
+ value: domainData.record.MX[mx] + ".",
+ priority: 10
+ });
+ }
+ }
+
+ // Handle URL records (redirect)
+ if (domainData.record.URL) {
+ zoneFile[domainData.record.domain].push({
+ type: "URL",
+ subdomain: domainData.subdomain,
+ value: domainData.record.URL
+ });
+ }
+
+ // Handle TXT records
+ if (domainData.record.TXT) {
+ if (Array.isArray(domainData.record.TXT)) {
+ for (var txt in domainData.record.TXT) {
+ zoneFile[domainData.record.domain].push({
+ type: "TXT",
+ subdomain: domainData.subdomain,
+ value: domainData.record.TXT[txt]
+ });
+ }
+ } else {
+ zoneFile[domainData.record.domain].push({
+ type: "TXT",
+ subdomain: domainData.subdomain,
+ value: domainData.record.TXT
+ });
+ }
+ }
+}
+
+// Write the JSON zone file to disk
+fs.writeFileSync('zoneFile.json', JSON.stringify(zoneFile, null, 2), 'utf-8');
+
+console.log("Zone file has been written to zoneFile.json");
From f9ad11586dc17bab50fb65c5dea859bdc3eb7939 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 18:05:51 +0800
Subject: [PATCH 072/416] Update dnsconfig.js
---
dnsconfig.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index 00d2d5c8e..6f8a39723 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -117,7 +117,7 @@ for (var idx in domains) {
// Handle URL records (redirect)
if (domainData.record.URL) {
commit[domainData.record.domain].push(
- CNAME(domainData.subdomain, "redirect.is-a.dev.", proxyState)
+ CNAME(domainData.subdomain, "redirect.is-a.dev.", proxy.on)
);
}
}
From 1b99643493ce80026685661b3ea178dc25b3f1a2 Mon Sep 17 00:00:00 2001
From: andrewstech
Date: Wed, 16 Oct 2024 11:11:45 +0100
Subject: [PATCH 073/416] Update dnsconfig.js
---
dnsconfig.js | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index 6f8a39723..9fbbe8d8e 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -66,9 +66,14 @@ for (var idx in domains) {
// Handle CNAME record
if (domainData.record.CNAME) {
- commit[domainData.domain].push(
- CNAME(domainData.subdomain, domainData.record.CNAME + ".", proxyState)
- );
+ if (domainData.subdomain && domainData.record.CNAME) {
+ var cnameTarget = domainData.record.CNAME.endsWith(".") ? domainData.record.CNAME : domainData.record.CNAME + ".";
+ commit[domainData.record.domain].push(
+ CNAME(domainData.subdomain, cnameTarget, proxyState)
+ );
+ } else {
+ console.log("Invalid CNAME record for domain: " + domainData.record.domain);
+ }
}
// Handle MX records
@@ -117,7 +122,7 @@ for (var idx in domains) {
// Handle URL records (redirect)
if (domainData.record.URL) {
commit[domainData.record.domain].push(
- CNAME(domainData.subdomain, "redirect.is-a.dev.", proxy.on)
+ CNAME(domainData.subdomain, "redirect.is-a.dev.", proxyState)
);
}
}
From 8e0f09c9155d9e1efe2c3d378da93655968f0555 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 18:19:04 +0800
Subject: [PATCH 074/416] Update william.json
---
domains/william.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/william.json b/domains/william.json
index 2f3788f33..2562e8bf8 100644
--- a/domains/william.json
+++ b/domains/william.json
@@ -5,6 +5,6 @@
},
"record": {
- "CNAME": "hrsn.dev"
+ "CNAME": "william-is-a-dev.hrsn.net"
}
}
From c69a276aee965010352e05333c62e97523140ccb Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 18:40:19 +0800
Subject: [PATCH 075/416] Update w.json
---
domains/w.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/w.json b/domains/w.json
index 2f3788f33..32ec135f1 100644
--- a/domains/w.json
+++ b/domains/w.json
@@ -5,6 +5,6 @@
},
"record": {
- "CNAME": "hrsn.dev"
+ "CNAME": "custom-hostnames.hrsn.net"
}
}
From ca4703cfb14b261665d657380cfe48ca9fedd0ac Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 18:40:38 +0800
Subject: [PATCH 076/416] Update william.json
---
domains/william.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/william.json b/domains/william.json
index 2562e8bf8..32ec135f1 100644
--- a/domains/william.json
+++ b/domains/william.json
@@ -5,6 +5,6 @@
},
"record": {
- "CNAME": "william-is-a-dev.hrsn.net"
+ "CNAME": "custom-hostnames.hrsn.net"
}
}
From e1f64ef4e5d2e5a81d0ac250a3655971f7716fcf Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 18:50:15 +0800
Subject: [PATCH 077/416] Create _acme-challenge.w.json
---
domains/_acme-challenge.w.json | 10 ++++++++++
1 file changed, 10 insertions(+)
create mode 100644 domains/_acme-challenge.w.json
diff --git a/domains/_acme-challenge.w.json b/domains/_acme-challenge.w.json
new file mode 100644
index 000000000..d581a80dd
--- /dev/null
+++ b/domains/_acme-challenge.w.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "wdhdev",
+ "email": "william@m.is-a.dev"
+ },
+
+ "record": {
+ "CNAME": "w.is-a.dev.92918bc1f181966e.dcv.cloudflare.com"
+ }
+}
From 7e4beb2e0536cde15b5824ada1ac5d622b4bc707 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 18:51:03 +0800
Subject: [PATCH 078/416] Create _acme-challenge.william.json
---
domains/_acme-challenge.william.json | 10 ++++++++++
1 file changed, 10 insertions(+)
create mode 100644 domains/_acme-challenge.william.json
diff --git a/domains/_acme-challenge.william.json b/domains/_acme-challenge.william.json
new file mode 100644
index 000000000..735e61c7a
--- /dev/null
+++ b/domains/_acme-challenge.william.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "wdhdev",
+ "email": "william@m.is-a.dev"
+ },
+
+ "record": {
+ "CNAME": "william.is-a.dev.92918bc1f181966e.dcv.cloudflare.com"
+ }
+}
From 9a44ebfb71719cbb2e8e2288b9491d7d8bbf23b7 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 19:01:18 +0800
Subject: [PATCH 079/416] Update w.json
---
domains/w.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/w.json b/domains/w.json
index 32ec135f1..2f3788f33 100644
--- a/domains/w.json
+++ b/domains/w.json
@@ -5,6 +5,6 @@
},
"record": {
- "CNAME": "custom-hostnames.hrsn.net"
+ "CNAME": "hrsn.dev"
}
}
From 41c78593492a3ea71f5d0c9fada87acdbd086c69 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 19:01:32 +0800
Subject: [PATCH 080/416] Delete domains/_acme-challenge.william.json
---
domains/_acme-challenge.william.json | 10 ----------
1 file changed, 10 deletions(-)
delete mode 100644 domains/_acme-challenge.william.json
diff --git a/domains/_acme-challenge.william.json b/domains/_acme-challenge.william.json
deleted file mode 100644
index 735e61c7a..000000000
--- a/domains/_acme-challenge.william.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "wdhdev",
- "email": "william@m.is-a.dev"
- },
-
- "record": {
- "CNAME": "william.is-a.dev.92918bc1f181966e.dcv.cloudflare.com"
- }
-}
From a37c0734f94b59c5496eba85097e92c0a478fbc1 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 19:01:39 +0800
Subject: [PATCH 081/416] Delete domains/_acme-challenge.w.json
---
domains/_acme-challenge.w.json | 10 ----------
1 file changed, 10 deletions(-)
delete mode 100644 domains/_acme-challenge.w.json
diff --git a/domains/_acme-challenge.w.json b/domains/_acme-challenge.w.json
deleted file mode 100644
index d581a80dd..000000000
--- a/domains/_acme-challenge.w.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "wdhdev",
- "email": "william@m.is-a.dev"
- },
-
- "record": {
- "CNAME": "w.is-a.dev.92918bc1f181966e.dcv.cloudflare.com"
- }
-}
From 2e9a3d59128c20e40f714d7e2ae148578cfa2a60 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Wed, 16 Oct 2024 19:01:47 +0800
Subject: [PATCH 082/416] Update william.json
---
domains/william.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/william.json b/domains/william.json
index 32ec135f1..2f3788f33 100644
--- a/domains/william.json
+++ b/domains/william.json
@@ -5,6 +5,6 @@
},
"record": {
- "CNAME": "custom-hostnames.hrsn.net"
+ "CNAME": "hrsn.dev"
}
}
From ddfb29fefefaacf16ec0b56cb46ecb3017568b52 Mon Sep 17 00:00:00 2001
From: Caen Kole Jones <131218155+CaenJones@users.noreply.github.com>
Date: Wed, 16 Oct 2024 08:37:08 -0400
Subject: [PATCH 083/416] Create caenjones.json
---
domains/caenjones.json | 12 ++++++++++++
1 file changed, 12 insertions(+)
create mode 100644 domains/caenjones.json
diff --git a/domains/caenjones.json b/domains/caenjones.json
new file mode 100644
index 000000000..81af7cd09
--- /dev/null
+++ b/domains/caenjones.json
@@ -0,0 +1,12 @@
+{
+ "description": "My personal website and blog",
+ "repo": "https://github.com/CaenJones/caenjones.github.io",
+ "owner": {
+ "username": "CaenJones",
+ "email": "",
+ "twitter": ""
+ },
+ "record": {
+ "CNAME": "caenjones.github.io"
+ }
+}
From 3c354a33af78c8b5460da8e651d0e9f0f4c392e4 Mon Sep 17 00:00:00 2001
From: Caen Kole Jones <131218155+CaenJones@users.noreply.github.com>
Date: Wed, 16 Oct 2024 08:38:51 -0400
Subject: [PATCH 084/416] Update caenjones.json
---
domains/caenjones.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/caenjones.json b/domains/caenjones.json
index 81af7cd09..50d6b79a3 100644
--- a/domains/caenjones.json
+++ b/domains/caenjones.json
@@ -3,7 +3,7 @@
"repo": "https://github.com/CaenJones/caenjones.github.io",
"owner": {
"username": "CaenJones",
- "email": "",
+ "email": "cj@caenjones.com",
"twitter": ""
},
"record": {
From 1a9d298ad0295f3a8d4383ca027716f63628633b Mon Sep 17 00:00:00 2001
From: victorydawn <81880947+victorydawn@users.noreply.github.com>
Date: Wed, 16 Oct 2024 22:40:19 +0800
Subject: [PATCH 085/416] Register dgs.is-a.dev
---
domains/dgs.json | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 domains/dgs.json
diff --git a/domains/dgs.json b/domains/dgs.json
new file mode 100644
index 000000000..33e2d5040
--- /dev/null
+++ b/domains/dgs.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "victorydawn",
+ "email": "",
+ "discord": "857502876108193812",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.Mk7Ovfy1v5O45rik2XcBeQI94jklBWGmiCn27B2tMUKnwVKAQH5_fUE_DexQoYK6KgU9OgyBdzPtyTCGgYiFsAx-uRvdkt-EbMTF6rV1xNdEzmOKnCAUMdWAqb8pzGB32zQlJLNev7rhhqPgaLNd0GxuAMAsr9e1yuqjiabYtTHFiqRx_CITf1cr38q2Idgsb4QFkbaJCRuJ1WV5nuDGGftkI5FIrENB3BiauJ0kTA1cn_zxLS-kDCMwJ1vkmE2mW_2NBIEFfn-Eq9troZE2YICPBvKx9HcTnOQlP61mq3R8_ut7FoZeg8Ts44-1affR3OnbgAz_1Y_qT7ty9jnASg.Borc5KEWmWoWP6Af2GjWXw.OVNPGtv9qRGhSGqU39vXowD22fqLppnAHIlvDh24AAuHFYAmU0PpE3GuzbNo_RmuTlkx7TcEohJ3M_2sXtSshh6TkCYwZ2Edik5dh6ZFY50.6iMDFicGcVAP6sxWx_K1jQ"
+ },
+
+ "record": {
+ "CNAME": "mydgs.pages.dev"
+ }
+ }
+
\ No newline at end of file
From 642f6e69f04e98368b5179ff8ca2d237aca6abd6 Mon Sep 17 00:00:00 2001
From: NinjaXility <103378267+NinjaXility@users.noreply.github.com>
Date: Wed, 16 Oct 2024 20:58:06 +0300
Subject: [PATCH 086/416] Register h3lios.is-a.dev
---
domains/h3lios.json | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 domains/h3lios.json
diff --git a/domains/h3lios.json b/domains/h3lios.json
new file mode 100644
index 000000000..7fa4c440b
--- /dev/null
+++ b/domains/h3lios.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "NinjaXility",
+ "email": "",
+ "discord": "511106356267319296",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IBR3ZrvHG0dyQ1OU_ThEq2VbB_gvPhqPJkyPtwwbODCQENB-T2fstb7JrqYXG9lNaBWBrkeUzrheB5HY5tgEmPDAe6eDnN1D0dk0HKwxySEO7I1wbJsoJUnrWXigmuIYYkCPqHO9bBBD3seh4Y-REvCFI_xjNxBOIkqYiISDG4SJZW_AMoM-4ZwWJOS30ASQA3IM1DrvS3cNeamN0vmy2W16z7PUQxfn3UpwhdalfbzZKgiPowTVnbMT8OZ0IL45VZCmqeikraFf7fUv0PPCk54c07A8mIpYepzyy4hUftsF-ILHDLU_iOMZDHPrMDpPeyFXgYjA1iv1AfgFj6lshA.CFjZ-C3qr_js2SqYJQruNQ.j12mMFCkJhwZpCJXE_JDaY1XgeCUkSwhowfAvMEFrxvTdeqGbeEaHiXN4-oXfM0FuPLNgfsJDTwmva-ekWTAeOtX4a3IBlJ0uuj65_tdMOw.NDTU5ISRijrUIUoDvdYXJw"
+ },
+
+ "record": {
+ "CNAME": "https://ninjaxility.github.io/"
+ }
+ }
+
\ No newline at end of file
From ba29d68356df47ffc194d74df791326dbf140a0b Mon Sep 17 00:00:00 2001
From: Gideon Lingle
Date: Wed, 16 Oct 2024 15:31:23 -0500
Subject: [PATCH 087/416] Create _discord.lingle.json
Discord verification
---
domains/_discord.lingle.json | 9 +++++++++
1 file changed, 9 insertions(+)
create mode 100644 domains/_discord.lingle.json
diff --git a/domains/_discord.lingle.json b/domains/_discord.lingle.json
new file mode 100644
index 000000000..96f2c67a6
--- /dev/null
+++ b/domains/_discord.lingle.json
@@ -0,0 +1,9 @@
+{
+ {
+ "owner": "LingleDev",
+ "email": "gideon.lingle2023@gmail.com"
+ },
+ "record": {
+ "TXT": "dh=21d66ba4bca0c546fa80a877a6d3df57216bd5f5"
+ }
+}
From a4e68cdbd99d7444bee56ea80cd62f9613c5dd31 Mon Sep 17 00:00:00 2001
From: Gideon Lingle
Date: Wed, 16 Oct 2024 15:35:12 -0500
Subject: [PATCH 088/416] Update _discord.lingle.json
---
domains/_discord.lingle.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/_discord.lingle.json b/domains/_discord.lingle.json
index 96f2c67a6..788e3d093 100644
--- a/domains/_discord.lingle.json
+++ b/domains/_discord.lingle.json
@@ -1,6 +1,6 @@
{
{
- "owner": "LingleDev",
+ "owner": "lingledev",
"email": "gideon.lingle2023@gmail.com"
},
"record": {
From 3ef0a0cc5b90c9a4725228e2b9cd790537b7cb3e Mon Sep 17 00:00:00 2001
From: Newfie <157941859+Newfies@users.noreply.github.com>
Date: Wed, 16 Oct 2024 17:20:51 -0500
Subject: [PATCH 089/416] Create gs.json
---
domains/gs.json | 11 +++++++++++
1 file changed, 11 insertions(+)
create mode 100644 domains/gs.json
diff --git a/domains/gs.json b/domains/gs.json
new file mode 100644
index 000000000..96c986300
--- /dev/null
+++ b/domains/gs.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "Newfies",
+` "email": "",
+ "twitter": "YeahItsGav",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.fraa7gfMOqQqWmbk-4fE5_pNd2zEvQ1K5w53QIHDTtr1C_Wu2Pzw-GfOlhxAtr7Af5ZIj_p7F5OOp6PwDxlKBXGt13e5l3Z9CQlYRclhfnaeYQm_xetYFlf9ucsYXVTfjFAeXxybT-RxbBjRl3Z48tSQaAto3E3Y-SbqwHPhjqh7-4tCpRZu5yc38Bx0_RHt95Ib2Mcg4cWShE-2ggvygSsonBuYBRGFqMIhM60tMA-cbJdQpvfVdZTJv0vHOtUJltv3eVzPpi4q5S5lWz3EKizGXuwAq3HLFycrBVrt5pegWLi1gId-urV9HGV1L3myGfQQSGwDVCEew9YKQFj71A.bxACuA7jrws9Z7z0oTx4wQ.fzzUvSGM_6ODHxUwg6vQvfJeI2kmUx5DW_4tIGVjPOymDplL8iBjzb5HIHhLqo_PlkcmGxeNr5DH4glPZdn1Dq2ywNTV90hWqpjfoHSOsYk.O8IBPKTRGwaH43VBg1rK3A"
+ },
+ "record": {
+ "URL": "https://github.com/GsLibrary"
+ }
+}
From 6cdf50ef7af6228ea05504473f534ab56ff3ae3c Mon Sep 17 00:00:00 2001
From: Newfie <157941859+Newfies@users.noreply.github.com>
Date: Wed, 16 Oct 2024 17:25:52 -0500
Subject: [PATCH 090/416] Update gs.json
---
domains/gs.json | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/domains/gs.json b/domains/gs.json
index 96c986300..180ace0e7 100644
--- a/domains/gs.json
+++ b/domains/gs.json
@@ -4,8 +4,10 @@
` "email": "",
"twitter": "YeahItsGav",
"OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.fraa7gfMOqQqWmbk-4fE5_pNd2zEvQ1K5w53QIHDTtr1C_Wu2Pzw-GfOlhxAtr7Af5ZIj_p7F5OOp6PwDxlKBXGt13e5l3Z9CQlYRclhfnaeYQm_xetYFlf9ucsYXVTfjFAeXxybT-RxbBjRl3Z48tSQaAto3E3Y-SbqwHPhjqh7-4tCpRZu5yc38Bx0_RHt95Ib2Mcg4cWShE-2ggvygSsonBuYBRGFqMIhM60tMA-cbJdQpvfVdZTJv0vHOtUJltv3eVzPpi4q5S5lWz3EKizGXuwAq3HLFycrBVrt5pegWLi1gId-urV9HGV1L3myGfQQSGwDVCEew9YKQFj71A.bxACuA7jrws9Z7z0oTx4wQ.fzzUvSGM_6ODHxUwg6vQvfJeI2kmUx5DW_4tIGVjPOymDplL8iBjzb5HIHhLqo_PlkcmGxeNr5DH4glPZdn1Dq2ywNTV90hWqpjfoHSOsYk.O8IBPKTRGwaH43VBg1rK3A"
+ "notes": "I never look at my emails, but I check on twitter alot, so if you need to contact, lmk your from is-a.dev"
},
"record": {
- "URL": "https://github.com/GsLibrary"
+ "URL": "https://href.li/https://github.com/GsLibrary"
+ "notes": "gs.is-a.dev will take you to https://href.li/https://github.com/GsLibrary"
}
}
From b544397b678cd9346f2dc31e3befb174d1d0bcba Mon Sep 17 00:00:00 2001
From: DIBSTER <76603072+DEV-DIBSTER@users.noreply.github.com>
Date: Wed, 16 Oct 2024 20:21:06 -0400
Subject: [PATCH 091/416] chore: formatting and validation
---
domains/gs.json | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/domains/gs.json b/domains/gs.json
index 180ace0e7..0fbf2da2f 100644
--- a/domains/gs.json
+++ b/domains/gs.json
@@ -1,13 +1,12 @@
{
"owner": {
"username": "Newfies",
-` "email": "",
+ "email": "",
"twitter": "YeahItsGav",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.fraa7gfMOqQqWmbk-4fE5_pNd2zEvQ1K5w53QIHDTtr1C_Wu2Pzw-GfOlhxAtr7Af5ZIj_p7F5OOp6PwDxlKBXGt13e5l3Z9CQlYRclhfnaeYQm_xetYFlf9ucsYXVTfjFAeXxybT-RxbBjRl3Z48tSQaAto3E3Y-SbqwHPhjqh7-4tCpRZu5yc38Bx0_RHt95Ib2Mcg4cWShE-2ggvygSsonBuYBRGFqMIhM60tMA-cbJdQpvfVdZTJv0vHOtUJltv3eVzPpi4q5S5lWz3EKizGXuwAq3HLFycrBVrt5pegWLi1gId-urV9HGV1L3myGfQQSGwDVCEew9YKQFj71A.bxACuA7jrws9Z7z0oTx4wQ.fzzUvSGM_6ODHxUwg6vQvfJeI2kmUx5DW_4tIGVjPOymDplL8iBjzb5HIHhLqo_PlkcmGxeNr5DH4glPZdn1Dq2ywNTV90hWqpjfoHSOsYk.O8IBPKTRGwaH43VBg1rK3A"
- "notes": "I never look at my emails, but I check on twitter alot, so if you need to contact, lmk your from is-a.dev"
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.fraa7gfMOqQqWmbk-4fE5_pNd2zEvQ1K5w53QIHDTtr1C_Wu2Pzw-GfOlhxAtr7Af5ZIj_p7F5OOp6PwDxlKBXGt13e5l3Z9CQlYRclhfnaeYQm_xetYFlf9ucsYXVTfjFAeXxybT-RxbBjRl3Z48tSQaAto3E3Y-SbqwHPhjqh7-4tCpRZu5yc38Bx0_RHt95Ib2Mcg4cWShE-2ggvygSsonBuYBRGFqMIhM60tMA-cbJdQpvfVdZTJv0vHOtUJltv3eVzPpi4q5S5lWz3EKizGXuwAq3HLFycrBVrt5pegWLi1gId-urV9HGV1L3myGfQQSGwDVCEew9YKQFj71A.bxACuA7jrws9Z7z0oTx4wQ.fzzUvSGM_6ODHxUwg6vQvfJeI2kmUx5DW_4tIGVjPOymDplL8iBjzb5HIHhLqo_PlkcmGxeNr5DH4glPZdn1Dq2ywNTV90hWqpjfoHSOsYk.O8IBPKTRGwaH43VBg1rK3A",
+ "notes": "I never look at my emails, but I check on twitter alot, so if you need to contact, lmk your from is-a.dev"
},
"record": {
"URL": "https://href.li/https://github.com/GsLibrary"
- "notes": "gs.is-a.dev will take you to https://href.li/https://github.com/GsLibrary"
}
}
From 6d5268d4912b25cc8b5d5dfc9df11cfe74ea667a Mon Sep 17 00:00:00 2001
From: DIBSTER <76603072+DEV-DIBSTER@users.noreply.github.com>
Date: Wed, 16 Oct 2024 20:38:32 -0400
Subject: [PATCH 092/416] chore: fixing invalid json
---
domains/_discord.lingle.json | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/domains/_discord.lingle.json b/domains/_discord.lingle.json
index 788e3d093..18a67e8d7 100644
--- a/domains/_discord.lingle.json
+++ b/domains/_discord.lingle.json
@@ -1,9 +1,10 @@
{
- {
- "owner": "lingledev",
- "email": "gideon.lingle2023@gmail.com"
- },
- "record": {
- "TXT": "dh=21d66ba4bca0c546fa80a877a6d3df57216bd5f5"
- }
+ "owner": {
+ "email": "gideon.lingle2023@gmail.com"
+ },
+ "record": {
+ "TXT": [
+ "h=21d66ba4bca0c546fa80a877a6d3df57216bd5f5"
+ ]
+ }
}
From af54fcc08dd3689fda0340f319a0bfb0241c93ef Mon Sep 17 00:00:00 2001
From: DIBSTER <76603072+DEV-DIBSTER@users.noreply.github.com>
Date: Wed, 16 Oct 2024 20:38:46 -0400
Subject: [PATCH 093/416] chore: text fix
---
domains/_discord.lingle.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/_discord.lingle.json b/domains/_discord.lingle.json
index 18a67e8d7..a318a4016 100644
--- a/domains/_discord.lingle.json
+++ b/domains/_discord.lingle.json
@@ -4,7 +4,7 @@
},
"record": {
"TXT": [
- "h=21d66ba4bca0c546fa80a877a6d3df57216bd5f5"
+ "dh=21d66ba4bca0c546fa80a877a6d3df57216bd5f5"
]
}
}
From 7bf4212952eea9d05c73661df2e25dbfc882bc02 Mon Sep 17 00:00:00 2001
From: DIBSTER <76603072+DEV-DIBSTER@users.noreply.github.com>
Date: Wed, 16 Oct 2024 20:40:02 -0400
Subject: [PATCH 094/416] chore: fixing json and formatting
---
domains/_discord.lingle.json | 1 +
1 file changed, 1 insertion(+)
diff --git a/domains/_discord.lingle.json b/domains/_discord.lingle.json
index a318a4016..29bb34749 100644
--- a/domains/_discord.lingle.json
+++ b/domains/_discord.lingle.json
@@ -1,5 +1,6 @@
{
"owner": {
+ "username": "lingledev",
"email": "gideon.lingle2023@gmail.com"
},
"record": {
From e5a9e316e36e916b07af2b4245d72a0822f8029e Mon Sep 17 00:00:00 2001
From: DIBSTER <76603072+DEV-DIBSTER@users.noreply.github.com>
Date: Wed, 16 Oct 2024 20:42:51 -0400
Subject: [PATCH 095/416] chore: formatting
---
domains/ujjwal.json | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/domains/ujjwal.json b/domains/ujjwal.json
index f041d840f..783f87b0d 100644
--- a/domains/ujjwal.json
+++ b/domains/ujjwal.json
@@ -1,9 +1,9 @@
{
- "owner": {
- "username": "ujjwalshriwal",
- "email": "ujjwalshrivastav16@gmail.com"
- },
- "record": {
- "CNAME": "ujjwalshriwal.github.io"
- }
+ "owner": {
+ "username": "ujjwalshriwal",
+ "email": "ujjwalshrivastav16@gmail.com"
+ },
+ "record": {
+ "CNAME": "ujjwalshriwal.github.io"
+ }
}
From 362296085a3ab4dd0b16999db84c51e25588a8f2 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 12:47:30 +1100
Subject: [PATCH 096/416] more record types + fixes?
---
.github/workflows/publish.yml | 4 +-
dnsconfig.js | 72 +++++++++++++----------------------
2 files changed, 29 insertions(+), 47 deletions(-)
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index 8577075f3..335a58668 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -26,7 +26,7 @@ jobs:
- name: Publish
uses: koenrh/dnscontrol-action@v3
env:
- CLOUDFLARE_API_TOKEN: ${{ secrets.CF_API_TOKEN }}
+ CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
with:
args: push
- config_file: "dnsconfig.js"
\ No newline at end of file
+ config_file: "dnsconfig.js"
diff --git a/dnsconfig.js b/dnsconfig.js
index 9fbbe8d8e..4b0a1942f 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -4,12 +4,6 @@ var providerCf = DnsProvider(NewDnsProvider("cloudflare"));
var proxy = {
on: { "cloudflare_proxy": "on" },
off: { "cloudflare_proxy": "off" }
-};
-
-// Function to validate filenames according to the given rules
-function isValidFilename(filename) {
- var regex = /\.json$/;
- return regex.test(filename);
}
function getDomainsList(filesPath) {
@@ -18,13 +12,8 @@ function getDomainsList(filesPath) {
for (var i = 0; i < files.length; i++) {
var basename = files[i].split('/').reverse()[0];
-
- if (!isValidFilename(basename)) {
- console.log("Skipping invalid file:" + basename);
- continue;
- }
-
var name = basename.split('.')[0];
+
result.push({ name: name, data: require(files[i]) });
}
@@ -35,21 +24,22 @@ var domains = getDomainsList('./domains');
var commit = {};
for (var idx in domains) {
+ var domainName = domains[idx].name;
var domainData = domains[idx].data;
- var proxyState = proxy.off; // disabled by default
+ var proxyState = proxy.on; // enabled by default
- if (!commit[domainData.record.domain]) {
- commit[domainData.record.domain] = [];
+ if (!commit[domainName]) {
+ commit[domainName] = [];
}
- if (domainData.record.proxied === false) {
+ if (domainData.proxied === false) {
proxyState = proxy.off;
}
// Handle A records
if (domainData.record.A) {
for (var a in domainData.record.A) {
- commit[domainData.record.domain].push(
+ commit[domainName].push(
A(domainData.subdomain, IP(domainData.record.A[a]), proxyState)
);
}
@@ -58,28 +48,33 @@ for (var idx in domains) {
// Handle AAAA records
if (domainData.record.AAAA) {
for (var aaaa in domainData.record.AAAA) {
- commit[domainData.record.domain].push(
+ commit[domainName].push(
AAAA(domainData.subdomain, domainData.record.AAAA[aaaa], proxyState)
);
}
}
- // Handle CNAME record
- if (domainData.record.CNAME) {
- if (domainData.subdomain && domainData.record.CNAME) {
- var cnameTarget = domainData.record.CNAME.endsWith(".") ? domainData.record.CNAME : domainData.record.CNAME + ".";
- commit[domainData.record.domain].push(
- CNAME(domainData.subdomain, cnameTarget, proxyState)
+ // Handle CAA records
+ if (domainData.record.CAA) {
+ for (var caa in domainData.record.CAA) {
+ var caaRecord = domainData.record.CAA[caa];
+ commit[domainName].push(
+ CAA(domainData.subdomain, caaRecord.flags, caaRecord.tag, caaRecord.value)
);
- } else {
- console.log("Invalid CNAME record for domain: " + domainData.record.domain);
}
}
+ // Handle CNAME records
+ if (domainData.record.CNAME) {
+ commit[domainName].push(
+ CNAME(domainData.subdomain, domainData.record.CNAME + ".", proxyState)
+ );
+ }
+
// Handle MX records
if (domainData.record.MX) {
for (var mx in domainData.record.MX) {
- commit[domainData.record.domain].push(
+ commit[domainName].push(
MX(domainData.subdomain, 10, domainData.record.MX[mx] + ".")
);
}
@@ -88,7 +83,7 @@ for (var idx in domains) {
// Handle NS records
if (domainData.record.NS) {
for (var ns in domainData.record.NS) {
- commit[domainData.domain].push(
+ commit[domainName].push(
NS(domainData.subdomain, domainData.record.NS[ns] + ".")
);
}
@@ -98,7 +93,7 @@ for (var idx in domains) {
if (domainData.record.SRV) {
for (var srv in domainData.record.SRV) {
var srvRecord = domainData.record.SRV[srv];
- commit[domainData.domain].push(
+ commit[domainName].push(
SRV(domainData.subdomain, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + ".")
);
}
@@ -106,25 +101,12 @@ for (var idx in domains) {
// Handle TXT records
if (domainData.record.TXT) {
- if (Array.isArray(domainData.record.TXT)) {
- for (var txt in domainData.record.TXT) {
- commit[domainData.record.domain].push(
- TXT(domainData.subdomain, domainData.record.TXT[txt])
- );
- }
- } else {
- commit[domainData.record.domain].push(
- TXT(domainData.subdomain, domainData.record.TXT)
+ for (var txt in domainData.record.TXT) {
+ commit[domainName].push(
+ TXT(domainData.subdomain, domainData.record.TXT[txt])
);
}
}
-
- // Handle URL records (redirect)
- if (domainData.record.URL) {
- commit[domainData.record.domain].push(
- CNAME(domainData.subdomain, "redirect.is-a.dev.", proxyState)
- );
- }
}
// Commit all DNS records
From fcfc8ec9202e9423ce42817bfa9b1c7c83a6ae98 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 12:51:12 +1100
Subject: [PATCH 097/416] fixes?
---
dnsconfig.js | 19 ++++++++++---------
1 file changed, 10 insertions(+), 9 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index 4b0a1942f..509733463 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -24,7 +24,8 @@ var domains = getDomainsList('./domains');
var commit = {};
for (var idx in domains) {
- var domainName = domains[idx].name;
+ var domainName = "is-a.dev";
+ var subdomainName = domains[idx].name;
var domainData = domains[idx].data;
var proxyState = proxy.on; // enabled by default
@@ -40,7 +41,7 @@ for (var idx in domains) {
if (domainData.record.A) {
for (var a in domainData.record.A) {
commit[domainName].push(
- A(domainData.subdomain, IP(domainData.record.A[a]), proxyState)
+ A(subdomainName, IP(domainData.record.A[a]), proxyState)
);
}
}
@@ -49,7 +50,7 @@ for (var idx in domains) {
if (domainData.record.AAAA) {
for (var aaaa in domainData.record.AAAA) {
commit[domainName].push(
- AAAA(domainData.subdomain, domainData.record.AAAA[aaaa], proxyState)
+ AAAA(subdomainName, domainData.record.AAAA[aaaa], proxyState)
);
}
}
@@ -59,7 +60,7 @@ for (var idx in domains) {
for (var caa in domainData.record.CAA) {
var caaRecord = domainData.record.CAA[caa];
commit[domainName].push(
- CAA(domainData.subdomain, caaRecord.flags, caaRecord.tag, caaRecord.value)
+ CAA(subdomainName, caaRecord.flags, caaRecord.tag, caaRecord.value)
);
}
}
@@ -67,7 +68,7 @@ for (var idx in domains) {
// Handle CNAME records
if (domainData.record.CNAME) {
commit[domainName].push(
- CNAME(domainData.subdomain, domainData.record.CNAME + ".", proxyState)
+ CNAME(subdomainName, domainData.record.CNAME + ".", proxyState)
);
}
@@ -75,7 +76,7 @@ for (var idx in domains) {
if (domainData.record.MX) {
for (var mx in domainData.record.MX) {
commit[domainName].push(
- MX(domainData.subdomain, 10, domainData.record.MX[mx] + ".")
+ MX(subdomainName, 10, domainData.record.MX[mx] + ".")
);
}
}
@@ -84,7 +85,7 @@ for (var idx in domains) {
if (domainData.record.NS) {
for (var ns in domainData.record.NS) {
commit[domainName].push(
- NS(domainData.subdomain, domainData.record.NS[ns] + ".")
+ NS(subdomainName, domainData.record.NS[ns] + ".")
);
}
}
@@ -94,7 +95,7 @@ for (var idx in domains) {
for (var srv in domainData.record.SRV) {
var srvRecord = domainData.record.SRV[srv];
commit[domainName].push(
- SRV(domainData.subdomain, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + ".")
+ SRV(subdomainName, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + ".")
);
}
}
@@ -103,7 +104,7 @@ for (var idx in domains) {
if (domainData.record.TXT) {
for (var txt in domainData.record.TXT) {
commit[domainName].push(
- TXT(domainData.subdomain, domainData.record.TXT[txt])
+ TXT(subdomainName, domainData.record.TXT[txt])
);
}
}
From 3f78a9d4d3a88519bdbe76ccf12db3d70e091ce7 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 09:52:42 +0800
Subject: [PATCH 098/416] Delete domains/test.json
---
domains/test.json | 11 -----------
1 file changed, 11 deletions(-)
delete mode 100644 domains/test.json
diff --git a/domains/test.json b/domains/test.json
deleted file mode 100644
index b62378c74..000000000
--- a/domains/test.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "TerraPlayz",
- "email": "omsenjalia@gmail.com",
- "discord": "248470317540966443"
- },
-
- "record": {
- "A": ["11.11.11.11"]
- }
-}
From fe56885bcde28621da80e655a65d54f609a98680 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 12:53:24 +1100
Subject: [PATCH 099/416] fix?
---
dnsconfig.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index 509733463..3903e79b0 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -24,8 +24,8 @@ var domains = getDomainsList('./domains');
var commit = {};
for (var idx in domains) {
- var domainName = "is-a.dev";
var subdomainName = domains[idx].name;
+ var domainName = subdomainName + ".is-a.dev";
var domainData = domains[idx].data;
var proxyState = proxy.on; // enabled by default
From 899f730caa04a1fdeafcda28d6b6db8f8ecfdb90 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 12:57:05 +1100
Subject: [PATCH 100/416] fix txt error
---
dnsconfig.js | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index 3903e79b0..056fd3952 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -24,8 +24,8 @@ var domains = getDomainsList('./domains');
var commit = {};
for (var idx in domains) {
+ var domainName = "is-a.dev";
var subdomainName = domains[idx].name;
- var domainName = subdomainName + ".is-a.dev";
var domainData = domains[idx].data;
var proxyState = proxy.on; // enabled by default
@@ -102,9 +102,15 @@ for (var idx in domains) {
// Handle TXT records
if (domainData.record.TXT) {
- for (var txt in domainData.record.TXT) {
+ if (Array.isArray(domainData.record.TXT)) {
+ for (var txt in domainData.record.TXT) {
+ commit[domainName].push(
+ TXT(subdomainName, domainData.record.TXT[txt])
+ );
+ }
+ } else {
commit[domainName].push(
- TXT(subdomainName, domainData.record.TXT[txt])
+ TXT(subdomainName, domainData.record.TXT)
);
}
}
From a4e107681c5a2536439ce6d373bcd2c14193575a Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:01:38 +1100
Subject: [PATCH 101/416] fix domains
---
domains/asnct.json | 2 +-
domains/ehab.json | 2 +-
domains/renzyx.json | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/domains/asnct.json b/domains/asnct.json
index c5d53fced..b95023607 100644
--- a/domains/asnct.json
+++ b/domains/asnct.json
@@ -7,6 +7,6 @@
"record": {
"URL": "https://asnct_bio.t.me",
"TXT": ["mailru-domain: wDSaV835X4LZyKsP", "v=spf1 redirect=_spf.mail.ru"],
- "MX": "emx.mail.ru"
+ "MX": ["emx.mail.ru"]
}
}
diff --git a/domains/ehab.json b/domains/ehab.json
index 64c1a4764..50e6321b3 100644
--- a/domains/ehab.json
+++ b/domains/ehab.json
@@ -6,6 +6,6 @@
"record": {
"A": ["128.204.223.115"],
"TXT": "v=spf1 mx a include:mail9.serv00.com -all",
- "MX": "mail9.serv00.com"
+ "MX": ["mail9.serv00.com"]
}
}
diff --git a/domains/renzyx.json b/domains/renzyx.json
index e5fda8c71..a3e01087f 100644
--- a/domains/renzyx.json
+++ b/domains/renzyx.json
@@ -7,7 +7,7 @@
},
"record": {
"A": ["75.2.60.5"],
- "MX": "feedback-smtp.us-east-1.amazonses.com",
+ "MX": ["feedback-smtp.us-east-1.amazonses.com"],
"TXT": [
"v=spf1 include:amazonses.com ~all",
"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDl3uimKrfDsLkGKkuwIhxEi23dmRf1GTyrcfpzF/iSfGrMp5xbDo3+lqN4R3Dx48orvlGbtNxQevx4NPIHU+BAIfRyRkMDzP9X+elTMFkHqHtly5OswQJd0Jciax8WqPoTfLo7+cjDyY0lejoqadUK0gxRe5b5HOLGNUBOCgmCNQIDAQAB"
From 9398d5a2cc81148957738d3e064ae9f93840cea6 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:05:09 +1100
Subject: [PATCH 102/416] url records
---
dnsconfig.js | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/dnsconfig.js b/dnsconfig.js
index 056fd3952..64e595db9 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -72,6 +72,12 @@ for (var idx in domains) {
);
}
+ if (domainData.record.URL) {
+ commit[domainName].push(
+ CNAME(subdomainName, "redirect.is-a.dev.", proxyState)
+ );
+ }
+
// Handle MX records
if (domainData.record.MX) {
for (var mx in domainData.record.MX) {
From ae905e36af2fdfb117c6fecd17c81fc66875a222 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:08:12 +1100
Subject: [PATCH 103/416] more fixes
---
dnsconfig.js | 3 +--
domains/onvy.json | 2 +-
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index 64e595db9..ea5efc330 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -11,8 +11,7 @@ function getDomainsList(filesPath) {
var files = glob.apply(null, [filesPath, true, '.json']);
for (var i = 0; i < files.length; i++) {
- var basename = files[i].split('/').reverse()[0];
- var name = basename.split('.')[0];
+ var name = files[i].split('.').slice(0, -1).join('.');
result.push({ name: name, data: require(files[i]) });
}
diff --git a/domains/onvy.json b/domains/onvy.json
index 42e0a84bf..9c63ed74c 100644
--- a/domains/onvy.json
+++ b/domains/onvy.json
@@ -6,7 +6,7 @@
"record": {
"MX": [
"mx1.improvmx.com",
- "mx1.improvmx.com"
+ "mx2.improvmx.com"
],
"TXT": "v=spf1 include:spf.improvmx.com ~all"
}
From 6cf5aefc9346d0951699807f71629a15cd5feb65 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:10:53 +1100
Subject: [PATCH 104/416] fix url records
---
dnsconfig.js | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index ea5efc330..58bf90b84 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -71,12 +71,6 @@ for (var idx in domains) {
);
}
- if (domainData.record.URL) {
- commit[domainName].push(
- CNAME(subdomainName, "redirect.is-a.dev.", proxyState)
- );
- }
-
// Handle MX records
if (domainData.record.MX) {
for (var mx in domainData.record.MX) {
@@ -119,6 +113,14 @@ for (var idx in domains) {
);
}
}
+
+ // Handle URL records
+ // Note: URL records are not actual DNS records, we have a server configured to support them instead.
+ if (domainData.record.URL) {
+ commit[domainName].push(
+ A(subdomainName, "192.0.2.1", proxy.on)
+ );
+ }
}
// Commit all DNS records
From 35ec12d07e1e524496a9ce3d880894acbe1b87d4 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:14:43 +1100
Subject: [PATCH 105/416] remove acme challenge records + fix other domains
---
domains/0v90.json | 2 +-
domains/_acme-challenge.ai.esb.json | 13 -------------
domains/_acme-challenge.api.juststudio.json | 11 -----------
domains/_acme-challenge.cdn.esb.json | 13 -------------
domains/_acme-challenge.juqwtf.json | 12 ------------
domains/_acme-challenge.katz.json | 11 -----------
domains/_acme-challenge.oioioi.json | 9 ---------
domains/_acme-challenge.parrot.json | 13 -------------
domains/_acme-challenge.raafey.json | 9 ---------
domains/_acme-challenge.us.mcstatus.json | 13 -------------
domains/ashishagr.json | 2 +-
domains/kuldeep.json | 2 +-
domains/vbkg.json | 2 +-
13 files changed, 4 insertions(+), 108 deletions(-)
delete mode 100644 domains/_acme-challenge.ai.esb.json
delete mode 100644 domains/_acme-challenge.api.juststudio.json
delete mode 100644 domains/_acme-challenge.cdn.esb.json
delete mode 100644 domains/_acme-challenge.juqwtf.json
delete mode 100644 domains/_acme-challenge.katz.json
delete mode 100644 domains/_acme-challenge.oioioi.json
delete mode 100644 domains/_acme-challenge.parrot.json
delete mode 100644 domains/_acme-challenge.raafey.json
delete mode 100644 domains/_acme-challenge.us.mcstatus.json
diff --git a/domains/0v90.json b/domains/0v90.json
index 98925033e..de32e280b 100644
--- a/domains/0v90.json
+++ b/domains/0v90.json
@@ -13,7 +13,7 @@
"185.199.108.153",
"185.199.109.153",
"185.199.110.153",
- "185.199.110.153"
+ "185.199.111.153"
]
}
}
diff --git a/domains/_acme-challenge.ai.esb.json b/domains/_acme-challenge.ai.esb.json
deleted file mode 100644
index bef1435a1..000000000
--- a/domains/_acme-challenge.ai.esb.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "",
- "discord": "1167825360151380032",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.guUEvTOIBPJv8oJfvZdvgudRQpsBlIxnKLhef83On6LPv7t8yR4GXWxwwRWUmwlpsPJBLJBSzV1AZS26i7dgezj5k4-gfQdhr1ZKUz_w5T7JgQ9MIbWeOo5ocEMcMjmkC6WLesVMwH5cfCoOJeW097Gr6of_60Jt1JcpyNRX3s5zySh9cVb1p3_II0jrPbQ1Nj8ZqwNJhiRNT8xCdHt1cfsYi76RgFRx2iTsYbEmL0v933CCeqD75aYnlVmCqyKD-dv41QBhuq9dfUwKnJusArtxtbNC9h4EwX2Y9MnoIg7nKKLrOSllSS8tRIiVw2oHv_jHm3XRJascmoni2EzdmA.5waf0tgo5uTY4rjfw8gJUA.O0wUU5TTcpQ_8wkwEeKUsSX6wKEtwVZ-G0k1R0zjhAU9hXsii5BiittxlrdR2JKP_917n2rUCN7NKnYAFIg5acwvJS8NmZlvNcTIRxb_yFmC7fRfQ6RqXGkYjc0EEDWS.bxYmFS-IlttaZTgqdZdnHQ"
- },
-
- "record": {
- "CNAME": "af252befb545b3b27e96b5b9._acme.deno.dev"
- }
- }
-
diff --git a/domains/_acme-challenge.api.juststudio.json b/domains/_acme-challenge.api.juststudio.json
deleted file mode 100644
index 1d3e92ea1..000000000
--- a/domains/_acme-challenge.api.juststudio.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "description": "JustStudio.API",
- "owner": {
- "username": "JustDeveloper1",
- "email": "support@juststudio.is-a.dev",
- "discord": "1117482901353812088"
- },
- "record": {
- "CNAME": "ec675496b91489e24d221965._acme.deno.dev"
- }
-}
diff --git a/domains/_acme-challenge.cdn.esb.json b/domains/_acme-challenge.cdn.esb.json
deleted file mode 100644
index 00111381b..000000000
--- a/domains/_acme-challenge.cdn.esb.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "",
- "discord": "1167825360151380032",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.guUEvTOIBPJv8oJfvZdvgudRQpsBlIxnKLhef83On6LPv7t8yR4GXWxwwRWUmwlpsPJBLJBSzV1AZS26i7dgezj5k4-gfQdhr1ZKUz_w5T7JgQ9MIbWeOo5ocEMcMjmkC6WLesVMwH5cfCoOJeW097Gr6of_60Jt1JcpyNRX3s5zySh9cVb1p3_II0jrPbQ1Nj8ZqwNJhiRNT8xCdHt1cfsYi76RgFRx2iTsYbEmL0v933CCeqD75aYnlVmCqyKD-dv41QBhuq9dfUwKnJusArtxtbNC9h4EwX2Y9MnoIg7nKKLrOSllSS8tRIiVw2oHv_jHm3XRJascmoni2EzdmA.5waf0tgo5uTY4rjfw8gJUA.O0wUU5TTcpQ_8wkwEeKUsSX6wKEtwVZ-G0k1R0zjhAU9hXsii5BiittxlrdR2JKP_917n2rUCN7NKnYAFIg5acwvJS8NmZlvNcTIRxb_yFmC7fRfQ6RqXGkYjc0EEDWS.bxYmFS-IlttaZTgqdZdnHQ"
- },
-
- "record": {
- "CNAME": "fe4cfa72d5862865fb2759c8._acme.deno.dev"
- }
- }
-
diff --git a/domains/_acme-challenge.juqwtf.json b/domains/_acme-challenge.juqwtf.json
deleted file mode 100644
index e8fc66acc..000000000
--- a/domains/_acme-challenge.juqwtf.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "denboy0123",
- "email": "pochtaproverka01@gmail.com"
- },
- "record": {
- "TXT": [
- "FZo9g0GqRYR-fhmWc1QzbycfV5UZIE4bwh42BI81NDQ",
- "V1N8tuJvEcUtltxMXLRvP0U1_jaAgsSJJ89MgyxpWUk"
- ]
- }
-}
diff --git a/domains/_acme-challenge.katz.json b/domains/_acme-challenge.katz.json
deleted file mode 100644
index 434720b24..000000000
--- a/domains/_acme-challenge.katz.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Bananalolok",
- "email": "",
- "discord": "bananalol7678"
- },
-
- "record": {
- "CNAME": "77c60266e3d311053d5b2fe1._acme.deno.dev"
- }
-}
diff --git a/domains/_acme-challenge.oioioi.json b/domains/_acme-challenge.oioioi.json
deleted file mode 100644
index 1bb254789..000000000
--- a/domains/_acme-challenge.oioioi.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "VaibhavSys",
- "email": "vaibhavsys@protonmail.com"
- },
- "record": {
- "CNAME": "b00be066-ce45-455f-bb4a-de9f6dc14e0c.acmedns.infinityfree.net"
- }
-}
diff --git a/domains/_acme-challenge.parrot.json b/domains/_acme-challenge.parrot.json
deleted file mode 100644
index 4e34f2525..000000000
--- a/domains/_acme-challenge.parrot.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "",
- "discord": "1167825360151380032",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.guUEvTOIBPJv8oJfvZdvgudRQpsBlIxnKLhef83On6LPv7t8yR4GXWxwwRWUmwlpsPJBLJBSzV1AZS26i7dgezj5k4-gfQdhr1ZKUz_w5T7JgQ9MIbWeOo5ocEMcMjmkC6WLesVMwH5cfCoOJeW097Gr6of_60Jt1JcpyNRX3s5zySh9cVb1p3_II0jrPbQ1Nj8ZqwNJhiRNT8xCdHt1cfsYi76RgFRx2iTsYbEmL0v933CCeqD75aYnlVmCqyKD-dv41QBhuq9dfUwKnJusArtxtbNC9h4EwX2Y9MnoIg7nKKLrOSllSS8tRIiVw2oHv_jHm3XRJascmoni2EzdmA.5waf0tgo5uTY4rjfw8gJUA.O0wUU5TTcpQ_8wkwEeKUsSX6wKEtwVZ-G0k1R0zjhAU9hXsii5BiittxlrdR2JKP_917n2rUCN7NKnYAFIg5acwvJS8NmZlvNcTIRxb_yFmC7fRfQ6RqXGkYjc0EEDWS.bxYmFS-IlttaZTgqdZdnHQ"
- },
-
- "record": {
- "CNAME": "51de1eeaf31ce67a1c3f69aa._acme.deno.dev"
- }
- }
-
diff --git a/domains/_acme-challenge.raafey.json b/domains/_acme-challenge.raafey.json
deleted file mode 100644
index 59d86c9fe..000000000
--- a/domains/_acme-challenge.raafey.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "RaafeyRaza",
- "email": "raafeyraza1@gmail.com"
- },
- "record": {
- "CNAME": "dc6fbbae-3aba-4a5d-9741-4b7a386b9151.acmedns.infinityfree.net"
- }
-}
diff --git a/domains/_acme-challenge.us.mcstatus.json b/domains/_acme-challenge.us.mcstatus.json
deleted file mode 100644
index 55ec2e523..000000000
--- a/domains/_acme-challenge.us.mcstatus.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "",
- "discord": "1167825360151380032",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.guUEvTOIBPJv8oJfvZdvgudRQpsBlIxnKLhef83On6LPv7t8yR4GXWxwwRWUmwlpsPJBLJBSzV1AZS26i7dgezj5k4-gfQdhr1ZKUz_w5T7JgQ9MIbWeOo5ocEMcMjmkC6WLesVMwH5cfCoOJeW097Gr6of_60Jt1JcpyNRX3s5zySh9cVb1p3_II0jrPbQ1Nj8ZqwNJhiRNT8xCdHt1cfsYi76RgFRx2iTsYbEmL0v933CCeqD75aYnlVmCqyKD-dv41QBhuq9dfUwKnJusArtxtbNC9h4EwX2Y9MnoIg7nKKLrOSllSS8tRIiVw2oHv_jHm3XRJascmoni2EzdmA.5waf0tgo5uTY4rjfw8gJUA.O0wUU5TTcpQ_8wkwEeKUsSX6wKEtwVZ-G0k1R0zjhAU9hXsii5BiittxlrdR2JKP_917n2rUCN7NKnYAFIg5acwvJS8NmZlvNcTIRxb_yFmC7fRfQ6RqXGkYjc0EEDWS.bxYmFS-IlttaZTgqdZdnHQ"
- },
-
- "record": {
- "CNAME": "e6797667cd820de372823eb4._acme.deno.dev"
- }
- }
-
\ No newline at end of file
diff --git a/domains/ashishagr.json b/domains/ashishagr.json
index 181618046..78946238d 100644
--- a/domains/ashishagr.json
+++ b/domains/ashishagr.json
@@ -5,8 +5,8 @@
},
"record": {
"A": [
+ "185.199.108.153",
"185.199.109.153",
- "185.199.111.153",
"185.199.110.153",
"185.199.111.153"
],
diff --git a/domains/kuldeep.json b/domains/kuldeep.json
index a772ebcaf..06fccac98 100644
--- a/domains/kuldeep.json
+++ b/domains/kuldeep.json
@@ -7,7 +7,7 @@
},
"record": {
- "A": ["185.199.108.153","185.199.109.153","185.199.110.153","185.199.110.153"]
+ "A": ["185.199.108.153","185.199.109.153","185.199.110.153","185.199.111.153"]
}
}
diff --git a/domains/vbkg.json b/domains/vbkg.json
index a5d5e977b..7d55662bf 100644
--- a/domains/vbkg.json
+++ b/domains/vbkg.json
@@ -6,7 +6,7 @@
"record": {
"MX": [
"mx1.improvmx.com",
- "mx1.improvmx.com"
+ "mx2.improvmx.com"
],
"TXT": "v=spf1 include:spf.improvmx.com ~all"
}
From e773d40b545a0f0d9b862f16cc6191dcd780a84d Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:13 +1100
Subject: [PATCH 106/416] Discard changes to
domains/_acme-challenge.ai.esb.json
---
domains/_acme-challenge.ai.esb.json | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 domains/_acme-challenge.ai.esb.json
diff --git a/domains/_acme-challenge.ai.esb.json b/domains/_acme-challenge.ai.esb.json
new file mode 100644
index 000000000..bef1435a1
--- /dev/null
+++ b/domains/_acme-challenge.ai.esb.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "",
+ "discord": "1167825360151380032",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.guUEvTOIBPJv8oJfvZdvgudRQpsBlIxnKLhef83On6LPv7t8yR4GXWxwwRWUmwlpsPJBLJBSzV1AZS26i7dgezj5k4-gfQdhr1ZKUz_w5T7JgQ9MIbWeOo5ocEMcMjmkC6WLesVMwH5cfCoOJeW097Gr6of_60Jt1JcpyNRX3s5zySh9cVb1p3_II0jrPbQ1Nj8ZqwNJhiRNT8xCdHt1cfsYi76RgFRx2iTsYbEmL0v933CCeqD75aYnlVmCqyKD-dv41QBhuq9dfUwKnJusArtxtbNC9h4EwX2Y9MnoIg7nKKLrOSllSS8tRIiVw2oHv_jHm3XRJascmoni2EzdmA.5waf0tgo5uTY4rjfw8gJUA.O0wUU5TTcpQ_8wkwEeKUsSX6wKEtwVZ-G0k1R0zjhAU9hXsii5BiittxlrdR2JKP_917n2rUCN7NKnYAFIg5acwvJS8NmZlvNcTIRxb_yFmC7fRfQ6RqXGkYjc0EEDWS.bxYmFS-IlttaZTgqdZdnHQ"
+ },
+
+ "record": {
+ "CNAME": "af252befb545b3b27e96b5b9._acme.deno.dev"
+ }
+ }
+
From dd6b6d16b30a837d3d73bfcaf0b4c0edbdb43d55 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:17 +1100
Subject: [PATCH 107/416] Discard changes to
domains/_acme-challenge.api.juststudio.json
---
domains/_acme-challenge.api.juststudio.json | 11 +++++++++++
1 file changed, 11 insertions(+)
create mode 100644 domains/_acme-challenge.api.juststudio.json
diff --git a/domains/_acme-challenge.api.juststudio.json b/domains/_acme-challenge.api.juststudio.json
new file mode 100644
index 000000000..1d3e92ea1
--- /dev/null
+++ b/domains/_acme-challenge.api.juststudio.json
@@ -0,0 +1,11 @@
+{
+ "description": "JustStudio.API",
+ "owner": {
+ "username": "JustDeveloper1",
+ "email": "support@juststudio.is-a.dev",
+ "discord": "1117482901353812088"
+ },
+ "record": {
+ "CNAME": "ec675496b91489e24d221965._acme.deno.dev"
+ }
+}
From ddd7f26df15ee81b42497a8efbe8f53ce37a6f9a Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:21 +1100
Subject: [PATCH 108/416] Discard changes to
domains/_acme-challenge.cdn.esb.json
---
domains/_acme-challenge.cdn.esb.json | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 domains/_acme-challenge.cdn.esb.json
diff --git a/domains/_acme-challenge.cdn.esb.json b/domains/_acme-challenge.cdn.esb.json
new file mode 100644
index 000000000..00111381b
--- /dev/null
+++ b/domains/_acme-challenge.cdn.esb.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "",
+ "discord": "1167825360151380032",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.guUEvTOIBPJv8oJfvZdvgudRQpsBlIxnKLhef83On6LPv7t8yR4GXWxwwRWUmwlpsPJBLJBSzV1AZS26i7dgezj5k4-gfQdhr1ZKUz_w5T7JgQ9MIbWeOo5ocEMcMjmkC6WLesVMwH5cfCoOJeW097Gr6of_60Jt1JcpyNRX3s5zySh9cVb1p3_II0jrPbQ1Nj8ZqwNJhiRNT8xCdHt1cfsYi76RgFRx2iTsYbEmL0v933CCeqD75aYnlVmCqyKD-dv41QBhuq9dfUwKnJusArtxtbNC9h4EwX2Y9MnoIg7nKKLrOSllSS8tRIiVw2oHv_jHm3XRJascmoni2EzdmA.5waf0tgo5uTY4rjfw8gJUA.O0wUU5TTcpQ_8wkwEeKUsSX6wKEtwVZ-G0k1R0zjhAU9hXsii5BiittxlrdR2JKP_917n2rUCN7NKnYAFIg5acwvJS8NmZlvNcTIRxb_yFmC7fRfQ6RqXGkYjc0EEDWS.bxYmFS-IlttaZTgqdZdnHQ"
+ },
+
+ "record": {
+ "CNAME": "fe4cfa72d5862865fb2759c8._acme.deno.dev"
+ }
+ }
+
From 4381b335a5309e85a2c82a155ffe49d8f5cd411b Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:24 +1100
Subject: [PATCH 109/416] Discard changes to
domains/_acme-challenge.juqwtf.json
---
domains/_acme-challenge.juqwtf.json | 12 ++++++++++++
1 file changed, 12 insertions(+)
create mode 100644 domains/_acme-challenge.juqwtf.json
diff --git a/domains/_acme-challenge.juqwtf.json b/domains/_acme-challenge.juqwtf.json
new file mode 100644
index 000000000..e8fc66acc
--- /dev/null
+++ b/domains/_acme-challenge.juqwtf.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "denboy0123",
+ "email": "pochtaproverka01@gmail.com"
+ },
+ "record": {
+ "TXT": [
+ "FZo9g0GqRYR-fhmWc1QzbycfV5UZIE4bwh42BI81NDQ",
+ "V1N8tuJvEcUtltxMXLRvP0U1_jaAgsSJJ89MgyxpWUk"
+ ]
+ }
+}
From 2bf9b0758e81c74b0c8c2788b5e4e3a9ea985221 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:28 +1100
Subject: [PATCH 110/416] Discard changes to domains/_acme-challenge.katz.json
---
domains/_acme-challenge.katz.json | 11 +++++++++++
1 file changed, 11 insertions(+)
create mode 100644 domains/_acme-challenge.katz.json
diff --git a/domains/_acme-challenge.katz.json b/domains/_acme-challenge.katz.json
new file mode 100644
index 000000000..434720b24
--- /dev/null
+++ b/domains/_acme-challenge.katz.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "Bananalolok",
+ "email": "",
+ "discord": "bananalol7678"
+ },
+
+ "record": {
+ "CNAME": "77c60266e3d311053d5b2fe1._acme.deno.dev"
+ }
+}
From 3f3e5c7972f13af78eb66388c992159cd0554621 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:31 +1100
Subject: [PATCH 111/416] Discard changes to
domains/_acme-challenge.oioioi.json
---
domains/_acme-challenge.oioioi.json | 9 +++++++++
1 file changed, 9 insertions(+)
create mode 100644 domains/_acme-challenge.oioioi.json
diff --git a/domains/_acme-challenge.oioioi.json b/domains/_acme-challenge.oioioi.json
new file mode 100644
index 000000000..1bb254789
--- /dev/null
+++ b/domains/_acme-challenge.oioioi.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "VaibhavSys",
+ "email": "vaibhavsys@protonmail.com"
+ },
+ "record": {
+ "CNAME": "b00be066-ce45-455f-bb4a-de9f6dc14e0c.acmedns.infinityfree.net"
+ }
+}
From d4476683d774bc5f45a6681d8105f283ec225262 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:35 +1100
Subject: [PATCH 112/416] Discard changes to
domains/_acme-challenge.parrot.json
---
domains/_acme-challenge.parrot.json | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 domains/_acme-challenge.parrot.json
diff --git a/domains/_acme-challenge.parrot.json b/domains/_acme-challenge.parrot.json
new file mode 100644
index 000000000..4e34f2525
--- /dev/null
+++ b/domains/_acme-challenge.parrot.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "",
+ "discord": "1167825360151380032",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.guUEvTOIBPJv8oJfvZdvgudRQpsBlIxnKLhef83On6LPv7t8yR4GXWxwwRWUmwlpsPJBLJBSzV1AZS26i7dgezj5k4-gfQdhr1ZKUz_w5T7JgQ9MIbWeOo5ocEMcMjmkC6WLesVMwH5cfCoOJeW097Gr6of_60Jt1JcpyNRX3s5zySh9cVb1p3_II0jrPbQ1Nj8ZqwNJhiRNT8xCdHt1cfsYi76RgFRx2iTsYbEmL0v933CCeqD75aYnlVmCqyKD-dv41QBhuq9dfUwKnJusArtxtbNC9h4EwX2Y9MnoIg7nKKLrOSllSS8tRIiVw2oHv_jHm3XRJascmoni2EzdmA.5waf0tgo5uTY4rjfw8gJUA.O0wUU5TTcpQ_8wkwEeKUsSX6wKEtwVZ-G0k1R0zjhAU9hXsii5BiittxlrdR2JKP_917n2rUCN7NKnYAFIg5acwvJS8NmZlvNcTIRxb_yFmC7fRfQ6RqXGkYjc0EEDWS.bxYmFS-IlttaZTgqdZdnHQ"
+ },
+
+ "record": {
+ "CNAME": "51de1eeaf31ce67a1c3f69aa._acme.deno.dev"
+ }
+ }
+
From 1ce2e508f51f879fb62068ac3c027957fdc2e182 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:40 +1100
Subject: [PATCH 113/416] Discard changes to
domains/_acme-challenge.raafey.json
---
domains/_acme-challenge.raafey.json | 9 +++++++++
1 file changed, 9 insertions(+)
create mode 100644 domains/_acme-challenge.raafey.json
diff --git a/domains/_acme-challenge.raafey.json b/domains/_acme-challenge.raafey.json
new file mode 100644
index 000000000..59d86c9fe
--- /dev/null
+++ b/domains/_acme-challenge.raafey.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "RaafeyRaza",
+ "email": "raafeyraza1@gmail.com"
+ },
+ "record": {
+ "CNAME": "dc6fbbae-3aba-4a5d-9741-4b7a386b9151.acmedns.infinityfree.net"
+ }
+}
From 3b5a92b0c3e870edcb34f2f646a8706387ac90c7 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 13:16:43 +1100
Subject: [PATCH 114/416] Discard changes to
domains/_acme-challenge.us.mcstatus.json
---
domains/_acme-challenge.us.mcstatus.json | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 domains/_acme-challenge.us.mcstatus.json
diff --git a/domains/_acme-challenge.us.mcstatus.json b/domains/_acme-challenge.us.mcstatus.json
new file mode 100644
index 000000000..55ec2e523
--- /dev/null
+++ b/domains/_acme-challenge.us.mcstatus.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "",
+ "discord": "1167825360151380032",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.guUEvTOIBPJv8oJfvZdvgudRQpsBlIxnKLhef83On6LPv7t8yR4GXWxwwRWUmwlpsPJBLJBSzV1AZS26i7dgezj5k4-gfQdhr1ZKUz_w5T7JgQ9MIbWeOo5ocEMcMjmkC6WLesVMwH5cfCoOJeW097Gr6of_60Jt1JcpyNRX3s5zySh9cVb1p3_II0jrPbQ1Nj8ZqwNJhiRNT8xCdHt1cfsYi76RgFRx2iTsYbEmL0v933CCeqD75aYnlVmCqyKD-dv41QBhuq9dfUwKnJusArtxtbNC9h4EwX2Y9MnoIg7nKKLrOSllSS8tRIiVw2oHv_jHm3XRJascmoni2EzdmA.5waf0tgo5uTY4rjfw8gJUA.O0wUU5TTcpQ_8wkwEeKUsSX6wKEtwVZ-G0k1R0zjhAU9hXsii5BiittxlrdR2JKP_917n2rUCN7NKnYAFIg5acwvJS8NmZlvNcTIRxb_yFmC7fRfQ6RqXGkYjc0EEDWS.bxYmFS-IlttaZTgqdZdnHQ"
+ },
+
+ "record": {
+ "CNAME": "e6797667cd820de372823eb4._acme.deno.dev"
+ }
+ }
+
\ No newline at end of file
From 27c489888f7e04030ac38dcf781b42cd56d7bd8e Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 10:40:35 +0800
Subject: [PATCH 115/416] Update william.json
---
domains/william.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/domains/william.json b/domains/william.json
index 2f3788f33..0dc69e1cc 100644
--- a/domains/william.json
+++ b/domains/william.json
@@ -1,10 +1,10 @@
{
"owner": {
"username": "wdhdev",
- "email": "william@m.is-a.dev"
+ "email": "william@is-a.dev"
},
"record": {
- "CNAME": "hrsn.dev"
+ "NS": ["chuck.ns.cloudflare.com", "walk.ns.cloudflare.com"]
}
}
From 249de5cb2efbb4d74efbc11fe331cb42b6904765 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 10:44:55 +0800
Subject: [PATCH 116/416] Delete domains/_github-pages-challenge-wdhdev.w.json
---
domains/_github-pages-challenge-wdhdev.w.json | 10 ----------
1 file changed, 10 deletions(-)
delete mode 100644 domains/_github-pages-challenge-wdhdev.w.json
diff --git a/domains/_github-pages-challenge-wdhdev.w.json b/domains/_github-pages-challenge-wdhdev.w.json
deleted file mode 100644
index 3976fa11f..000000000
--- a/domains/_github-pages-challenge-wdhdev.w.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "wdhdev",
- "email": "william@m.is-a.dev"
- },
-
- "record": {
- "TXT": "660ac3fbb8e294e077d68381ad6aeb"
- }
-}
From 370690138b4ff4990bfa9581d26b3d3ef33bb523 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 10:45:05 +0800
Subject: [PATCH 117/416] Delete domains/w.json
---
domains/w.json | 10 ----------
1 file changed, 10 deletions(-)
delete mode 100644 domains/w.json
diff --git a/domains/w.json b/domains/w.json
deleted file mode 100644
index 2f3788f33..000000000
--- a/domains/w.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "wdhdev",
- "email": "william@m.is-a.dev"
- },
-
- "record": {
- "CNAME": "hrsn.dev"
- }
-}
From a21df76705f2c86e3cf296fab60fa88cf9663173 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 10:47:11 +0800
Subject: [PATCH 118/416] Update _github-pages-challenge-wdhdev.william.json
---
domains/_github-pages-challenge-wdhdev.william.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/_github-pages-challenge-wdhdev.william.json b/domains/_github-pages-challenge-wdhdev.william.json
index f9c6ef5ea..1e95f51b3 100644
--- a/domains/_github-pages-challenge-wdhdev.william.json
+++ b/domains/_github-pages-challenge-wdhdev.william.json
@@ -1,7 +1,7 @@
{
"owner": {
"username": "wdhdev",
- "email": "william@m.is-a.dev"
+ "email": "william@is-a.dev"
},
"record": {
From 9e601857054a76fd83cc400930bbc53b34bd73c2 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 10:48:52 +0800
Subject: [PATCH 119/416] Update validate.yml
---
.github/workflows/validate.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml
index b49211b69..9f45e5b0d 100644
--- a/.github/workflows/validate.yml
+++ b/.github/workflows/validate.yml
@@ -40,4 +40,4 @@ jobs:
with:
pattern: "\\.json$"
env:
- BASE: "domains/"
\ No newline at end of file
+ BASE: "domains/"
From 7ad328eea5857402a7a07d2c0035bf250249fda7 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 10:50:40 +0800
Subject: [PATCH 120/416] Update dnsconfig.js
---
dnsconfig.js | 198 +++++++++++++++++++++++++++------------------------
1 file changed, 103 insertions(+), 95 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index 58bf90b84..ab57a4689 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -2,128 +2,136 @@ var regNone = NewRegistrar("none");
var providerCf = DnsProvider(NewDnsProvider("cloudflare"));
var proxy = {
- on: { "cloudflare_proxy": "on" },
- off: { "cloudflare_proxy": "off" }
-}
+ on: { cloudflare_proxy: "on" },
+ off: { cloudflare_proxy: "off" },
+};
function getDomainsList(filesPath) {
- var result = [];
- var files = glob.apply(null, [filesPath, true, '.json']);
+ var result = [];
+ var files = glob.apply(null, [filesPath, true, ".json"]);
- for (var i = 0; i < files.length; i++) {
- var name = files[i].split('.').slice(0, -1).join('.');
+ for (var i = 0; i < files.length; i++) {
+ var name = files[i].split(".").slice(0, -1).join(".");
- result.push({ name: name, data: require(files[i]) });
- }
+ result.push({ name: name, data: require(files[i]) });
+ }
- return result;
+ return result;
}
-var domains = getDomainsList('./domains');
+var domains = getDomainsList("./domains");
var commit = {};
for (var idx in domains) {
- var domainName = "is-a.dev";
- var subdomainName = domains[idx].name;
- var domainData = domains[idx].data;
- var proxyState = proxy.on; // enabled by default
+ var domainName = "is-a.dev";
+ var subdomainName = domains[idx].name;
+ var domainData = domains[idx].data;
+ var proxyState = proxy.on; // enabled by default
- if (!commit[domainName]) {
- commit[domainName] = [];
- }
-
- if (domainData.proxied === false) {
- proxyState = proxy.off;
- }
-
- // Handle A records
- if (domainData.record.A) {
- for (var a in domainData.record.A) {
- commit[domainName].push(
- A(subdomainName, IP(domainData.record.A[a]), proxyState)
- );
+ if (!commit[domainName]) {
+ commit[domainName] = [];
}
- }
- // Handle AAAA records
- if (domainData.record.AAAA) {
- for (var aaaa in domainData.record.AAAA) {
- commit[domainName].push(
- AAAA(subdomainName, domainData.record.AAAA[aaaa], proxyState)
- );
+ if (domainData.proxied === false) {
+ proxyState = proxy.off;
}
- }
- // Handle CAA records
- if (domainData.record.CAA) {
- for (var caa in domainData.record.CAA) {
- var caaRecord = domainData.record.CAA[caa];
- commit[domainName].push(
- CAA(subdomainName, caaRecord.flags, caaRecord.tag, caaRecord.value)
- );
+ // Handle A records
+ if (domainData.record.A) {
+ for (var a in domainData.record.A) {
+ commit[domainName].push(
+ A(subdomainName, IP(domainData.record.A[a]), proxyState),
+ );
+ }
}
- }
- // Handle CNAME records
- if (domainData.record.CNAME) {
- commit[domainName].push(
- CNAME(subdomainName, domainData.record.CNAME + ".", proxyState)
- );
- }
-
- // Handle MX records
- if (domainData.record.MX) {
- for (var mx in domainData.record.MX) {
- commit[domainName].push(
- MX(subdomainName, 10, domainData.record.MX[mx] + ".")
- );
+ // Handle AAAA records
+ if (domainData.record.AAAA) {
+ for (var aaaa in domainData.record.AAAA) {
+ commit[domainName].push(
+ AAAA(subdomainName, domainData.record.AAAA[aaaa], proxyState),
+ );
+ }
}
- }
- // Handle NS records
- if (domainData.record.NS) {
- for (var ns in domainData.record.NS) {
- commit[domainName].push(
- NS(subdomainName, domainData.record.NS[ns] + ".")
- );
+ // Handle CAA records
+ if (domainData.record.CAA) {
+ for (var caa in domainData.record.CAA) {
+ var caaRecord = domainData.record.CAA[caa];
+ commit[domainName].push(
+ CAA(
+ subdomainName,
+ caaRecord.flags,
+ caaRecord.tag,
+ caaRecord.value,
+ ),
+ );
+ }
}
- }
- // Handle SRV records
- if (domainData.record.SRV) {
- for (var srv in domainData.record.SRV) {
- var srvRecord = domainData.record.SRV[srv];
- commit[domainName].push(
- SRV(subdomainName, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + ".")
- );
- }
- }
-
- // Handle TXT records
- if (domainData.record.TXT) {
- if (Array.isArray(domainData.record.TXT)) {
- for (var txt in domainData.record.TXT) {
+ // Handle CNAME records
+ if (domainData.record.CNAME) {
commit[domainName].push(
- TXT(subdomainName, domainData.record.TXT[txt])
+ CNAME(subdomainName, domainData.record.CNAME + ".", proxyState),
);
- }
- } else {
- commit[domainName].push(
- TXT(subdomainName, domainData.record.TXT)
- );
}
- }
- // Handle URL records
- // Note: URL records are not actual DNS records, we have a server configured to support them instead.
- if (domainData.record.URL) {
- commit[domainName].push(
- A(subdomainName, "192.0.2.1", proxy.on)
- );
- }
+ // Handle MX records
+ if (domainData.record.MX) {
+ for (var mx in domainData.record.MX) {
+ commit[domainName].push(
+ MX(subdomainName, 10, domainData.record.MX[mx] + "."),
+ );
+ }
+ }
+
+ // Handle NS records
+ if (domainData.record.NS) {
+ for (var ns in domainData.record.NS) {
+ commit[domainName].push(
+ NS(subdomainName, domainData.record.NS[ns] + "."),
+ );
+ }
+ }
+
+ // Handle SRV records
+ if (domainData.record.SRV) {
+ for (var srv in domainData.record.SRV) {
+ var srvRecord = domainData.record.SRV[srv];
+ commit[domainName].push(
+ SRV(
+ subdomainName,
+ srvRecord.priority,
+ srvRecord.weight,
+ srvRecord.port,
+ srvRecord.target + ".",
+ ),
+ );
+ }
+ }
+
+ // Handle TXT records
+ if (domainData.record.TXT) {
+ if (Array.isArray(domainData.record.TXT)) {
+ for (var txt in domainData.record.TXT) {
+ commit[domainName].push(
+ TXT(subdomainName, domainData.record.TXT[txt]),
+ );
+ }
+ } else {
+ commit[domainName].push(TXT(subdomainName, domainData.record.TXT));
+ }
+ }
+
+ // Handle URL records
+ // Note: URL records are not actual DNS records, we have a server configured to support them instead.
+ if (domainData.record.URL) {
+ // Use 192.0.2.1 until server is deployed.
+ commit[domainName].push(A(subdomainName, "192.0.2.1", proxy.on));
+ }
}
// Commit all DNS records
for (var domainName in commit) {
- D(domainName, regNone, providerCf, commit[domainName]);
+ D(domainName, regNone, providerCf, commit[domainName]);
}
From 0c88ce420fe43a06c7583cd2b9a652601b8098e3 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 10:51:38 +0800
Subject: [PATCH 121/416] Delete zone.js
---
zone.js | 129 --------------------------------------------------------
1 file changed, 129 deletions(-)
delete mode 100644 zone.js
diff --git a/zone.js b/zone.js
deleted file mode 100644
index fb49a395b..000000000
--- a/zone.js
+++ /dev/null
@@ -1,129 +0,0 @@
-const fs = require('fs'); // Required for writing JSON to file
-
-var proxy = {
- on: { "cloudflare_proxy": "on" },
- off: { "cloudflare_proxy": "off" }
-};
-
-// Function to validate filenames according to the given rules
-function isValidFilename(filename) {
- var regex = /^[a-z0-9]+(-[a-z0-9]+)*(\.[a-z0-9]+(-[a-z0-9]+)*)*\.json$/;
- return regex.test(filename);
-}
-
-// Function to get the domains list from the domains folder
-function getDomainsList(filesPath) {
- var result = [];
- var files = glob.apply(null, [filesPath, true, '.json']);
-
- for (var i = 0; i < files.length; i++) {
- var basename = files[i].split('/').reverse()[0];
-
- if (!isValidFilename(basename)) {
- console.log(`Skipping invalid file: ${basename}`);
- continue;
- }
-
- var name = basename.split('.')[0];
- result.push({ name: name, data: require(files[i]) });
- }
-
- return result;
-}
-
-var domains = getDomainsList('./domains');
-var zoneFile = {}; // JSON object to hold all the DNS records
-
-for (var idx in domains) {
- var domainData = domains[idx].data;
- var proxyState = proxy.on; // enabled by default
-
- // Initialize the domain entry in the zone file if not already there
- if (!zoneFile[domainData.record.domain]) {
- zoneFile[domainData.record.domain] = [];
- }
-
- // Check if proxy should be turned off
- if (domainData.record.proxied === false) {
- proxyState = proxy.off;
- }
-
- // Handle CNAME record
- if (domainData.record.CNAME) {
- zoneFile[domainData.record.domain].push({
- type: "CNAME",
- subdomain: domainData.subdomain,
- value: domainData.record.CNAME + ".",
- proxy: proxyState
- });
- }
-
- // Handle A records
- if (domainData.record.A) {
- for (var a in domainData.record.A) {
- zoneFile[domainData.record.domain].push({
- type: "A",
- subdomain: domainData.subdomain,
- value: domainData.record.A[a],
- proxy: proxyState
- });
- }
- }
-
- // Handle AAAA records
- if (domainData.record.AAAA) {
- for (var aaaa in domainData.record.AAAA) {
- zoneFile[domainData.record.domain].push({
- type: "AAAA",
- subdomain: domainData.subdomain,
- value: domainData.record.AAAA[aaaa],
- proxy: proxyState
- });
- }
- }
-
- // Handle MX records
- if (domainData.record.MX) {
- for (var mx in domainData.record.MX) {
- zoneFile[domainData.record.domain].push({
- type: "MX",
- subdomain: domainData.subdomain,
- value: domainData.record.MX[mx] + ".",
- priority: 10
- });
- }
- }
-
- // Handle URL records (redirect)
- if (domainData.record.URL) {
- zoneFile[domainData.record.domain].push({
- type: "URL",
- subdomain: domainData.subdomain,
- value: domainData.record.URL
- });
- }
-
- // Handle TXT records
- if (domainData.record.TXT) {
- if (Array.isArray(domainData.record.TXT)) {
- for (var txt in domainData.record.TXT) {
- zoneFile[domainData.record.domain].push({
- type: "TXT",
- subdomain: domainData.subdomain,
- value: domainData.record.TXT[txt]
- });
- }
- } else {
- zoneFile[domainData.record.domain].push({
- type: "TXT",
- subdomain: domainData.subdomain,
- value: domainData.record.TXT
- });
- }
- }
-}
-
-// Write the JSON zone file to disk
-fs.writeFileSync('zoneFile.json', JSON.stringify(zoneFile, null, 2), 'utf-8');
-
-console.log("Zone file has been written to zoneFile.json");
From 94dba1bba54dfd2802d70b96f94e0df518c4c2b3 Mon Sep 17 00:00:00 2001
From: Fluffythebunny <120046993+Fluffythebunny@users.noreply.github.com>
Date: Wed, 16 Oct 2024 22:04:23 -0500
Subject: [PATCH 122/416] Create fluffythebunny.json
---
domains/fluffythebunny.json | 12 ++++++++++++
1 file changed, 12 insertions(+)
create mode 100644 domains/fluffythebunny.json
diff --git a/domains/fluffythebunny.json b/domains/fluffythebunny.json
new file mode 100644
index 000000000..e980c0797
--- /dev/null
+++ b/domains/fluffythebunny.json
@@ -0,0 +1,12 @@
+{
+ "description": "using it for my developer portfolio",
+ "repo": "https://github.com/Fluffythebunny/fluffythebunny.is-a.dev",
+ "owner": {
+ "username": "Fluffythebunny",
+ "email": "puglsytt@gmail.com",
+ "twitter": "pugls"
+ },
+ "record": {
+ "CNAME": "https://fluffythebunny.github.io/fluffythebunny.is-a.dev/"
+ }
+}
From 962bf59e6db47f02b4741063b59242ac858e1d64 Mon Sep 17 00:00:00 2001
From: Fluffythebunny <120046993+Fluffythebunny@users.noreply.github.com>
Date: Wed, 16 Oct 2024 22:08:46 -0500
Subject: [PATCH 123/416] Create _github-pages-challenge-Fluffythebunny.json
---
domains/_github-pages-challenge-Fluffythebunny.json | 8 ++++++++
1 file changed, 8 insertions(+)
create mode 100644 domains/_github-pages-challenge-Fluffythebunny.json
diff --git a/domains/_github-pages-challenge-Fluffythebunny.json b/domains/_github-pages-challenge-Fluffythebunny.json
new file mode 100644
index 000000000..5e853f15d
--- /dev/null
+++ b/domains/_github-pages-challenge-Fluffythebunny.json
@@ -0,0 +1,8 @@
+{
+ "owner": {
+ "username": "Fluffythebunny",
+ "email": "puglsytt@gmail.com"
+ },
+ "record": {
+ "TXT": "beb68ebc988463b8b1753c41c14f9e"
+ }
From 8e55205ab8463b335223a630771bb7bb49f4017c Mon Sep 17 00:00:00 2001
From: Fluffythebunny <120046993+Fluffythebunny@users.noreply.github.com>
Date: Wed, 16 Oct 2024 22:17:44 -0500
Subject: [PATCH 124/416] Add files via upload
---
domains/fluffythebunny.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/fluffythebunny.json b/domains/fluffythebunny.json
index e980c0797..091f3cee8 100644
--- a/domains/fluffythebunny.json
+++ b/domains/fluffythebunny.json
@@ -7,6 +7,6 @@
"twitter": "pugls"
},
"record": {
- "CNAME": "https://fluffythebunny.github.io/fluffythebunny.is-a.dev/"
+ "CNAME": "fluffythebunny.github.io"
}
}
From e6f3532d8c3a376892636def49055fdb2a82ae06 Mon Sep 17 00:00:00 2001
From: orangc
Date: Thu, 17 Oct 2024 09:13:01 +0300
Subject: [PATCH 125/416] chore: missing comma
---
domains/_github-pages-challenge-Fluffythebunny.json | 1 +
1 file changed, 1 insertion(+)
diff --git a/domains/_github-pages-challenge-Fluffythebunny.json b/domains/_github-pages-challenge-Fluffythebunny.json
index 5e853f15d..5519e8ef1 100644
--- a/domains/_github-pages-challenge-Fluffythebunny.json
+++ b/domains/_github-pages-challenge-Fluffythebunny.json
@@ -6,3 +6,4 @@
"record": {
"TXT": "beb68ebc988463b8b1753c41c14f9e"
}
+}
From 0eda17df9bb50dac9b889de3cf3a38195d6f7740 Mon Sep 17 00:00:00 2001
From: orangc
Date: Thu, 17 Oct 2024 10:49:58 +0300
Subject: [PATCH 126/416] Update c.json to use NS
---
domains/c.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/c.json b/domains/c.json
index da3053a49..d0d37c30b 100644
--- a/domains/c.json
+++ b/domains/c.json
@@ -5,6 +5,6 @@
"email": "orangc@proton.me"
},
"record": {
- "CNAME": "edge.redirect.pizza"
+ "NS": "nucum.ns.cloudflare.com"
}
}
From 631b8db8e3a82f46adf7bc33c31ee48b63875a3f Mon Sep 17 00:00:00 2001
From: orangc
Date: Thu, 17 Oct 2024 10:51:30 +0300
Subject: [PATCH 127/416] Update orangc.json to use NS
---
domains/orangc.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/orangc.json b/domains/orangc.json
index da3053a49..d0d37c30b 100644
--- a/domains/orangc.json
+++ b/domains/orangc.json
@@ -5,6 +5,6 @@
"email": "orangc@proton.me"
},
"record": {
- "CNAME": "edge.redirect.pizza"
+ "NS": "nucum.ns.cloudflare.com"
}
}
From 6f8dd0cef57d525b157059339533590f5ec295b0 Mon Sep 17 00:00:00 2001
From: orangc
Date: Thu, 17 Oct 2024 10:53:02 +0300
Subject: [PATCH 128/416] Update orangc.json
---
domains/orangc.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/orangc.json b/domains/orangc.json
index d0d37c30b..8fdc0ccc6 100644
--- a/domains/orangc.json
+++ b/domains/orangc.json
@@ -5,6 +5,6 @@
"email": "orangc@proton.me"
},
"record": {
- "NS": "nucum.ns.cloudflare.com"
+ "NS": ["nucum.ns.cloudflare.com", "tate.ns.cloudflare.com"]
}
}
From 35dc44652d94746a62aa2dd69e228757e9f7442e Mon Sep 17 00:00:00 2001
From: orangc
Date: Thu, 17 Oct 2024 10:53:27 +0300
Subject: [PATCH 129/416] Update c.json
---
domains/c.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/c.json b/domains/c.json
index d0d37c30b..8fdc0ccc6 100644
--- a/domains/c.json
+++ b/domains/c.json
@@ -5,6 +5,6 @@
"email": "orangc@proton.me"
},
"record": {
- "NS": "nucum.ns.cloudflare.com"
+ "NS": ["nucum.ns.cloudflare.com", "tate.ns.cloudflare.com"]
}
}
From 5a3bac735ae349e96904539b554c84fcc7cc9c99 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 15:55:45 +0800
Subject: [PATCH 130/416] Update dnsconfig.js
---
dnsconfig.js | 48 ++++++++++++++++++++----------------------------
1 file changed, 20 insertions(+), 28 deletions(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index ab57a4689..81c846dcf 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -2,16 +2,16 @@ var regNone = NewRegistrar("none");
var providerCf = DnsProvider(NewDnsProvider("cloudflare"));
var proxy = {
- on: { cloudflare_proxy: "on" },
- off: { cloudflare_proxy: "off" },
-};
+ on: { "cloudflare_proxy": "on" },
+ off: { "cloudflare_proxy": "off" }
+}
function getDomainsList(filesPath) {
var result = [];
- var files = glob.apply(null, [filesPath, true, ".json"]);
+ var files = glob.apply(null, [filesPath, true, '.json']);
for (var i = 0; i < files.length; i++) {
- var name = files[i].split(".").slice(0, -1).join(".");
+ var name = files[i].split('.').slice(0, -1).join('.');
result.push({ name: name, data: require(files[i]) });
}
@@ -19,7 +19,7 @@ function getDomainsList(filesPath) {
return result;
}
-var domains = getDomainsList("./domains");
+var domains = getDomainsList('./domains');
var commit = {};
for (var idx in domains) {
@@ -40,7 +40,7 @@ for (var idx in domains) {
if (domainData.record.A) {
for (var a in domainData.record.A) {
commit[domainName].push(
- A(subdomainName, IP(domainData.record.A[a]), proxyState),
+ A(subdomainName, IP(domainData.record.A[a]), proxyState)
);
}
}
@@ -49,7 +49,7 @@ for (var idx in domains) {
if (domainData.record.AAAA) {
for (var aaaa in domainData.record.AAAA) {
commit[domainName].push(
- AAAA(subdomainName, domainData.record.AAAA[aaaa], proxyState),
+ AAAA(subdomainName, domainData.record.AAAA[aaaa], proxyState)
);
}
}
@@ -59,12 +59,7 @@ for (var idx in domains) {
for (var caa in domainData.record.CAA) {
var caaRecord = domainData.record.CAA[caa];
commit[domainName].push(
- CAA(
- subdomainName,
- caaRecord.flags,
- caaRecord.tag,
- caaRecord.value,
- ),
+ CAA(subdomainName, caaRecord.flags, caaRecord.tag, caaRecord.value)
);
}
}
@@ -72,7 +67,7 @@ for (var idx in domains) {
// Handle CNAME records
if (domainData.record.CNAME) {
commit[domainName].push(
- CNAME(subdomainName, domainData.record.CNAME + ".", proxyState),
+ CNAME(subdomainName, domainData.record.CNAME + ".", proxyState)
);
}
@@ -80,7 +75,7 @@ for (var idx in domains) {
if (domainData.record.MX) {
for (var mx in domainData.record.MX) {
commit[domainName].push(
- MX(subdomainName, 10, domainData.record.MX[mx] + "."),
+ MX(subdomainName, 10, domainData.record.MX[mx] + ".")
);
}
}
@@ -89,7 +84,7 @@ for (var idx in domains) {
if (domainData.record.NS) {
for (var ns in domainData.record.NS) {
commit[domainName].push(
- NS(subdomainName, domainData.record.NS[ns] + "."),
+ NS(subdomainName, domainData.record.NS[ns] + ".")
);
}
}
@@ -99,13 +94,7 @@ for (var idx in domains) {
for (var srv in domainData.record.SRV) {
var srvRecord = domainData.record.SRV[srv];
commit[domainName].push(
- SRV(
- subdomainName,
- srvRecord.priority,
- srvRecord.weight,
- srvRecord.port,
- srvRecord.target + ".",
- ),
+ SRV(subdomainName, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + ".")
);
}
}
@@ -115,19 +104,22 @@ for (var idx in domains) {
if (Array.isArray(domainData.record.TXT)) {
for (var txt in domainData.record.TXT) {
commit[domainName].push(
- TXT(subdomainName, domainData.record.TXT[txt]),
+ TXT(subdomainName, domainData.record.TXT[txt])
);
}
} else {
- commit[domainName].push(TXT(subdomainName, domainData.record.TXT));
+ commit[domainName].push(
+ TXT(subdomainName, domainData.record.TXT)
+ );
}
}
// Handle URL records
// Note: URL records are not actual DNS records, we have a server configured to support them instead.
if (domainData.record.URL) {
- // Use 192.0.2.1 until server is deployed.
- commit[domainName].push(A(subdomainName, "192.0.2.1", proxy.on));
+ commit[domainName].push(
+ A(subdomainName, "192.0.2.1", proxy.on)
+ );
}
}
From 97dedf7c4db19ad66ea899f5ea4369817e9b23a0 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 16:00:55 +0800
Subject: [PATCH 131/416] Update README.md
---
README.md | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/README.md b/README.md
index a2aff3b08..7715ec46d 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,20 @@
+# Migration Downtime
+Dear users,
+
+We are currently in the process of migrating our DNS services to Cloudflare, during this time there will be downtime for the entire is-a.dev domain as we migrate the zone file across. We understand your frustration with this, and we are working as fast as possible to get it migrated.
+
+**Do not expect any DNS records for any subdomain to resolve during this time.**
+
+No new pull requests will be merged either during the migration.
+
+Thank you for your co-operation.
+
+\- The is-a.dev Team
+
+*For any enquiries, please email william@williamharrison.dev or join the [Discord server](https://discord.gg/is-a-dev-830872854677422150) and ping or DM `@williamharrison`.*
+
+---
+
From 456964a2c2e9550444bb4a4ad1caa64bbbf6d22a Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 16:04:23 +0800
Subject: [PATCH 132/416] Update README.md
---
README.md | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/README.md b/README.md
index 7715ec46d..be461e067 100644
--- a/README.md
+++ b/README.md
@@ -33,15 +33,6 @@ Thank you for your co-operation.
-## Phishing emails alert
-**We have been notified of scammers using emails in this repository to send phishing emails. Do NOT click any links in suspicious emails.**
-
-If you would like to remove your email, remove it from your JSON file and provide a separate contact method (preferably Discord).
-
-Leave the email field there, but just blank. Then add a separate contact method to your file.
-
-Please see more information in issue https://github.com/is-a-dev/register/issues/14802.
-
## Issues
If you have any problems, feel free to [open a issue](https://github.com/is-a-dev/register/issues/new/choose).
From 6432cad7f9d4b7b51f855701ebd03450f52e806e Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 16:06:09 +0800
Subject: [PATCH 133/416] Update README.md
---
README.md | 3 ---
1 file changed, 3 deletions(-)
diff --git a/README.md b/README.md
index be461e067..900c67950 100644
--- a/README.md
+++ b/README.md
@@ -55,9 +55,6 @@ If you have an issue that contains confidental infomation, send an email to secu
Join our [Discord server](https://discord.gg/is-a-dev-830872854677422150), head to the commands channel and run `/register`. The bot will ask you a few questions then will generate your PR and domain automatically. The bot also allows for domain deletion and editing.
-## Status
-You can check the uptime of our services on our [status dashboard](https://is-a-dev.hrsn.dev).
-
### Donate
If you like this project, please consider donating so we can keep this project running forever!
From 7846887cad0a63e96304a06f0892f95e706c9a96 Mon Sep 17 00:00:00 2001
From: Stef_DP
Date: Thu, 17 Oct 2024 10:10:28 +0200
Subject: [PATCH 134/416] Update stefdp.json
---
domains/stefdp.json | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/domains/stefdp.json b/domains/stefdp.json
index d301d97a5..9fe3d2b01 100644
--- a/domains/stefdp.json
+++ b/domains/stefdp.json
@@ -6,10 +6,9 @@
"OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
},
"record": {
- "A": [
- "194.60.201.37"
- ],
- "MX": ["mail.stefdp.lol"],
- "TXT": ["v=spf1 mx ~all"]
+ "NS": [
+ "jonah.ns.cloudflare.com",
+ "mary.ns.cloudflare.com"
+ ]
}
}
From 37e4dba5948387797ad501a6c3ca9d3f78b920c0 Mon Sep 17 00:00:00 2001
From: om
Date: Thu, 17 Oct 2024 13:42:18 +0530
Subject: [PATCH 135/416] add NS for om.is-a.dev
---
domains/om.json | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/domains/om.json b/domains/om.json
index 9eef67dec..1f097dafd 100644
--- a/domains/om.json
+++ b/domains/om.json
@@ -5,7 +5,6 @@
"OWL":"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.RROLuTVz1Yiu7gYQ78NhdEWblxDBcdAtgXSrSKBX4s-6C15Gbg1gvdalVJRUFfhvt7FQ1HEtB7Wwz0Rdn1Jxk7Eqxp2s116sCmWwviCoh8RfWUEkWt9k4csRDjBtnwijFrfSv5gjf67gAe1dyoryQjg1ZFf9dlmwmaQtiJNKVkjlBsNAYNph9-CsYK8a0-TI-GVXung0rFjd-222TQij66CYBd7qitAvTPEypCBarB2SyBrN30wLTS9NjB-bSpmJZwcZO8CQ2obcYdMfVQ0nZgXBJhkbwjtGWfWTS-3AnCeLF48mT-9DCsVoraLb6DLoJoPB-9g4dim-tSZwC5pQ.OsIglUJ8OXge3R5CTVoEEw.YS-YtdmeJZKK1TEkERBJlH9RKdKcMynvcB5PrUsKXY4FJhgfrPoqF_JOAXO4tyYqwJzWnNM0hfd4WxqLi3KmjXToHxRAzdiFu1f4iiBfX68ABHoycHXkose4AHWe54a8.UazMc8kLEVvxHs2YN0DC3Q"
},
"record": {
- "MX": ["mx.zoho.in", "mx2.zoho.in", "mx3.zoho.in"],
- "TXT": "v=spf1 include:zoho.in ~all"
+ "NS": ["austin.ns.cloudflare.com","sima.ns.cloudflare.com"]
}
}
From 87851a71372033691ae2990662987c25fe59fda5 Mon Sep 17 00:00:00 2001
From: om
Date: Thu, 17 Oct 2024 13:46:17 +0530
Subject: [PATCH 136/416] add NS for o.is-a.dev
---
domains/o.json | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/domains/o.json b/domains/o.json
index b08792abe..1f097dafd 100644
--- a/domains/o.json
+++ b/domains/o.json
@@ -1,13 +1,10 @@
{
"owner": {
"username": "omsenjalia",
- "email": "om@maintainers.is-a.dev"
+ "email": "",
+ "OWL":"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.RROLuTVz1Yiu7gYQ78NhdEWblxDBcdAtgXSrSKBX4s-6C15Gbg1gvdalVJRUFfhvt7FQ1HEtB7Wwz0Rdn1Jxk7Eqxp2s116sCmWwviCoh8RfWUEkWt9k4csRDjBtnwijFrfSv5gjf67gAe1dyoryQjg1ZFf9dlmwmaQtiJNKVkjlBsNAYNph9-CsYK8a0-TI-GVXung0rFjd-222TQij66CYBd7qitAvTPEypCBarB2SyBrN30wLTS9NjB-bSpmJZwcZO8CQ2obcYdMfVQ0nZgXBJhkbwjtGWfWTS-3AnCeLF48mT-9DCsVoraLb6DLoJoPB-9g4dim-tSZwC5pQ.OsIglUJ8OXge3R5CTVoEEw.YS-YtdmeJZKK1TEkERBJlH9RKdKcMynvcB5PrUsKXY4FJhgfrPoqF_JOAXO4tyYqwJzWnNM0hfd4WxqLi3KmjXToHxRAzdiFu1f4iiBfX68ABHoycHXkose4AHWe54a8.UazMc8kLEVvxHs2YN0DC3Q"
},
"record": {
- "MX": [
- "mx1.improvmx.com",
- "mx2.improvmx.com"
- ],
- "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ "NS": ["austin.ns.cloudflare.com","sima.ns.cloudflare.com"]
}
}
From 24ce4db887e08d4636ccf1474e7beac30a01176c Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 19:26:16 +1100
Subject: [PATCH 137/416] updates
---
MAINTAINERS.md | 1 -
dnsconfig.js | 9 ++------
domains/@.json | 21 ++++++++++++++++---
...-is-a-dev-o.m.json => _gh-is-a-dev-o.json} | 2 +-
domains/_gh-is-a-dev-o.www.json | 10 ---------
domains/_github-challenge-is-a-dev-org.json | 10 ---------
...github-pages-challenge-is-a-dev.docs.json} | 20 +++++++++---------
domains/discord.json | 4 ++--
domains/docs.json | 2 +-
domains/m.json | 10 ---------
domains/maintainers.json | 10 ---------
domains/manage.json | 10 ---------
domains/privacy.json | 9 --------
domains/redirect.json | 9 --------
domains/register.json | 10 ---------
domains/www.json | 4 +---
16 files changed, 35 insertions(+), 106 deletions(-)
rename domains/{_gh-is-a-dev-o.m.json => _gh-is-a-dev-o.json} (77%)
delete mode 100644 domains/_gh-is-a-dev-o.www.json
delete mode 100644 domains/_github-challenge-is-a-dev-org.json
rename domains/{_gh-is-a-dev-o.maintainers.json => _github-pages-challenge-is-a-dev.docs.json} (61%)
delete mode 100644 domains/m.json
delete mode 100644 domains/maintainers.json
delete mode 100644 domains/manage.json
delete mode 100644 domains/privacy.json
delete mode 100644 domains/redirect.json
delete mode 100644 domains/register.json
diff --git a/MAINTAINERS.md b/MAINTAINERS.md
index 071673ba9..cb300be61 100644
--- a/MAINTAINERS.md
+++ b/MAINTAINERS.md
@@ -6,7 +6,6 @@
| CuteDog5695 | [@CuteDog5695](https://github.com/CuteDog5695) | Maintainer |
| Daniel | [@hackermondev](https://github.com/hackermondev) | Maintainer |
| DIBSTER | [@DEV-DIBSTER](https://github.com/DEV-DIBSTER) | Maintainer |
-| MaskDuck | [@MaskDuck](https://github.com/MaskDuck) | Maintainer |
| Om | [@omsenjalia](https://github.com/omsenjalia) | Maintainer |
| orangc | [@orxngc](https://github.com/orxngc) | Maintainer |
| Stef | [@Stef-00012](https://github.com/Stef-00012) | Maintainer |
diff --git a/dnsconfig.js b/dnsconfig.js
index 81c846dcf..ee1d9c8eb 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -28,13 +28,8 @@ for (var idx in domains) {
var domainData = domains[idx].data;
var proxyState = proxy.on; // enabled by default
- if (!commit[domainName]) {
- commit[domainName] = [];
- }
-
- if (domainData.proxied === false) {
- proxyState = proxy.off;
- }
+ if (!commit[domainName]) commit[domainName] = [];
+ if (!domainData.proxied) proxyState = proxy.off;
// Handle A records
if (domainData.record.A) {
diff --git a/domains/@.json b/domains/@.json
index 4fe4c1133..0495405b7 100644
--- a/domains/@.json
+++ b/domains/@.json
@@ -1,11 +1,26 @@
{
- "description": "The root domain for is-a.dev website",
- "repo": "https://github.com/is-a-dev/is-a-dev.github.io",
"owner": {
"username": "is-a-dev",
"email": ""
},
"record": {
- "URL": "http://www.is-a.dev"
+ "A": [
+ "185.199.108.153",
+ "185.199.109.153",
+ "185.199.110.153",
+ "185.199.111.153"
+ ],
+ "AAAA": [
+ "2606:50c0:8000::153",
+ "2606:50c0:8001::153",
+ "2606:50c0:8002::153",
+ "2606:50c0:8003::153"
+ ],
+ "MX": [
+ "route1.mx.cloudflare.net",
+ "route2.mx.cloudflare.net",
+ "route3.mx.cloudflare.net"
+ ],
+ "TXT": "v=spf1 include:_spf.mx.cloudflare.net ~all"
}
}
diff --git a/domains/_gh-is-a-dev-o.m.json b/domains/_gh-is-a-dev-o.json
similarity index 77%
rename from domains/_gh-is-a-dev-o.m.json
rename to domains/_gh-is-a-dev-o.json
index e7af9390b..804fb9f73 100644
--- a/domains/_gh-is-a-dev-o.m.json
+++ b/domains/_gh-is-a-dev-o.json
@@ -5,6 +5,6 @@
},
"record": {
- "TXT": "e0ffcded3e"
+ "TXT": "9ac06a2c1c"
}
}
diff --git a/domains/_gh-is-a-dev-o.www.json b/domains/_gh-is-a-dev-o.www.json
deleted file mode 100644
index a93e75f33..000000000
--- a/domains/_gh-is-a-dev-o.www.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "TXT": "1259c184c5"
- }
-}
diff --git a/domains/_github-challenge-is-a-dev-org.json b/domains/_github-challenge-is-a-dev-org.json
deleted file mode 100644
index d9ade36b1..000000000
--- a/domains/_github-challenge-is-a-dev-org.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "TXT": "2c9dfbe7c8"
- }
-}
diff --git a/domains/_gh-is-a-dev-o.maintainers.json b/domains/_github-pages-challenge-is-a-dev.docs.json
similarity index 61%
rename from domains/_gh-is-a-dev-o.maintainers.json
rename to domains/_github-pages-challenge-is-a-dev.docs.json
index e381c3c8c..65e45a0f8 100644
--- a/domains/_gh-is-a-dev-o.maintainers.json
+++ b/domains/_github-pages-challenge-is-a-dev.docs.json
@@ -1,10 +1,10 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "TXT": "7b45eb688b"
- }
-}
+{
+ "owner": {
+ "username": "is-a-dev",
+ "email": ""
+ },
+
+ "record": {
+ "TXT": "c5409850ced5dfc8fb88283246972e"
+ }
+}
diff --git a/domains/discord.json b/domains/discord.json
index 656c64a52..8020b2f1b 100644
--- a/domains/discord.json
+++ b/domains/discord.json
@@ -1,9 +1,9 @@
{
"owner": {
"username": "is-a-dev",
- "email": "m@is-a.dev"
+ "email": ""
},
"record": {
- "CNAME": "edge.redirect.pizza"
+ "URL": "https://discord.gg/is-a-dev-830872854677422150"
}
}
diff --git a/domains/docs.json b/domains/docs.json
index 946773150..51b50f786 100644
--- a/domains/docs.json
+++ b/domains/docs.json
@@ -6,6 +6,6 @@
"email": ""
},
"record": {
- "URL": "https://www.is-a.dev/docs"
+ "CNAME": "is-a.dev"
}
}
diff --git a/domains/m.json b/domains/m.json
deleted file mode 100644
index ce1ab1851..000000000
--- a/domains/m.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
- "record": {
- "MX": ["mail.hrsn.net"],
- "TXT": "v=spf1 include:_spf.hrsn.net ~all"
- }
-}
diff --git a/domains/maintainers.json b/domains/maintainers.json
deleted file mode 100644
index ce1ab1851..000000000
--- a/domains/maintainers.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
- "record": {
- "MX": ["mail.hrsn.net"],
- "TXT": "v=spf1 include:_spf.hrsn.net ~all"
- }
-}
diff --git a/domains/manage.json b/domains/manage.json
deleted file mode 100644
index f27db0ab3..000000000
--- a/domains/manage.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "URL": "https://github.com/is-a-dev/register"
- }
-}
diff --git a/domains/privacy.json b/domains/privacy.json
deleted file mode 100644
index 6f3b6f9c6..000000000
--- a/domains/privacy.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
- "record": {
- "URL": "https://owl.is-a.dev"
- }
-}
diff --git a/domains/redirect.json b/domains/redirect.json
deleted file mode 100644
index 8b7a9f235..000000000
--- a/domains/redirect.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
- "record": {
- "TXT": "RESERVED FOR REDIRECT URLS"
- }
-}
diff --git a/domains/register.json b/domains/register.json
deleted file mode 100644
index f27db0ab3..000000000
--- a/domains/register.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "URL": "https://github.com/is-a-dev/register"
- }
-}
diff --git a/domains/www.json b/domains/www.json
index af576c718..d41bee02d 100644
--- a/domains/www.json
+++ b/domains/www.json
@@ -1,11 +1,9 @@
{
- "description": "The is-a.dev website",
- "repo": "https://github.com/is-a-dev/is-a-dev.github.io",
"owner": {
"username": "is-a-dev",
"email": ""
},
"record": {
- "CNAME": "is-a-dev.github.io"
+ "CNAME": "is-a.dev"
}
}
From eb6e3df7bb572038baaf25e00d00e0bd95b9515c Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 19:30:08 +1100
Subject: [PATCH 138/416] more updates
---
.eslintrc.json | 31 -------------------------------
.github/CODEOWNERS | 2 +-
.gitignore | 4 ----
README.md | 2 +-
SECURITY.md | 2 +-
domains/_dmarc.json | 9 +++++++++
domains/_psl.json | 4 ++--
7 files changed, 14 insertions(+), 40 deletions(-)
delete mode 100644 .eslintrc.json
delete mode 100644 .gitignore
create mode 100644 domains/_dmarc.json
diff --git a/.eslintrc.json b/.eslintrc.json
deleted file mode 100644
index b35636417..000000000
--- a/.eslintrc.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "extends": [
- "eslint:recommended",
- "plugin:node/recommended",
- "plugin:json/recommended"
- ],
- "parserOptions": {
- "ecmaVersion": 2020
- },
- "rules": {
- "indent": ["error", 2],
- "max-len": ["error", {
- "code": 100,
- "ignoreStrings": true,
- "ignoreTemplateLiterals": true,
- "ignoreTrailingComments": true
- }],
- "node/exports-style": ["error", "module.exports"],
- "node/file-extension-in-import": ["error", "always"],
- "node/prefer-global/buffer": ["error", "always"],
- "node/prefer-global/console": ["error", "always"],
- "node/prefer-global/process": ["error", "always"],
- "node/prefer-global/url-search-params": ["error", "always"],
- "node/prefer-global/url": ["error", "always"],
- "node/prefer-promises/dns": "error",
- "node/prefer-promises/fs": "error",
- "no-process-exit": [0],
- "node/no-unsupported-features/node-builtins": [0],
- "node/no-unsupported-features/es-syntax": [0]
- }
-}
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 3747adddc..225185e50 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -1,6 +1,6 @@
* @phenax @wdhdev
/.github/ @wdhdev
-/domains/ @is-a-dev/maintainers @is-a-dev/trial-maintainers
+/domains/ @is-a-dev/maintainers
*.md @is-a-dev/maintainers
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 209d4adc4..000000000
--- a/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-node_modules/
-*.env.production
-*.log
-is-a-dev-cert/
diff --git a/README.md b/README.md
index 900c67950..638b18b5d 100644
--- a/README.md
+++ b/README.md
@@ -36,7 +36,7 @@ Thank you for your co-operation.
## Issues
If you have any problems, feel free to [open a issue](https://github.com/is-a-dev/register/issues/new/choose).
-If you have an issue that contains confidental infomation, send an email to security@m.is-a.dev.
+If you have an issue that contains confidental infomation, send an email to security@is-a.dev.
## Register
### Manual Registration
diff --git a/SECURITY.md b/SECURITY.md
index e6b236db7..4c96d8394 100644
--- a/SECURITY.md
+++ b/SECURITY.md
@@ -3,4 +3,4 @@
## Reporting a vulnerability
You can report low severity bugs as [issues](https://github.com/is-a-dev/register/issues/new/choose) on this repository.
-However, for **higher severity vulnerabilities and bugs**, please email security@m.is-a.dev.
+However, for **higher severity vulnerabilities and bugs**, please email security@is-a.dev.
diff --git a/domains/_dmarc.json b/domains/_dmarc.json
new file mode 100644
index 000000000..eb9be2da8
--- /dev/null
+++ b/domains/_dmarc.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "is-a-dev",
+ "email": ""
+ },
+ "record": {
+ "TXT": "v=DMARC1; p=reject; rua=mailto:b24ae2ebb6744451bec500b161916c03@dmarc-reports.cloudflare.net"
+ }
+}
diff --git a/domains/_psl.json b/domains/_psl.json
index fd8db17bb..99f450e73 100644
--- a/domains/_psl.json
+++ b/domains/_psl.json
@@ -1,8 +1,8 @@
{
- "description": "PSL validation record for is-a.dev",
+ "description": "PSL validation record",
"owner": {
"username": "is-a-dev",
- "email": "phenax5@gmail.com"
+ "email": ""
},
"record": {
"TXT": "https://github.com/publicsuffix/list/pull/1949"
From 1e18d259943b9573069f723594f68ee27ed0b357 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 19:32:32 +1100
Subject: [PATCH 139/416] add w.is-a.dev
---
domains/w.json | 10 ++++++++++
1 file changed, 10 insertions(+)
create mode 100644 domains/w.json
diff --git a/domains/w.json b/domains/w.json
new file mode 100644
index 000000000..7de0d3a5b
--- /dev/null
+++ b/domains/w.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "wdhdev",
+ "email": "william@is-a.dev"
+ },
+
+ "record": {
+ "NS": ["chuck.ns.cloudflare.com", "walk.ns.cloudflare.com"]
+ }
+}
From 816750cbdbe415fe756c3d91f26e0d32b04182dc Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 19:43:56 +1100
Subject: [PATCH 140/416] move website to root
---
README.md | 2 +-
domains/docs.json | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 638b18b5d..349eca45a 100644
--- a/README.md
+++ b/README.md
@@ -44,7 +44,7 @@ If you have an issue that contains confidental infomation, send an email to secu
- [Fork](https://github.com/is-a-dev/register/fork) and star this repository
- Add a new file called `your-domain-name.json` in the `domains` folder to register `your-domain-name.is-a.dev`
-- [Read the documentation](https://www.is-a.dev/docs)
+- [Read the documentation](https://is-a.dev/docs)
- Your pull request will be reviewed and merged. *Make sure to keep an eye on it incase we need you to make any changes!*
- After the pull request is merged, please allow up to 24 hours for the changes to propagate
- Enjoy your new `.is-a.dev` domain!
diff --git a/domains/docs.json b/domains/docs.json
index 51b50f786..e29fc733a 100644
--- a/domains/docs.json
+++ b/domains/docs.json
@@ -6,6 +6,6 @@
"email": ""
},
"record": {
- "CNAME": "is-a.dev"
+ "URL": "https://is-a.dev/docs"
}
}
From 07af4ae55a88229b6ae6eea2ecdb5d2d29fdbe3c Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 16:44:36 +0800
Subject: [PATCH 141/416] Delete
domains/_github-pages-challenge-is-a-dev.docs.json
---
domains/_github-pages-challenge-is-a-dev.docs.json | 10 ----------
1 file changed, 10 deletions(-)
delete mode 100644 domains/_github-pages-challenge-is-a-dev.docs.json
diff --git a/domains/_github-pages-challenge-is-a-dev.docs.json b/domains/_github-pages-challenge-is-a-dev.docs.json
deleted file mode 100644
index 65e45a0f8..000000000
--- a/domains/_github-pages-challenge-is-a-dev.docs.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "TXT": "c5409850ced5dfc8fb88283246972e"
- }
-}
From 7b58ba835272d269f622603cd4fbed8816535618 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 20:17:30 +1100
Subject: [PATCH 142/416] delete nested subdomains of ns domains
---
domains/_discord.api.stefdp.json | 11 -----------
domains/_discord.c.json | 10 ----------
domains/_discord.orangc.json | 10 ----------
domains/_discord.stefdp.json | 11 -----------
domains/_dmarc.om.json | 10 ----------
.../_github-pages-challenge-stef-00012.stefdp.json | 13 -------------
domains/_github-pages-challenge-wdhdev.william.json | 10 ----------
domains/api.spotify.stefdp.json | 12 ------------
domains/api.stefdp.json | 12 ------------
domains/choudery.json | 13 -------------
domains/dash.stefdp.json | 11 -----------
domains/data.om.json | 9 ---------
domains/dkim._domainkey.om.json | 10 ----------
domains/dockge.stefdp.json | 12 ------------
domains/docs.stefdp.json | 11 -----------
domains/juniper.orangc.json | 10 ----------
domains/node.stefdp.json | 11 -----------
domains/ntfy.stefdp.json | 12 ------------
domains/panel.stefdp.json | 11 -----------
domains/portainer.stefdp.json | 12 ------------
domains/proxy.stefdp.json | 11 -----------
domains/spotify.stefdp.json | 11 -----------
domains/ss.stefdp.json | 12 ------------
domains/status.stefdp.json | 11 -----------
domains/tianji.stefdp.json | 11 -----------
domains/uptime.stefdp.json | 12 ------------
26 files changed, 289 deletions(-)
delete mode 100644 domains/_discord.api.stefdp.json
delete mode 100644 domains/_discord.c.json
delete mode 100644 domains/_discord.orangc.json
delete mode 100644 domains/_discord.stefdp.json
delete mode 100644 domains/_dmarc.om.json
delete mode 100644 domains/_github-pages-challenge-stef-00012.stefdp.json
delete mode 100644 domains/_github-pages-challenge-wdhdev.william.json
delete mode 100644 domains/api.spotify.stefdp.json
delete mode 100644 domains/api.stefdp.json
delete mode 100644 domains/choudery.json
delete mode 100644 domains/dash.stefdp.json
delete mode 100644 domains/data.om.json
delete mode 100644 domains/dkim._domainkey.om.json
delete mode 100644 domains/dockge.stefdp.json
delete mode 100644 domains/docs.stefdp.json
delete mode 100644 domains/juniper.orangc.json
delete mode 100644 domains/node.stefdp.json
delete mode 100644 domains/ntfy.stefdp.json
delete mode 100644 domains/panel.stefdp.json
delete mode 100644 domains/portainer.stefdp.json
delete mode 100644 domains/proxy.stefdp.json
delete mode 100644 domains/spotify.stefdp.json
delete mode 100644 domains/ss.stefdp.json
delete mode 100644 domains/status.stefdp.json
delete mode 100644 domains/tianji.stefdp.json
delete mode 100644 domains/uptime.stefdp.json
diff --git a/domains/_discord.api.stefdp.json b/domains/_discord.api.stefdp.json
deleted file mode 100644
index b6e9ec775..000000000
--- a/domains/_discord.api.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "TXT": "dh=e71ddcd3beca6bbd44125eb4d861d4cf28eed0c8"
- }
-}
diff --git a/domains/_discord.c.json b/domains/_discord.c.json
deleted file mode 100644
index e0d3ad199..000000000
--- a/domains/_discord.c.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "orxngc",
- "discord": "orangc",
- "email": "orangc@proton.me"
- },
- "record": {
- "TXT": "dh=dff53e3c9534a4606fe07fef0142ab53acf4a0e4"
- }
-}
diff --git a/domains/_discord.orangc.json b/domains/_discord.orangc.json
deleted file mode 100644
index dcdfb506a..000000000
--- a/domains/_discord.orangc.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "orxngc",
- "discord": "orangc",
- "email": "orangc@proton.me"
- },
- "record": {
- "TXT": "dh=d27c8c015aa5f1be96c0c468e091a0958dd1c1dc"
- }
-}
diff --git a/domains/_discord.stefdp.json b/domains/_discord.stefdp.json
deleted file mode 100644
index e0d13c96d..000000000
--- a/domains/_discord.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "TXT": "dh=f6d71b43aecaa5a4ea3534d21f11f6b0e4559d8a"
- }
-}
diff --git a/domains/_dmarc.om.json b/domains/_dmarc.om.json
deleted file mode 100644
index f3a7cf119..000000000
--- a/domains/_dmarc.om.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "omsenjalia",
- "email": "",
- "OWL":"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.RROLuTVz1Yiu7gYQ78NhdEWblxDBcdAtgXSrSKBX4s-6C15Gbg1gvdalVJRUFfhvt7FQ1HEtB7Wwz0Rdn1Jxk7Eqxp2s116sCmWwviCoh8RfWUEkWt9k4csRDjBtnwijFrfSv5gjf67gAe1dyoryQjg1ZFf9dlmwmaQtiJNKVkjlBsNAYNph9-CsYK8a0-TI-GVXung0rFjd-222TQij66CYBd7qitAvTPEypCBarB2SyBrN30wLTS9NjB-bSpmJZwcZO8CQ2obcYdMfVQ0nZgXBJhkbwjtGWfWTS-3AnCeLF48mT-9DCsVoraLb6DLoJoPB-9g4dim-tSZwC5pQ.OsIglUJ8OXge3R5CTVoEEw.YS-YtdmeJZKK1TEkERBJlH9RKdKcMynvcB5PrUsKXY4FJhgfrPoqF_JOAXO4tyYqwJzWnNM0hfd4WxqLi3KmjXToHxRAzdiFu1f4iiBfX68ABHoycHXkose4AHWe54a8.UazMc8kLEVvxHs2YN0DC3Q"
- },
- "record": {
- "TXT": "v=DMARC1; p=quarantine; rua=mailto:omsenjalia@gmail.com; ruf=mailto:omsenjalia@gmail.com; sp=quarantine; adkim=r; aspf=r"
- }
-}
diff --git a/domains/_github-pages-challenge-stef-00012.stefdp.json b/domains/_github-pages-challenge-stef-00012.stefdp.json
deleted file mode 100644
index 372ad0c6d..000000000
--- a/domains/_github-pages-challenge-stef-00012.stefdp.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "TXT": [
- "27c2dc9cd3e8a0a37947e82ab6f637"
- ]
- }
-}
diff --git a/domains/_github-pages-challenge-wdhdev.william.json b/domains/_github-pages-challenge-wdhdev.william.json
deleted file mode 100644
index 1e95f51b3..000000000
--- a/domains/_github-pages-challenge-wdhdev.william.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "wdhdev",
- "email": "william@is-a.dev"
- },
-
- "record": {
- "TXT": "6b3a5de4756e5840afc94698b74712"
- }
-}
diff --git a/domains/api.spotify.stefdp.json b/domains/api.spotify.stefdp.json
deleted file mode 100644
index 9f2b1dbbb..000000000
--- a/domains/api.spotify.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/api.stefdp.json b/domains/api.stefdp.json
deleted file mode 100644
index 9f2b1dbbb..000000000
--- a/domains/api.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/choudery.json b/domains/choudery.json
deleted file mode 100644
index e071797f1..000000000
--- a/domains/choudery.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "owner": {
- "username": "Choudery",
- "email": "blreaderdammy@gmail.com"
- },
- "record": {
- "MX": [
- "john.ns.cloudflare.com",
- "sharon.ns.cloudflare.com"
- ]
- },
- "description": "Choudery coding"
-}
\ No newline at end of file
diff --git a/domains/dash.stefdp.json b/domains/dash.stefdp.json
deleted file mode 100644
index 13881f84f..000000000
--- a/domains/dash.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/data.om.json b/domains/data.om.json
deleted file mode 100644
index a55f3e7e8..000000000
--- a/domains/data.om.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "TerraPlayz",
- "email": "omsenjalia+github@gmail.com"
- },
- "record": {
- "A": ["69.30.249.53"]
- }
-}
diff --git a/domains/dkim._domainkey.om.json b/domains/dkim._domainkey.om.json
deleted file mode 100644
index 110d3d905..000000000
--- a/domains/dkim._domainkey.om.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "omsenjalia",
- "email": "",
- "OWL":"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.RROLuTVz1Yiu7gYQ78NhdEWblxDBcdAtgXSrSKBX4s-6C15Gbg1gvdalVJRUFfhvt7FQ1HEtB7Wwz0Rdn1Jxk7Eqxp2s116sCmWwviCoh8RfWUEkWt9k4csRDjBtnwijFrfSv5gjf67gAe1dyoryQjg1ZFf9dlmwmaQtiJNKVkjlBsNAYNph9-CsYK8a0-TI-GVXung0rFjd-222TQij66CYBd7qitAvTPEypCBarB2SyBrN30wLTS9NjB-bSpmJZwcZO8CQ2obcYdMfVQ0nZgXBJhkbwjtGWfWTS-3AnCeLF48mT-9DCsVoraLb6DLoJoPB-9g4dim-tSZwC5pQ.OsIglUJ8OXge3R5CTVoEEw.YS-YtdmeJZKK1TEkERBJlH9RKdKcMynvcB5PrUsKXY4FJhgfrPoqF_JOAXO4tyYqwJzWnNM0hfd4WxqLi3KmjXToHxRAzdiFu1f4iiBfX68ABHoycHXkose4AHWe54a8.UazMc8kLEVvxHs2YN0DC3Q"
- },
- "record": {
- "TXT": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApUFgIkG/8KdnGqL3WcvLCQFh/9q6DZ/PNTXErJOvEBbI1wjYLUeR/44tApOzj0pVqCG9sZ9zLariA6858kxKx0nW0YxRZDAbiUy90G5zP6xT7sHX1MyDiQdsc/1KTGnFsQKb7scdpmFWrRgRaU9V3+Apr3n6j9eX6ZytUsoWMCVAgUwCxNHXujy6xCTendN9yJGOPvHsedvnD0PNcYbbsstWKJ1/5mS+33Bqpb8m5x0r+i4cwUmsGkuNHcuvYzTaYXWz+ohdi369zvGkd22ZTcM0x6ygqUzmeO40OMxMa35bO5XWmc1vQDSV+zR71BzdxF38E+/nHEB/VJmNKKtt0QIDAQAB"
- }
-}
diff --git a/domains/dockge.stefdp.json b/domains/dockge.stefdp.json
deleted file mode 100644
index 9f2b1dbbb..000000000
--- a/domains/dockge.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/docs.stefdp.json b/domains/docs.stefdp.json
deleted file mode 100644
index 13881f84f..000000000
--- a/domains/docs.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/juniper.orangc.json b/domains/juniper.orangc.json
deleted file mode 100644
index 0c3b75689..000000000
--- a/domains/juniper.orangc.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "orxngc",
- "discord": "orangc",
- "email": "orangc@proton.me"
- },
- "record": {
- "A": ["66.59.209.229"]
- }
-}
diff --git a/domains/node.stefdp.json b/domains/node.stefdp.json
deleted file mode 100644
index 13881f84f..000000000
--- a/domains/node.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/ntfy.stefdp.json b/domains/ntfy.stefdp.json
deleted file mode 100644
index 9f2b1dbbb..000000000
--- a/domains/ntfy.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/panel.stefdp.json b/domains/panel.stefdp.json
deleted file mode 100644
index 884b42e7a..000000000
--- a/domains/panel.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "A": ["194.60.201.37"]
- }
-}
diff --git a/domains/portainer.stefdp.json b/domains/portainer.stefdp.json
deleted file mode 100644
index 9f2b1dbbb..000000000
--- a/domains/portainer.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/proxy.stefdp.json b/domains/proxy.stefdp.json
deleted file mode 100644
index 884b42e7a..000000000
--- a/domains/proxy.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "A": ["194.60.201.37"]
- }
-}
diff --git a/domains/spotify.stefdp.json b/domains/spotify.stefdp.json
deleted file mode 100644
index 13881f84f..000000000
--- a/domains/spotify.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/ss.stefdp.json b/domains/ss.stefdp.json
deleted file mode 100644
index 9f2b1dbbb..000000000
--- a/domains/ss.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/status.stefdp.json b/domains/status.stefdp.json
deleted file mode 100644
index 13881f84f..000000000
--- a/domains/status.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/tianji.stefdp.json b/domains/tianji.stefdp.json
deleted file mode 100644
index 13881f84f..000000000
--- a/domains/tianji.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/uptime.stefdp.json b/domains/uptime.stefdp.json
deleted file mode 100644
index 9f2b1dbbb..000000000
--- a/domains/uptime.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
From 60165f6453e8e448d94a8268d5655f6348c3d340 Mon Sep 17 00:00:00 2001
From: Luis Alejandro Bravo Ferreira
Date: Thu, 17 Oct 2024 04:17:33 -0500
Subject: [PATCH 143/416] Register luisalejandrobf
---
domains/luisalejandrobf.json | 9 +++++++++
1 file changed, 9 insertions(+)
create mode 100644 domains/luisalejandrobf.json
diff --git a/domains/luisalejandrobf.json b/domains/luisalejandrobf.json
new file mode 100644
index 000000000..502506654
--- /dev/null
+++ b/domains/luisalejandrobf.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "luisalejandrobf",
+ "email": "luisalejandrobravoferreira@gmail.com"
+ },
+ "record": {
+ "TXT": "google-site-verification=sGmOAXQM9W1XepIo-CgWM_GlqEMW7z96P10kOC2p6fs"
+ }
+}
\ No newline at end of file
From 4abeb11fa4be6469e7c431bc3a4fd6d709edf851 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 20:19:55 +1100
Subject: [PATCH 144/416] delete lingering acme records
---
domains/_acme-challenge.juqwtf.json | 12 ------------
1 file changed, 12 deletions(-)
delete mode 100644 domains/_acme-challenge.juqwtf.json
diff --git a/domains/_acme-challenge.juqwtf.json b/domains/_acme-challenge.juqwtf.json
deleted file mode 100644
index e8fc66acc..000000000
--- a/domains/_acme-challenge.juqwtf.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "denboy0123",
- "email": "pochtaproverka01@gmail.com"
- },
- "record": {
- "TXT": [
- "FZo9g0GqRYR-fhmWc1QzbycfV5UZIE4bwh42BI81NDQ",
- "V1N8tuJvEcUtltxMXLRvP0U1_jaAgsSJJ89MgyxpWUk"
- ]
- }
-}
From 68384e1fb431d7bf68e8e4f750664bb4c1ba51f1 Mon Sep 17 00:00:00 2001
From: Kirill
Date: Thu, 17 Oct 2024 13:11:08 +0300
Subject: [PATCH 145/416] Create potatoenergy.json
---
domains/potatoenergy.json | 11 +++++++++++
1 file changed, 11 insertions(+)
create mode 100644 domains/potatoenergy.json
diff --git a/domains/potatoenergy.json b/domains/potatoenergy.json
new file mode 100644
index 000000000..026dbe8d1
--- /dev/null
+++ b/domains/potatoenergy.json
@@ -0,0 +1,11 @@
+{
+ "description": "Potato Energy Team Website Proxy",
+ "owner": {
+ "username": "ponfertato",
+ "email": "ponfertato@potatoenergy.ru"
+ "discord": "ponfertato",
+ },
+ "record": {
+ "CNAME": "potatoenergy.ru"
+ }
+}
From 29d1cdc189861952242bb446c3e304090813c360 Mon Sep 17 00:00:00 2001
From: Kirill
Date: Thu, 17 Oct 2024 13:20:12 +0300
Subject: [PATCH 146/416] Fix potatoenergy.json
Oops...
---
domains/potatoenergy.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/domains/potatoenergy.json b/domains/potatoenergy.json
index 026dbe8d1..38f1af671 100644
--- a/domains/potatoenergy.json
+++ b/domains/potatoenergy.json
@@ -2,8 +2,8 @@
"description": "Potato Energy Team Website Proxy",
"owner": {
"username": "ponfertato",
- "email": "ponfertato@potatoenergy.ru"
- "discord": "ponfertato",
+ "email": "ponfertato@potatoenergy.ru",
+ "discord": "ponfertato"
},
"record": {
"CNAME": "potatoenergy.ru"
From 4437db7535529a69fc7f904bc6e7dd8fd7ac5206 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 18:26:04 +0800
Subject: [PATCH 147/416] Update _psl.json
---
domains/_psl.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/_psl.json b/domains/_psl.json
index 99f450e73..79f23886c 100644
--- a/domains/_psl.json
+++ b/domains/_psl.json
@@ -5,6 +5,6 @@
"email": ""
},
"record": {
- "TXT": "https://github.com/publicsuffix/list/pull/1949"
+ "TXT": "https://github.com/publicsuffix/list/pull/2225"
}
}
From d2685454faf13df326f9bd002cfa0200c2ea8d35 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 18:26:31 +0800
Subject: [PATCH 148/416] Update w.json
---
domains/w.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/w.json b/domains/w.json
index 7de0d3a5b..722adf218 100644
--- a/domains/w.json
+++ b/domains/w.json
@@ -5,6 +5,6 @@
},
"record": {
- "NS": ["chuck.ns.cloudflare.com", "walk.ns.cloudflare.com"]
+ "URL": "https://william.is-a.dev"
}
}
From 6dc65de528c81913d677dae3415b0cf8ce5d8b5a Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 18:32:34 +0800
Subject: [PATCH 149/416] Update dnsconfig.js
---
dnsconfig.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index ee1d9c8eb..ad490b37d 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -11,7 +11,7 @@ function getDomainsList(filesPath) {
var files = glob.apply(null, [filesPath, true, '.json']);
for (var i = 0; i < files.length; i++) {
- var name = files[i].split('.').slice(0, -1).join('.');
+ var name = files[i].split('/').pop();
result.push({ name: name, data: require(files[i]) });
}
From f93f784d4314f40162967ea1ff3b9f41b3968f0f Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 18:35:11 +0800
Subject: [PATCH 150/416] Update dnsconfig.js
---
dnsconfig.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index ad490b37d..ecc1ea830 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -11,7 +11,7 @@ function getDomainsList(filesPath) {
var files = glob.apply(null, [filesPath, true, '.json']);
for (var i = 0; i < files.length; i++) {
- var name = files[i].split('/').pop();
+ var name = files[i].split('/').pop().replace(/\.json$/, '');
result.push({ name: name, data: require(files[i]) });
}
From f09b13d11ee2e36df96b1d64fbacc27e78896153 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 22:27:01 +1100
Subject: [PATCH 151/416] fix stupid stuff stupid people approved smh
---
domains/gauravgupta.json | 9 ---------
domains/meywy.json | 4 ++--
domains/shockbs.json | 2 +-
domains/sono.json | 2 +-
4 files changed, 4 insertions(+), 13 deletions(-)
delete mode 100644 domains/gauravgupta.json
diff --git a/domains/gauravgupta.json b/domains/gauravgupta.json
deleted file mode 100644
index 571c2edf5..000000000
--- a/domains/gauravgupta.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "gauravgupta256",
- "email": "gauravgupta8652@gmail.com"
- },
- "record": {
- "CNAME": "gauravgupta.is-a.dev"
- }
-}
diff --git a/domains/meywy.json b/domains/meywy.json
index 87a6c494e..4abdd5c12 100644
--- a/domains/meywy.json
+++ b/domains/meywy.json
@@ -8,8 +8,8 @@
},
"record": {
"MX": [
- "mx1.improvmx.com.",
- "mx2.improvmx.com."
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
],
"TXT": "v=spf1 include:spf.improvmx.com ~all",
"A": [
diff --git a/domains/shockbs.json b/domains/shockbs.json
index 6174d5fce..3354c0d75 100644
--- a/domains/shockbs.json
+++ b/domains/shockbs.json
@@ -5,7 +5,7 @@
},
"record": {
"A": ["76.76.21.21"],
- "MX": ["mx1.improvmx.com","mx2.improvmx.com."],
+ "MX": ["mx1.improvmx.com","mx2.improvmx.com"],
"TXT": "v=spf1 include:spf.improvmx.com ~all"
}
}
diff --git a/domains/sono.json b/domains/sono.json
index 626794992..246b44bcd 100644
--- a/domains/sono.json
+++ b/domains/sono.json
@@ -12,7 +12,7 @@
],
"MX": [
"mx1.improvmx.com",
- "mx2.improvmx.com."
+ "mx2.improvmx.com"
],
"TXT": [
"v=spf1 include:spf.improvmx.com ~all",
From 6e48a071ca5347d5e617aadffb70c8421b11aaf5 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 19:28:03 +0800
Subject: [PATCH 152/416] Update README.md
---
README.md | 17 -----------------
1 file changed, 17 deletions(-)
diff --git a/README.md b/README.md
index 349eca45a..1cdb8598b 100644
--- a/README.md
+++ b/README.md
@@ -1,20 +1,3 @@
-# Migration Downtime
-Dear users,
-
-We are currently in the process of migrating our DNS services to Cloudflare, during this time there will be downtime for the entire is-a.dev domain as we migrate the zone file across. We understand your frustration with this, and we are working as fast as possible to get it migrated.
-
-**Do not expect any DNS records for any subdomain to resolve during this time.**
-
-No new pull requests will be merged either during the migration.
-
-Thank you for your co-operation.
-
-\- The is-a.dev Team
-
-*For any enquiries, please email william@williamharrison.dev or join the [Discord server](https://discord.gg/is-a-dev-830872854677422150) and ping or DM `@williamharrison`.*
-
----
-
From d73d46d18f0ddcc508c7155d6916d47d7bfff506 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 20:04:48 +0800
Subject: [PATCH 153/416] Update dnsconfig.js
---
dnsconfig.js | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index ecc1ea830..b703fac15 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -113,7 +113,8 @@ for (var idx in domains) {
// Note: URL records are not actual DNS records, we have a server configured to support them instead.
if (domainData.record.URL) {
commit[domainName].push(
- A(subdomainName, "192.0.2.1", proxy.on)
+ A(subdomainName, "45.85.238.5", proxy.on)
+ TXT("_redirect" + subdomainName, "v=txtv0;type=host;to=" + domainData.record.URL)
);
}
}
From a8860b4fb95daf48009de4ab6621beea29221391 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 20:06:04 +0800
Subject: [PATCH 154/416] Update dnsconfig.js
---
dnsconfig.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index b703fac15..a7dd902be 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -113,7 +113,7 @@ for (var idx in domains) {
// Note: URL records are not actual DNS records, we have a server configured to support them instead.
if (domainData.record.URL) {
commit[domainName].push(
- A(subdomainName, "45.85.238.5", proxy.on)
+ A(subdomainName, "45.85.238.5", proxy.on),
TXT("_redirect" + subdomainName, "v=txtv0;type=host;to=" + domainData.record.URL)
);
}
From 1747685abf4bf9085ee4c4fe9cc552737e217828 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 20:08:02 +0800
Subject: [PATCH 155/416] Update dnsconfig.js
---
dnsconfig.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dnsconfig.js b/dnsconfig.js
index a7dd902be..f22a4219a 100644
--- a/dnsconfig.js
+++ b/dnsconfig.js
@@ -114,7 +114,7 @@ for (var idx in domains) {
if (domainData.record.URL) {
commit[domainName].push(
A(subdomainName, "45.85.238.5", proxy.on),
- TXT("_redirect" + subdomainName, "v=txtv0;type=host;to=" + domainData.record.URL)
+ TXT("_redirect." + subdomainName, "v=txtv0;type=host;to=" + domainData.record.URL)
);
}
}
From 6bd8e8b974df7db07ef9cd9fb4874981e7c5ce9f Mon Sep 17 00:00:00 2001
From: ukriu <80760888+ukriu@users.noreply.github.com>
Date: Thu, 17 Oct 2024 17:39:33 +0530
Subject: [PATCH 156/416] Update ukriu.json
---
domains/ukriu.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/ukriu.json b/domains/ukriu.json
index af1b4f1d4..ee86dab3e 100644
--- a/domains/ukriu.json
+++ b/domains/ukriu.json
@@ -4,6 +4,6 @@
"email": "isadev@ukriu.com"
},
"record": {
- "URL": "https://ukriu.github.io"
+ "URL": "https://ukriu.com"
}
}
From b12830c8fd455feae41a75cb984b160b5c2c0e86 Mon Sep 17 00:00:00 2001
From: ukriu <80760888+ukriu@users.noreply.github.com>
Date: Thu, 17 Oct 2024 17:40:13 +0530
Subject: [PATCH 157/416] Update uk.json
---
domains/uk.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/uk.json b/domains/uk.json
index 458840eb2..c280fd33b 100644
--- a/domains/uk.json
+++ b/domains/uk.json
@@ -4,7 +4,7 @@
"email": "isadev@ukriu.com"
},
"record": {
- "URL": "https://ukriu.github.io/",
+ "URL": "https://ukriu.com/",
"MX": [
"mx1.forwardemail.net",
"mx2.forwardemail.net"
From b43dbedb8564ad1b60ac08389f189e9c82100d10 Mon Sep 17 00:00:00 2001
From: ukriu <80760888+ukriu@users.noreply.github.com>
Date: Thu, 17 Oct 2024 17:40:47 +0530
Subject: [PATCH 158/416] Update ukrio.json
---
domains/ukrio.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/ukrio.json b/domains/ukrio.json
index 9604f8703..86419a250 100644
--- a/domains/ukrio.json
+++ b/domains/ukrio.json
@@ -5,7 +5,7 @@
"discord": "ukriu"
},
"record": {
- "URL": "https://ukriu.github.io",
+ "URL": "https://ukriu.com",
"TXT": "v=spf1 include:spf.improvmx.com ~all",
"MX": [
"mx1.improvmx.com",
From 62b1680df6ce269f97e5fff533f3e60c77c88709 Mon Sep 17 00:00:00 2001
From: ukriu <80760888+ukriu@users.noreply.github.com>
Date: Thu, 17 Oct 2024 17:41:31 +0530
Subject: [PATCH 159/416] Update deko.json
---
domains/deko.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/domains/deko.json b/domains/deko.json
index af1b4f1d4..ee86dab3e 100644
--- a/domains/deko.json
+++ b/domains/deko.json
@@ -4,6 +4,6 @@
"email": "isadev@ukriu.com"
},
"record": {
- "URL": "https://ukriu.github.io"
+ "URL": "https://ukriu.com"
}
}
From f200d9592164d171a833507e09d432fa3eb93adc Mon Sep 17 00:00:00 2001
From: NinjaXility <103378267+NinjaXility@users.noreply.github.com>
Date: Thu, 17 Oct 2024 15:15:32 +0300
Subject: [PATCH 160/416] Update h3lios.json
removed the protocol and slashes
---
domains/h3lios.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/domains/h3lios.json b/domains/h3lios.json
index 7fa4c440b..fbce1b053 100644
--- a/domains/h3lios.json
+++ b/domains/h3lios.json
@@ -7,7 +7,7 @@
},
"record": {
- "CNAME": "https://ninjaxility.github.io/"
+ "CNAME": "ninjaxility.github.io"
}
}
-
\ No newline at end of file
+
From 41df0b8a5c3a1137c284cc301e4b54a6711533db Mon Sep 17 00:00:00 2001
From: Kush-Dhingra
Date: Thu, 17 Oct 2024 17:55:01 +0530
Subject: [PATCH 161/416] main
---
domains/kushdhingra.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/domains/kushdhingra.json b/domains/kushdhingra.json
index e82c0ac9f..2754de6ca 100644
--- a/domains/kushdhingra.json
+++ b/domains/kushdhingra.json
@@ -1,13 +1,13 @@
{
"owner": {
"username": "Kush-Dhingra",
- "email": "",
+ "email": "kushdhingra3112@gmail.com",
"discord": "1035869217796403220",
"OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.gJTReSXxF-8BxDH8rn6i_DIx0XuVrc4yYnOEN1Awfp7mZcYPIgcPt4mvsScPbJYhZLN5XtDlxl0DcdU8Za12GCk-aIWegJ9-_32bdjw3agBzaJ-ltaslRoVpNJ3zfLaQ9V-BrhwVMEJhpz5-0eYeEiikL4tHAoPzzKMlYIf8f5l7IL6aMfhBZvIFf0B3upGg2FeOpFCXAsttU5QiKkjUt4BjetuYb29UJoNzDco1ZExLdudlKd_fz6IcaAsw2K1u6MMDDs2khsic9M42AE3pRFCP_hacdllY5Z66ATlmKhYAxFryJYWrgbfpGX2PxSrQalAao_IP1TIGgiq7ugiBDw.Lg-WIZSH_nzEfnLZct78Cg.soPtqjy32EA2Ew63dHQ8P8-dt4ZihvZpipBVkHyX_rlnv-y5YpS5v2-2d3O5hGHRfCKnfxQsvewDfcPSGa4_Oq8BN01Kzhbet8AXRCK6uOM.ouoa2YqHKAeX9lKWZoFaog"
},
"record": {
- "CNAME": "kush-dhingra.github.io"
+ "CNAME": "kushdhingra.netlify.app"
}
}
From bc64b83f7a7566cda41b71ec8fc63003ff4778fb Mon Sep 17 00:00:00 2001
From: andrewstech
Date: Thu, 17 Oct 2024 13:35:02 +0100
Subject: [PATCH 162/416] Update publish.yml
---
.github/workflows/publish.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index 335a58668..45fac5162 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -24,7 +24,7 @@ jobs:
- run: echo '{"cloudflare":{"TYPE":"CLOUDFLAREAPI","apitoken":"$CLOUDFLARE_API_TOKEN"}}' > ./creds.json
- name: Publish
- uses: koenrh/dnscontrol-action@v3
+ uses: is-a-dev/dnscontrol-action@main
env:
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
with:
From 1399192a1b187dc00a50d12cbd16e46112305ac5 Mon Sep 17 00:00:00 2001
From: William Harrison
Date: Thu, 17 Oct 2024 20:48:16 +0800
Subject: [PATCH 163/416] Update README.md
---
README.md | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/README.md b/README.md
index 1cdb8598b..136d8fc55 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,9 @@
+
+
+