From 2000b53630edc4233bef57f4fc46bd7c7f6c3c3f Mon Sep 17 00:00:00 2001 From: keli5 <46039037+keli5@users.noreply.github.com> Date: Mon, 5 Oct 2020 16:57:09 -0500 Subject: [PATCH 001/239] Create keli5.json --- domains/keli5.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/keli5.json diff --git a/domains/keli5.json b/domains/keli5.json new file mode 100644 index 0000000000..9e7868be9d --- /dev/null +++ b/domains/keli5.json @@ -0,0 +1,11 @@ +{ + "description": "keli5", + "repo": "https://github.com/keli5/keli5.github.io", + "owner": { + "username": "keli5", + "email": "" + }, + "record": { + "CNAME": "keli5.github.io" + } +} From 446a52da79bc140d5a1541d933a6877fec2c624d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20A=2E=20L=C3=B3pez=20L=C3=B3pez?= Date: Tue, 6 Oct 2020 17:40:47 -0400 Subject: [PATCH 002/239] Create glpzzz.json --- domains/glpzzz.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/glpzzz.json diff --git a/domains/glpzzz.json b/domains/glpzzz.json new file mode 100644 index 0000000000..0ac165228b --- /dev/null +++ b/domains/glpzzz.json @@ -0,0 +1,12 @@ +{ + "description": "Gabriel A. López López", + "repo": "https://github.com/glpzzz/glpzzz.github.io", + "owner": { + "username": "glpzzz", + "email": "glpz@daxslab.com" + }, + "record": { + "CNAME": "glpzzz.github.io", + "URL": "https://glpzzz.is-a.dev" + } +} From f940228ab1722f3d9656fb4b92b2f72934d86c92 Mon Sep 17 00:00:00 2001 From: Luis Felipe Dominguez Vega Date: Tue, 6 Oct 2020 17:44:25 -0400 Subject: [PATCH 003/239] Add h3r3t1c domain --- domains/h3r3t1c.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/h3r3t1c.json diff --git a/domains/h3r3t1c.json b/domains/h3r3t1c.json new file mode 100644 index 0000000000..b984f4a2c5 --- /dev/null +++ b/domains/h3r3t1c.json @@ -0,0 +1,12 @@ +{ + "description": "My personal page", + "repo": "https://github.com/lfdominguez/lfdominguez.github.io", + "owner": { + "username": "lfdominguez", + "email": "ldominguezvega@gmail.com" + }, + "record": { + "CNAME": "lfdominguez.github.io", + "URL": "https://h3r3t1c.is-a.dev" + } +} From bd61e8a58ae6c963375cbf4cc8cdb3c8a8457397 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jimmy=20Angel=20P=C3=A9rez=20D=C3=ADaz?= Date: Tue, 6 Oct 2020 22:40:40 -0400 Subject: [PATCH 004/239] Create jimscope.json --- domains/jimscope.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/jimscope.json diff --git a/domains/jimscope.json b/domains/jimscope.json new file mode 100644 index 0000000000..127d858140 --- /dev/null +++ b/domains/jimscope.json @@ -0,0 +1,12 @@ +{ + "description": "/home/jimscope", + "repo": "https://github.com/jimscope/jimscope.github.io", + "owner": { + "username": "jimscope", + "email": "jimscope@protonmail.com" + }, + "record": { + "CNAME": "jimscope.github.io", + "URL": "https://jimscope.is-a.dev" + } +} From 29f01438293052016e12beb21aa185c1f98421fe Mon Sep 17 00:00:00 2001 From: keli5 <46039037+keli5@users.noreply.github.com> Date: Wed, 7 Oct 2020 00:21:42 -0500 Subject: [PATCH 005/239] Update keli5.json --- domains/keli5.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/keli5.json b/domains/keli5.json index 9e7868be9d..01f5412c24 100644 --- a/domains/keli5.json +++ b/domains/keli5.json @@ -3,7 +3,7 @@ "repo": "https://github.com/keli5/keli5.github.io", "owner": { "username": "keli5", - "email": "" + "twitter": "keli5_letters" }, "record": { "CNAME": "keli5.github.io" From 8a54ce0d064ece8f0c58dd0a5912f6bc0b378d2d Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 10:54:12 +0530 Subject: [PATCH 006/239] Update API.md --- API.md | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/API.md b/API.md index cd14511c20..c91be51564 100644 --- a/API.md +++ b/API.md @@ -2,27 +2,28 @@ ## How to register * First you need to create a pull request with your `domains/my-domain.json` file -* This PR will be reviewed, merged -* The changes will take effect in less than a day after the PR gets merged -* `Github pages` users, need to go to their repo settings page and change the domain to `your-domain.is-a.dev` after everything is done +* This PR will be reviewed +* The changes will take effect soon after the PR gets merged * And that's it -Example (for github pages) - +### For github pages users +* A github pages json file (with cname record and https redirection) will look something like this - ```json { "description": "Add some description", - "repo": "https://github.com/user/user.github.io", + "repo": "https://github.com/github-username/github-username.github.io", "owner": { - "username": "your-github-username", + "username": "github-username", "email": "any@email" }, "record": { - "CNAME": "user.github.io" + "CNAME": "github-username.github.io", + "URL": "https://your-domain.is-a.dev" } } ``` +* After the pull request is merged, you will see a 404 error on `your-domain.is-a.dev`. To fix this go to your github page repo's `Settings > Github pages > Custom domain` and add `your-domain.is-a.dev` in the given field -NOTE: For github pages users, to fix the 404 you get after registering the domain, add `your-domain.is-a.dev` to your github pages repo in Settings > Github pages > Custom domain. ## Domains json file From 42701cb0d9817c9c7d33bbe3a35df684c97e946c Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 10:58:33 +0530 Subject: [PATCH 007/239] Adds email property --- domains/keli5.json | 1 + 1 file changed, 1 insertion(+) diff --git a/domains/keli5.json b/domains/keli5.json index 01f5412c24..9d505fab24 100644 --- a/domains/keli5.json +++ b/domains/keli5.json @@ -3,6 +3,7 @@ "repo": "https://github.com/keli5/keli5.github.io", "owner": { "username": "keli5", + "email": "", "twitter": "keli5_letters" }, "record": { From dcfb6569001b406049f673373ed3d0cdb0a302c2 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 18:15:27 +0530 Subject: [PATCH 008/239] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c7889bee65..826adf49fc 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ is-a-dev is a service that allows developers to get a sweet-looking `.is-a.dev` domain for their personal websites. -Note: This service is currently in **beta** so expect some delays in PR merge. +Note: This service is currently in **beta** so expect some delays in PR merge and report any issues you encounter so that the service can be improved. ## How do I register? From d4c05b0c7fdb935ec212eeb5bd78d924c31eaa26 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 20:04:37 +0530 Subject: [PATCH 009/239] Fixes banner images --- README.md | 2 +- media/banner.png | Bin 0 -> 3613 bytes media/banner.svg | 100 ++++++++++++++++++++++++++++++++++++++++++++++- 3 files changed, 100 insertions(+), 2 deletions(-) create mode 100644 media/banner.png diff --git a/README.md b/README.md index c7889bee65..e98ae786e3 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![is-a-dev banner](./media/banner.svg) +![is-a-dev banner](./media/banner.png)
diff --git a/media/banner.png b/media/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..bfa9b8132a3342ffe55dfa92a396f123b9bddb4d GIT binary patch literal 3613 zcmeH~ZBSEJ8pki7;%Wg|Mn&F2g;{E=pu0-I7~)zK5tjFWs06KsG+>Fmm;fQU(rrbn zCd+_gfS?pp5DHNcLEaLv#R?jbm&7E5U@Ig`Oi~DhgqxSWZNKc!?v8%j*%?3Fb7r1r z=FD^c_y0TRITvH1!W`DPtpNbQA^c!y901rU0l;SK>Q!(gWDJ=j{3G z+b7;%_xr!C$u8Qwx88Q8Z~f{m*a(%c@8aDMX@)jG3ey~ey(kZ2i&;irs6a+vq*nXY z%1Y$==zO<`wRH`)aFLN?W4D~(8CabQ4;Q?LZ2-Xg++KSCI0x8z!XevV6RY1P-bwQR zXNH}AG}y@Inpn3h%b@%12HX~on>-7+-~-#de@gk|m-BspN^M|+R-ycABgI0z>}TtJ zC28Vq7-&wmTfGBRCa^-bC!tcMdE5@4O~BNnh?{m_1W{&_2Iu=8NQ}HfXz37lmN6F! z0GCVOe&H<894F31*Rzu}Fp7p47bWn1vz$g72?K!RpLhT02!m;}VmCalSO*_Qz`DIR z?EqjeQ1nlUGtb=k*F8|CeZlt^`uIbX`eCwEUviQcv%!h&^+eJ-S{&A*u?8=Vaj(u4ee9DA zX=+JVAtn#`vuQp$j4#9=h9F)$4E$5lsB8PTU;RWN<%Cz>urGT zNOL$InK=Q8vZ0riZMwAtdh6C_Xmr1ed01Q;P(D6gp03bN7B+RCHFF>5eT_(`1pc8# zTkm@Nbxhk?yxx>1i|ydL0Ae@PhB zA@vM@((ZNEK=@)iuoI5WCC?+5em+K^@&lumUk3o)r?~TR7XW&El56n^RP|- ztx=gjJJXD)Zp2Y9*BN6+pBb~y%p6pA!*Ns-baK!0;?&ybN{H2tI$CRf+Ne0 z5UcKpJw)7jKu77sVy})6w0^|016!{2PkMgpgvF9Z!j5C$te$%0ylH)715T|aVzIO# z^DFIz1H=Whqta>)e7fYs$H8tcqhxj;nS3ypt~S+Go3rz?UJm+*A-x1S$Y}(3z=j&K zMzK&GoyC3<6sg-BhR;#V++scqnbTp6P-)1%CJ`?MEMBf*)lSDFtbdgl)y1T;2odf! z8v`!ure6&VjR~wO8OEO(D5rwQ@@>I4glY&%2OT@~I4N zb9X|>+(Z&=pozRT)0BlbE`Vgr_n;?Ws$~@Z5z))8zF3m>%{C`T2##n`&`f*%GfScvrlC zm8Flb!brN~G-ykv+Qb?!AAG$q!dHPYvScVxJkb-6O07V}GdwLX4(h%1y54Ms3SUrg zmrU2cA`B#)+zH;3646RX*V#j*{0fV$r}uY{7TY1g5cnzw-;j0u&iC%|G&}Rp6Reib z`6myBUL)!@(zT_`-oTO`zuQS?2i5kZF~LSfRC!J`jXbreO)<7+YoAln6$A#Yp^WCL zbeAFr`t`6(ck6hE8QcCcV=?&U-?1dhjjetl=jl$B9o<#VTU?@nIGY#lZ=&_Lrfui7 z4N=(AkQIDr*REYDX_dwHbb7n4W1&C|UjPP=s^HyI+mxJKY8Pi*T+fb1Dk5@br_MDx zDZ&X-?l<2!mWgNP`9s?Kq6lvKxPVYsp00h`+<+4kF&=r^nX#Hb%BtKAMz;PDe5DlK zK=eoE-1WF#0fV5{r2RdYvWiY8r*R^$DCM~GXz6yx$Y.is-a.dev \ No newline at end of file + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + From 133b4c2c2b00fdb27053eee78447876e0d67a65d Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 23:04:15 +0530 Subject: [PATCH 010/239] Adds auto instructions reply bot for merged pull requests --- .github/workflows/bot.yml | 24 +++++++++++++++++++++++ scripts/action-utils.js | 8 ++++++++ scripts/reply.js | 40 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 72 insertions(+) create mode 100644 .github/workflows/bot.yml create mode 100644 scripts/action-utils.js create mode 100644 scripts/reply.js diff --git a/.github/workflows/bot.yml b/.github/workflows/bot.yml new file mode 100644 index 0000000000..a6f58b71de --- /dev/null +++ b/.github/workflows/bot.yml @@ -0,0 +1,24 @@ +name: Helper + +on: + pull_request_target: + types: + - closed + +jobs: + instructions: + name: instructions + runs-on: ubuntu-latest + if: + steps: + - uses: actions/checkout@v2 + - name: Comment + if: github.event_name == 'pull_request' && github.event.action == 'closed' && github.event.pull_request.merged == true + uses: actions/github-script@v3 + with: + github-token: ${{secrets.GITHUB_TOKEN}} + script: | + const { hasLabel } = require(`${process.env.GITHUB_WORKSPACE}/scripts/action-utils.js`); + const { instructions } = require(`${process.env.GITHUB_WORKSPACE}/scripts/reply.js`); + if (hasLabel(context, 'domain')) + await instructions(context, github); diff --git a/scripts/action-utils.js b/scripts/action-utils.js new file mode 100644 index 0000000000..f4fde5761e --- /dev/null +++ b/scripts/action-utils.js @@ -0,0 +1,8 @@ +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/reply.js b/scripts/reply.js new file mode 100644 index 0000000000..0f0054fbf9 --- /dev/null +++ b/scripts/reply.js @@ -0,0 +1,40 @@ + +const getInstructions = () => ` +The changes you have made will soon be reflected!! + +## 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 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\`) +* Give it some time to reflect and you should be good to go + + +## Need support 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) and pick the \`support\` template. Describe any issue you are facing there. I\'ll try my best to get back to you asap! + + +## Love/Hate the service? +**Love it?** Leave it a **star**! Also consider **[donating](https://github.com/is-a-dev/register#donations)** 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\'d really like to keep improving this service for developers. +`; + +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(), + }); + } +}; + From 7d23501a48e8c7442319017563df7124e312d5e0 Mon Sep 17 00:00:00 2001 From: a6n4-test-account-1 <72510947+a6n4-test-account-1@users.noreply.github.com> Date: Wed, 7 Oct 2020 23:05:45 +0530 Subject: [PATCH 011/239] Update akshay.json --- domains/akshay.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/akshay.json b/domains/akshay.json index 413137d46f..b5ddaa0bb3 100644 --- a/domains/akshay.json +++ b/domains/akshay.json @@ -1,5 +1,5 @@ { - "description": "Akshay's personal website", + "description": "Akshay's portfolio website and blog", "repo": "https://github.com/phenax/phenax.github.io", "owner": { "username": "phenax", From 718990a42d1c979399ab9bf6ca77f43bcea5727e Mon Sep 17 00:00:00 2001 From: a6n4-test-account-1 <72510947+a6n4-test-account-1@users.noreply.github.com> Date: Wed, 7 Oct 2020 23:09:32 +0530 Subject: [PATCH 012/239] Update akshay.json --- domains/akshay.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/akshay.json b/domains/akshay.json index b5ddaa0bb3..9295bc56e3 100644 --- a/domains/akshay.json +++ b/domains/akshay.json @@ -1,5 +1,5 @@ { - "description": "Akshay's portfolio website and blog", + "description": "Akshay's portfolio website and blog.", "repo": "https://github.com/phenax/phenax.github.io", "owner": { "username": "phenax", From 31e38c9186e104d18f83c27e3dfd3cdf62404a87 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 23:12:49 +0530 Subject: [PATCH 013/239] Changes if check --- .github/workflows/bot.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/bot.yml b/.github/workflows/bot.yml index a6f58b71de..1b1ee6cf7a 100644 --- a/.github/workflows/bot.yml +++ b/.github/workflows/bot.yml @@ -13,7 +13,7 @@ jobs: steps: - uses: actions/checkout@v2 - name: Comment - if: github.event_name == 'pull_request' && github.event.action == 'closed' && github.event.pull_request.merged == true + if: github.event_name == 'pull_request' && github.event.action == 'closed' && github.event.pull_request_target.merged == true uses: actions/github-script@v3 with: github-token: ${{secrets.GITHUB_TOKEN}} From bcac5fae3daed52c5c015c57bf90b3023e2d12ff Mon Sep 17 00:00:00 2001 From: a6n4-test-account-1 <72510947+a6n4-test-account-1@users.noreply.github.com> Date: Wed, 7 Oct 2020 23:13:38 +0530 Subject: [PATCH 014/239] Testing --- domains/akshay.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/akshay.json b/domains/akshay.json index 9295bc56e3..b5ddaa0bb3 100644 --- a/domains/akshay.json +++ b/domains/akshay.json @@ -1,5 +1,5 @@ { - "description": "Akshay's portfolio website and blog.", + "description": "Akshay's portfolio website and blog", "repo": "https://github.com/phenax/phenax.github.io", "owner": { "username": "phenax", From e8d3804cc0b7f16c469e470c364cd4cd205540cc Mon Sep 17 00:00:00 2001 From: a6n4-test-account-1 <72510947+a6n4-test-account-1@users.noreply.github.com> Date: Wed, 7 Oct 2020 23:18:01 +0530 Subject: [PATCH 015/239] Update @.json --- domains/@.json | 1 + 1 file changed, 1 insertion(+) diff --git a/domains/@.json b/domains/@.json index 52b9663653..36cd14e7be 100644 --- a/domains/@.json +++ b/domains/@.json @@ -1,5 +1,6 @@ { "description": "The root domain for is-a.dev website", + "repo": "https://github.com/is-a-dev/is-a-dev.github.io", "owner": { "username": "phenax", "email": "phenax5@gmail.com" From c2da28ab195ecb142f0d9fa422232232caa190da Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 23:19:45 +0530 Subject: [PATCH 016/239] Removes merged condition --- .github/workflows/bot.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/bot.yml b/.github/workflows/bot.yml index 1b1ee6cf7a..4611c096f3 100644 --- a/.github/workflows/bot.yml +++ b/.github/workflows/bot.yml @@ -13,7 +13,8 @@ jobs: steps: - uses: actions/checkout@v2 - name: Comment - if: github.event_name == 'pull_request' && github.event.action == 'closed' && github.event.pull_request_target.merged == true + if: github.event_name == 'pull_request' && github.event.action == 'closed' + # && github.event.pull_request_target.merged == true uses: actions/github-script@v3 with: github-token: ${{secrets.GITHUB_TOKEN}} From ed25b51e5a1edba200629af3d31456086439b3ec Mon Sep 17 00:00:00 2001 From: a6n4-test-account-1 <72510947+a6n4-test-account-1@users.noreply.github.com> Date: Wed, 7 Oct 2020 23:21:52 +0530 Subject: [PATCH 017/239] Update www.json --- domains/www.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/domains/www.json b/domains/www.json index d0ce430339..359253458f 100644 --- a/domains/www.json +++ b/domains/www.json @@ -1,4 +1,6 @@ { + "description": "www.is-a.dev", + "repo": "https://github.com/is-a-dev/is-a-dev.github.io", "owner": { "username": "phenax", "email": "phenax5@gmail.com" From cc27e3331a1b149a6ba73e47f242e0b700b13501 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 23:23:16 +0530 Subject: [PATCH 018/239] Changes pr event for pull_request_target --- .github/workflows/bot.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/bot.yml b/.github/workflows/bot.yml index 4611c096f3..bce5baa0a5 100644 --- a/.github/workflows/bot.yml +++ b/.github/workflows/bot.yml @@ -13,8 +13,7 @@ jobs: steps: - uses: actions/checkout@v2 - name: Comment - if: github.event_name == 'pull_request' && github.event.action == 'closed' - # && github.event.pull_request_target.merged == true + if: github.event_name == 'pull_request_target' && github.event.action == 'closed' && github.event.pull_request.merged == true uses: actions/github-script@v3 with: github-token: ${{secrets.GITHUB_TOKEN}} From 0a1ecd86dcc2b282dc4a08f6d9d38f0998cca90f Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Wed, 7 Oct 2020 23:25:49 +0530 Subject: [PATCH 019/239] Removes redundant if --- .github/workflows/bot.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/bot.yml b/.github/workflows/bot.yml index bce5baa0a5..736201bc81 100644 --- a/.github/workflows/bot.yml +++ b/.github/workflows/bot.yml @@ -9,7 +9,6 @@ jobs: instructions: name: instructions runs-on: ubuntu-latest - if: steps: - uses: actions/checkout@v2 - name: Comment From 9e279bfbb8ba76d3144cb9479055a03e35aef425 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 8 Oct 2020 00:07:07 +0530 Subject: [PATCH 020/239] Update README.md --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 738fc1da9b..fce687fbe5 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ is-a-dev is a service that allows developers to get a sweet-looking `.is-a.dev` Note: This service is currently in **beta** so expect some delays in PR merge and report any issues you encounter so that the service can be improved. + ## How do I register? * Fork this project * Add a `your-domain-name.json` new file in `domains/` directory to register `your-domain-name.is-a.dev` @@ -16,13 +17,14 @@ Note: This service is currently in **beta** so expect some delays in PR merge an * That's it! Done! Now go show off your cool `.is-a.dev` domain + ## Donations This project is a free service for developers and will stay that way. Donations will be greatly appreciated! -Buy Me A Coffee donate button -Liberapay recurring donation button +Buy Me A Coffee +Liberapay recurring donation button From c090b7652bb2181a65a2372b7332dd6e28060bd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lian=20Castell=C3=B3n?= Date: Wed, 7 Oct 2020 15:01:55 -0400 Subject: [PATCH 021/239] Add liancg's domain. --- domains/liancg.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/liancg.json diff --git a/domains/liancg.json b/domains/liancg.json new file mode 100644 index 0000000000..d16338e78b --- /dev/null +++ b/domains/liancg.json @@ -0,0 +1,12 @@ +{ + "description": "Lian's Own Dev Domain", + "repo": "https://github.com/liancastellon/liancastellon.github.io", + "owner": { + "username": "liancastellon", + "email": "liancg@gmail.com" + }, + "record": { + "CNAME": "liancastellon.github.io", + "URL": "https://liancg.is-a.dev" + } +} From 6e7f2328fce6319eb45dd925c05fa019a573c8a1 Mon Sep 17 00:00:00 2001 From: Derek Briggs Date: Wed, 7 Oct 2020 15:24:10 -0400 Subject: [PATCH 022/239] add derek-briggs.json --- domains/derek-briggs.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/derek-briggs.json diff --git a/domains/derek-briggs.json b/domains/derek-briggs.json new file mode 100644 index 0000000000..9aaa137f75 --- /dev/null +++ b/domains/derek-briggs.json @@ -0,0 +1,10 @@ +{ + "owner" : { + "username": "Derek52", + "email": "contact@derekbriggs.xyz" + }, + "record": { + "CNAME": "Derek52.github.io", + "URL": "https://Derek52.is-a.dev" + } +} From f0d87c0136dd122b343e75aaaf36820ee15e1c46 Mon Sep 17 00:00:00 2001 From: Ivo Lima Silva Date: Wed, 7 Oct 2020 20:26:21 +0100 Subject: [PATCH 023/239] Add ivolimasilva's domain --- domains/ivolimasilva.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/ivolimasilva.json diff --git a/domains/ivolimasilva.json b/domains/ivolimasilva.json new file mode 100644 index 0000000000..edf16bcfdb --- /dev/null +++ b/domains/ivolimasilva.json @@ -0,0 +1,12 @@ +{ + "description": "Ivo Lima Silva's personal website", + "repo": "https://github.com/ivolimasilva/ivolimasilva.github.io", + "owner": { + "username": "ivolimasilva", + "email": "ivolimasilva@outlook.com" + }, + "record": { + "CNAME": "ivolimasilva.xyz", + "URL": "https://ivolimasilva.is-a.dev" + } +} From 3acf09cf2150ab1a215c5941a49e09972a662079 Mon Sep 17 00:00:00 2001 From: tmccarthyj <56448866+tmccarthyj@users.noreply.github.com> Date: Wed, 7 Oct 2020 12:26:56 -0700 Subject: [PATCH 024/239] Adding my url! --- domains/tyler.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/tyler.json diff --git a/domains/tyler.json b/domains/tyler.json new file mode 100644 index 0000000000..8048410386 --- /dev/null +++ b/domains/tyler.json @@ -0,0 +1,12 @@ +{ + "description": "Tyler McCarthy is a Developer!", + "repo": "https://github.com/tmccarthyj", + "owner": { + "username": "tmccarthyj", + "email": "tyler@tjm.dev" + }, + "record": { + "CNAME": "tjm.dev", + "URL": "https://tyler.is-a.dev" + } +} \ No newline at end of file From b1678374238169d92c8c33b912d9418a083d0319 Mon Sep 17 00:00:00 2001 From: Tuan Phong Nguyen Date: Wed, 7 Oct 2020 15:55:00 -0400 Subject: [PATCH 025/239] added andrew to domains --- domains/andrew.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/andrew.json diff --git a/domains/andrew.json b/domains/andrew.json new file mode 100644 index 0000000000..ea141e4aed --- /dev/null +++ b/domains/andrew.json @@ -0,0 +1,12 @@ +{ + "description": "Andrew Nguyen's portfolio", + "repo": "https://github.com/andrewnt219/andrewnt219.github.io", + "owner": { + "username": "andrewnt219", + "email": "hey@andrewnt.dev" + }, + "record": { + "CNAME": "andrewnt219.github.io", + "URL": "https://andrew.is-a.dev" + } +} From f40dea18caa8ff6767da18947b5e98fa17b2492f Mon Sep 17 00:00:00 2001 From: Josh Miltz Date: Wed, 7 Oct 2020 22:07:33 +0200 Subject: [PATCH 026/239] Create josh.json --- domains/josh.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/josh.json diff --git a/domains/josh.json b/domains/josh.json new file mode 100644 index 0000000000..8627871fb9 --- /dev/null +++ b/domains/josh.json @@ -0,0 +1,12 @@ +{ + "description": "Josh's personal developer website", + "repo": "https://github.com/miltzi", + "owner": { + "username": "miltzi", + "email": "josh@miltz.co.za" + }, + "record": { + "CNAME": "joshisadev.miltz.co.za", + "URL": "https://josh.is-a.dev" + } +} From 8b44b56857caa92be088aea04679f75ced26b749 Mon Sep 17 00:00:00 2001 From: Siddhant Gupta <33697714+GuptaSiddhant@users.noreply.github.com> Date: Wed, 7 Oct 2020 23:34:01 +0300 Subject: [PATCH 027/239] Create guptasiddhant.json --- domains/guptasiddhant.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/guptasiddhant.json diff --git a/domains/guptasiddhant.json b/domains/guptasiddhant.json new file mode 100644 index 0000000000..dccec4a292 --- /dev/null +++ b/domains/guptasiddhant.json @@ -0,0 +1,11 @@ +{ + "description": "Is Dev domain for Siddhant GUPTA", + "repo": "https://github.com/guptasiddhant/guptasiddhant/, + "owner": { + "username": "GuptaSiddhant", + "email": "me@guptasiddhant.com" + }, + "record": { + "URL": "http://guptasiddhant.com" + } +} From c50bd678b5baffc7f3873933017f66a7670d6270 Mon Sep 17 00:00:00 2001 From: Bradley Holbrook Date: Wed, 7 Oct 2020 14:08:19 -0700 Subject: [PATCH 028/239] Create bradley.json --- domains/bradley.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/bradley.json diff --git a/domains/bradley.json b/domains/bradley.json new file mode 100644 index 0000000000..d2137d61bb --- /dev/null +++ b/domains/bradley.json @@ -0,0 +1,10 @@ +{ + "description": "Bradley's website", + "owner": { + "username": "bholbrook73", + "email": "bradley73@gmail.com" + }, + "record": { + "ALIAS": "bradleyholbrook.com" + } +} From 114e083323b1b6aa2430c03343a6349ec504b693 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martial=20S=C3=A9ron?= Date: Wed, 7 Oct 2020 23:17:26 +0200 Subject: [PATCH 029/239] Add martial.json --- domains/martial.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/martial.json diff --git a/domains/martial.json b/domains/martial.json new file mode 100644 index 0000000000..255ef51be3 --- /dev/null +++ b/domains/martial.json @@ -0,0 +1,12 @@ +{ + "description": "Martial is a dev", + "repo": "https://github.com/MartialSeron/MartialSeron.github.io", + "owner": { + "username": "MartialSeron", + "email": "martial.seron@gmail.com" + }, + "record": { + "CNAME": "martialseron.github.io", + "URL": "https://martial.is-a.dev" + } +} From 72e7d356b27ebe33217dc393e3aa77ba9ecc4fc4 Mon Sep 17 00:00:00 2001 From: Chetan Basuray Date: Wed, 7 Oct 2020 23:24:02 +0200 Subject: [PATCH 030/239] Added domain for my website --- domains/chetanbasuray.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/chetanbasuray.json diff --git a/domains/chetanbasuray.json b/domains/chetanbasuray.json new file mode 100644 index 0000000000..9dcaaf9b18 --- /dev/null +++ b/domains/chetanbasuray.json @@ -0,0 +1,12 @@ +{ + "description": "Chetan's website", + "repo": "https://github.com/chetanbasuray/chetanbasuray.github.io", + "owner": { + "username": "chetanbasuray", + "email": "basuraychetan@gmail.com" + }, + "record": { + "CNAME": "chetanbasuray.github.io", + "URL": "https://chetan-basuray.is-a.dev" + } +} \ No newline at end of file From 94467f5feab1371b15e1c99b1aa8cfb259f6c894 Mon Sep 17 00:00:00 2001 From: Kevin Brogan Date: Wed, 7 Oct 2020 14:35:41 -0700 Subject: [PATCH 031/239] Create kevin.json --- domains/kevin.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/kevin.json diff --git a/domains/kevin.json b/domains/kevin.json new file mode 100644 index 0000000000..2c04289dec --- /dev/null +++ b/domains/kevin.json @@ -0,0 +1,11 @@ +{ + "owner": { + "username": "KevinBrogan", + "email": "kevin@brogan.ca" + }, + { + "record": { + "CNAME": "brogan.ca" + } + } +} From 4495bf4d837de7253c1b591982cd81db2a359555 Mon Sep 17 00:00:00 2001 From: Kevin Brogan Date: Wed, 7 Oct 2020 14:37:44 -0700 Subject: [PATCH 032/239] Update kevin.json --- domains/kevin.json | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/domains/kevin.json b/domains/kevin.json index 2c04289dec..d563af887d 100644 --- a/domains/kevin.json +++ b/domains/kevin.json @@ -1,11 +1,9 @@ { - "owner": { - "username": "KevinBrogan", - "email": "kevin@brogan.ca" - }, - { - "record": { - "CNAME": "brogan.ca" - } - } + "owner": { + "username": "KevinBrogan", + "email": "kevin@brogan.ca" + }, + "record": { + "CNAME": "brogan.ca" + } } From 5a8b923fa46c523e2a785892a72f2d5a86ce9e7f Mon Sep 17 00:00:00 2001 From: Cameron Steele Date: Wed, 7 Oct 2020 16:52:49 -0500 Subject: [PATCH 033/239] Create atechadventurer.json --- domains/atechadventurer.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/atechadventurer.json diff --git a/domains/atechadventurer.json b/domains/atechadventurer.json new file mode 100644 index 0000000000..562f3ed467 --- /dev/null +++ b/domains/atechadventurer.json @@ -0,0 +1,11 @@ +{ + "description": "ATechAdventurer's Site", + "repo": "https://github.com/ATechAdventurer", + "owner": { + "username": "ATechAdventurer", + "email": "cam.steeleis@gmail.com" + }, + "record": { + "URL": "https://github.com/ATechAdventurer" + } +} From ebc9ff77d3ba7d20392cf18e84287fe64d0b37a3 Mon Sep 17 00:00:00 2001 From: Sean Date: Wed, 7 Oct 2020 22:13:21 +0000 Subject: [PATCH 034/239] chore: add domain --- domains/stiforr.json | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 domains/stiforr.json diff --git a/domains/stiforr.json b/domains/stiforr.json new file mode 100644 index 0000000000..77be3c5e29 --- /dev/null +++ b/domains/stiforr.json @@ -0,0 +1,9 @@ +{ + "owner": { + "username": "stiforr", + "email": "norwood.sean@gmail.com" + }, + "record": { + "CNAME": "stiforr.com" + } +} \ No newline at end of file From 3d20d4aff7093aaa464df99c42c33d1cb6e71a04 Mon Sep 17 00:00:00 2001 From: Anthony Hubble Date: Thu, 8 Oct 2020 08:51:05 +1000 Subject: [PATCH 035/239] Create anthony.json --- domains/anthony.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/anthony.json diff --git a/domains/anthony.json b/domains/anthony.json new file mode 100644 index 0000000000..9414838bc0 --- /dev/null +++ b/domains/anthony.json @@ -0,0 +1,12 @@ +{ + "description": "Anthony's personal developer website", + "repo": "https://github.com/github-username/github-username.github.io", + "owner": { + "username": "hubsta", + "email": "admin@thehubble.com.au" + }, + "record": { + "CNAME": "brisbaneweb.dev", + "URL": "https://anthony.is-a.dev" + } +} From 8023e2a491311cdd778523fd0471f4bcb50d93f4 Mon Sep 17 00:00:00 2001 From: Danilo Campana Fuchs Date: Wed, 7 Oct 2020 19:51:57 -0300 Subject: [PATCH 036/239] New Domain --- domains/danilofuchs.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/danilofuchs.json diff --git a/domains/danilofuchs.json b/domains/danilofuchs.json new file mode 100644 index 0000000000..46f2cf52ac --- /dev/null +++ b/domains/danilofuchs.json @@ -0,0 +1,12 @@ +{ + "description": "danilofuchs's is-a.dev domain", + "repo": "https://github.com/danilofuchs/danilofuchs.github.io", + "owner": { + "username": "danilofuchs", + "email": "danilo_fuchs@hotmail.com" + }, + "record": { + "CNAME": "danilofuchs.github.io", + "URL": "https://danilofuchs.is-a.dev" + } +} From 0bccbe0757a84a83b74124ac409d00bcb104c722 Mon Sep 17 00:00:00 2001 From: Dan Habot Date: Wed, 7 Oct 2020 18:58:31 -0400 Subject: [PATCH 037/239] Registered for my domain --- domains/dan-habot.is-a.dev | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/dan-habot.is-a.dev diff --git a/domains/dan-habot.is-a.dev b/domains/dan-habot.is-a.dev new file mode 100644 index 0000000000..c58d894fd6 --- /dev/null +++ b/domains/dan-habot.is-a.dev @@ -0,0 +1,12 @@ +{ + "description": "Fullstack web & mobile dev, quality assurance, automation, reverse engineering, and flexible", + "repo": "https://github.com/danhab99/danhab99.github.io", + "owner": { + "username": "danhab99", + "email": "dan.habot@gmail.com" + }, + "record": { + "CNAME": "danhab99.github.io", + "URL": "https://dan-habot.is-a.dev" + } +} From 67d33061f4906eb5d492a7b846202610ea3dec49 Mon Sep 17 00:00:00 2001 From: Aaron Harvey <10888871+aaron-harvey@users.noreply.github.com> Date: Wed, 7 Oct 2020 16:00:39 -0700 Subject: [PATCH 038/239] chore: add future dev page --- domains/aaron.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/aaron.json diff --git a/domains/aaron.json b/domains/aaron.json new file mode 100644 index 0000000000..9778d91504 --- /dev/null +++ b/domains/aaron.json @@ -0,0 +1,12 @@ +{ + "description": "Aaron's personal developer website", + "repo": "https://github.com/aaron-harvey", + "owner": { + "username": "aaronharvey", + "email": "aaron@lolsup.com" + }, + "record": { + "CNAME": "lolsup.com", + "URL": "https://aaron.is-a.dev" + } +} From 652a71d76f6c658bf3898dd9d26ab9839acb18b0 Mon Sep 17 00:00:00 2001 From: Matt Casey Date: Wed, 7 Oct 2020 19:16:03 -0400 Subject: [PATCH 039/239] add matt --- domains/matt.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/matt.json diff --git a/domains/matt.json b/domains/matt.json new file mode 100644 index 0000000000..5b86de240b --- /dev/null +++ b/domains/matt.json @@ -0,0 +1,11 @@ +{ + "description": "Matt Casey is a Developer!", + "repo": "https://github.com/mattcasey", + "owner": { + "username": "mattcasey", + "email": "mattwad@gmail.com" + }, + "record": { + "URL": "https://www.linkedin.com/in/mbcasey" + } +} \ No newline at end of file From 075824a52bf1426cc424acc9b9c96c737df6e557 Mon Sep 17 00:00:00 2001 From: Michael Mano Date: Thu, 8 Oct 2020 09:24:33 +1000 Subject: [PATCH 040/239] Add my json --- domains/michael.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 domains/michael.json diff --git a/domains/michael.json b/domains/michael.json new file mode 100644 index 0000000000..8e827e0ed8 --- /dev/null +++ b/domains/michael.json @@ -0,0 +1,13 @@ +{ + "description": "Michael's portfolio website and blog", + "repo": "https://github.com/michaelmano/michaelmano.github.io", + "owner": { + "username": "michaelmano", + "email": "michael.mano26@gmail.com" + }, + "record": { + "CNAME": "michaelmano.github.io", + "URL": "https://michael.is-a.dev" + } + } + \ No newline at end of file From 18c63c2558318ef6edcbe729daa75b1062e6ebb8 Mon Sep 17 00:00:00 2001 From: Tom Mitchelmore Date: Thu, 8 Oct 2020 00:31:41 +0100 Subject: [PATCH 041/239] Create tom.json --- domains/tom.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/tom.json diff --git a/domains/tom.json b/domains/tom.json new file mode 100644 index 0000000000..f97d865bbf --- /dev/null +++ b/domains/tom.json @@ -0,0 +1,10 @@ +{ + "owner": { + "username": "tommitchelmore", + "email": "tommitchelmore@outlook.com" + }, + "repo": "https://github.com/tommitchelmore", + "record": { + "URL": "https://github.com/tommitchelmore" + } +} From c6ec5f98c00aabdeb8bc12245338b048b0060a77 Mon Sep 17 00:00:00 2001 From: Andrew Swan Date: Thu, 8 Oct 2020 09:41:19 +1000 Subject: [PATCH 042/239] Create swanny.json --- domains/swanny.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/swanny.json diff --git a/domains/swanny.json b/domains/swanny.json new file mode 100644 index 0000000000..b59c071c22 --- /dev/null +++ b/domains/swanny.json @@ -0,0 +1,12 @@ +{ + "description": "Swanny is a Dev", + "repo": "https://github.com/swanny246/swannyIsADev/", + "owner": { + "username": "swanny246", + "email": "github@andrewswan.net" + }, + "record": { + "CNAME": "swannyisadev.andrewswan.net", + "URL": "https://swanny.is-a.dev" + } +} From 71c2c3131c44e219d456169945e858090dd3adaa Mon Sep 17 00:00:00 2001 From: Jeremy Foster Date: Wed, 7 Oct 2020 17:00:11 -0700 Subject: [PATCH 043/239] Create domains/codefoster.json --- domains/codefoster.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/codefoster.json diff --git a/domains/codefoster.json b/domains/codefoster.json new file mode 100644 index 0000000000..a21e921c26 --- /dev/null +++ b/domains/codefoster.json @@ -0,0 +1,11 @@ +{ + "description": "The main for codefoster - a Software Engineer at Microsoft.", + "repo": "https://github.com/codefoster", + "owner": { + "username": "codefoster", + "email": "jeremy.foster@live.com" + }, + "record": { + "URL": "http://codefoster.com" + } +} From 99f896c03a2cc46d338a1c7989faf874609839d8 Mon Sep 17 00:00:00 2001 From: Charlie Chrisman Date: Thu, 8 Oct 2020 03:36:12 +0200 Subject: [PATCH 044/239] Create charlie. Json --- domains/charlie. Json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/charlie. Json diff --git a/domains/charlie. Json b/domains/charlie. Json new file mode 100644 index 0000000000..eeee3416ae --- /dev/null +++ b/domains/charlie. Json @@ -0,0 +1,11 @@ +{ + "description": " Charlie is a Dev", + "owner": { + "username": "cachrisman", + "email": "charlie.chrisman@gmail.com" + }, + "record": { + "CNAME": "www.charliechrisman.com", + "URL": "https://charlie.is-a.dev" + } +} From 23936cca0f336fa85e32bdf641f172288911971b Mon Sep 17 00:00:00 2001 From: Charlie Chrisman Date: Thu, 8 Oct 2020 03:40:19 +0200 Subject: [PATCH 045/239] Update and rename charlie. Json to charlie.json --- domains/{charlie. Json => charlie.json} | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename domains/{charlie. Json => charlie.json} (65%) diff --git a/domains/charlie. Json b/domains/charlie.json similarity index 65% rename from domains/charlie. Json rename to domains/charlie.json index eeee3416ae..419de86fa0 100644 --- a/domains/charlie. Json +++ b/domains/charlie.json @@ -1,11 +1,12 @@ { "description": " Charlie is a Dev", + "repo": "https://github.com/cachrisman/cachrisman.github.io", "owner": { "username": "cachrisman", "email": "charlie.chrisman@gmail.com" }, "record": { - "CNAME": "www.charliechrisman.com", + "CNAME": "cachrisman.github.io", "URL": "https://charlie.is-a.dev" } } From 6e452c157a5dce5ec3022ffc4531bf6d34a17465 Mon Sep 17 00:00:00 2001 From: Ahsan Date: Thu, 8 Oct 2020 00:13:56 -0400 Subject: [PATCH 046/239] Create ahsan.is-a.dev --- domains/ahsan.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/ahsan.json diff --git a/domains/ahsan.json b/domains/ahsan.json new file mode 100644 index 0000000000..00b8590251 --- /dev/null +++ b/domains/ahsan.json @@ -0,0 +1,11 @@ +{ + "description": "Ahsan's Personal Website", + "owner": { + "username": "aqureshi", + "email": "ahsan.qureshi8@gmail.com" + }, + "record": { + "CNAME": "www.thisisahsan.com", + "URL": "https://ahsan.is-a.dev" + } +} From c62875e17bcc6df4fa16796af3e966a715ae2dc4 Mon Sep 17 00:00:00 2001 From: Andros Fenollosa Date: Thu, 8 Oct 2020 06:21:17 +0200 Subject: [PATCH 047/239] Create andros.json --- domains/andros.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/andros.json diff --git a/domains/andros.json b/domains/andros.json new file mode 100644 index 0000000000..c99af7fc27 --- /dev/null +++ b/domains/andros.json @@ -0,0 +1,11 @@ +{ + "description": "Andros's personal developer website", + "repo": "https://github.com/tanrax", + "owner": { + "username": "Andros Fenollosa Hurtado", + "email": "" + }, + "record": { + "URL": "https://programadorwebvalencia.com/" + } +} From a66883ad4294adef200f271473e69a6ea474f8f2 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 8 Oct 2020 10:35:37 +0530 Subject: [PATCH 048/239] Update domains/guptasiddhant.json --- domains/guptasiddhant.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/guptasiddhant.json b/domains/guptasiddhant.json index dccec4a292..d954107e64 100644 --- a/domains/guptasiddhant.json +++ b/domains/guptasiddhant.json @@ -1,6 +1,6 @@ { "description": "Is Dev domain for Siddhant GUPTA", - "repo": "https://github.com/guptasiddhant/guptasiddhant/, + "repo": "https://github.com/guptasiddhant/guptasiddhant/", "owner": { "username": "GuptaSiddhant", "email": "me@guptasiddhant.com" From 599dda6c36257566c123096f93346f5b64693a1a Mon Sep 17 00:00:00 2001 From: Anthony Hubble Date: Thu, 8 Oct 2020 15:33:48 +1000 Subject: [PATCH 049/239] Update anthony.json --- domains/anthony.json | 1 - 1 file changed, 1 deletion(-) diff --git a/domains/anthony.json b/domains/anthony.json index 9414838bc0..76eace3753 100644 --- a/domains/anthony.json +++ b/domains/anthony.json @@ -1,6 +1,5 @@ { "description": "Anthony's personal developer website", - "repo": "https://github.com/github-username/github-username.github.io", "owner": { "username": "hubsta", "email": "admin@thehubble.com.au" From b386db479cae54e97b68944643c1b8a7af84f4ff Mon Sep 17 00:00:00 2001 From: Gilad Even-Tov Date: Thu, 8 Oct 2020 07:59:32 +0200 Subject: [PATCH 050/239] Create gilad.json --- domains/gilad.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/gilad.json diff --git a/domains/gilad.json b/domains/gilad.json new file mode 100644 index 0000000000..612ba57b11 --- /dev/null +++ b/domains/gilad.json @@ -0,0 +1,11 @@ +{ + "description": "Gilad's personal developer website", + "owner": { + "username": "gilade", + "email": "gilad@eventov.com" + }, + "record": { + "CNAME": "gilad.ninja", + "URL": "https://gilad.is-a.dev" + } +} From 2c3645453f40aadbfaa76e11b9d154ac41cadd23 Mon Sep 17 00:00:00 2001 From: Sp4nd3x Date: Thu, 8 Oct 2020 18:05:54 +1100 Subject: [PATCH 051/239] Create chris.json --- domains/chris.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/chris.json diff --git a/domains/chris.json b/domains/chris.json new file mode 100644 index 0000000000..27977fde33 --- /dev/null +++ b/domains/chris.json @@ -0,0 +1,12 @@ + +{ + "description": "Chris' Site", + "repo": "https://github.com/Sp4nd3x/", + "owner": { + "username": "Sp4nd3x", + "email": "chrisisadev@gmail.com" + }, + "record": { + "URL": "https://github.com/Sp4nd3x/" + } +} From 3c23e663239f0466508848846647e1e530356097 Mon Sep 17 00:00:00 2001 From: Sp4nd3x Date: Thu, 8 Oct 2020 18:24:17 +1100 Subject: [PATCH 052/239] Update chris.json update cname. --- domains/chris.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/domains/chris.json b/domains/chris.json index 27977fde33..4d2e473101 100644 --- a/domains/chris.json +++ b/domains/chris.json @@ -7,6 +7,7 @@ "email": "chrisisadev@gmail.com" }, "record": { - "URL": "https://github.com/Sp4nd3x/" + "CNAME": "sp4nd3x.github.io", + "URL": "https://chris.is-a.dev" } } From 4531bbda76ab6f42f985f981723482766873ef29 Mon Sep 17 00:00:00 2001 From: Tomas Ukrinas Date: Thu, 8 Oct 2020 10:45:48 +0300 Subject: [PATCH 053/239] Create tomas.json --- domains/tomas.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/tomas.json diff --git a/domains/tomas.json b/domains/tomas.json new file mode 100644 index 0000000000..b14ef10909 --- /dev/null +++ b/domains/tomas.json @@ -0,0 +1,10 @@ +{ + "description": "Tomas's personal developer website", + "owner": { + "username": "Tomas Ukrinas", + "email": "tomas@ukrinas.eu" + }, + "record": { + "CNAME": "ukrinas.eu" + } +} From 1c273a37d26aabea44bc62ddca8946f2a8280997 Mon Sep 17 00:00:00 2001 From: Rabbi Shuki Gur Date: Thu, 8 Oct 2020 10:59:34 +0300 Subject: [PATCH 054/239] Create rabbi-shuki.json --- domains/rabbi-shuki.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/rabbi-shuki.json diff --git a/domains/rabbi-shuki.json b/domains/rabbi-shuki.json new file mode 100644 index 0000000000..b834efb750 --- /dev/null +++ b/domains/rabbi-shuki.json @@ -0,0 +1,12 @@ +{ + "description": "TODO: update readme", + "repo": "https://github.com/rabbishuki/rabbishuki.github.io", + "owner": { + "username": "Rabbi Shuki", + "email": "rabbishuki+is-a-dev@gmail.com" + }, + "record": { + "CNAME": "rabbishuki.github.io", + "URL": "https://rabbi-shuki.is-a.dev" + } +} From 574b7a3c87765b0746a5e1dbefb99cef2348f3c8 Mon Sep 17 00:00:00 2001 From: Rayvid Date: Thu, 8 Oct 2020 11:06:01 +0300 Subject: [PATCH 055/239] Create subdomain --- domains/rayvid.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 domains/rayvid.json diff --git a/domains/rayvid.json b/domains/rayvid.json new file mode 100644 index 0000000000..3455bc522f --- /dev/null +++ b/domains/rayvid.json @@ -0,0 +1,13 @@ + +{ + "description": "Rayvid's website", + "repo": "https://github.com/Rayvid", + "owner": { + "username": "rayvid", + "email": "gin.kisonas@gmail.com" + }, + "record": { + "CNAME": "rayvid.github.io", + "URL": "https://rayvid.is-a.dev" + } +} From 9248ada428bae5d09a1ff9d50075d18cdb299830 Mon Sep 17 00:00:00 2001 From: Andros Fenollosa Date: Thu, 8 Oct 2020 12:48:56 +0200 Subject: [PATCH 056/239] Remove email and Add twitter --- domains/andros.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/andros.json b/domains/andros.json index c99af7fc27..5d74e6434c 100644 --- a/domains/andros.json +++ b/domains/andros.json @@ -3,7 +3,7 @@ "repo": "https://github.com/tanrax", "owner": { "username": "Andros Fenollosa Hurtado", - "email": "" + "twitter": "@androsfenollosa" }, "record": { "URL": "https://programadorwebvalencia.com/" From 2eac0f77874ffd1bf6775c8b30744f5d31360e8b Mon Sep 17 00:00:00 2001 From: Mike Verhees Date: Thu, 8 Oct 2020 13:07:28 +0200 Subject: [PATCH 057/239] Create mverhees.json --- domains/mverhees.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/mverhees.json diff --git a/domains/mverhees.json b/domains/mverhees.json new file mode 100644 index 0000000000..1e0df62dcc --- /dev/null +++ b/domains/mverhees.json @@ -0,0 +1,12 @@ +{ + "description": "Mike's website", + "repo": "https://github.com/MikeVerhees/MikeVerhees.github.io", + "owner": { + "username": "MikeVerhees", + "email": "mikeverhees95@gmail.com" + }, + "record": { + "CNAME": "MikeVerhees.github.io", + "URL": "https://MikeVerhees.is-a.dev" + } +} \ No newline at end of file From 81b1cb3479845c10fa054c596813f8a3784f5db4 Mon Sep 17 00:00:00 2001 From: Shalom Steinbach Date: Thu, 8 Oct 2020 14:19:19 +0300 Subject: [PATCH 058/239] add shalom.json --- domains/shalom.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/shalom.json diff --git a/domains/shalom.json b/domains/shalom.json new file mode 100644 index 0000000000..bf7bd85011 --- /dev/null +++ b/domains/shalom.json @@ -0,0 +1,11 @@ +{ + "description": "Shalom's personal website", + "owner": { + "username": "shalomscott", + "email": "shalomss525@gmail.com" + }, + "record": { + "CNAME": "shalom-is-a-dev.netlify.app", + "URL": "https://shalom.is-a.dev" + } +} From 69fa79a10031fb3dd2796e2d5661addab961943d Mon Sep 17 00:00:00 2001 From: thundergod Date: Thu, 8 Oct 2020 16:49:43 +0530 Subject: [PATCH 059/239] CodeThoma joins the fray --- domains/aj.json | 12 ++++++++++++ domains/codethoma.json | 12 ++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 domains/aj.json create mode 100644 domains/codethoma.json diff --git a/domains/aj.json b/domains/aj.json new file mode 100644 index 0000000000..0ec509f97a --- /dev/null +++ b/domains/aj.json @@ -0,0 +1,12 @@ +{ + "description": "The ThunderDome", + "repo": "https://github.com/mrthundergod/", + "owner": { + "username": "mrthundergod", + "email": "mrthundergod@gmail.com" + }, + "record": { + "CNAME": "mrthundergod.github.io", + "URL": "https://aj.is-a.dev" + } +} diff --git a/domains/codethoma.json b/domains/codethoma.json new file mode 100644 index 0000000000..baafb82d11 --- /dev/null +++ b/domains/codethoma.json @@ -0,0 +1,12 @@ +{ + "description": "The ThunderDome", + "repo": "https://github.com/codethoma/", + "owner": { + "username": "codethoma", + "email": "mrthundergod@gmail.com" + }, + "record": { + "CNAME": "codethoma.github.io", + "URL": "https://codethoma.is-a.dev" + } +} From 5e9f99947a656738444e6b842239a1eaa8b60f9b Mon Sep 17 00:00:00 2001 From: Aravind AJ <35934260+mrthundergod@users.noreply.github.com> Date: Thu, 8 Oct 2020 16:51:46 +0530 Subject: [PATCH 060/239] Delete aj.json --- domains/aj.json | 12 ------------ 1 file changed, 12 deletions(-) delete mode 100644 domains/aj.json diff --git a/domains/aj.json b/domains/aj.json deleted file mode 100644 index 0ec509f97a..0000000000 --- a/domains/aj.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "The ThunderDome", - "repo": "https://github.com/mrthundergod/", - "owner": { - "username": "mrthundergod", - "email": "mrthundergod@gmail.com" - }, - "record": { - "CNAME": "mrthundergod.github.io", - "URL": "https://aj.is-a.dev" - } -} From be1e4f3f15f6fc5ec41952fa06865f5489aa253d Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 8 Oct 2020 17:54:58 +0530 Subject: [PATCH 061/239] Fixes andros 'email' field --- domains/andros.json | 1 + 1 file changed, 1 insertion(+) diff --git a/domains/andros.json b/domains/andros.json index 5d74e6434c..8d17a744f0 100644 --- a/domains/andros.json +++ b/domains/andros.json @@ -3,6 +3,7 @@ "repo": "https://github.com/tanrax", "owner": { "username": "Andros Fenollosa Hurtado", + "email": "", "twitter": "@androsfenollosa" }, "record": { From 979dfd7f219402108079930f6d03821e5fb4122d Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 8 Oct 2020 18:01:28 +0530 Subject: [PATCH 062/239] Update domains/mverhees.json --- domains/mverhees.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/mverhees.json b/domains/mverhees.json index 1e0df62dcc..19b6d3678c 100644 --- a/domains/mverhees.json +++ b/domains/mverhees.json @@ -7,6 +7,6 @@ }, "record": { "CNAME": "MikeVerhees.github.io", - "URL": "https://MikeVerhees.is-a.dev" + "URL": "https://mverhees.is-a.dev" } -} \ No newline at end of file +} From 44ccf3812c08fca05023fdfb2f039b64ca02495e Mon Sep 17 00:00:00 2001 From: Evan Date: Thu, 8 Oct 2020 08:33:11 -0400 Subject: [PATCH 063/239] ecalzo.json and domain --- domains/ecalzo.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/ecalzo.json diff --git a/domains/ecalzo.json b/domains/ecalzo.json new file mode 100644 index 0000000000..1243a68c52 --- /dev/null +++ b/domains/ecalzo.json @@ -0,0 +1,12 @@ +{ + "description": "Evan's personal developer blog", + "repo": "https://github.com/Ecalzo/ecalzo.github.io", + "owner": { + "username": "ecalzo", + "email": "evancalz@me.com" + }, + "record": { + "CNAME": "ecalzo.github.io", + "URL": "https://ecalzo.is-a.dev" + } +} From 9b063028e82bacb3cd03bc85a5b57496ccc90f59 Mon Sep 17 00:00:00 2001 From: Michael Robbins Date: Thu, 8 Oct 2020 05:49:29 -0700 Subject: [PATCH 064/239] Add mike.json --- domains/mike.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/mike.json diff --git a/domains/mike.json b/domains/mike.json new file mode 100644 index 0000000000..7feea0794f --- /dev/null +++ b/domains/mike.json @@ -0,0 +1,12 @@ +{ + "description": "Mike's portfolio website and blog", + "repo": "https://github.com/mdrobbins", + "owner": { + "username": "mdrobbins", + "email": "mikedrobbins@gmail.com" + }, + "record": { + "URL": "https://mikerobbins.me" + } + } + \ No newline at end of file From c6dc570d7cd15520de75882418a2ff6cb6ef768b Mon Sep 17 00:00:00 2001 From: Alex Lykesas Date: Thu, 8 Oct 2020 15:58:55 +0300 Subject: [PATCH 065/239] add alexlykesas.is-a.dev domain --- domains/alexlykesas.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/alexlykesas.json diff --git a/domains/alexlykesas.json b/domains/alexlykesas.json new file mode 100644 index 0000000000..0a60cb6826 --- /dev/null +++ b/domains/alexlykesas.json @@ -0,0 +1,12 @@ +{ + "description": "Alex Lykesas's personal developer website", + "repo": "https://github.com/Alexookah/alexlykesas.com", + "owner": { + "username": "alexookah", + "email": "alexlykesas@gmail.com" + }, + "record": { + "CNAME": "alexlykesas.com", + "URL": "https://alexlykesas.is-a.dev" + } +} From 026417e1dc71f6815d8b25dcd884c212f83f408f Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 8 Oct 2020 18:33:06 +0530 Subject: [PATCH 066/239] Adds enforce https instruction --- scripts/reply.js | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/reply.js b/scripts/reply.js index 0f0054fbf9..31bccd540c 100644 --- a/scripts/reply.js +++ b/scripts/reply.js @@ -11,6 +11,7 @@ If your domain points to a server you own, add \`domain-name.is-a.dev\` to your * 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' check box if you added the URL record for forced https redirection * Give it some time to reflect and you should be good to go From ce1d459480c90a624a23cd7d012cc9dd8f5d6323 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 8 Oct 2020 18:47:00 +0530 Subject: [PATCH 067/239] Enforce https added --- API.md | 1 + 1 file changed, 1 insertion(+) diff --git a/API.md b/API.md index c91be51564..47d125c53e 100644 --- a/API.md +++ b/API.md @@ -23,6 +23,7 @@ } ``` * After the pull request is merged, you will see a 404 error on `your-domain.is-a.dev`. To fix this go to your github page repo's `Settings > Github pages > Custom domain` and add `your-domain.is-a.dev` in the given field +* If you have added the `URL` record for forced https, check the `Enforce HTTPS` checkbox too From 737a0bc884e7a84fcc8b2cbb294e6aa9bd02f9b8 Mon Sep 17 00:00:00 2001 From: Madhav V Date: Thu, 8 Oct 2020 19:17:51 +0530 Subject: [PATCH 068/239] Create madhav.json --- domains/madhav.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 domains/madhav.json diff --git a/domains/madhav.json b/domains/madhav.json new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/domains/madhav.json @@ -0,0 +1 @@ + From 248cca1fb8d38cf93481b5a75f16b1fb3d6c7961 Mon Sep 17 00:00:00 2001 From: Madhav V Date: Thu, 8 Oct 2020 19:27:10 +0530 Subject: [PATCH 069/239] Update madhav.json with fields --- domains/madhav.json | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/domains/madhav.json b/domains/madhav.json index 8b13789179..e66d5f4cb8 100644 --- a/domains/madhav.json +++ b/domains/madhav.json @@ -1 +1,11 @@ - +{ + "repo": "https://github.com/LaBus3/LaBus3.github.io", + "owner": { + "username": "LaBus3", + "email": "madhav.v.1996@gmail.com" + }, + "record": { + "CNAME": "LaBus3.github.io", + "URL": "https://madhav.is-a.dev" + } +} From 859798b0f47a21d9698c94c5f17961d28232282a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E0=B4=95=E0=B5=8B=E0=B4=A1=E0=B5=8D=20=E0=B4=A4=E0=B5=8B?= =?UTF-8?q?=E0=B4=AE=E0=B4=BE?= <72553710+codethoma@users.noreply.github.com> Date: Thu, 8 Oct 2020 19:27:47 +0530 Subject: [PATCH 070/239] thundergod's domain --- domains/mrthundergod.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/mrthundergod.json diff --git a/domains/mrthundergod.json b/domains/mrthundergod.json new file mode 100644 index 0000000000..a7d5f9b20f --- /dev/null +++ b/domains/mrthundergod.json @@ -0,0 +1,12 @@ +{ + "description": "The ThunderDome", + "repo": "https://github.com/mrthundergod/", + "owner": { + "username": "mrthundergod", + "email": "mrthundergod@gmail.com" + }, + "record": { + "CNAME": "mrthundergod.github.io", + "URL": "https://mrthundergod.is-a.dev" + } +} From 3c6e608ba3d3a63757a9a8fcc4e1e4d5cc8e3e8a Mon Sep 17 00:00:00 2001 From: Akash Santhosh <33491581+akash-santhosh@users.noreply.github.com> Date: Thu, 8 Oct 2020 14:00:45 +0000 Subject: [PATCH 071/239] Create akash.json --- domains/akash.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/akash.json diff --git a/domains/akash.json b/domains/akash.json new file mode 100644 index 0000000000..0fa33a8b3c --- /dev/null +++ b/domains/akash.json @@ -0,0 +1,12 @@ +{ + "description": "Akash Santhosh is a Dev", + "repo": "https://github.com/akash-santhosh/is-a-dev", + "owner": { + "username": "akash-santhosh", + "email": "akashsanthosh@icloud.com" + }, + "record": { + "CNAME": "akash-santhosh.github.io", + "URL": "https://akash.is-a.dev" + } +} From d7e284a51a0c293aa85e8c227f945cf75f2cab18 Mon Sep 17 00:00:00 2001 From: mayurdange Date: Thu, 8 Oct 2020 19:46:20 +0530 Subject: [PATCH 072/239] Create mayur.json added \domains\mayur.json --- domains/mayur.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/mayur.json diff --git a/domains/mayur.json b/domains/mayur.json new file mode 100644 index 0000000000..6d137b53cf --- /dev/null +++ b/domains/mayur.json @@ -0,0 +1,12 @@ +{ + "description": "Mayur Dange is a Developer!", + "repo": "https://github.com/mayurdange/mayurdange.github.io", + "owner": { + "username": "mayurdange", + "email": "mayurdange@live.com" + }, + "record": { + "CNAME": "mayurdange.github.io", + "URL": "https://mayur.is-a.dev" + } +} From a5a30667de2eadca662cc3984ff620f062161746 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Thu, 8 Oct 2020 20:53:04 +0530 Subject: [PATCH 073/239] Adds note for https --- scripts/reply.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/reply.js b/scripts/reply.js index 31bccd540c..e1ae2d25c0 100644 --- a/scripts/reply.js +++ b/scripts/reply.js @@ -4,7 +4,7 @@ The changes you have made will soon be reflected!! ## 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. +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\`) From a2b6d0881a57a41137980c2566f7ce85980f3c44 Mon Sep 17 00:00:00 2001 From: Alex Lykesas Date: Thu, 8 Oct 2020 20:46:50 +0300 Subject: [PATCH 074/239] update record to redirect --- domains/alexlykesas.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/domains/alexlykesas.json b/domains/alexlykesas.json index 0a60cb6826..9286442f59 100644 --- a/domains/alexlykesas.json +++ b/domains/alexlykesas.json @@ -6,7 +6,6 @@ "email": "alexlykesas@gmail.com" }, "record": { - "CNAME": "alexlykesas.com", - "URL": "https://alexlykesas.is-a.dev" + "URL": "alexlykesas.com" } } From 389ce998e19c00c1f4e9013aab6f5aeb875cf53e Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 00:42:42 +0530 Subject: [PATCH 075/239] Update alexlykesas.json --- domains/alexlykesas.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/alexlykesas.json b/domains/alexlykesas.json index 9286442f59..3cf45f5d06 100644 --- a/domains/alexlykesas.json +++ b/domains/alexlykesas.json @@ -6,6 +6,6 @@ "email": "alexlykesas@gmail.com" }, "record": { - "URL": "alexlykesas.com" + "URL": "https://alexlykesas.com" } } From 446c4e133544fdc41c41c4f994347fccf03bae32 Mon Sep 17 00:00:00 2001 From: Kyle Simpson Date: Thu, 8 Oct 2020 15:28:27 -0500 Subject: [PATCH 076/239] adding getify --- domains/getify.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/getify.json diff --git a/domains/getify.json b/domains/getify.json new file mode 100644 index 0000000000..7272c579c0 --- /dev/null +++ b/domains/getify.json @@ -0,0 +1,10 @@ +{ + "owner": { + "username": "getify", + "email": "domains@dontsend.me" + }, + "record": { + "A": "50.116.28.162", + "URL": "https://getify.is-a.dev" + } +} From 824c0e29ca6766d4ea3258b545ef2630f0a300d3 Mon Sep 17 00:00:00 2001 From: Kyle Simpson Date: Thu, 8 Oct 2020 15:33:07 -0500 Subject: [PATCH 077/239] drop HTTPS requirement --- domains/getify.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/domains/getify.json b/domains/getify.json index 7272c579c0..15f0786ca3 100644 --- a/domains/getify.json +++ b/domains/getify.json @@ -4,7 +4,6 @@ "email": "domains@dontsend.me" }, "record": { - "A": "50.116.28.162", - "URL": "https://getify.is-a.dev" + "A": "50.116.28.162" } } From 0aa0ee7e807a0621d55f8f362142ce69d2241d7b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 02:23:14 +0530 Subject: [PATCH 078/239] Fixes getify.json --- domains/getify.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/getify.json b/domains/getify.json index 15f0786ca3..4aff2f839a 100644 --- a/domains/getify.json +++ b/domains/getify.json @@ -4,6 +4,6 @@ "email": "domains@dontsend.me" }, "record": { - "A": "50.116.28.162" + "A": ["50.116.28.162"] } } From 5dc62c003e8d72a6b3fa41535103ce37b86ec5ef Mon Sep 17 00:00:00 2001 From: Grzegorz Kucmierz Date: Thu, 8 Oct 2020 22:55:49 +0200 Subject: [PATCH 079/239] add gkucmierz.json --- domains/gkucmierz.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/gkucmierz.json diff --git a/domains/gkucmierz.json b/domains/gkucmierz.json new file mode 100644 index 0000000000..85339e1b26 --- /dev/null +++ b/domains/gkucmierz.json @@ -0,0 +1,10 @@ +{ + "description": "gkucmierz's personal blog", + "owner": { + "username": "gkucmierz", + "email": "gkucmierz@gmail.com" + }, + "record": { + "URL": "https://dev.to/gkucmierz" + } +} From 6305cf77d62992fe7988f8a7f6975c6fba1a32e8 Mon Sep 17 00:00:00 2001 From: georgekaran Date: Thu, 8 Oct 2020 17:59:43 -0300 Subject: [PATCH 080/239] add georgekaran.json domain --- domains/georgekaran.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/georgekaran.json diff --git a/domains/georgekaran.json b/domains/georgekaran.json new file mode 100644 index 0000000000..ae89517f2b --- /dev/null +++ b/domains/georgekaran.json @@ -0,0 +1,11 @@ +{ + "description": "George Karan - Personal Page", + "repo": "https://github.com/georgekaran", + "owner": { + "username": "georgekaran", + "email": "georgekaran12@gmail.com" + }, + "record": { + "URL": "https://georgekaran.com" + } +} From ce90cf18fedd68989e81a0ae5fef2958661d7d73 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Thu, 8 Oct 2020 16:02:04 -0500 Subject: [PATCH 081/239] Create eric.json --- domains/eric.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/eric.json diff --git a/domains/eric.json b/domains/eric.json new file mode 100644 index 0000000000..2ef78034f1 --- /dev/null +++ b/domains/eric.json @@ -0,0 +1,12 @@ +{ + "description": "Eric's website and blog", + "repo": "https://github.com/yurrriq", + "owner": { + "username": "yurrriq", + "email": "eric@ericb.me", + }, + "record": { + "CNAME": "yurrriq.github.io", + "URL": "https://eric.is-a.dev" + } +} From c870f217760899215042c1961d796123cbf44790 Mon Sep 17 00:00:00 2001 From: Mark Davydov Date: Fri, 9 Oct 2020 00:02:53 +0300 Subject: [PATCH 082/239] Add mark.json added mark json with redirect to linkedin. --- domains/mark.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/mark.json diff --git a/domains/mark.json b/domains/mark.json new file mode 100644 index 0000000000..8c79922a8d --- /dev/null +++ b/domains/mark.json @@ -0,0 +1,12 @@ + +{ + "description": "Makr Davydov is a Developer!", + "repo": "https://github.com/markrity", + "owner": { + "username": "markrity", + "email": "markrity@gmail.com" + }, + "record": { + "URL": "https://www.linkedin.com/in/davydovmark/" + } +} From 4c4680177c4a535227c5888807a4b95ffc2ee932 Mon Sep 17 00:00:00 2001 From: Sai Sandeep Vaddi Date: Thu, 8 Oct 2020 21:24:07 +0000 Subject: [PATCH 083/239] Add saisandeepvaddi.json --- domains/saisandeepvaddi.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/saisandeepvaddi.json diff --git a/domains/saisandeepvaddi.json b/domains/saisandeepvaddi.json new file mode 100644 index 0000000000..584f761aea --- /dev/null +++ b/domains/saisandeepvaddi.json @@ -0,0 +1,10 @@ +{ + "description": "Sai Sandeep Vaddi's website", + "owner": { + "username": "saisandeepvaddi", + "email": "saisandeepvaddi@gmail.com" + }, + "record": { + "A": ["104.198.14.52"] + } +} From bb7d74dfa92ac209e4f3965cacbe4fb2ff363199 Mon Sep 17 00:00:00 2001 From: Matheus Costa Date: Thu, 8 Oct 2020 18:27:57 -0300 Subject: [PATCH 084/239] Create matheus.json --- domains/matheus.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/matheus.json diff --git a/domains/matheus.json b/domains/matheus.json new file mode 100644 index 0000000000..d5f7196f5f --- /dev/null +++ b/domains/matheus.json @@ -0,0 +1,12 @@ +{ + "description": "Matheus Costa's personal developer website", + "repo": "https://github.com/mthcsta/mthcsta.github.io", + "owner": { + "username": "mthcsta", + "email": "matheuscosta.dev@yahoo.com" + }, + "record": { + "CNAME": "mthcsta.github.io", + "URL": "https://matheus.is-a.dev" + } +} From 4f3c28e6483aaf8abb5930fe140a0bddf6e59221 Mon Sep 17 00:00:00 2001 From: Vitor Dino Date: Thu, 8 Oct 2020 18:29:55 -0300 Subject: [PATCH 085/239] add dino --- domains/dino.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/dino.json diff --git a/domains/dino.json b/domains/dino.json new file mode 100644 index 0000000000..af974a8de8 --- /dev/null +++ b/domains/dino.json @@ -0,0 +1,12 @@ +{ + "description": "Vitor Dino is a front-end developer and ui designer", + "repo": "https://github.com/vitordino", + "owner": { + "username": "vitordino", + "email": "me@vitordino.com" + }, + "record": { + "CNAME": "vitordino.com", + "URL": "https://dino.is-a.dev" + } +} From b51a158c1bfcdd7ab8ed95eed614cf3a01aaa366 Mon Sep 17 00:00:00 2001 From: Alan Schio <6757777+schirrel@users.noreply.github.com> Date: Thu, 8 Oct 2020 17:48:25 -0400 Subject: [PATCH 086/239] Create alan.json --- domains/alan.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/alan.json diff --git a/domains/alan.json b/domains/alan.json new file mode 100644 index 0000000000..eb0a1bd310 --- /dev/null +++ b/domains/alan.json @@ -0,0 +1,12 @@ +{ + "description": "Alan's personal developer website", + "repo": "https://github.com/schirrel", + "owner": { + "username": "schirrel", + "email": "alan@schirrel.dev" + }, + "record": { + "CNAME": "schirrel.dev", + "URL": "https://alan.is-a.dev" + } +} From dd01185a66c8a85758767914b5856ea374979e5b Mon Sep 17 00:00:00 2001 From: Vivek Kumar Date: Thu, 8 Oct 2020 15:04:59 -0700 Subject: [PATCH 087/239] create vivekkumar.json --- domains/vivekkumar.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 domains/vivekkumar.json diff --git a/domains/vivekkumar.json b/domains/vivekkumar.json new file mode 100644 index 0000000000..c7048deaa1 --- /dev/null +++ b/domains/vivekkumar.json @@ -0,0 +1,13 @@ +{ + "description": "Vivek's portfolio website", + "repo": "https://github.com/VivekKumarNeu/VivekKumarNeu.github.io", + "owner": { + "username": "vivekkumarneu", + "email": "vivek-kumar@live.in" + }, + "record": { + "CNAME": "VivekKumarNeu.github.io", + "URL": "https://vivekkumar.is-a.dev" + } + } + \ No newline at end of file From aadf33c3c5800f350d33ccee6efda99e2322c4cd Mon Sep 17 00:00:00 2001 From: Roy Date: Thu, 8 Oct 2020 18:34:00 -0500 Subject: [PATCH 088/239] Created roy.json personal json file --- domains/roy.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/roy.json diff --git a/domains/roy.json b/domains/roy.json new file mode 100644 index 0000000000..678134f47c --- /dev/null +++ b/domains/roy.json @@ -0,0 +1,12 @@ +{ + "description": "Roy's portfolio website", + "repo": "https://github.com/rcrj/rcrj.github.io", + "owner": { + "username": "rcrj", + "email": "rcrj95@gmail.com" + }, + "record": { + "CNAME": "rcrj.github.io", + "URL": "https://roy.is-a.dev" + } +} From 6381086eaf721b317fd27b62aa106f17052e4efa Mon Sep 17 00:00:00 2001 From: Mike Perry Y Attara <31483629+mikeattara@users.noreply.github.com> Date: Thu, 8 Oct 2020 23:47:07 +0000 Subject: [PATCH 089/239] add mpy subdomain --- domains/mpy.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/mpy.json diff --git a/domains/mpy.json b/domains/mpy.json new file mode 100644 index 0000000000..a2e26935e5 --- /dev/null +++ b/domains/mpy.json @@ -0,0 +1,12 @@ +{ + "description": "Mike Perry Y Attara's personal website", + "repo": "https://github.com/mikeattara", + "owner": { + "username": "mikeattara", + "email": "mpyebattara@gmail.com" + }, + "record": { + "CNAME": "mikeattara.github.io", + "URL": "https://mpy.is-a.dev" + } + } \ No newline at end of file From 16bc93bc10ad1c6a4a08a248f286740845c9f293 Mon Sep 17 00:00:00 2001 From: Mike Perry Y Attara <31483629+mikeattara@users.noreply.github.com> Date: Fri, 9 Oct 2020 00:37:30 +0000 Subject: [PATCH 090/239] format --- domains/mpy.json | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/domains/mpy.json b/domains/mpy.json index a2e26935e5..474c3889b6 100644 --- a/domains/mpy.json +++ b/domains/mpy.json @@ -1,12 +1,12 @@ { - "description": "Mike Perry Y Attara's personal website", - "repo": "https://github.com/mikeattara", - "owner": { - "username": "mikeattara", - "email": "mpyebattara@gmail.com" - }, - "record": { - "CNAME": "mikeattara.github.io", - "URL": "https://mpy.is-a.dev" - } - } \ No newline at end of file + "description": "Mike Perry Y Attara's personal website", + "repo": "https://github.com/mikeattara", + "owner": { + "username": "mikeattara", + "email": "mpyebattara@gmail.com" + }, + "record": { + "CNAME": "mikeattara.github.io", + "URL": "https://mpy.is-a.dev" + } +} \ No newline at end of file From 747357240f1a47760f6a9d95abb3edbb64214690 Mon Sep 17 00:00:00 2001 From: Kintsugi Date: Fri, 9 Oct 2020 03:39:50 +0300 Subject: [PATCH 091/239] create ezedinff.json --- domains/ezedinff.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/ezedinff.json diff --git a/domains/ezedinff.json b/domains/ezedinff.json new file mode 100644 index 0000000000..6e61aad086 --- /dev/null +++ b/domains/ezedinff.json @@ -0,0 +1,12 @@ +{ + "description": "Ezedin's personal developer website", + "repo": "https://github.com/ezedinff", + "owner": { + "username": "ezedinff", + "email": "ezedin.fedlu@gmail.com" + }, + "record": { + "CNAME": "https://black-horse-coder-blog.vercel.app/", + "URL": "https://ezedin.is-a.dev" + } +} From aa022e3696d1462733d58b6ab3b978c062105c2f Mon Sep 17 00:00:00 2001 From: Savio Martin <61895712+saviomartin@users.noreply.github.com> Date: Fri, 9 Oct 2020 07:52:50 +0530 Subject: [PATCH 092/239] Created Savio.json --- domains/savio.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/savio.json diff --git a/domains/savio.json b/domains/savio.json new file mode 100644 index 0000000000..0bdea966a9 --- /dev/null +++ b/domains/savio.json @@ -0,0 +1,12 @@ + { + "description": "Savio Martin is a Dev", + "repo": "https://github.com/saviomartin/register", + "owner": { + "username": "saviomartin", + "email": "saviomartin2020@gmail.com" + }, + "record": { + "CNAME": "saviomartin.github.io", + "URL": "https://savio.is-a.dev" + } +} From 0c01284dc87ac16f0bfc65fb617b75dcdee492af Mon Sep 17 00:00:00 2001 From: Nimish Date: Fri, 9 Oct 2020 08:48:47 +0530 Subject: [PATCH 093/239] chore: added the nimish domain --- domains/nimish.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/nimish.json diff --git a/domains/nimish.json b/domains/nimish.json new file mode 100644 index 0000000000..a8b343dec0 --- /dev/null +++ b/domains/nimish.json @@ -0,0 +1,12 @@ +{ + "description": "Nimish's Engineering Diary", + "repo": "https://github.com/nimish-gupta/blog", + "owner": { + "username": "nimish-gupta", + "email": "gnimish03@gmail.com" + }, + "record": { + "CNAME": "nimish-gupta.dev", + "URL": "https://nimish.is-a.dev" + } +} From 22ff6eef9be60046d9772e26403d90d25a78387e Mon Sep 17 00:00:00 2001 From: Daggron Date: Fri, 9 Oct 2020 08:54:29 +0530 Subject: [PATCH 094/239] add(abhay.json): Added the json for abhay --- domains/abhay.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/abhay.json diff --git a/domains/abhay.json b/domains/abhay.json new file mode 100644 index 0000000000..55d695f566 --- /dev/null +++ b/domains/abhay.json @@ -0,0 +1,12 @@ +{ + "description": "Abhay's portfolio website", + "repo": "https://github.com/daggron/daggron.github.io", + "owner": { + "username": "Daggron", + "email": "returnofking04@gmail.com" + }, + "record": { + "CNAME": "codeinator.me", + "URL": "http://codeinator.me" + } +} \ No newline at end of file From b34ee739fccdfe694c2fa8d29e071be7c032699d Mon Sep 17 00:00:00 2001 From: Jacob Date: Fri, 9 Oct 2020 09:30:25 +0530 Subject: [PATCH 095/239] A new file --- domains/jacob.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/jacob.json diff --git a/domains/jacob.json b/domains/jacob.json new file mode 100644 index 0000000000..0ea327a3aa --- /dev/null +++ b/domains/jacob.json @@ -0,0 +1,12 @@ +{ + "description": "My cool dev", + "repo": "https://github.com/jacob13400/jacob13400.github.io", + "owner": { + "username": "jacob13400", + "email": "jacob13400@gmail.com" + }, + "record": { + "CNAME": "jacob13400.github.io", + "URL": "https://your-domain.is-a.dev" + } +} From 089a3688fe7e834aa539c37af4c3fc087a2c19ac Mon Sep 17 00:00:00 2001 From: AbhishekS-2099 Date: Fri, 9 Oct 2020 09:33:35 +0530 Subject: [PATCH 096/239] Added json in domains directory: abhishek.json --- domains/abhishek.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/abhishek.json diff --git a/domains/abhishek.json b/domains/abhishek.json new file mode 100644 index 0000000000..22545cd82e --- /dev/null +++ b/domains/abhishek.json @@ -0,0 +1,12 @@ +{ + "description": "Abhishek's personal website", + "repo": "https://github.com/nullpointxr", + "owner": { + "username": "nullpointxr", + "email": "abhishek.sankar.in@protonmail.com" + }, + "record": { + "CNAME": "nullpointxr.github.io", + "URL": "https://abhishek.is-a.dev" + } +} From 722c12fc131b4e6285aa1e337dd3af287c2413c5 Mon Sep 17 00:00:00 2001 From: Farzan F A Date: Fri, 9 Oct 2020 10:02:09 +0530 Subject: [PATCH 097/239] Create farzan.json --- domains/farzan.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/farzan.json diff --git a/domains/farzan.json b/domains/farzan.json new file mode 100644 index 0000000000..535308431b --- /dev/null +++ b/domains/farzan.json @@ -0,0 +1,12 @@ +{ + "description": "Farzan F A is a Dev", + "repo": "https://github.com/Farzanfa/Farzanfa.github.io", + "owner": { + "username": "farzanfa", + "email": "farzanfa007@gmail.com" + }, + "record": { + "CNAME": "Farzanfa.github.io", + "URL": "https://farzan.is-a.dev" + } +} From 016bbe9885687c9363a2e93a55bdd707f495cd06 Mon Sep 17 00:00:00 2001 From: Aashutosh Rathi Date: Fri, 9 Oct 2020 10:05:50 +0530 Subject: [PATCH 098/239] aashutosh.dev --- domains/aashutosh.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/aashutosh.json diff --git a/domains/aashutosh.json b/domains/aashutosh.json new file mode 100644 index 0000000000..2399d7be08 --- /dev/null +++ b/domains/aashutosh.json @@ -0,0 +1,11 @@ +{ + "description": "Aashutosh Rathi's Space on Web", + "owner": { + "username": "aashutoshrathi", + "email": "me@aashutosh.dev" + }, + "record": { + "CNAME": "aashutosh.dev", + "URL": "https://aashutosh.is-a.dev" + } +} From 0d24f4ad92b36605efaeaab5591a1e9f65e40579 Mon Sep 17 00:00:00 2001 From: JackY Date: Fri, 9 Oct 2020 15:08:48 +1000 Subject: [PATCH 099/239] Added domain for yujia. --- domains/yujia.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/yujia.json diff --git a/domains/yujia.json b/domains/yujia.json new file mode 100644 index 0000000000..4d56109d94 --- /dev/null +++ b/domains/yujia.json @@ -0,0 +1,12 @@ +{ + "description": "Yujia's Magic", + "repo": "https://github.com/YujiaY", + "owner": { + "username": "YujiaY", + "email": "aujackyuan@gmail.com" + }, + "record": { + "CNAME": "YujiaY.github.io", + "URL": "https://yujia.is-a.dev" + } +} \ No newline at end of file From ba56ed7d082e0240bfda6863e50203c5bf561b61 Mon Sep 17 00:00:00 2001 From: Gaurav Tewari <54894783+tewarig@users.noreply.github.com> Date: Fri, 9 Oct 2020 10:38:56 +0530 Subject: [PATCH 100/239] created gaurav.json --- domains/gaurav.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/gaurav.json diff --git a/domains/gaurav.json b/domains/gaurav.json new file mode 100644 index 0000000000..4a5f346c0c --- /dev/null +++ b/domains/gaurav.json @@ -0,0 +1,12 @@ +{ + "description": "Gaurav Tewari", + "repo": "https://github.com/tewarig/tewarig.github.io", + "owner": { + "username": "Gaurav", + "email": "gauravtewari111@gmail.com" + }, + "record": { + "CNAME": "tewarig.github.io", + "URL": "https://gaurav.is-a.dev" + } +} From 48b9c1d0f31807ed7d208dd1a015dd59e9211eb7 Mon Sep 17 00:00:00 2001 From: Rwithik Manoj Date: Fri, 9 Oct 2020 10:41:53 +0530 Subject: [PATCH 101/239] Create rwithik.json --- domains/rwithik.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/rwithik.json diff --git a/domains/rwithik.json b/domains/rwithik.json new file mode 100644 index 0000000000..6615c5d683 --- /dev/null +++ b/domains/rwithik.json @@ -0,0 +1,12 @@ +{ + "description": "Rwithik's Website", + "repo": "https://github.com/rwithik/rwithik.github.io", + "owner": { + "username": "rwithik", + "email": "rwithik@gmail.com" + }, + "record": { + "CNAME": "rwithik.github.io", + "URL": "https://rwithik.is-a.dev" + } +} From 3f5c90f6823bbe71915971bfcdf91c469937001f Mon Sep 17 00:00:00 2001 From: Shen Junru Date: Fri, 9 Oct 2020 13:14:31 +0800 Subject: [PATCH 102/239] Create shenjunru.json --- domains/shenjunru.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/shenjunru.json diff --git a/domains/shenjunru.json b/domains/shenjunru.json new file mode 100644 index 0000000000..d521ea0549 --- /dev/null +++ b/domains/shenjunru.json @@ -0,0 +1,12 @@ +{ + "description": "Shen Junru is a Dev", + "repo": "https://github.com/shenjunru/is-a-dev", + "owner": { + "username": "shenjunru", + "email": "shenjunru@gmail.com" + }, + "record": { + "CNAME": "shenjunru.github.io", + "URL": "https://shenjunru.is-a.dev" + } +} From 5db5fb25b4ef8cc3aef98de852f14b896c98596f Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Fri, 9 Oct 2020 11:01:01 +0530 Subject: [PATCH 103/239] Create sharath.json --- domains/sharath.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 domains/sharath.json diff --git a/domains/sharath.json b/domains/sharath.json new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/domains/sharath.json @@ -0,0 +1 @@ + From 85ef1398373ecc8369af32297d1fda6c046ce350 Mon Sep 17 00:00:00 2001 From: Akshay Ashok Date: Fri, 9 Oct 2020 11:02:31 +0530 Subject: [PATCH 104/239] Create akshay-ashok.json --- domains/akshay-ashok.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/akshay-ashok.json diff --git a/domains/akshay-ashok.json b/domains/akshay-ashok.json new file mode 100644 index 0000000000..132781ef9a --- /dev/null +++ b/domains/akshay-ashok.json @@ -0,0 +1,12 @@ +{ + "description": "Akshay Ashok has a is a dev domain", + "repo": "https://github.com/Akshay090/akshay090.github.io", + "owner": { + "username": "Akshay090", + "email": "aks28id@gmail.com" + }, + "record": { + "CNAME": "akshay090.github.io", + "URL": "https://akshay-ashok.is-a.dev" + } +} From 0c0c5d11ee6986818bd1f8e4f9da08734e7f1048 Mon Sep 17 00:00:00 2001 From: Namitha S Date: Fri, 9 Oct 2020 11:25:43 +0530 Subject: [PATCH 105/239] Create vaskian.json --- domains/vaskian.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/vaskian.json diff --git a/domains/vaskian.json b/domains/vaskian.json new file mode 100644 index 0000000000..f3d371e950 --- /dev/null +++ b/domains/vaskian.json @@ -0,0 +1,11 @@ +{ + "description": "Vaskian is a Dev", + "repo": "https://github.com/Nami2012", + "owner": { + "username": "Nami2012", + "email": "namithasadeeshbabu@gmail.com" + }, + "record": { + "URL": "https://vaskian.me/" + } +} From 3b753bd98363ca19f7cb9e6b79595f4c1529adcb Mon Sep 17 00:00:00 2001 From: Reed Jones Date: Thu, 8 Oct 2020 23:03:01 -0700 Subject: [PATCH 106/239] Create reed.json --- domains/reed.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/reed.json diff --git a/domains/reed.json b/domains/reed.json new file mode 100644 index 0000000000..5f70ceda15 --- /dev/null +++ b/domains/reed.json @@ -0,0 +1,11 @@ +{ + "repo": "https://github.com/reed-jones", + "owner": { + "username": "reed-jones", + "email": "reedjones@reedjones.com" + }, + "record": { + "CNAME": "reedjones.com", + "URL": "https://reed.is-a.dev" + } +} From ce66d83ffc438d93139c964ab7575bbf81271324 Mon Sep 17 00:00:00 2001 From: Ashish Yadav Date: Fri, 9 Oct 2020 12:03:37 +0545 Subject: [PATCH 107/239] chore: ashish's domain --- domains/ashish.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/ashish.json diff --git a/domains/ashish.json b/domains/ashish.json new file mode 100644 index 0000000000..a1d6e24987 --- /dev/null +++ b/domains/ashish.json @@ -0,0 +1,12 @@ +{ + "description": "Ashish's personal developer website", + "repo": "https://github.com/ashiishme", + "owner": { + "username": "ashiishme", + "email": "contact@ashiish.me" + }, + "record": { + "CNAME": "ashiish.me", + "URL": "https://ashish.is-a.dev" + } +} From 38140d4017ca9fafd82acf3ff1849cd4d62dae01 Mon Sep 17 00:00:00 2001 From: Owain Date: Fri, 9 Oct 2020 07:38:06 +0100 Subject: [PATCH 108/239] Create owain.json --- domains/owain.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/owain.json diff --git a/domains/owain.json b/domains/owain.json new file mode 100644 index 0000000000..0fcd1d788a --- /dev/null +++ b/domains/owain.json @@ -0,0 +1,10 @@ +{ + "description": "Owain's Website", + "owner": { + "username": "owjothegreat", + "email": "owain.jones74@gmail.com" + }, + "record": { + "URL": "0wain.xyz" + } +} From eb5f44d81ad7160a094b9d0d952aaf2957dc4078 Mon Sep 17 00:00:00 2001 From: Susnata Goswami <55017730+proghead00@users.noreply.github.com> Date: Fri, 9 Oct 2020 12:08:18 +0530 Subject: [PATCH 109/239] Added my .json file --- proghead00.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 proghead00.json diff --git a/proghead00.json b/proghead00.json new file mode 100644 index 0000000000..e647ed5d98 --- /dev/null +++ b/proghead00.json @@ -0,0 +1,12 @@ +{ + "description": "Susnata's is.a.dev domain!", + "repo": "https://github.com/proghead00/proghead00.github.io", + "owner": { + "username": "proghead00", + "email": "susnata00@gmail.com" + }, + "record": { + "CNAME": "proghead00.github.io", + "URL": "https://proghead00.is-a.dev" + } +} From 55ea9c3938f75d9777d0491f478fe0d5556b1b9e Mon Sep 17 00:00:00 2001 From: Owain Date: Fri, 9 Oct 2020 07:38:48 +0100 Subject: [PATCH 110/239] add protocol --- domains/owain.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/owain.json b/domains/owain.json index 0fcd1d788a..a53081812b 100644 --- a/domains/owain.json +++ b/domains/owain.json @@ -5,6 +5,6 @@ "email": "owain.jones74@gmail.com" }, "record": { - "URL": "0wain.xyz" + "URL": "https://0wain.xyz" } } From 0c302a5a0fcec6fbadd1988feff74b7979ef44a2 Mon Sep 17 00:00:00 2001 From: Brandon Hexsel Date: Thu, 8 Oct 2020 23:42:06 -0700 Subject: [PATCH 111/239] 'my website' --- domains/brandon.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/brandon.json diff --git a/domains/brandon.json b/domains/brandon.json new file mode 100644 index 0000000000..b533a756a9 --- /dev/null +++ b/domains/brandon.json @@ -0,0 +1,12 @@ +{ + "description": "Brandons's personal developer website", + "repo": "https://github.com/b-hexsoul", + "owner": { + "username": "b-hexsoul", + "email": "brandon.hexsel@gmail.com" + }, + "record": { + "CNAME": "b-hexsoul.github.io", + "URL": "https://brandon.is-a.dev" + } +} From 08c859c6d8953ee20df9bb2b76c45bc30704b1fd Mon Sep 17 00:00:00 2001 From: Owain Date: Fri, 9 Oct 2020 07:44:49 +0100 Subject: [PATCH 112/239] amendments --- domains/owain.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/domains/owain.json b/domains/owain.json index a53081812b..09020668a3 100644 --- a/domains/owain.json +++ b/domains/owain.json @@ -5,6 +5,7 @@ "email": "owain.jones74@gmail.com" }, "record": { - "URL": "https://0wain.xyz" + "CNAME": "0wain.xyz", + "URL": "https://owain.is-a.dev" } } From af7ddab06070479dfb35c82186d470dc1d3d8bdc Mon Sep 17 00:00:00 2001 From: Adarsh S <47141299+adarshsuresh07@users.noreply.github.com> Date: Fri, 9 Oct 2020 12:14:59 +0530 Subject: [PATCH 113/239] Create adarshs.json --- domains/adarshs.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/adarshs.json diff --git a/domains/adarshs.json b/domains/adarshs.json new file mode 100644 index 0000000000..9d18225cd1 --- /dev/null +++ b/domains/adarshs.json @@ -0,0 +1,11 @@ +{ + "description": "The portfolio of Adarsh S", + "repo": "https://github.com/adarshsuresh07", + "owner": { + "username": "adarshsuresh07", + "email": "adarshsuresh@cet.ac.in" + }, + "record": { + "URL": "https://adarshs.is-a.dev" + } +} From 8edf6842bc82c25febfabcbd19ef648f1a1a1c9b Mon Sep 17 00:00:00 2001 From: Adarsh S <47141299+adarshsuresh07@users.noreply.github.com> Date: Fri, 9 Oct 2020 12:19:19 +0530 Subject: [PATCH 114/239] Update adarshs.json --- domains/adarshs.json | 1 + 1 file changed, 1 insertion(+) diff --git a/domains/adarshs.json b/domains/adarshs.json index 9d18225cd1..47670879bf 100644 --- a/domains/adarshs.json +++ b/domains/adarshs.json @@ -6,6 +6,7 @@ "email": "adarshsuresh@cet.ac.in" }, "record": { + "CNAME":"adarshsuresh07.github.io", "URL": "https://adarshs.is-a.dev" } } From 0357a1fc23f5af145323171a3daea874868ae8bf Mon Sep 17 00:00:00 2001 From: aryavinodan <36436909+aryavinodan@users.noreply.github.com> Date: Fri, 9 Oct 2020 12:21:03 +0530 Subject: [PATCH 115/239] Create new file --- domains/arya.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/arya.json diff --git a/domains/arya.json b/domains/arya.json new file mode 100644 index 0000000000..2a0d987d20 --- /dev/null +++ b/domains/arya.json @@ -0,0 +1,12 @@ +{ + "description": "Arya Vinodan's Website", + "repo": "", + "owner": { + "username": "aryavinodan2000", + "email": "aryavinodan2000@gmail.com" + }, + "record": { + "CNAME": "aryavinodan2000.github.io", + "URL": "https://andrew.is-a.dev" + } +} From fa406ff856f2cc66eaa41e0087e3e1ac43dc699f Mon Sep 17 00:00:00 2001 From: aryavinodan <36436909+aryavinodan@users.noreply.github.com> Date: Fri, 9 Oct 2020 12:28:39 +0530 Subject: [PATCH 116/239] Updated arya.json --- domains/arya.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/arya.json b/domains/arya.json index 2a0d987d20..9384c66adf 100644 --- a/domains/arya.json +++ b/domains/arya.json @@ -1,8 +1,8 @@ { "description": "Arya Vinodan's Website", - "repo": "", + "repo": "aryavinodan/register", "owner": { - "username": "aryavinodan2000", + "username": "aryavinodan", "email": "aryavinodan2000@gmail.com" }, "record": { From bedf5f9904237bf1e27d6ba9c190fe1a7bc86add Mon Sep 17 00:00:00 2001 From: aryavinodan <36436909+aryavinodan@users.noreply.github.com> Date: Fri, 9 Oct 2020 12:39:35 +0530 Subject: [PATCH 117/239] Updated repo --- domains/arya.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/arya.json b/domains/arya.json index 9384c66adf..59f82fb1b0 100644 --- a/domains/arya.json +++ b/domains/arya.json @@ -1,6 +1,6 @@ { "description": "Arya Vinodan's Website", - "repo": "aryavinodan/register", + "repo": "https://github.com/aryavinodan", "owner": { "username": "aryavinodan", "email": "aryavinodan2000@gmail.com" From c4118219efca55415dafd32fdb25795518d9510e Mon Sep 17 00:00:00 2001 From: Parshant Sharma Date: Fri, 9 Oct 2020 12:44:27 +0530 Subject: [PATCH 118/239] Create parshnt added me :) --- domains/parshnt | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/parshnt diff --git a/domains/parshnt b/domains/parshnt new file mode 100644 index 0000000000..c5da6609c5 --- /dev/null +++ b/domains/parshnt @@ -0,0 +1,12 @@ +{ + "description": "YAY, new place for my Portfolio", + "repo": "https://github.com/parshnt", + "owner": { + "username": "parshnt", + "email": "hi.parshant@gmail.com" + }, + "record": { + "CNAME": "parshnt.github.io", + "URL": "https://parshnt.is-a.dev" + } +} From ccaccae3097bf98f7371d791a663b045786b32f5 Mon Sep 17 00:00:00 2001 From: Anoop M S Date: Fri, 9 Oct 2020 12:49:00 +0530 Subject: [PATCH 119/239] Add anoop.json --- domains/anoop.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/anoop.json diff --git a/domains/anoop.json b/domains/anoop.json new file mode 100644 index 0000000000..53c1c378c9 --- /dev/null +++ b/domains/anoop.json @@ -0,0 +1,12 @@ +{ + "description": "Anoop's blog", + "repo": "https://gitlab.com/anoopmsivadas/anoopmsivadas.gitlab.io", + "owner": { + "username": "anoopmsivadas", + "email": "anoopms@disroot.org" + }, + "record": { + "CNAME": "anoopmsivadas.gitlab.io", + "URL": "https://anoop.is-a.dev" + } +} From 20cd478043bd754d60007b9cac805b1fb45e165d Mon Sep 17 00:00:00 2001 From: Abishek PY <43115551+vj-abishek@users.noreply.github.com> Date: Fri, 9 Oct 2020 12:50:23 +0530 Subject: [PATCH 120/239] Create abishek.json --- domains/abishek.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/abishek.json diff --git a/domains/abishek.json b/domains/abishek.json new file mode 100644 index 0000000000..3fde17249c --- /dev/null +++ b/domains/abishek.json @@ -0,0 +1,12 @@ +{ + "description": "Abishek's portfolio website", + "repo": "https://github.com/vj-abishek/vj-abishek.github.io", + "owner": { + "username": "vj-abishek", + "email": "abigosearch@gmail.com" + }, + "record": { + "CNAME": "vj-abishek.github.io", + "URL": "https://abishek.is-a.dev" + } +} From 1649403303f0cbeb2ff460d75f2af933eddafbca Mon Sep 17 00:00:00 2001 From: Shibiliya Ismail <50785323+duaboola@users.noreply.github.com> Date: Fri, 9 Oct 2020 12:54:15 +0530 Subject: [PATCH 121/239] Testing --- domains/shibiliya.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/shibiliya.json diff --git a/domains/shibiliya.json b/domains/shibiliya.json new file mode 100644 index 0000000000..d6390a4a63 --- /dev/null +++ b/domains/shibiliya.json @@ -0,0 +1,11 @@ +{ + "description": "Shibiliya's personal developer website", + "repo": "https://github.com/duaboola", + "owner": { + "username": "duaboola", + "email": "ismailshibiliya@gmail.com" + }, + "record": { + "ALIAS": "https://duaboola.github.io/ShibiliyaIsmail.github.io/" + } +} From af8fe8059f6c504af35a7830da3415a985ed9240 Mon Sep 17 00:00:00 2001 From: Gautam krishna R Date: Fri, 9 Oct 2020 12:56:07 +0530 Subject: [PATCH 122/239] Added gkr.is-a.dev --- domains/gkr.json | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 domains/gkr.json diff --git a/domains/gkr.json b/domains/gkr.json new file mode 100644 index 0000000000..fed031e3cc --- /dev/null +++ b/domains/gkr.json @@ -0,0 +1,9 @@ +{ + "owner": { + "username": "gautamkrishnar", + "email": "hello@gautamkrishnar.com" + }, + "record": { + "A": ["185.224.138.125"] + } +} From d870ad1931b258a848b195ed6a7dd033704571f4 Mon Sep 17 00:00:00 2001 From: Govind V Shenoy Date: Fri, 9 Oct 2020 13:00:51 +0530 Subject: [PATCH 123/239] added domain govind.is-a.dev --- domains/govind.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/govind.json diff --git a/domains/govind.json b/domains/govind.json new file mode 100644 index 0000000000..3073c36012 --- /dev/null +++ b/domains/govind.json @@ -0,0 +1,12 @@ +{ + "description": "Govind's personal developer website", + "repo": "https://github.com/govind-shenoy", + "owner": { + "username": "govind-shenoy", + "email": "govindvshenoy@gmail.com" + }, + "record": { + "CNAME": "govind-shenoy.github.io/", + "URL": "https://govind.is-a.dev" + } +} From db51a3f4902c49cee0a5bef4646cc901c9dbdee8 Mon Sep 17 00:00:00 2001 From: Alex Joseph <31386066+Alec1563@users.noreply.github.com> Date: Fri, 9 Oct 2020 13:03:18 +0530 Subject: [PATCH 124/239] Create alexjoseph.json --- domains/alexjoseph.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/alexjoseph.json diff --git a/domains/alexjoseph.json b/domains/alexjoseph.json new file mode 100644 index 0000000000..b6b4d1f5d6 --- /dev/null +++ b/domains/alexjoseph.json @@ -0,0 +1,12 @@ +{ + "description": "Add some description", + "repo": "https://github.com/alec1563/alec1563.github.io", + "owner": { + "username": "alec1563", + "email": "aj71563@gmail.com" + }, + "record": { + "CNAME": "alec1563.github.io", + "URL": "https://alexjoseph.is-a.dev" + } +} From 4876cac1a1afba79fcb1016d5869f08672ed7f62 Mon Sep 17 00:00:00 2001 From: justinjohnymathew Date: Fri, 9 Oct 2020 13:07:53 +0530 Subject: [PATCH 125/239] added justin.is-a.dev --- domains/justin.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/justin.json diff --git a/domains/justin.json b/domains/justin.json new file mode 100644 index 0000000000..6101efb310 --- /dev/null +++ b/domains/justin.json @@ -0,0 +1,12 @@ +{ + "description": "My personal Page", + "repo": "https://github.com/justinjohnymathew/justinjohnymathew.github.io", + "owner": { + "username": "justinjohnymathew", + "email": "justinjohny.jj@gmail.com" + }, + "record": { + "CNAME": "https://justinjohnymathew.github.io/", + "URL": "https://justin.is-a.dev" + } + \ No newline at end of file From 35828c7b92565345fd405d3cc84095e07d05be54 Mon Sep 17 00:00:00 2001 From: Bhadra Jayakumar Sandhya <46893827+BhadraJayakumarSandhya@users.noreply.github.com> Date: Fri, 9 Oct 2020 13:07:54 +0530 Subject: [PATCH 126/239] Create bhadra.json --- domains/bhadra.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 domains/bhadra.json diff --git a/domains/bhadra.json b/domains/bhadra.json new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/domains/bhadra.json @@ -0,0 +1 @@ + From 081668b6ec1e1cf0004909f55e47fec727597a0a Mon Sep 17 00:00:00 2001 From: Bhadra Jayakumar Sandhya <46893827+BhadraJayakumarSandhya@users.noreply.github.com> Date: Fri, 9 Oct 2020 13:14:46 +0530 Subject: [PATCH 127/239] Update bhadra.json --- domains/bhadra.json | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/domains/bhadra.json b/domains/bhadra.json index 8b13789179..69b9a8fd18 100644 --- a/domains/bhadra.json +++ b/domains/bhadra.json @@ -1 +1,12 @@ - +{ + "description": "Personal Website", + "repo": "https://github.com/BhadraJayakumarSandhya/BhadraJayakumarSandhya.github.io", + "owner": { + "username": "BhadraJayakumarSandhya", + "email": "tomjerryparu@gmail.com" + }, + "record": { + "CNAME": "BhadraJayakumarSandhya.github.io", + "URL": "https://bhadra.is-a.dev" + } +} From 70a256568441f7d9669e0ec8e05ed4f4a2515026 Mon Sep 17 00:00:00 2001 From: Alex Joseph <31386066+Alec1563@users.noreply.github.com> Date: Fri, 9 Oct 2020 13:16:22 +0530 Subject: [PATCH 128/239] Update alexjoseph.json --- domains/alexjoseph.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/domains/alexjoseph.json b/domains/alexjoseph.json index b6b4d1f5d6..27f3853b05 100644 --- a/domains/alexjoseph.json +++ b/domains/alexjoseph.json @@ -1,12 +1,12 @@ { - "description": "Add some description", - "repo": "https://github.com/alec1563/alec1563.github.io", + "description": "This is my first githib page", + "repo": "https://github.com/alec1563/alexjoseph.github.io", "owner": { "username": "alec1563", "email": "aj71563@gmail.com" }, "record": { - "CNAME": "alec1563.github.io", + "CNAME": "alexjoseph.github.io", "URL": "https://alexjoseph.is-a.dev" } } From ecb2be7a381f72930f37a6424a3b6ed50aaa1083 Mon Sep 17 00:00:00 2001 From: Alex Joseph <31386066+Alec1563@users.noreply.github.com> Date: Fri, 9 Oct 2020 13:21:12 +0530 Subject: [PATCH 129/239] Update alexjoseph.json --- domains/alexjoseph.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/alexjoseph.json b/domains/alexjoseph.json index 27f3853b05..9b5d4c0d32 100644 --- a/domains/alexjoseph.json +++ b/domains/alexjoseph.json @@ -6,7 +6,7 @@ "email": "aj71563@gmail.com" }, "record": { - "CNAME": "alexjoseph.github.io", + "CNAME": "alec1563.github.io/alexjoseph.github.io", "URL": "https://alexjoseph.is-a.dev" } } From 53a4a25ecd0183557eb2acaa767418ce77ffb9dc Mon Sep 17 00:00:00 2001 From: "F. Kiss" Date: Fri, 9 Oct 2020 09:51:55 +0200 Subject: [PATCH 130/239] Create kiss.json --- domains/kiss.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/kiss.json diff --git a/domains/kiss.json b/domains/kiss.json new file mode 100644 index 0000000000..9f04710c2c --- /dev/null +++ b/domains/kiss.json @@ -0,0 +1,10 @@ +{ + "owner": { + "username": "filipekiss", + "email": "filipe@kiss.ink" + }, + "record": { + "CNAME": "filipe.kiss.ink", + "URL": "https://kiss.is-a.dev" + } +} From 00d62b80b9910c7fefdb084dbe58686e8cc281db Mon Sep 17 00:00:00 2001 From: Alex Joseph <31386066+Alec1563@users.noreply.github.com> Date: Fri, 9 Oct 2020 13:28:14 +0530 Subject: [PATCH 131/239] Update alexjoseph.json --- domains/alexjoseph.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/alexjoseph.json b/domains/alexjoseph.json index 9b5d4c0d32..f6335eae7e 100644 --- a/domains/alexjoseph.json +++ b/domains/alexjoseph.json @@ -6,7 +6,7 @@ "email": "aj71563@gmail.com" }, "record": { - "CNAME": "alec1563.github.io/alexjoseph.github.io", + "CNAME": "https://alec1563.github.io/alexjoseph.github.io/", "URL": "https://alexjoseph.is-a.dev" } } From 69dd89e57eb36697592ba44ae7711bbd92a9001d Mon Sep 17 00:00:00 2001 From: Shibiliya Ismail <50785323+duaboola@users.noreply.github.com> Date: Fri, 9 Oct 2020 13:35:57 +0530 Subject: [PATCH 132/239] Update shibiliya.json --- domains/shibiliya.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/domains/shibiliya.json b/domains/shibiliya.json index d6390a4a63..12a349f9fe 100644 --- a/domains/shibiliya.json +++ b/domains/shibiliya.json @@ -6,6 +6,7 @@ "email": "ismailshibiliya@gmail.com" }, "record": { - "ALIAS": "https://duaboola.github.io/ShibiliyaIsmail.github.io/" + "CNAME": "duaboola.github.io", + "URL": "https://ShibiliyaIsmail.is-a.dev" } } From 1fa42fec8219c51702f2c942a4baf77d348ea59a Mon Sep 17 00:00:00 2001 From: Steven Frohlich Date: Fri, 9 Oct 2020 10:18:13 +0200 Subject: [PATCH 133/239] Create steven.json --- domains/steven.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/steven.json diff --git a/domains/steven.json b/domains/steven.json new file mode 100644 index 0000000000..1e798e9419 --- /dev/null +++ b/domains/steven.json @@ -0,0 +1,12 @@ +{ + "description": "Steven Frohlich's portfolio", + "repo": "https://github.com/StevenRonnyFrohlich/StevenRonnyFrohlich.github.io", + "owner": { + "username": "StevenRonnyFrohlich", + "email": "steve.r.frohlich@gmail.com" + }, + "record": { + "CNAME": "StevenRonnyFrohlich.github.io", + "URL": "https://steven.is-a.dev" + } +} From a692dedf7f5e825626f91d900b72eacb66d4d703 Mon Sep 17 00:00:00 2001 From: Gokul Kp Date: Fri, 9 Oct 2020 14:19:52 +0530 Subject: [PATCH 134/239] Create gokuldskp.json --- domains/gokuldskp.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/gokuldskp.json diff --git a/domains/gokuldskp.json b/domains/gokuldskp.json new file mode 100644 index 0000000000..c6f5eb2418 --- /dev/null +++ b/domains/gokuldskp.json @@ -0,0 +1,12 @@ +{ + "description": "Personal Page", + "repo": "https://github.com/gkdskp/gkdskp.github.io", + "owner": { + "username": "gkdskp", + "email": "gokuldskp@gmail.com" + }, + "record": { + "CNAME": "gkdskp.github.io", + "URL": "https://gokuldskp.is-a.dev" + } +} From b8a5720b90056b106990416b1f1cd880fdaf9522 Mon Sep 17 00:00:00 2001 From: Alestor Aldous <51041424+alestor123@users.noreply.github.com> Date: Fri, 9 Oct 2020 14:30:21 +0530 Subject: [PATCH 135/239] Added my json --- domains/alestor123.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/alestor123.json diff --git a/domains/alestor123.json b/domains/alestor123.json new file mode 100644 index 0000000000..7fef3325ed --- /dev/null +++ b/domains/alestor123.json @@ -0,0 +1,12 @@ +{ + "description": "A Mortal Web Developer With Immortal Dreams", + "repo": "https://github.com/alestor123/alestor123.github.io", + "owner": { + "username": "alestor123", + "email": "alestoraldous@gmail.com" + }, + "record": { + "CNAME": "http://alestor123.github.io/", + "URL": "https://alestor123.is-a.dev" + } +} From b9f6dc00ac5946144978d4172170e210f658decf Mon Sep 17 00:00:00 2001 From: Sharif Ahmed Date: Fri, 9 Oct 2020 15:14:27 +0600 Subject: [PATCH 136/239] sharifclick domain config --- domains/sharifclick.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/sharifclick.json diff --git a/domains/sharifclick.json b/domains/sharifclick.json new file mode 100644 index 0000000000..b81e16c036 --- /dev/null +++ b/domains/sharifclick.json @@ -0,0 +1,12 @@ +{ + "description": "personal website", + "repo": "https://github.com/SharifClick/sharifclick.github.io", + "owner": { + "username": "sharifclick", + "email": "me.sharifahmed@gmail.com" + }, + "record": { + "CNAME": "sharifclick.github.io", + "URL": "https://sharifclick.is-a.dev" + } +} From 5b927305cfc8056c264b7862de2892af7b33ae85 Mon Sep 17 00:00:00 2001 From: Tyler Richards <11968358+tjrgg@users.noreply.github.com> Date: Fri, 9 Oct 2020 04:34:59 -0500 Subject: [PATCH 137/239] Create tjr.json --- domains/tjr.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/tjr.json diff --git a/domains/tjr.json b/domains/tjr.json new file mode 100644 index 0000000000..8a7867894a --- /dev/null +++ b/domains/tjr.json @@ -0,0 +1,10 @@ +{ + "owner": { + "username": "tjrgg", + "email": "hello@tjrgg.co" + }, + "record": { + "CNAME": "isadev.tjrgg.co", + "URL": "https://tjr.is-a.dev" + } +} From 0f6a99d9a4743cd54e522e81cdae889e34355cc0 Mon Sep 17 00:00:00 2001 From: Tyler Richards <11968358+tjrgg@users.noreply.github.com> Date: Fri, 9 Oct 2020 04:43:31 -0500 Subject: [PATCH 138/239] Update tjr.json --- domains/tjr.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/domains/tjr.json b/domains/tjr.json index 8a7867894a..4b4a6010c2 100644 --- a/domains/tjr.json +++ b/domains/tjr.json @@ -4,7 +4,6 @@ "email": "hello@tjrgg.co" }, "record": { - "CNAME": "isadev.tjrgg.co", - "URL": "https://tjr.is-a.dev" + "URL": "https://tjrgg.co" } } From 9157e736a2ffa6344b7dafcb32c7b59456ff7141 Mon Sep 17 00:00:00 2001 From: Tyler Richards <11968358+tjrgg@users.noreply.github.com> Date: Fri, 9 Oct 2020 04:45:05 -0500 Subject: [PATCH 139/239] Create tjrgg.json --- domains/tjrgg.json | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 domains/tjrgg.json diff --git a/domains/tjrgg.json b/domains/tjrgg.json new file mode 100644 index 0000000000..4b4a6010c2 --- /dev/null +++ b/domains/tjrgg.json @@ -0,0 +1,9 @@ +{ + "owner": { + "username": "tjrgg", + "email": "hello@tjrgg.co" + }, + "record": { + "URL": "https://tjrgg.co" + } +} From 944214bdfbba5360d57be1e0e35bdefc0ecd2e45 Mon Sep 17 00:00:00 2001 From: Akarsh Ashok Date: Fri, 9 Oct 2020 15:17:32 +0530 Subject: [PATCH 140/239] Create davish.json Initiated davish subdomain file --- domains/davish.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/davish.json diff --git a/domains/davish.json b/domains/davish.json new file mode 100644 index 0000000000..de8704486b --- /dev/null +++ b/domains/davish.json @@ -0,0 +1,12 @@ +{ + "description": "Davish's Wesbite", + "repo": "https://github.com/akchy/akchy.github.io", + "owner": { + "username": "akchy", + "email": "akarshashok12@gmail.com" + }, + "record": { + "CNAME": "akchy.github.io", + "URL": "https://davish.is-a.dev" + } +} From 16c7d73f8fdca94216f62d0b3ce4b672afb11fd7 Mon Sep 17 00:00:00 2001 From: b45i Date: Fri, 9 Oct 2020 15:27:01 +0530 Subject: [PATCH 141/239] B45i domain name --- domains/b45i.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/b45i.json diff --git a/domains/b45i.json b/domains/b45i.json new file mode 100644 index 0000000000..6e3ef7d7d6 --- /dev/null +++ b/domains/b45i.json @@ -0,0 +1,12 @@ +{ + "description": "B45i - Home Page", + "repo": "https://github.com/B45i/b45i.github.io", + "owner": { + "username": "B45i", + "email": "amalshajan2011@gmail.com" + }, + "record": { + "CNAME": "b45i.github.io", + "URL": "https://b45i.is-a.dev" + } +} \ No newline at end of file From f06ecfdf408981faa1d53df90720e8b9e5b71c6a Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 16:56:29 +0530 Subject: [PATCH 142/239] Fixes eric.json --- domains/eric.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/eric.json b/domains/eric.json index 2ef78034f1..ab49675306 100644 --- a/domains/eric.json +++ b/domains/eric.json @@ -3,7 +3,7 @@ "repo": "https://github.com/yurrriq", "owner": { "username": "yurrriq", - "email": "eric@ericb.me", + "email": "eric@ericb.me" }, "record": { "CNAME": "yurrriq.github.io", From 06af6da61c9b5862f8cae4effd6b15a66b066ae6 Mon Sep 17 00:00:00 2001 From: mamunhpath Date: Fri, 9 Oct 2020 17:38:17 +0600 Subject: [PATCH 143/239] mamun.is-a.dev domain added --- domains/mamun.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/mamun.json diff --git a/domains/mamun.json b/domains/mamun.json new file mode 100644 index 0000000000..1480b32084 --- /dev/null +++ b/domains/mamun.json @@ -0,0 +1,12 @@ +{ + "description": "Mamun's website", + "repo": "https://github.com/mamunhpath", + "owner": { + "username": "mamunhpath", + "email": "mamunhpath@hotmail.com" + }, + "record": { + "CNAME": "mamunhpath.github.io", + "URL": "https://mamun.is-a.dev" + } +} From 208b9e74d98961e01a427aabd96fafaf02ea06d2 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 17:36:36 +0530 Subject: [PATCH 144/239] Adds ref for checkout --- .github/workflows/checks.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index e8519241f0..02a8dafeea 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -8,6 +8,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 + with: + ref: ${{ github.head_ref }} - uses: borales/actions-yarn@v2.0.0 with: cmd: install From c0f271f8493eb8fef3d5e9627b7ea9330336eb0f Mon Sep 17 00:00:00 2001 From: Piyush Bhangale Date: Fri, 9 Oct 2020 17:41:48 +0530 Subject: [PATCH 145/239] Create piyush.json --- domains/piyush.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/piyush.json diff --git a/domains/piyush.json b/domains/piyush.json new file mode 100644 index 0000000000..d7d87b331f --- /dev/null +++ b/domains/piyush.json @@ -0,0 +1,10 @@ +{ + "description": "Piyush's Website", + "owner": { + "username": "officialpiyush", + "email": "bhangalepiyush@gmail.com" + }, + "record": { + "URL": "https://piyush.codes" + } +} From b64a56c5237d4368200c1ebcabf0eeb305ff3679 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 17:58:13 +0530 Subject: [PATCH 146/239] changes checks.yml --- .github/workflows/checks.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 02a8dafeea..214dbdbb01 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -10,7 +10,8 @@ jobs: - uses: actions/checkout@v2 with: ref: ${{ github.head_ref }} - - uses: borales/actions-yarn@v2.0.0 + - name: Installing dependencies + uses: borales/actions-yarn@v2.0.0 with: cmd: install - name: Running tests From f0fcb2a89ac7aacc933523bed8015bfd7bf90a5f Mon Sep 17 00:00:00 2001 From: Harry Ross Date: Fri, 9 Oct 2020 23:36:49 +1100 Subject: [PATCH 147/239] Create harry.json --- domains/harry.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 domains/harry.json diff --git a/domains/harry.json b/domains/harry.json new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/domains/harry.json @@ -0,0 +1 @@ + From 926df0f5d8d9a94cfc0a912de8545427a0326819 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 18:11:36 +0530 Subject: [PATCH 148/239] Update ezedinff.json --- domains/ezedinff.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/ezedinff.json b/domains/ezedinff.json index 6e61aad086..8a10dd6dfc 100644 --- a/domains/ezedinff.json +++ b/domains/ezedinff.json @@ -6,7 +6,7 @@ "email": "ezedin.fedlu@gmail.com" }, "record": { - "CNAME": "https://black-horse-coder-blog.vercel.app/", + "CNAME": "black-horse-coder-blog.vercel.app", "URL": "https://ezedin.is-a.dev" } } From 2e1b8077ca0c45affbde7973d2b1d875335d6404 Mon Sep 17 00:00:00 2001 From: Harry Ross Date: Fri, 9 Oct 2020 23:43:02 +1100 Subject: [PATCH 149/239] Update harry.json --- domains/harry.json | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/domains/harry.json b/domains/harry.json index 8b13789179..dc5607be34 100644 --- a/domains/harry.json +++ b/domains/harry.json @@ -1 +1,11 @@ - +{ + "owner": { + "username": "Harry-Ross", + "email": "hazross@hotmail.com" + }, + "description": "Personal site/blog", + "repository": "https://github.com/Harry-Ross/harry-ross.github.io.git", + "record": { + "CNAME": "harry-ross.github.io" + } +} From e1765fbcbb458e25e8c9017bb0cd805ae55ac8c7 Mon Sep 17 00:00:00 2001 From: Sailesh Dahal <43571990+saileshbro@users.noreply.github.com> Date: Fri, 9 Oct 2020 19:14:10 +0545 Subject: [PATCH 150/239] Create sailesh.json --- domains/sailesh.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/sailesh.json diff --git a/domains/sailesh.json b/domains/sailesh.json new file mode 100644 index 0000000000..5925a4c00f --- /dev/null +++ b/domains/sailesh.json @@ -0,0 +1,11 @@ +{ + "description": "Sailesh's Personal Website", + "owner": { + "username": "saileshbro", + "email": "saileshbro@gmail.com" + }, + "record": { + "CNAME": "https://saileshbro.github.io/saileshbro/", + "URL": "https://sailesh.is-a.dev" + } +} From f2037ae03d18cae0bd762c8d5311e3ce859dbf75 Mon Sep 17 00:00:00 2001 From: Daggron Date: Fri, 9 Oct 2020 19:05:09 +0530 Subject: [PATCH 151/239] fix(abhay.json): updated the URL --- domains/abhay.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/abhay.json b/domains/abhay.json index 55d695f566..02777b5d91 100644 --- a/domains/abhay.json +++ b/domains/abhay.json @@ -7,6 +7,6 @@ }, "record": { "CNAME": "codeinator.me", - "URL": "http://codeinator.me" + "URL": "http://abhay.is-a.dev" } } \ No newline at end of file From 54f9581a83f6273b5faccdc320ef4627e9d3f18d Mon Sep 17 00:00:00 2001 From: Daggron Date: Fri, 9 Oct 2020 19:06:31 +0530 Subject: [PATCH 152/239] fix: pointing to https --- domains/abhay.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/abhay.json b/domains/abhay.json index 02777b5d91..1e722675c5 100644 --- a/domains/abhay.json +++ b/domains/abhay.json @@ -7,6 +7,6 @@ }, "record": { "CNAME": "codeinator.me", - "URL": "http://abhay.is-a.dev" + "URL": "https://abhay.is-a.dev" } } \ No newline at end of file From 6a53237ad927b02c0c360e92a7b8ed468ad384e1 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 19:26:17 +0530 Subject: [PATCH 153/239] testing fetch-depth: 0 for ci --- .github/workflows/checks.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 214dbdbb01..ecdd66f539 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -10,6 +10,7 @@ jobs: - uses: actions/checkout@v2 with: ref: ${{ github.head_ref }} + fetch-depth: 0 - name: Installing dependencies uses: borales/actions-yarn@v2.0.0 with: From 338bf8715c1b0a047472829174dd18ff47d8d5ca Mon Sep 17 00:00:00 2001 From: George S Aykara Date: Fri, 9 Oct 2020 19:47:12 +0530 Subject: [PATCH 154/239] Create george.json --- domains/george.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/george.json diff --git a/domains/george.json b/domains/george.json new file mode 100644 index 0000000000..faee02a19f --- /dev/null +++ b/domains/george.json @@ -0,0 +1,12 @@ +{ + "description": "George Aykara's personal developer website", + "repo": "https://github.com/aykarageorge", + "owner": { + "username": "aykarageorge", + "email": "aykarageorge@gmail.com" + }, + "record": { + "CNAME": "george.aykara4.com", + "URL": "https://george.is-a.dev" + } +} From 1aed2a3804250b7c8a8a6484621052b05be77fa8 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 20:07:23 +0530 Subject: [PATCH 155/239] removes fetch-depth --- .github/workflows/checks.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index ecdd66f539..214dbdbb01 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -10,7 +10,6 @@ jobs: - uses: actions/checkout@v2 with: ref: ${{ github.head_ref }} - fetch-depth: 0 - name: Installing dependencies uses: borales/actions-yarn@v2.0.0 with: From bcc9a2db86cac55569f344c3ea1123d60cd8426b Mon Sep 17 00:00:00 2001 From: Jacob Date: Fri, 9 Oct 2020 20:08:18 +0530 Subject: [PATCH 156/239] Update jacob.json --- domains/jacob.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/jacob.json b/domains/jacob.json index 0ea327a3aa..230214ceed 100644 --- a/domains/jacob.json +++ b/domains/jacob.json @@ -7,6 +7,6 @@ }, "record": { "CNAME": "jacob13400.github.io", - "URL": "https://your-domain.is-a.dev" + "URL": "https://jacob.is-a.dev" } } From 38667b884395e77f3507458b6ff21d6437871980 Mon Sep 17 00:00:00 2001 From: Augustine S Aykara Date: Fri, 9 Oct 2020 20:08:40 +0530 Subject: [PATCH 157/239] Create augustine.json --- domains/augustine.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/augustine.json diff --git a/domains/augustine.json b/domains/augustine.json new file mode 100644 index 0000000000..83610f6753 --- /dev/null +++ b/domains/augustine.json @@ -0,0 +1,12 @@ +{ + "description": "Augustine's personal developer website", + "repo": "https://github.com/augustineaykara", + "owner": { + "username": "augustineaykara", + "email": "augustineaykara@gmail.com" + }, + "record": { + "CNAME": "augustine.aykara4.com", + "URL": "https://augustine.is-a.dev" + } +} From 80f17433525a668bfaf337878b049770afb7d118 Mon Sep 17 00:00:00 2001 From: Asad Khan Date: Fri, 9 Oct 2020 20:11:38 +0530 Subject: [PATCH 158/239] Create my own `is-a.dev` domain config file This json record is still a work in progress, will update when I have more to add later --- domains/asad-khan.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/asad-khan.json diff --git a/domains/asad-khan.json b/domains/asad-khan.json new file mode 100644 index 0000000000..fc9c93aa0e --- /dev/null +++ b/domains/asad-khan.json @@ -0,0 +1,12 @@ +{ + "description": "👋 Hello there! I'm Asad, nice to meet you. Building things that bring delight to users is what I enjoy, always learning new stuff everyday.", + "repo": "https://github.com/asadkhan777", + "owner": { + "username": "asadkhan777", + "email": "asadkhan1776@gmail.com" + }, + "record": { + "CNAME": "asadkhan777.github.io", + "URL": "https://asad-khan.is-a.dev" + } +} From 20ce20e9c41f61fcdecc7105f0ad6bb00a20e5e5 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 20:15:28 +0530 Subject: [PATCH 159/239] fetch-depth set again --- .github/workflows/checks.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 214dbdbb01..ecdd66f539 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -10,6 +10,7 @@ jobs: - uses: actions/checkout@v2 with: ref: ${{ github.head_ref }} + fetch-depth: 0 - name: Installing dependencies uses: borales/actions-yarn@v2.0.0 with: From 68218ff95b401bdf0eded047169fd5a76f8cc39a Mon Sep 17 00:00:00 2001 From: Haseena Hassan <43885652+haseena-hassan@users.noreply.github.com> Date: Fri, 9 Oct 2020 20:20:32 +0530 Subject: [PATCH 160/239] Create haseena.json --- domains/haseena.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/haseena.json diff --git a/domains/haseena.json b/domains/haseena.json new file mode 100644 index 0000000000..8bf3248445 --- /dev/null +++ b/domains/haseena.json @@ -0,0 +1,12 @@ +{ + "description": "Haseena's website", + "repo": "https://github.com/haseena-hassan/is-a-dev", + "owner": { + "username": "haseena-hassan", + "email": "haseena2199@gmail.com" + }, + "record": { + "CNAME": "haseena-hassan.github.io", + "URL": "https://haseena.is-a.dev" + } +} From b5a1bd5c248f725987ca497d1dc72f7eed4a1b79 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 20:46:01 +0530 Subject: [PATCH 161/239] Adds repo field to checkout --- .github/workflows/checks.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index ecdd66f539..56be786307 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -9,6 +9,7 @@ jobs: steps: - uses: actions/checkout@v2 with: + repository: ${{ github.repository }} ref: ${{ github.head_ref }} fetch-depth: 0 - name: Installing dependencies From 1b0a157201cd85258f2d9a4bd77f88d6b892cbae Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 20:56:57 +0530 Subject: [PATCH 162/239] Add pr head commit for validation --- .github/workflows/checks.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 56be786307..6ff9fe1cd8 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -9,8 +9,7 @@ jobs: steps: - uses: actions/checkout@v2 with: - repository: ${{ github.repository }} - ref: ${{ github.head_ref }} + ref: ${{ github.event.pull_request.head.sha }} fetch-depth: 0 - name: Installing dependencies uses: borales/actions-yarn@v2.0.0 From 724260e9361a7e55277773780a4756aec20f3033 Mon Sep 17 00:00:00 2001 From: akash Date: Fri, 9 Oct 2020 22:07:29 +0545 Subject: [PATCH 163/239] Create akas.json --- domains/akas.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/akas.json diff --git a/domains/akas.json b/domains/akas.json new file mode 100644 index 0000000000..a0ddc0f4e3 --- /dev/null +++ b/domains/akas.json @@ -0,0 +1,12 @@ +{ + "description": "Akas Portfolio", + "repo":"https://github.com/akasrai/akasrai.github.io", + "owner": { + "username": "akasrai", + "email": "akasky70@gmail.com" + }, + "record": { + "CNAME":"akasrai.github.io", + "URL": "https://akas.is-a.dev" + } +} \ No newline at end of file From d74f37a870e916588152c197c3c907e2849e09c0 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 22:06:51 +0530 Subject: [PATCH 164/239] Update domains/arya.json --- domains/arya.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/arya.json b/domains/arya.json index 59f82fb1b0..7510a71e23 100644 --- a/domains/arya.json +++ b/domains/arya.json @@ -7,6 +7,6 @@ }, "record": { "CNAME": "aryavinodan2000.github.io", - "URL": "https://andrew.is-a.dev" + "URL": "https://arya.is-a.dev" } } From 22f58b67f43dacb4871ec746736eca3b1646806b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 22:19:50 +0530 Subject: [PATCH 165/239] Update domains/shibiliya.json --- domains/shibiliya.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/shibiliya.json b/domains/shibiliya.json index 12a349f9fe..4c31049862 100644 --- a/domains/shibiliya.json +++ b/domains/shibiliya.json @@ -7,6 +7,6 @@ }, "record": { "CNAME": "duaboola.github.io", - "URL": "https://ShibiliyaIsmail.is-a.dev" + "URL": "https://shibiliya.is-a.dev" } } From 58152cc1cb60d686a19bd59f0c14744eeec582a2 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 22:20:59 +0530 Subject: [PATCH 166/239] Update domains/govind.json --- domains/govind.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/govind.json b/domains/govind.json index 3073c36012..32732a21d9 100644 --- a/domains/govind.json +++ b/domains/govind.json @@ -6,7 +6,7 @@ "email": "govindvshenoy@gmail.com" }, "record": { - "CNAME": "govind-shenoy.github.io/", + "CNAME": "govind-shenoy.github.io", "URL": "https://govind.is-a.dev" } } From 35c1a59cc873a80679c4edb685c51e8f01583a3b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 22:27:36 +0530 Subject: [PATCH 167/239] Update domains/alexjoseph.json --- domains/alexjoseph.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/alexjoseph.json b/domains/alexjoseph.json index f6335eae7e..27f3853b05 100644 --- a/domains/alexjoseph.json +++ b/domains/alexjoseph.json @@ -6,7 +6,7 @@ "email": "aj71563@gmail.com" }, "record": { - "CNAME": "https://alec1563.github.io/alexjoseph.github.io/", + "CNAME": "alexjoseph.github.io", "URL": "https://alexjoseph.is-a.dev" } } From 285c73b1781c471a0d4191e0b142cfe0b06a019b Mon Sep 17 00:00:00 2001 From: Alexander Matzen Date: Fri, 9 Oct 2020 18:59:48 +0200 Subject: [PATCH 168/239] Add alexander.json --- domains/alexander.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/alexander.json diff --git a/domains/alexander.json b/domains/alexander.json new file mode 100644 index 0000000000..43758f6d18 --- /dev/null +++ b/domains/alexander.json @@ -0,0 +1,12 @@ +{ + "description": "Alexander's personal website", + "repo": "https://github.com/amatzen", + "owner": { + "username": "amatzen", + "email": "alexander@alexander.dk" + }, + "record": { + "CNAME": "alexander.dk", + "URL": "https://alexander.is-a.dev" + } +} From a26e3c6d7bc520b73f05460c1c1326dc943ecfa8 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 22:31:52 +0530 Subject: [PATCH 169/239] Update domains/justin.json --- domains/justin.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/justin.json b/domains/justin.json index 6101efb310..33969d7fb3 100644 --- a/domains/justin.json +++ b/domains/justin.json @@ -6,7 +6,7 @@ "email": "justinjohny.jj@gmail.com" }, "record": { - "CNAME": "https://justinjohnymathew.github.io/", + "CNAME": "justinjohnymathew.github.io", "URL": "https://justin.is-a.dev" } - \ No newline at end of file + From 4c00d0e85ed45283c1c2e27b35f505b21fb19acd Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 22:33:46 +0530 Subject: [PATCH 170/239] Update justin.json --- domains/justin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/justin.json b/domains/justin.json index 33969d7fb3..c2fb26afa6 100644 --- a/domains/justin.json +++ b/domains/justin.json @@ -9,4 +9,4 @@ "CNAME": "justinjohnymathew.github.io", "URL": "https://justin.is-a.dev" } - +} From 334649ad7bf5a6ebdbb866beb5d7f34bc16de5c1 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Fri, 9 Oct 2020 22:54:32 +0530 Subject: [PATCH 171/239] moves json file to domains --- proghead00.json => domains/proghead00.json | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename proghead00.json => domains/proghead00.json (100%) diff --git a/proghead00.json b/domains/proghead00.json similarity index 100% rename from proghead00.json rename to domains/proghead00.json From c7ae762f7cab5d597489d95af024bc7623a30251 Mon Sep 17 00:00:00 2001 From: Allan Barrielle Date: Fri, 9 Oct 2020 19:31:37 +0200 Subject: [PATCH 172/239] Create allan.json --- domains/allan.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/allan.json diff --git a/domains/allan.json b/domains/allan.json new file mode 100644 index 0000000000..6ca03fa35b --- /dev/null +++ b/domains/allan.json @@ -0,0 +1,12 @@ +{ + "description": "Allan's personal website", + "repo": "https://github.com/abarriel", + "owner": { + "username": "abarriel", + "email": "abarriel@student.42.fr" + }, + "record": { + "CNAME": "abarriel.github.io", + "URL": "https://allan.is-a.dev" + } +} From 29d64edb0cc22cc5be79d0dd2222144c65a9ec60 Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Fri, 9 Oct 2020 23:03:02 +0530 Subject: [PATCH 173/239] Update sharath.json --- domains/sharath.json | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index 8b13789179..5635fc18ec 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -1 +1,12 @@ - +{ + "description": "Social media website project", + "repo": "https://github.com/thesct22", + "owner": { + "username": "thesct22", + "email": "sharathct22@gmail.com" + }, + "record": { + "CNAME":"http://34.67.228.107.xip.io/" + "URL": "http://sharath.is-a.dev" + } +} From ba40bc1af337a400b5f602eeb365814599da9684 Mon Sep 17 00:00:00 2001 From: Adrian Grimm Date: Fri, 9 Oct 2020 13:36:05 -0400 Subject: [PATCH 174/239] Create adrian.json --- domains/adrian.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/adrian.json diff --git a/domains/adrian.json b/domains/adrian.json new file mode 100644 index 0000000000..d2873ec127 --- /dev/null +++ b/domains/adrian.json @@ -0,0 +1,12 @@ +{ + "description": "The awesome portfolio site for Adrian Grimm", + "repo": "https://github.com/usmcamgrimm/usmcamgrimm.github.io", + "owner": { + "username": "usmcamgrimm", + "email": "usmcamgrimm@gmail.com" + }, + "record": { + "CNAME": "usmcamgrimm.github.io", + "URL": "https://adrian.is-a.dev" + } + } From f399bac708e737102a063247cc694507d54842d1 Mon Sep 17 00:00:00 2001 From: Dan Habot Date: Fri, 9 Oct 2020 13:38:43 -0400 Subject: [PATCH 175/239] whoops --- domains/{dan-habot.is-a.dev => dan-habot.json} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename domains/{dan-habot.is-a.dev => dan-habot.json} (100%) diff --git a/domains/dan-habot.is-a.dev b/domains/dan-habot.json similarity index 100% rename from domains/dan-habot.is-a.dev rename to domains/dan-habot.json From a8dcd27118201dd712b3f614eccca29a941df413 Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Fri, 9 Oct 2020 23:10:25 +0530 Subject: [PATCH 176/239] Update sharath.json --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index 5635fc18ec..82abb788ac 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -6,7 +6,7 @@ "email": "sharathct22@gmail.com" }, "record": { - "CNAME":"http://34.67.228.107.xip.io/" + "CNAME":"http://34.67.228.107.xip.io" "URL": "http://sharath.is-a.dev" } } From cbf40f9cb08d439d8fdf700d3deaa2cd7edf958d Mon Sep 17 00:00:00 2001 From: Yuksel Date: Fri, 9 Oct 2020 20:47:53 +0200 Subject: [PATCH 177/239] Create yuksel.json --- domains/yuksel.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/yuksel.json diff --git a/domains/yuksel.json b/domains/yuksel.json new file mode 100644 index 0000000000..5e110378e4 --- /dev/null +++ b/domains/yuksel.json @@ -0,0 +1,12 @@ +{ + "description": "Yuksel Beyti's personal developer website", + "repo": "https://github.com/yuks/yuks.github.io", + "owner": { + "username": "yuks", + "email": "admin@yukselbeyti.com" + }, + "record": { + "CNAME": "yuks.github.io", + "URL": "https://yuksel.is-a.dev" + } +} From 33134f9b188b285d86e5ed5fd0eb5285b19c5067 Mon Sep 17 00:00:00 2001 From: Robert Dennis Date: Fri, 9 Oct 2020 15:32:22 -0400 Subject: [PATCH 178/239] Create atlas.json --- domains/atlas.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/atlas.json diff --git a/domains/atlas.json b/domains/atlas.json new file mode 100644 index 0000000000..b02d233214 --- /dev/null +++ b/domains/atlas.json @@ -0,0 +1,12 @@ +{ + "description": "Portfolio website", + "repo": "https://github.com/robertdrakedennis/portfolio", + "owner": { + "username": "robertdrakedennis", + "email": "robertdennispersonal@gmail.com" + }, + "record": { + "CNAME": "robertdennis.netlify.app", + "URL": "https://atlas.is-a.dev" + } +} From 387401459cc2df721070e4c5bc4ed75c168c916c Mon Sep 17 00:00:00 2001 From: Parshant Sharma Date: Sat, 10 Oct 2020 01:24:50 +0530 Subject: [PATCH 179/239] fixed missing file extension added missing .json file extension --- domains/parshnt | 12 ------------ domains/parshnt.json | 12 ++++++++++++ 2 files changed, 12 insertions(+), 12 deletions(-) delete mode 100644 domains/parshnt create mode 100644 domains/parshnt.json diff --git a/domains/parshnt b/domains/parshnt deleted file mode 100644 index c5da6609c5..0000000000 --- a/domains/parshnt +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "YAY, new place for my Portfolio", - "repo": "https://github.com/parshnt", - "owner": { - "username": "parshnt", - "email": "hi.parshant@gmail.com" - }, - "record": { - "CNAME": "parshnt.github.io", - "URL": "https://parshnt.is-a.dev" - } -} diff --git a/domains/parshnt.json b/domains/parshnt.json new file mode 100644 index 0000000000..8319fd3504 --- /dev/null +++ b/domains/parshnt.json @@ -0,0 +1,12 @@ +{ + "description": "YAY, new place for my Portfolio", + "repo": "https://github.com/parshnt", + "owner": { + "username": "parshnt", + "email": "hi.parshant@gmail.com" + }, + "record": { + "CNAME": "parshnt.github.io", + "URL": "https://parshnt.is-a.dev" + } +} From 8da557537e943250dff0d7e61b05d574ae21b254 Mon Sep 17 00:00:00 2001 From: Alex Joseph <31386066+Alec1563@users.noreply.github.com> Date: Sat, 10 Oct 2020 01:48:02 +0530 Subject: [PATCH 180/239] Update alexjoseph.json --- domains/alexjoseph.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/alexjoseph.json b/domains/alexjoseph.json index 27f3853b05..ba70eab3aa 100644 --- a/domains/alexjoseph.json +++ b/domains/alexjoseph.json @@ -1,12 +1,12 @@ { "description": "This is my first githib page", - "repo": "https://github.com/alec1563/alexjoseph.github.io", + "repo": "https://github.com/Alec1563/alec1563.github.io", "owner": { "username": "alec1563", "email": "aj71563@gmail.com" }, "record": { - "CNAME": "alexjoseph.github.io", + "CNAME": "alec1563.github.io", "URL": "https://alexjoseph.is-a.dev" } } From 135772a6bb2ebe60d3da1e0ff8a20b763507cc3f Mon Sep 17 00:00:00 2001 From: Alex Joseph <31386066+alexkjoseph@users.noreply.github.com> Date: Sat, 10 Oct 2020 01:53:55 +0530 Subject: [PATCH 181/239] Update alexjoseph.json --- domains/alexjoseph.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/domains/alexjoseph.json b/domains/alexjoseph.json index ba70eab3aa..01c7cc49e0 100644 --- a/domains/alexjoseph.json +++ b/domains/alexjoseph.json @@ -1,12 +1,12 @@ { "description": "This is my first githib page", - "repo": "https://github.com/Alec1563/alec1563.github.io", + "repo": "https://github.com/alexkjoseph/alexkjoseph.github.io", "owner": { - "username": "alec1563", + "username": "alexkjoseph", "email": "aj71563@gmail.com" }, "record": { - "CNAME": "alec1563.github.io", + "CNAME": "alexkjoseph.github.io", "URL": "https://alexjoseph.is-a.dev" } } From eddd18abaa541b810bb7bedb7670f93098b93133 Mon Sep 17 00:00:00 2001 From: Ahmed Tarek Date: Fri, 9 Oct 2020 23:03:28 +0200 Subject: [PATCH 182/239] =?UTF-8?q?=E2=9C=A8=20add=20domain:=20tokyo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- domains/tokyo.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/tokyo.json diff --git a/domains/tokyo.json b/domains/tokyo.json new file mode 100644 index 0000000000..34eda41b17 --- /dev/null +++ b/domains/tokyo.json @@ -0,0 +1,11 @@ +{ + "description": "tokyo.is-a.dev", + "repo": "https://github.com/is-a-dev/is-a-dev.github.io", + "owner": { + "username": "a-tokyo", + "email": "ahmed.tokyo1@gmail.com" + }, + "record": { + "CNAME": "is-a-dev.github.io" + } +} From 778dcf524eb537551cac71fab66d5b1603c1bcb8 Mon Sep 17 00:00:00 2001 From: Ahmed Tarek Date: Fri, 9 Oct 2020 23:07:46 +0200 Subject: [PATCH 183/239] Update tokyo.json --- domains/tokyo.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/domains/tokyo.json b/domains/tokyo.json index 34eda41b17..ecc49ea6eb 100644 --- a/domains/tokyo.json +++ b/domains/tokyo.json @@ -1,11 +1,12 @@ { - "description": "tokyo.is-a.dev", - "repo": "https://github.com/is-a-dev/is-a-dev.github.io", + "description": "A-Tokyo's website", + "repo": "https://github.com/a-tokyo/tokyo", "owner": { "username": "a-tokyo", "email": "ahmed.tokyo1@gmail.com" }, "record": { - "CNAME": "is-a-dev.github.io" + "CNAME": "tokyo.is-a-dev.github.io" + "URL": "https://tokyo.is-a.dev" } } From bc874f7709e237352b328c80a0bef8ad18961a26 Mon Sep 17 00:00:00 2001 From: Ahmed Tarek Date: Fri, 9 Oct 2020 23:13:43 +0200 Subject: [PATCH 184/239] Update tokyo.json --- domains/tokyo.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/tokyo.json b/domains/tokyo.json index ecc49ea6eb..a053a2ccd8 100644 --- a/domains/tokyo.json +++ b/domains/tokyo.json @@ -6,7 +6,7 @@ "email": "ahmed.tokyo1@gmail.com" }, "record": { - "CNAME": "tokyo.is-a-dev.github.io" + "CNAME": "tokyo.is-a-dev.github.io", "URL": "https://tokyo.is-a.dev" } } From 4735c1d23a487c89202a51b0a1a4866731d06dcb Mon Sep 17 00:00:00 2001 From: tickle Date: Fri, 9 Oct 2020 22:42:34 +0000 Subject: [PATCH 185/239] update domains --- domains/picklerick.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/picklerick.json diff --git a/domains/picklerick.json b/domains/picklerick.json new file mode 100644 index 0000000000..b9d70f69e9 --- /dev/null +++ b/domains/picklerick.json @@ -0,0 +1,12 @@ +{ + "description": "cool stuff", + "repo": "https://github.com/ticklerick/ticklerick.github.io", + "owner": { + "username": "ticklerick", + "email": "pickle@anonemail.net" + }, + "record": { + "CNAME": "ticklerick.github.io", + "URL": "https://picklerick.is-a.dev" + } +} \ No newline at end of file From a5b93e5eed8c602c8bcf8bd5d55b379ee5d5f045 Mon Sep 17 00:00:00 2001 From: Sharkaboi Date: Sat, 10 Oct 2020 08:46:51 +0530 Subject: [PATCH 186/239] Added sarath.json --- domains/sarath.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 domains/sarath.json diff --git a/domains/sarath.json b/domains/sarath.json new file mode 100644 index 0000000000..757b1183f8 --- /dev/null +++ b/domains/sarath.json @@ -0,0 +1,12 @@ +{ + "description": "Sarath's Website", + "repo": "https://github.com/Sharkaboi/sharkaboi.github.io", + "owner": { + "username": "Sharkaboi", + "email": "sarathsedu@gmail.com" + }, + "record": { + "CNAME": "sharkaboi.github.io", + "URL": "https://sarath.is-a.dev" + } + } \ No newline at end of file From 4212a8e408dc149e0cf45b7098f13692263fb531 Mon Sep 17 00:00:00 2001 From: Gokul Kp Date: Sat, 10 Oct 2020 09:25:47 +0530 Subject: [PATCH 187/239] Update and rename gokuldskp.json to gokul.json --- domains/{gokuldskp.json => gokul.json} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename domains/{gokuldskp.json => gokul.json} (84%) diff --git a/domains/gokuldskp.json b/domains/gokul.json similarity index 84% rename from domains/gokuldskp.json rename to domains/gokul.json index c6f5eb2418..7032658d26 100644 --- a/domains/gokuldskp.json +++ b/domains/gokul.json @@ -7,6 +7,6 @@ }, "record": { "CNAME": "gkdskp.github.io", - "URL": "https://gokuldskp.is-a.dev" + "URL": "https://gokul.is-a.dev" } } From e0446e82fbbcf87df95fa04123e1e6dbf9c7ed51 Mon Sep 17 00:00:00 2001 From: Sailesh Dahal <43571990+saileshbro@users.noreply.github.com> Date: Sat, 10 Oct 2020 10:39:11 +0545 Subject: [PATCH 188/239] Update sailesh.json --- domains/sailesh.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/sailesh.json b/domains/sailesh.json index 5925a4c00f..65865984d2 100644 --- a/domains/sailesh.json +++ b/domains/sailesh.json @@ -5,7 +5,7 @@ "email": "saileshbro@gmail.com" }, "record": { - "CNAME": "https://saileshbro.github.io/saileshbro/", - "URL": "https://sailesh.is-a.dev" + "CNAME": "saileshbro.github.io", + "URL": "https://saileshbro.github.io/saileshbro/" } } From 9d1c1ff3847e65306dc83895c688c96fd0d6e2f7 Mon Sep 17 00:00:00 2001 From: George S Aykara Date: Sat, 10 Oct 2020 19:37:45 +0530 Subject: [PATCH 189/239] Updated to URL redirection --- domains/george.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/domains/george.json b/domains/george.json index faee02a19f..366e408c6b 100644 --- a/domains/george.json +++ b/domains/george.json @@ -6,7 +6,6 @@ "email": "aykarageorge@gmail.com" }, "record": { - "CNAME": "george.aykara4.com", - "URL": "https://george.is-a.dev" + "URL": "https://george.aykara4.com" } } From dd09370217e3ebf28729a6da80a647db69cfcc41 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 11:38:01 +0530 Subject: [PATCH 190/239] Removes extra records --- domains/abhishek.json | 12 ------------ domains/adarshs.json | 12 ------------ domains/anoop.json | 12 ------------ domains/arya.json | 12 ------------ domains/ashish.json | 12 ------------ domains/bhadra.json | 12 ------------ domains/brandon.json | 12 ------------ domains/govind.json | 12 ------------ domains/proghead00.json | 12 ------------ domains/shibiliya.json | 12 ------------ 10 files changed, 120 deletions(-) delete mode 100644 domains/abhishek.json delete mode 100644 domains/adarshs.json delete mode 100644 domains/anoop.json delete mode 100644 domains/arya.json delete mode 100644 domains/ashish.json delete mode 100644 domains/bhadra.json delete mode 100644 domains/brandon.json delete mode 100644 domains/govind.json delete mode 100644 domains/proghead00.json delete mode 100644 domains/shibiliya.json diff --git a/domains/abhishek.json b/domains/abhishek.json deleted file mode 100644 index 22545cd82e..0000000000 --- a/domains/abhishek.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Abhishek's personal website", - "repo": "https://github.com/nullpointxr", - "owner": { - "username": "nullpointxr", - "email": "abhishek.sankar.in@protonmail.com" - }, - "record": { - "CNAME": "nullpointxr.github.io", - "URL": "https://abhishek.is-a.dev" - } -} diff --git a/domains/adarshs.json b/domains/adarshs.json deleted file mode 100644 index 47670879bf..0000000000 --- a/domains/adarshs.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "The portfolio of Adarsh S", - "repo": "https://github.com/adarshsuresh07", - "owner": { - "username": "adarshsuresh07", - "email": "adarshsuresh@cet.ac.in" - }, - "record": { - "CNAME":"adarshsuresh07.github.io", - "URL": "https://adarshs.is-a.dev" - } -} diff --git a/domains/anoop.json b/domains/anoop.json deleted file mode 100644 index 53c1c378c9..0000000000 --- a/domains/anoop.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Anoop's blog", - "repo": "https://gitlab.com/anoopmsivadas/anoopmsivadas.gitlab.io", - "owner": { - "username": "anoopmsivadas", - "email": "anoopms@disroot.org" - }, - "record": { - "CNAME": "anoopmsivadas.gitlab.io", - "URL": "https://anoop.is-a.dev" - } -} diff --git a/domains/arya.json b/domains/arya.json deleted file mode 100644 index 7510a71e23..0000000000 --- a/domains/arya.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Arya Vinodan's Website", - "repo": "https://github.com/aryavinodan", - "owner": { - "username": "aryavinodan", - "email": "aryavinodan2000@gmail.com" - }, - "record": { - "CNAME": "aryavinodan2000.github.io", - "URL": "https://arya.is-a.dev" - } -} diff --git a/domains/ashish.json b/domains/ashish.json deleted file mode 100644 index a1d6e24987..0000000000 --- a/domains/ashish.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Ashish's personal developer website", - "repo": "https://github.com/ashiishme", - "owner": { - "username": "ashiishme", - "email": "contact@ashiish.me" - }, - "record": { - "CNAME": "ashiish.me", - "URL": "https://ashish.is-a.dev" - } -} diff --git a/domains/bhadra.json b/domains/bhadra.json deleted file mode 100644 index 69b9a8fd18..0000000000 --- a/domains/bhadra.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Personal Website", - "repo": "https://github.com/BhadraJayakumarSandhya/BhadraJayakumarSandhya.github.io", - "owner": { - "username": "BhadraJayakumarSandhya", - "email": "tomjerryparu@gmail.com" - }, - "record": { - "CNAME": "BhadraJayakumarSandhya.github.io", - "URL": "https://bhadra.is-a.dev" - } -} diff --git a/domains/brandon.json b/domains/brandon.json deleted file mode 100644 index b533a756a9..0000000000 --- a/domains/brandon.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Brandons's personal developer website", - "repo": "https://github.com/b-hexsoul", - "owner": { - "username": "b-hexsoul", - "email": "brandon.hexsel@gmail.com" - }, - "record": { - "CNAME": "b-hexsoul.github.io", - "URL": "https://brandon.is-a.dev" - } -} diff --git a/domains/govind.json b/domains/govind.json deleted file mode 100644 index 32732a21d9..0000000000 --- a/domains/govind.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Govind's personal developer website", - "repo": "https://github.com/govind-shenoy", - "owner": { - "username": "govind-shenoy", - "email": "govindvshenoy@gmail.com" - }, - "record": { - "CNAME": "govind-shenoy.github.io", - "URL": "https://govind.is-a.dev" - } -} diff --git a/domains/proghead00.json b/domains/proghead00.json deleted file mode 100644 index e647ed5d98..0000000000 --- a/domains/proghead00.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Susnata's is.a.dev domain!", - "repo": "https://github.com/proghead00/proghead00.github.io", - "owner": { - "username": "proghead00", - "email": "susnata00@gmail.com" - }, - "record": { - "CNAME": "proghead00.github.io", - "URL": "https://proghead00.is-a.dev" - } -} diff --git a/domains/shibiliya.json b/domains/shibiliya.json deleted file mode 100644 index 4c31049862..0000000000 --- a/domains/shibiliya.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "description": "Shibiliya's personal developer website", - "repo": "https://github.com/duaboola", - "owner": { - "username": "duaboola", - "email": "ismailshibiliya@gmail.com" - }, - "record": { - "CNAME": "duaboola.github.io", - "URL": "https://shibiliya.is-a.dev" - } -} From 3befd0707df10a7801046cba391edc98ad2afd3a Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 11:39:32 +0530 Subject: [PATCH 191/239] Revert "moves json file to domains" This reverts commit 334649ad7bf5a6ebdbb866beb5d7f34bc16de5c1. --- proghead00.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 proghead00.json diff --git a/proghead00.json b/proghead00.json new file mode 100644 index 0000000000..e647ed5d98 --- /dev/null +++ b/proghead00.json @@ -0,0 +1,12 @@ +{ + "description": "Susnata's is.a.dev domain!", + "repo": "https://github.com/proghead00/proghead00.github.io", + "owner": { + "username": "proghead00", + "email": "susnata00@gmail.com" + }, + "record": { + "CNAME": "proghead00.github.io", + "URL": "https://proghead00.is-a.dev" + } +} From 4105ba1129597604663a6f021b9f9d46ded94041 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 11:39:53 +0530 Subject: [PATCH 192/239] Moves proghead00 to domains directory --- proghead00.json => domains/proghead00.json | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename proghead00.json => domains/proghead00.json (100%) diff --git a/proghead00.json b/domains/proghead00.json similarity index 100% rename from proghead00.json rename to domains/proghead00.json From addf748158ab77831124dc26b93742470d9ec6cc Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 14:41:07 +0530 Subject: [PATCH 193/239] Adds cpanel util --- tests/cpanel.test.js | 88 ++++++++++++++++++++++++++++++++++++++++++++ utils/lib/cpanel.js | 59 +++++++++++++++++++++++++++++ 2 files changed, 147 insertions(+) create mode 100644 tests/cpanel.test.js create mode 100644 utils/lib/cpanel.js diff --git a/tests/cpanel.test.js b/tests/cpanel.test.js new file mode 100644 index 0000000000..29d4606fb6 --- /dev/null +++ b/tests/cpanel.test.js @@ -0,0 +1,88 @@ +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=1&domain=is-a.dev&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', + dependencies: { fetch }, + }); + + await cpanel.fetchZoneRecords(); + }); + + 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=1&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', + dependencies: { fetch }, + }); + + await cpanel.fetchZoneRecords({ 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=is-a.dev&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', + dependencies: { fetch }, + }); + + await cpanel.addZoneRecord({ + name: 'googo', + type: 'boyee', + cname: 'beey', + type: 'CNAME', + ttl: 2020, + }); + }); + }); +}); + diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js new file mode 100644 index 0000000000..cadca4d4ba --- /dev/null +++ b/utils/lib/cpanel.js @@ -0,0 +1,59 @@ +const R = require('ramda'); +const fetch = require('node-fetch'); +const qs = require('qs'); +const { DOMAIN_API_HOST, DOMAIN_API_PORT, DOMAIN_USER, DOMAIN_API_KEY, DOMAIN_DOMAIN } = require('../constants'); + +const CpanelClient = (options) => { + const api = (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 = `${options.path || '/json-api'}/cpanel?${qs.stringify(query)}`; + const reqUrl = `https://${options.host}:${options.port}/${path}`; + + const { fetch } = options.dependencies; + return fetch(reqUrl, request).then(res => res.json()); + }; + + return { + // { customonly, domain } + // -> { cpanelresult: { data[{ class, ttl, name, line, Line, cname, type, record }] } } + fetchZoneRecords: api('ZoneEdit', 'fetchzone_records', { customonly: 1, domain: options.domain }), + // { domain, name, type, cname, address, ttl } + // -> { result: { status } } + addZoneRecord: api('ZoneEdit', 'add_zone_record', { domain: options.domain }), + }; +}; + +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, +}; + From c20f6d767308fe491e088b936b702448df5d1215 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 15:20:02 +0530 Subject: [PATCH 194/239] Fixes cpanel test cases and constants --- tests/cpanel.test.js | 7 +++++-- utils/constants.js | 15 ++++++++------- utils/lib/cpanel.js | 3 ++- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/tests/cpanel.test.js b/tests/cpanel.test.js index 29d4606fb6..083a09e171 100644 --- a/tests/cpanel.test.js +++ b/tests/cpanel.test.js @@ -12,7 +12,7 @@ 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=1&domain=is-a.dev&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=fetchzone_records&cpanel_jsonapi_apiversion=2'); + expect(url).toBe('https://example.com:2000//json-api/cpanel?customonly=1&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', @@ -26,6 +26,7 @@ describe('Cpanel client', () => { port: 2000, username: 'boy', apiKey: 'boybyebye', + domain: 'a.b', dependencies: { fetch }, }); @@ -48,6 +49,7 @@ describe('Cpanel client', () => { port: 2000, username: 'boy', apiKey: 'boybyebye', + domain: 'a.b', dependencies: { fetch }, }); @@ -58,7 +60,7 @@ describe('Cpanel client', () => { 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=is-a.dev&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(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', @@ -72,6 +74,7 @@ describe('Cpanel client', () => { port: 2000, username: 'boy', apiKey: 'boybyebye', + domain: 'a.b', dependencies: { fetch }, }); diff --git a/utils/constants.js b/utils/constants.js index 89a9b627fa..bc76431502 100644 --- a/utils/constants.js +++ b/utils/constants.js @@ -1,21 +1,22 @@ const path = require('path'); -const { ENV = 'sandbox', CI } = process.env; +const { ENV = 'test', CI } = process.env; if (!CI) { require('dotenv').config({ path: path.resolve(`.env.${ENV}`) }); } -const { NC_USER, NC_API_KEY, NC_DOMAIN, IP_ADDRESS } = process.env; +const { DOMAIN_USER, DOMAIN_API_KEY, DOMAIN_DOMAIN, DOMAIN_API_HOST, DOMAIN_API_PORT } = process.env; const IS_TEST = ENV === 'test'; module.exports = { ENV, VALID_RECORD_TYPES: ['CNAME', 'A', 'ALIAS', 'URL'], - NC_DOMAIN: NC_DOMAIN || 'booboo.xyz', - NC_USER: IS_TEST ? 'testuser' : NC_USER, - NC_API_KEY: IS_TEST ? 'testkey' : NC_API_KEY, - IP_ADDRESS, - TTL: 5*60, + 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, + TTL: 5*60, // TODO: Increase ttl }; diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js index cadca4d4ba..cc19e2233f 100644 --- a/utils/lib/cpanel.js +++ b/utils/lib/cpanel.js @@ -1,9 +1,10 @@ const R = require('ramda'); const fetch = require('node-fetch'); const qs = require('qs'); -const { DOMAIN_API_HOST, DOMAIN_API_PORT, DOMAIN_USER, DOMAIN_API_KEY, DOMAIN_DOMAIN } = require('../constants'); +const { DOMAIN_API_HOST, DOMAIN_API_PORT, DOMAIN_USER, DOMAIN_API_KEY, DOMAIN_DOMAIN, ...c } = require('../constants'); const CpanelClient = (options) => { + // TODO: Make defaultQuery functional const api = (module, func, defaultQuery = {}) => (q = {}) => { const query = { ...defaultQuery, From 79b46ef8b5c44cbf3a72b47c62ec823f8797ff52 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 15:21:15 +0530 Subject: [PATCH 195/239] Changes example env config --- .env | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.env b/.env index f87d42da03..26270e769c 100644 --- a/.env +++ b/.env @@ -1,4 +1,5 @@ -NC_USER=xxx -NC_API_KEY=xxxxxxxxxxxxxxx -NC_DOMAIN=domain.com -IP_ADDRESS=100.100.100.100 +DOMAIN_USER=username +DOMAIN_API_KEY=apikey +DOMAIN_API_HOST=api-example.com +DOMAIN_API_PORT=2087 +DOMAIN_DOMAIN=example.com From 28c0f7301a03e5b67b52188d2fdf5eb89b1a95b6 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 16:27:47 +0530 Subject: [PATCH 196/239] Refactors some of domain service with fetch records and add record --- package.json | 2 +- tests/domain-service.test.js | 39 ++++++++++++++++++------------------ tests/register.test.js | 1 + utils/domain-service.js | 30 +++++++-------------------- utils/lib/cpanel.js | 7 ++++++- yarn.lock | 10 ++++----- 6 files changed, 39 insertions(+), 50 deletions(-) diff --git a/package.json b/package.json index e7f7277a11..055959d8c1 100644 --- a/package.json +++ b/package.json @@ -16,9 +16,9 @@ "author": "Akshay Nair ", "license": "GPL-3.0", "dependencies": { - "@rqt/namecheap": "^2.4.2", "dotenv": "^8.2.0", "jest": "^26.4.2", + "node-fetch": "^2.6.1", "ramda": "^0.27.1" } } diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js index 08e49e9b67..87b09319d0 100644 --- a/tests/domain-service.test.js +++ b/tests/domain-service.test.js @@ -1,27 +1,25 @@ const R = require('ramda'); const { getDomainService } = require('../utils/domain-service'); -const getNc = ({ onSet, onGet } = {}) => ({ - dns: { - setHosts: (_, list) => onSet(list), - getHosts: (_) => onGet(), - }, +const getCpanel = ({ onSet, onGet } = {}) => ({ + addZoneRecord: (host) => onSet(host), + fetchZoneRecords: (_) => onGet(), }); describe('Domain service', () => { describe('getHosts', () => { it('should resolve with a list of hosts', async () => { const hosts = [ - { Name: 'xx', Type: 'CNAME', Address: 'fck.com.' }, - { Name: 'xx', Type: 'A', Address: '111.1.1212.1' }, + { name: 'xx', type: 'CNAME', address: 'fck.com.' }, + { name: 'xx', type: 'A', address: '111.1.1212.1' }, ]; - const onGet = async () => ({ hosts }) - const mockDomainService = getDomainService({ nc: getNc({ onGet }) }); + const onGet = async () => hosts; + const mockDomainService = getDomainService({ cpanel: getCpanel({ onGet }) }); const list = await mockDomainService.getHosts(); expect(list).toEqual([ - { HostName: 'xx', RecordType: 'CNAME', Address: 'fck.com' }, - { HostName: 'xx', RecordType: 'A', Address: '111.1.1212.1' }, + { name: 'xx', type: 'CNAME', address: 'fck.com' }, + { name: 'xx', type: 'A', address: '111.1.1212.1' }, ]); }); }); @@ -30,17 +28,18 @@ describe('Domain service', () => { it('should resolve with a list of hosts', async () => { const records = [ { x: 'y' }, { z: 'a' } ]; - const onSet = jest.fn((list) => { - expect(list).toBe(records); - return Promise.resolve(null); - }); + const onSet = jest.fn(async () => {}); - const mockDomainService = getDomainService({ nc: getNc({ onSet }) }); + const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet }) }); await mockDomainService.setHosts(records); - expect(onSet).toBeCalledTimes(1); + + expect(onSet).toBeCalledTimes(2); + expect(onSet.mock.calls.map(R.head)).toEqual([ { x: 'y' }, { z: 'a' } ]); }); }); + return; + describe('updateHosts', () => { it('should append new hosts with existing ones and set it', async () => { const records = [ @@ -51,7 +50,7 @@ describe('Domain service', () => { const onGet = () => Promise.resolve({ hosts: records }); const onSet = jest.fn(async () => ({})); - const mockDomainService = getDomainService({ nc: getNc({ onSet, onGet }) }); + const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet, onGet }) }); await mockDomainService.updateHosts([ { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, { HostName: 'b', RecordType: 'CNAME', Address: 'goo' }, @@ -76,7 +75,7 @@ describe('Domain service', () => { const onGet = () => Promise.resolve({ hosts: records }); const onSet = jest.fn(async () => ({})); - const mockDomainService = getDomainService({ nc: getNc({ onSet, onGet }) }); + const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet, onGet }) }); await mockDomainService.updateHosts([ { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, { HostName: 'b', RecordType: 'CNAME', Address: 'googoogaga' }, @@ -100,7 +99,7 @@ describe('Domain service', () => { const onGet = () => Promise.resolve({ hosts: records }); const onSet = jest.fn(async () => ({})); - const mockDomainService = getDomainService({ nc: getNc({ onSet, onGet }) }); + const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet, onGet }) }); await mockDomainService.updateHosts([ { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, { HostName: 'b', RecordType: 'CNAME', Address: 'googoogaga' }, diff --git a/tests/register.test.js b/tests/register.test.js index 23d1ffd439..8a24e0dec2 100644 --- a/tests/register.test.js +++ b/tests/register.test.js @@ -28,6 +28,7 @@ describe('toHostList', () => { }); describe('registerDomains', () => { + return; it('should register the new set of hosts generated from domains list', async () => { const localHosts = [ { name: 'a', record: { CNAME: 'hello' } }, diff --git a/utils/domain-service.js b/utils/domain-service.js index 0831f3cb25..391705937c 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -1,29 +1,25 @@ const R = require('ramda'); -const Namecheap = require('@rqt/namecheap'); -const { NC_DOMAIN, NC_USER, NC_API_KEY, ENV, IP_ADDRESS } = require('../utils/constants'); +const { cpanel } = require('./lib/cpanel'); -const IS_SANDBOX = ENV === 'sandbox'; +const flattenPromise = xs => Promise.all(xs); -const getDomainService = ({ nc }) => { +const getDomainService = ({ cpanel }) => { let hostList = []; const getHosts = async () => { if (hostList.length) return hostList; - const list = await nc.dns.getHosts(NC_DOMAIN) - .then(R.propOr([], 'hosts')) + const list = await cpanel.fetchZoneRecords() .then(R.map(host => R.omit(['Name', 'Type'], { ...host, - HostName: host.Name, - RecordType: host.Type, - Address: `${host.Address}`.replace(/\.$/g, ''), + address: `${host.cname || host.address}`.replace(/\.$/g, ''), }))); hostList = list; return list; }; - const setHosts = hosts => nc.dns.setHosts(NC_DOMAIN, hosts); + const setHosts = R.compose(flattenPromise, R.map(cpanel.addZoneRecord)); const getHostKey = host => `${host.HostName}--${host.RecordType}`; const toHostMap = hosts => hosts.reduce((acc, host) => { @@ -52,19 +48,7 @@ const getDomainService = ({ nc }) => { return { getHosts, setHosts, updateHosts }; }; -if (!NC_API_KEY) { - console.error('NC_API_KEY cannot be empty'); - process.exit(1); -} - -const nc = new Namecheap({ - user: NC_USER, - key: NC_API_KEY, - ip: IP_ADDRESS, - sandbox: IS_SANDBOX, -}); - -const domainService = getDomainService({ nc }); +const domainService = getDomainService({ cpanel }); module.exports = { getDomainService, diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js index cc19e2233f..ac56204245 100644 --- a/utils/lib/cpanel.js +++ b/utils/lib/cpanel.js @@ -32,7 +32,10 @@ const CpanelClient = (options) => { return { // { customonly, domain } // -> { cpanelresult: { data[{ class, ttl, name, line, Line, cname, type, record }] } } - fetchZoneRecords: api('ZoneEdit', 'fetchzone_records', { customonly: 1, domain: options.domain }), + fetchZoneRecords: R.compose( + p => p.then(R.pathOr([], ['cpanelresult', 'data'])), + api('ZoneEdit', 'fetchzone_records', { customonly: 1, domain: options.domain }) + ), // { domain, name, type, cname, address, ttl } // -> { result: { status } } addZoneRecord: api('ZoneEdit', 'add_zone_record', { domain: options.domain }), @@ -53,6 +56,8 @@ const cpanel = CpanelClient({ dependencies: { fetch }, }); +// cpanel.fetchZoneRecords().then(hosts => console.log(JSON.stringify(hosts, null, 2))); + module.exports = { cpanel, CpanelClient, diff --git a/yarn.lock b/yarn.lock index 2cb029d016..fb8f6f11e7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -458,11 +458,6 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@rqt/namecheap@^2.4.2": - version "2.4.2" - resolved "https://registry.yarnpkg.com/@rqt/namecheap/-/namecheap-2.4.2.tgz#8537eea6efbe7ac4fd449e3aee5f2c1d80986fcf" - integrity sha512-RfrK7ywOraz0nR/BlQt8fJQDcOfI9cLSTpa6l9JS9ER0HJ6t1FQ8Pxmplj/lVQv8rkczuVADdZVC3HlL98Q31w== - "@sinonjs/commons@^1.7.0": version "1.8.1" resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.1.tgz#e7df00f98a203324f6dc7cc606cad9d4a8ab2217" @@ -2468,6 +2463,11 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== +node-fetch@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" + integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== + node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" From fa9ad8baef2aec7f087ef062d1f14a21343baeef Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 17:33:26 +0530 Subject: [PATCH 197/239] Adds redirection api for cpanel (via uapi) + refactors cpanel --- tests/cpanel.test.js | 6 +++--- utils/lib/cpanel.js | 35 +++++++++++++++++++++++++++++------ 2 files changed, 32 insertions(+), 9 deletions(-) diff --git a/tests/cpanel.test.js b/tests/cpanel.test.js index 083a09e171..a32c562cf8 100644 --- a/tests/cpanel.test.js +++ b/tests/cpanel.test.js @@ -12,7 +12,7 @@ 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=1&domain=a.b&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=fetchzone_records&cpanel_jsonapi_apiversion=2'); + expect(url).toBe('https://example.com:2000/json-api/cpanel?customonly=1&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', @@ -35,7 +35,7 @@ describe('Cpanel client', () => { 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=1&domain=foobar.boeey&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=fetchzone_records&cpanel_jsonapi_apiversion=2'); + expect(url).toBe('https://example.com:2000/json-api/cpanel?customonly=1&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', @@ -60,7 +60,7 @@ describe('Cpanel client', () => { 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(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', diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js index ac56204245..f075e035ba 100644 --- a/utils/lib/cpanel.js +++ b/utils/lib/cpanel.js @@ -5,7 +5,7 @@ const { DOMAIN_API_HOST, DOMAIN_API_PORT, DOMAIN_USER, DOMAIN_API_KEY, DOMAIN_DO const CpanelClient = (options) => { // TODO: Make defaultQuery functional - const api = (module, func, defaultQuery = {}) => (q = {}) => { + const api = ({ basePath = '', action = '' }) => (module, func, defaultQuery = {}) => (q = {}) => { const query = { ...defaultQuery, ...q, @@ -22,23 +22,36 @@ const CpanelClient = (options) => { rejectUnauthorized: false, }; - const path = `${options.path || '/json-api'}/cpanel?${qs.stringify(query)}`; + 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 { // { customonly, domain } // -> { cpanelresult: { data[{ class, ttl, name, line, Line, cname, type, record }] } } fetchZoneRecords: R.compose( p => p.then(R.pathOr([], ['cpanelresult', 'data'])), - api('ZoneEdit', 'fetchzone_records', { customonly: 1, domain: options.domain }) + api2('ZoneEdit', 'fetchzone_records', { customonly: 1, domain: options.domain }) ), - // { domain, name, type, cname, address, ttl } + + // { domain, name, type(A|CNAME), cname, address, ttl } // -> { result: { status } } - addZoneRecord: api('ZoneEdit', 'add_zone_record', { domain: options.domain }), + addZoneRecord: api2('ZoneEdit', 'add_zone_record', { domain: options.domain }), + + // { domain, redirect, type(permanent|tmp), redirect_wildcard(0|1), redirect(0|1|2) } + // -> {} + addRedirection: uapi('Mime', 'add_redirect'), + + // {} + // -> { } + fetchRedirections: uapi('Mime', 'list_redirects'), }; }; @@ -56,7 +69,17 @@ const cpanel = CpanelClient({ dependencies: { fetch }, }); -// cpanel.fetchZoneRecords().then(hosts => console.log(JSON.stringify(hosts, null, 2))); +//cpanel.fetchZoneRecords() +//cpanel.addRedirection({ + //domain: 'hello.is-a.dev', + //redirect: 'https://googole.com', + //type: 'permanent', + //redirect_wildcard: 1, + //redirect_www: 0, +//}) +//cpanel.fetchRedirections() + //.then(d => console.log(JSON.stringify(d, null, 2))) + //.catch(console.error); module.exports = { cpanel, From 49e8dd7fd0a69eb432301ae69b7bf2bf92f7dad3 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 17:50:29 +0530 Subject: [PATCH 198/239] Aggregates fetching of records from zone and redirections --- tests/domain-service.test.js | 60 ++++++++++++++++++++++++++---------- utils/domain-service.js | 20 +++++++++--- utils/lib/cpanel.js | 5 ++- 3 files changed, 62 insertions(+), 23 deletions(-) diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js index 87b09319d0..85992fc915 100644 --- a/tests/domain-service.test.js +++ b/tests/domain-service.test.js @@ -1,20 +1,24 @@ const R = require('ramda'); const { getDomainService } = require('../utils/domain-service'); -const getCpanel = ({ onSet, onGet } = {}) => ({ - addZoneRecord: (host) => onSet(host), - fetchZoneRecords: (_) => onGet(), +const getCpanel = ({ zone, redir, setZone, setRedir } = {}) => ({ + addZoneRecord: (host) => setZone(host), + addRedirection: (_) => setRedir(), + fetchZoneRecords: (_) => zone(), + fetchRedirections: (_) => redir(), }); describe('Domain service', () => { describe('getHosts', () => { it('should resolve with a list of hosts', async () => { - const hosts = [ + const zones = [ { name: 'xx', type: 'CNAME', address: 'fck.com.' }, { name: 'xx', type: 'A', address: '111.1.1212.1' }, ]; - const onGet = async () => hosts; - const mockDomainService = getDomainService({ cpanel: getCpanel({ onGet }) }); + 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([ @@ -22,23 +26,45 @@ describe('Domain service', () => { { name: 'xx', type: 'A', address: '111.1.1212.1' }, ]); }); - }); - describe('setHosts', () => { - it('should resolve with a list of hosts', async () => { - const records = [ { x: 'y' }, { z: 'a' } ]; + it('should resolve with a redirections', async () => { + const zones = [ + { name: 'xx', type: 'CNAME', address: 'fck.com.' }, + { 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(); - const onSet = jest.fn(async () => {}); - - const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet }) }); - await mockDomainService.setHosts(records); - - expect(onSet).toBeCalledTimes(2); - expect(onSet.mock.calls.map(R.head)).toEqual([ { x: 'y' }, { z: 'a' } ]); + expect(list).toEqual([ + { name: 'xx', type: 'CNAME', address: 'fck.com' }, + { name: 'xx', type: 'A', address: '111.1.1212.1' }, + { name: 'foo', type: 'URL', address: 'https://google.com' }, + { name: 'foo1', type: 'URL', address: 'https://duck.com' }, + ]); }); }); return; + describe('setHosts', () => { + it('should resolve with a list of hosts', async () => { + const records = [ { x: 'y' }, { z: 'a' } ]; + + const setZone = jest.fn(async () => {}); + + const mockDomainService = getDomainService({ cpanel: getCpanel({ setZone }) }); + await mockDomainService.setHosts(records); + + expect(setZone).toBeCalledTimes(2); + expect(setZone.mock.calls.map(R.head)).toEqual([ { x: 'y' }, { z: 'a' } ]); + }); + }); + describe('updateHosts', () => { it('should append new hosts with existing ones and set it', async () => { diff --git a/utils/domain-service.js b/utils/domain-service.js index 391705937c..d71cac3f1f 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -1,19 +1,29 @@ const R = require('ramda'); const { cpanel } = require('./lib/cpanel'); +const {DOMAIN_DOMAIN} = require('./constants'); const flattenPromise = xs => Promise.all(xs); const getDomainService = ({ cpanel }) => { let hostList = []; + const fetchZoneRecords = () => cpanel.fetchZoneRecords().then(R.map(host => ({ + ...host, + name: `${host.name}`, + type: `${host.type}`, + address: `${host.cname || host.address}`.replace(/\.$/g, ''), + }))); + + const fetchRedirections = () => cpanel.fetchRedirections().then(R.map(host => ({ + name: `${host.domain}`.replace('.' + DOMAIN_DOMAIN, ''), + type: 'URL', + address: `${host.destination}`, + }))); + const getHosts = async () => { if (hostList.length) return hostList; - const list = await cpanel.fetchZoneRecords() - .then(R.map(host => R.omit(['Name', 'Type'], { - ...host, - address: `${host.cname || host.address}`.replace(/\.$/g, ''), - }))); + const list = await Promise.all([fetchZoneRecords(), fetchRedirections()]).then(R.flatten); hostList = list; return list; diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js index f075e035ba..2da03c2a3b 100644 --- a/utils/lib/cpanel.js +++ b/utils/lib/cpanel.js @@ -51,7 +51,10 @@ const CpanelClient = (options) => { // {} // -> { } - fetchRedirections: uapi('Mime', 'list_redirects'), + fetchRedirections: R.compose( + p => p.then(R.pathOr([], ['data'])), + uapi('Mime', 'list_redirects'), + ), }; }; From c63e8c4562438e0df5f3532991e96f34d8a92e48 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 18:08:37 +0530 Subject: [PATCH 199/239] Aggregates setting zone changes to server --- tests/domain-service.test.js | 38 +++++++++++++++++++++++++++------ utils/domain-service.js | 41 +++++++++++++++++++++++++----------- utils/lib/cpanel.js | 12 +++++------ 3 files changed, 67 insertions(+), 24 deletions(-) diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js index 85992fc915..dd814737df 100644 --- a/tests/domain-service.test.js +++ b/tests/domain-service.test.js @@ -2,8 +2,8 @@ const R = require('ramda'); const { getDomainService } = require('../utils/domain-service'); const getCpanel = ({ zone, redir, setZone, setRedir } = {}) => ({ - addZoneRecord: (host) => setZone(host), - addRedirection: (_) => setRedir(), + addZoneRecord: (rec) => setZone(rec), + addRedirection: (rec) => setRedir(rec), fetchZoneRecords: (_) => zone(), fetchRedirections: (_) => redir(), }); @@ -50,21 +50,47 @@ describe('Domain service', () => { }); }); - return; describe('setHosts', () => { it('should resolve with a list of hosts', async () => { - const records = [ { x: 'y' }, { z: 'a' } ]; + const records = [ + { name: 'xx', type: 'CNAME', address: 'fck.com' }, + { name: 'xx', type: 'A', address: '111.1.1212.1' }, + { name: 'foo', type: 'URL', address: 'https://google.com' }, + { name: 'foo1', type: 'URL', address: 'https://duck.com' }, + ]; const setZone = jest.fn(async () => {}); + const setRedir = jest.fn(async () => {}); - const mockDomainService = getDomainService({ cpanel: getCpanel({ setZone }) }); + const mockDomainService = getDomainService({ cpanel: getCpanel({ setZone, setRedir }) }); await mockDomainService.setHosts(records); expect(setZone).toBeCalledTimes(2); - expect(setZone.mock.calls.map(R.head)).toEqual([ { x: 'y' }, { z: 'a' } ]); + expect(setRedir).toBeCalledTimes(2); + expect(setZone.mock.calls.map(R.head)).toEqual([ + { name: 'xx', type: 'CNAME', address: 'fck.com' }, + { name: 'xx', type: 'A', address: '111.1.1212.1' }, + ]); + expect(setRedir.mock.calls.map(R.head)).toEqual([ + { + domain: 'foo.booboo.xyz', + redirect: 'https://google.com', + redirect_wildcard: 1, + redirect_www: 0, + type: 'permanent', + }, + { + domain: 'foo1.booboo.xyz', + redirect: 'https://duck.com', + redirect_wildcard: 1, + redirect_www: 0, + type: 'permanent', + }, + ]); }); }); + return; describe('updateHosts', () => { it('should append new hosts with existing ones and set it', async () => { diff --git a/utils/domain-service.js b/utils/domain-service.js index d71cac3f1f..c4e520b6dd 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -4,21 +4,35 @@ const {DOMAIN_DOMAIN} = require('./constants'); const flattenPromise = xs => Promise.all(xs); +const recordToRedirection = ({ name, address }) => ({ + domain: `${name}.${DOMAIN_DOMAIN}`, + redirect: address, + type: 'permanent', + redirect_wildcard: 1, + redirect_www: 0, +}); +const recordToZone = R.identity; + +const zoneToRecord = ({ name, type, cname, address, ...host }) => ({ + ...host, + name: `${name}`, + type: `${type}`, + address: `${cname || address}`.replace(/\.$/g, ''), +}); +const redirectionToRecord = ({ domain, destination }) => ({ + name: `${domain}`.replace('.' + DOMAIN_DOMAIN, ''), + type: 'URL', + address: `${destination}`, +}); + const getDomainService = ({ cpanel }) => { let hostList = []; - const fetchZoneRecords = () => cpanel.fetchZoneRecords().then(R.map(host => ({ - ...host, - name: `${host.name}`, - type: `${host.type}`, - address: `${host.cname || host.address}`.replace(/\.$/g, ''), - }))); + const fetchZoneRecords = () => cpanel.fetchZoneRecords().then(R.map(zoneToRecord)); + const fetchRedirections = () => cpanel.fetchRedirections().then(R.map(redirectionToRecord)); - const fetchRedirections = () => cpanel.fetchRedirections().then(R.map(host => ({ - name: `${host.domain}`.replace('.' + DOMAIN_DOMAIN, ''), - type: 'URL', - address: `${host.destination}`, - }))); + const addZoneRecord = R.compose(cpanel.addZoneRecord, recordToZone); + const addRedirection = R.compose(cpanel.addRedirection, recordToRedirection); const getHosts = async () => { if (hostList.length) return hostList; @@ -29,7 +43,10 @@ const getDomainService = ({ cpanel }) => { return list; }; - const setHosts = R.compose(flattenPromise, R.map(cpanel.addZoneRecord)); + const setHosts = R.compose(flattenPromise, R.map(R.cond([ + [ R.propEq('type', 'URL'), addRedirection ], + [ R.T, addZoneRecord ], + ]))); const getHostKey = host => `${host.HostName}--${host.RecordType}`; const toHostMap = hosts => hosts.reduce((acc, host) => { diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js index 2da03c2a3b..0c575fa2cd 100644 --- a/utils/lib/cpanel.js +++ b/utils/lib/cpanel.js @@ -42,19 +42,19 @@ const CpanelClient = (options) => { ), // { domain, name, type(A|CNAME), cname, address, ttl } - // -> { result: { status } } + // -> {} addZoneRecord: api2('ZoneEdit', 'add_zone_record', { domain: options.domain }), - // { domain, redirect, type(permanent|tmp), redirect_wildcard(0|1), redirect(0|1|2) } - // -> {} - addRedirection: uapi('Mime', 'add_redirect'), - // {} - // -> { } + // -> { domain, destination } fetchRedirections: 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) } + // -> {} + addRedirection: uapi('Mime', 'add_redirect'), }; }; From fea85040cebf9391277807fa44dc1e9798add2e1 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 19:51:55 +0530 Subject: [PATCH 200/239] Adds records diffing function with test --- tests/domain-service.test.js | 157 +++++++++++++++++++++++++---------- utils/domain-service.js | 40 +++++++-- 2 files changed, 148 insertions(+), 49 deletions(-) diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js index dd814737df..46c5a06d87 100644 --- a/tests/domain-service.test.js +++ b/tests/domain-service.test.js @@ -1,5 +1,5 @@ const R = require('ramda'); -const { getDomainService } = require('../utils/domain-service'); +const { getDomainService, diffRecords } = require('../utils/domain-service'); const getCpanel = ({ zone, redir, setZone, setRedir } = {}) => ({ addZoneRecord: (rec) => setZone(rec), @@ -8,7 +8,85 @@ const getCpanel = ({ zone, redir, setZone, setRedir } = {}) => ({ fetchRedirections: (_) => redir(), }); +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({ + edit: [], + 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({ + edit: [ + { name: 'xa', type: 'A', address: '69.69.69.69' }, + ], + add: [], + }); + }); + + 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({ + edit: [], + add: [ + { name: 'xa', type: 'A', address: '69.69.4.20' }, + ], + }); + }); +}); + describe('Domain service', () => { + const setZone = jest.fn(async () => ({})); + const setRedir = jest.fn(async () => ({})); + + const mockDS = ({ zones, redirections }) => getDomainService({ cpanel: getCpanel({ + zone: async () => ({ hosts: zones }), + redir: async () => ({ hosts: redirections }), + setZone, + setRedir, + }) }); + + const getZoneCalls = () => setZone.mock.calls.map(R.head).map(R.pick(['name', 'type', 'address'])); + + beforeEach(() => { + setZone.mockClear(); + setRedir.mockClear(); + }); + describe('getHosts', () => { it('should resolve with a list of hosts', async () => { const zones = [ @@ -90,62 +168,55 @@ describe('Domain service', () => { }); }); - return; - describe('updateHosts', () => { + return; + it('should append new hosts with existing ones and set it', async () => { - const records = [ - { HostId: 1, Name: 'a', Type: 'CNAME', Address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'goo' }, + const zones = [ + { HostId: 1, name: 'a', type: 'CNAME', address: 'boo' }, + { HostId: 2, name: 'b', type: 'CNAME', address: 'goo' }, ]; + const redirections = []; - const onGet = () => Promise.resolve({ hosts: records }); - const onSet = jest.fn(async () => ({})); - - const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet, onGet }) }); + const mockDomainService = mockDS({ zones, redirections });; await mockDomainService.updateHosts([ - { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, - { HostName: 'b', RecordType: 'CNAME', Address: 'goo' }, - { HostName: 'c', RecordType: 'A', Address: '12.131321.213' }, + { name: 'a', type: 'CNAME', address: 'boo' }, + { name: 'b', type: 'CNAME', address: 'goo' }, + { name: 'c', type: 'A', address: '12.131321.213' }, ]); - const [hosts] = onSet.mock.calls[0]; - - expect(hosts.map(R.pick(['HostName', 'RecordType', 'Address']))).toEqual([ - { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, - { HostName: 'b', RecordType: 'CNAME', Address: 'goo' }, - { HostName: 'c', RecordType: 'A', Address: '12.131321.213' }, + expect(setZone).toBeCalledTimes(1); + expect(getZoneCalls()).toEqual([ + { name: 'c', type: 'A', address: '12.131321.213' }, ]); }); it('should update matching host and set it', async () => { - const records = [ - { HostId: 1, Name: 'a', Type: 'CNAME', Address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'goo' }, + const zones = [ + { HostId: 1, Name: 'a', Type: 'CNAME', address: 'boo' }, + { HostId: 2, Name: 'b', Type: 'CNAME', address: 'goo' }, ]; + const redirections = []; - const onGet = () => Promise.resolve({ hosts: records }); - const onSet = jest.fn(async () => ({})); - - const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet, onGet }) }); + const mockDomainService = mockDS({ zones, redirections });; await mockDomainService.updateHosts([ - { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, - { HostName: 'b', RecordType: 'CNAME', Address: 'googoogaga' }, + { name: 'a', type: 'CNAME', address: 'boo' }, + { name: 'b', type: 'CNAME', address: 'googoogaga' }, ]); - const [hosts] = onSet.mock.calls[0]; - - expect(hosts.map(R.pick(['HostName', 'RecordType', 'Address']))).toEqual([ - { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, - { HostName: 'b', RecordType: 'CNAME', Address: 'googoogaga' }, + expect(setZone).toBeCalledTimes(2); + expect(getZoneCalls()).toEqual([ + { name: 'a', type: 'CNAME', address: 'boo' }, + { name: 'b', type: 'CNAME', address: 'googoogaga' }, ]); }); + return; it('should update matching host and set it', async () => { const records = [ - { HostId: 1, Name: 'a', Type: 'CNAME', Address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'goo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'xaa' }, + { HostId: 1, Name: 'a', Type: 'CNAME', address: 'boo' }, + { HostId: 2, Name: 'b', Type: 'CNAME', address: 'goo' }, + { HostId: 2, Name: 'b', Type: 'CNAME', address: 'xaa' }, ]; const onGet = () => Promise.resolve({ hosts: records }); @@ -153,17 +224,17 @@ describe('Domain service', () => { const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet, onGet }) }); await mockDomainService.updateHosts([ - { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, - { HostName: 'b', RecordType: 'CNAME', Address: 'googoogaga' }, - { HostName: 'b', RecordType: 'CNAME', Address: 'farboo' }, + { name: 'a', type: 'CNAME', address: 'boo' }, + { name: 'b', type: 'CNAME', address: 'googoogaga' }, + { name: 'b', type: 'CNAME', address: 'farboo' }, ]); const [hosts] = onSet.mock.calls[0]; - expect(hosts.map(R.pick(['HostName', 'RecordType', 'Address']))).toEqual([ - { HostName: 'a', RecordType: 'CNAME', Address: 'boo' }, - { HostName: 'b', RecordType: 'CNAME', Address: 'googoogaga' }, - { HostName: 'b', RecordType: 'CNAME', Address: 'farboo' }, + expect(hosts.map(R.pick(['name', 'type', 'address']))).toEqual([ + { name: 'a', type: 'CNAME', address: 'boo' }, + { name: 'b', type: 'CNAME', address: 'googoogaga' }, + { name: 'b', type: 'CNAME', address: 'farboo' }, ]); }); }); diff --git a/utils/domain-service.js b/utils/domain-service.js index c4e520b6dd..0c6964ae87 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -25,6 +25,13 @@ const redirectionToRecord = ({ domain, destination }) => ({ address: `${destination}`, }); +const getHostKey = host => `${host.name}##${host.type}`; + +const toHostMap = hosts => hosts.reduce((acc, host) => { + const key = getHostKey(host); + return { ...acc, [key]: [ ...(acc[key] || []), host ] }; +}, {}); + const getDomainService = ({ cpanel }) => { let hostList = []; @@ -48,12 +55,6 @@ const getDomainService = ({ cpanel }) => { [ R.T, addZoneRecord ], ]))); - const getHostKey = host => `${host.HostName}--${host.RecordType}`; - const toHostMap = hosts => hosts.reduce((acc, host) => { - const key = getHostKey(host); - return { ...acc, [key]: [ ...(acc[key] || []), host ] }; - }, {}); - const updateHosts = async hosts => { const hostList = await getHosts(); const remoteHostMap = toHostMap(hostList); @@ -75,9 +76,36 @@ const getDomainService = ({ cpanel }) => { return { getHosts, setHosts, updateHosts }; }; +const diffRecords = (oldRecords, newRecords) => { + const remoteHostMap = toHostMap(oldRecords); + const localHostMap = toHostMap(newRecords); + + return R.toPairs(localHostMap).reduce((acc, [key, local]) => { + const remote = remoteHostMap[key]; + + if (remote) { + let adds = []; + let edits = []; + + const diff = R.differenceWith((a, b) => a.address === b.address, local, remote); + + if (diff.length === local.length - remote.length) { + adds = diff; + } else { + edits = diff; + } + + return { ...acc, add: acc.add.concat(adds), edit: acc.edit.concat(edits) }; + } + + return { ...acc, add: acc.add.concat(local) }; + }, { add: [], edit: [] }); +}; + const domainService = getDomainService({ cpanel }); module.exports = { getDomainService, domainService, + diffRecords, }; From 281f88ea5f4a3a0bc7d89199fe4b12dafcfda297 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 21:56:29 +0530 Subject: [PATCH 201/239] Adds simple diffing for records + updateRecords --- tests/domain-service.test.js | 104 +++++++++++++++++++---------------- utils/domain-service.js | 86 ++++++++++++++--------------- utils/lib/cpanel.js | 44 +++++++++------ 3 files changed, 124 insertions(+), 110 deletions(-) diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js index 46c5a06d87..fe74c6ec56 100644 --- a/tests/domain-service.test.js +++ b/tests/domain-service.test.js @@ -1,14 +1,22 @@ const R = require('ramda'); const { getDomainService, diffRecords } = require('../utils/domain-service'); +const {DOMAIN_DOMAIN} = require('../utils/constants'); -const getCpanel = ({ zone, redir, setZone, setRedir } = {}) => ({ - addZoneRecord: (rec) => setZone(rec), - addRedirection: (rec) => setRedir(rec), - fetchZoneRecords: (_) => zone(), - fetchRedirections: (_) => redir(), +const getCpanel = ({ zone, addZone, editZone, redir, addRedir, editRedir } = {}) => ({ + zone: { + fetch: (_) => zone(), + add: (rec) => addZone(rec), + edit: (rec) => editZone(rec), + }, + redirection: { + fetch: (_) => redir(), + add: (rec) => addRedir(rec), + edit: (rec) => editZone(rec), + }, }); describe('diffRecords', () => { + return; it('should show added record', () => { const oldRecords = [ { name: 'xx', type: 'CNAME', address: 'fck.com.' }, @@ -70,21 +78,28 @@ describe('diffRecords', () => { }); describe('Domain service', () => { - const setZone = jest.fn(async () => ({})); - const setRedir = jest.fn(async () => ({})); + const addZone = jest.fn(async () => ({})); + const editZone = jest.fn(async () => ({})); + const addRedir = jest.fn(async () => ({})); + const editRedir = jest.fn(async () => ({})); const mockDS = ({ zones, redirections }) => getDomainService({ cpanel: getCpanel({ - zone: async () => ({ hosts: zones }), - redir: async () => ({ hosts: redirections }), - setZone, - setRedir, + zone: async () => zones, + redir: async () => redirections, + addZone, + addRedir, + editZone, + editRedir, }) }); - const getZoneCalls = () => setZone.mock.calls.map(R.head).map(R.pick(['name', 'type', 'address'])); + const getRecordCalls = recfn => recfn.mock.calls.map(R.head).map(R.pick(['name', 'type', 'address'])); + const getZoneCalls = () => getRecordCalls(addZone); beforeEach(() => { - setZone.mockClear(); - setRedir.mockClear(); + addZone.mockClear(); + editZone.mockClear(); + addRedir.mockClear(); + editRedir.mockClear(); }); describe('getHosts', () => { @@ -137,19 +152,19 @@ describe('Domain service', () => { { name: 'foo1', type: 'URL', address: 'https://duck.com' }, ]; - const setZone = jest.fn(async () => {}); - const setRedir = jest.fn(async () => {}); + const addZone = jest.fn(async () => {}); + const addRedir = jest.fn(async () => {}); - const mockDomainService = getDomainService({ cpanel: getCpanel({ setZone, setRedir }) }); + const mockDomainService = getDomainService({ cpanel: getCpanel({ addZone, addRedir }) }); await mockDomainService.setHosts(records); - expect(setZone).toBeCalledTimes(2); - expect(setRedir).toBeCalledTimes(2); - expect(setZone.mock.calls.map(R.head)).toEqual([ + expect(addZone).toBeCalledTimes(2); + expect(addRedir).toBeCalledTimes(2); + expect(addZone.mock.calls.map(R.head)).toEqual([ { name: 'xx', type: 'CNAME', address: 'fck.com' }, { name: 'xx', type: 'A', address: '111.1.1212.1' }, ]); - expect(setRedir.mock.calls.map(R.head)).toEqual([ + expect(addRedir.mock.calls.map(R.head)).toEqual([ { domain: 'foo.booboo.xyz', redirect: 'https://google.com', @@ -169,70 +184,65 @@ describe('Domain service', () => { }); describe('updateHosts', () => { - return; - it('should append new hosts with existing ones and set it', async () => { const zones = [ - { HostId: 1, name: 'a', type: 'CNAME', address: 'boo' }, - { HostId: 2, name: 'b', type: 'CNAME', address: 'goo' }, + { someid: 1, name: 'a', type: 'CNAME', address: 'boo' }, + { someid: 2, name: 'b', type: 'CNAME', address: 'goo' }, ]; const redirections = []; - const mockDomainService = mockDS({ zones, 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' }, ]); - expect(setZone).toBeCalledTimes(1); - expect(getZoneCalls()).toEqual([ + expect(addZone).toBeCalledTimes(1); + expect(getRecordCalls(addZone)).toEqual([ { name: 'c', type: 'A', address: '12.131321.213' }, ]); + expect(editZone).toBeCalledTimes(0); }); it('should update matching host and set it', async () => { const zones = [ - { HostId: 1, Name: 'a', Type: 'CNAME', address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', address: 'goo' }, + { someid: 1, name: 'a', type: 'CNAME', address: 'boo' }, + { someid: 2, name: 'b', type: 'CNAME', address: 'goo' }, ]; const redirections = []; - const mockDomainService = mockDS({ zones, redirections });; + const mockDomainService = mockDS({ zones, redirections }); await mockDomainService.updateHosts([ { name: 'a', type: 'CNAME', address: 'boo' }, { name: 'b', type: 'CNAME', address: 'googoogaga' }, ]); - expect(setZone).toBeCalledTimes(2); - expect(getZoneCalls()).toEqual([ - { name: 'a', type: 'CNAME', address: 'boo' }, + expect(addZone).toBeCalledTimes(0); + expect(editZone).toBeCalledTimes(1); + expect(getRecordCalls(editZone)).toEqual([ { name: 'b', type: 'CNAME', address: 'googoogaga' }, ]); }); - return; it('should update matching host and set it', async () => { - const records = [ - { HostId: 1, Name: 'a', Type: 'CNAME', address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', address: 'goo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', address: 'xaa' }, + const zones = [ + { someid: 1, name: 'a', type: 'CNAME', address: 'boo' }, + { someid: 2, name: 'b', type: 'CNAME', address: 'goo' }, + { someid: 2, name: 'b', type: 'CNAME', address: 'xaa' }, ]; + const redirections = []; - const onGet = () => Promise.resolve({ hosts: records }); - const onSet = jest.fn(async () => ({})); - - const mockDomainService = getDomainService({ cpanel: getCpanel({ onSet, onGet }) }); + 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' }, ]); - const [hosts] = onSet.mock.calls[0]; - - expect(hosts.map(R.pick(['name', 'type', 'address']))).toEqual([ - { name: 'a', type: 'CNAME', address: 'boo' }, + expect(addZone).toBeCalledTimes(0); + expect(editZone).toBeCalledTimes(2); + expect(getRecordCalls(editZone)).toEqual([ { name: 'b', type: 'CNAME', address: 'googoogaga' }, { name: 'b', type: 'CNAME', address: 'farboo' }, ]); diff --git a/utils/domain-service.js b/utils/domain-service.js index 0c6964ae87..5ffe0a8e86 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -1,6 +1,6 @@ const R = require('ramda'); const { cpanel } = require('./lib/cpanel'); -const {DOMAIN_DOMAIN} = require('./constants'); +const { DOMAIN_DOMAIN } = require('./constants'); const flattenPromise = xs => Promise.all(xs); @@ -32,50 +32,6 @@ const toHostMap = hosts => hosts.reduce((acc, host) => { return { ...acc, [key]: [ ...(acc[key] || []), host ] }; }, {}); -const getDomainService = ({ cpanel }) => { - let hostList = []; - - const fetchZoneRecords = () => cpanel.fetchZoneRecords().then(R.map(zoneToRecord)); - const fetchRedirections = () => cpanel.fetchRedirections().then(R.map(redirectionToRecord)); - - const addZoneRecord = R.compose(cpanel.addZoneRecord, recordToZone); - const addRedirection = R.compose(cpanel.addRedirection, recordToRedirection); - - const getHosts = async () => { - if (hostList.length) return hostList; - - const list = await Promise.all([fetchZoneRecords(), fetchRedirections()]).then(R.flatten); - - hostList = list; - return list; - }; - - const setHosts = R.compose(flattenPromise, R.map(R.cond([ - [ R.propEq('type', 'URL'), addRedirection ], - [ R.T, addZoneRecord ], - ]))); - - const updateHosts = async hosts => { - const hostList = await getHosts(); - const remoteHostMap = toHostMap(hostList); - const localHostMap = toHostMap(hosts); - - const newHostList = R.toPairs(localHostMap).reduce((acc, [key, local]) => { - const remote = remoteHostMap[key]; - - if (remote) { - return acc.concat(local.map((localItem, index) => R.merge(remote[index], localItem))); - } - - return [...acc, ...local]; - }, []); - - return setHosts(newHostList); - }; - - return { getHosts, setHosts, updateHosts }; -}; - const diffRecords = (oldRecords, newRecords) => { const remoteHostMap = toHostMap(oldRecords); const localHostMap = toHostMap(newRecords); @@ -102,6 +58,46 @@ const diffRecords = (oldRecords, newRecords) => { }, { add: [], edit: [] }); }; +const getDomainService = ({ cpanel }) => { + let hostList = []; + + const fetchZoneRecords = () => cpanel.zone.fetch().then(R.map(zoneToRecord)); + const fetchRedirections = () => cpanel.redirection.fetch().then(R.map(redirectionToRecord)); + + const addZoneRecord = R.compose(cpanel.zone.add, recordToZone); + const addRedirection = R.compose(cpanel.redirection.add, recordToRedirection); + + const editZoneRecord = R.compose(cpanel.zone.edit, recordToZone); + const editRedirection = R.compose(cpanel.redirection.edit, recordToRedirection); + + const getHosts = async () => { + if (hostList.length) return hostList; + + const list = await Promise.all([fetchZoneRecords(), fetchRedirections()]).then(R.flatten); + + hostList = list; + return list; + }; + + const addRecords = R.compose(flattenPromise, R.map(R.cond([ + [ R.propEq('type', 'URL'), addRedirection ], + [ R.T, addZoneRecord ], + ]))); + const editRecords = R.compose(flattenPromise, R.map(R.cond([ + [ R.propEq('type', 'URL'), editRedirection ], + [ R.T, editZoneRecord ], + ]))); + + const updateHosts = async hosts => { + const remoteHostList = await getHosts(); + const { add, edit } = diffRecords(remoteHostList, hosts); + + return Promise.all([ addRecords(add), editRecords(edit) ]); + }; + + return { getHosts, setHosts: addRecords, updateHosts }; +}; + const domainService = getDomainService({ cpanel }); module.exports = { diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js index 0c575fa2cd..9a4ad2e19a 100644 --- a/utils/lib/cpanel.js +++ b/utils/lib/cpanel.js @@ -34,27 +34,35 @@ const CpanelClient = (options) => { api({ basePath: 'execute', action: `${module}/${func}` })(module, func, defaultQuery); return { - // { customonly, domain } - // -> { cpanelresult: { data[{ class, ttl, name, line, Line, cname, type, record }] } } - fetchZoneRecords: R.compose( - p => p.then(R.pathOr([], ['cpanelresult', 'data'])), - api2('ZoneEdit', 'fetchzone_records', { customonly: 1, domain: options.domain }) - ), + zone: { + // { customonly, domain } + // -> { cpanelresult: { data[{ class, ttl, name, line, Line, cname, type, record }] } } + fetch: R.compose( + p => p.then(R.pathOr([], ['cpanelresult', 'data'])), + api2('ZoneEdit', 'fetchzone_records', { customonly: 1, domain: options.domain }) + ), - // { domain, name, type(A|CNAME), cname, address, ttl } - // -> {} - addZoneRecord: api2('ZoneEdit', 'add_zone_record', { domain: options.domain }), + // { name, type(A|CNAME), cname, address, ttl } + // -> {} + add: api2('ZoneEdit', 'add_zone_record', { domain: options.domain }), - // {} - // -> { domain, destination } - fetchRedirections: R.compose( - p => p.then(R.pathOr([], ['data'])), - uapi('Mime', 'list_redirects'), - ), + // { name, type(A|CNAME), cname, address, ttl } + // -> {} + edit: api2('ZoneEdit', 'edit_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) } - // -> {} - addRedirection: uapi('Mime', 'add_redirect'), + // { domain, redirect, type(permanent|tmp), redirect_wildcard(0|1), redirect(0|1|2) } + // -> {} + add: uapi('Mime', 'add_redirect'), + edit: uapi('Mime', 'add_redirect'), // NOTE: adding new updates exisiting + }, }; }; From 3cdad9b28db829fd396b42e43bd8fc844c24624b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 22:17:29 +0530 Subject: [PATCH 202/239] Adds complicated test case --- tests/domain-service.test.js | 53 +++++++++++++++++++++++++++++++++--- 1 file changed, 49 insertions(+), 4 deletions(-) diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js index fe74c6ec56..554089466e 100644 --- a/tests/domain-service.test.js +++ b/tests/domain-service.test.js @@ -11,12 +11,11 @@ const getCpanel = ({ zone, addZone, editZone, redir, addRedir, editRedir } = {}) redirection: { fetch: (_) => redir(), add: (rec) => addRedir(rec), - edit: (rec) => editZone(rec), + edit: (rec) => editRedir(rec), }, }); describe('diffRecords', () => { - return; it('should show added record', () => { const oldRecords = [ { name: 'xx', type: 'CNAME', address: 'fck.com.' }, @@ -92,8 +91,7 @@ describe('Domain service', () => { editRedir, }) }); - const getRecordCalls = recfn => recfn.mock.calls.map(R.head).map(R.pick(['name', 'type', 'address'])); - const getZoneCalls = () => getRecordCalls(addZone); + const getRecordCalls = recfn => recfn.mock.calls.map(R.head).map(R.pick(['name', 'type', 'address', 'redirect', 'domain'])); beforeEach(() => { addZone.mockClear(); @@ -247,6 +245,53 @@ describe('Domain service', () => { { name: 'b', type: 'CNAME', address: 'farboo' }, ]); }); + + it('should workout this complex example', async () => { + const zones = [ + { someid: 1, name: 'a', type: 'CNAME', address: 'world' }, + { someid: 2, name: 'b', type: 'A', address: '1' }, + { someid: 2, name: 'b', type: 'A', address: '2' }, + { someid: 2, name: 'c', type: 'CNAME', address: 'hello.com' }, + ]; + 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' }, + ]); + + expect(addZone).toBeCalledTimes(2); + expect(editZone).toBeCalledTimes(1); + expect(addRedir).toBeCalledTimes(1); + expect(editRedir).toBeCalledTimes(2); + expect(getRecordCalls(addZone)).toEqual([ + { name: 'b', type: 'A', address: '3' }, + { name: 'd', type: 'CNAME', address: 'helo.com' } + ]); + expect(getRecordCalls(editZone)).toEqual([ + { name: 'a', type: 'CNAME', address: 'boo' }, + ]); + expect(getRecordCalls(addRedir)).toEqual([ + { domain: `d.${DOMAIN_DOMAIN}`, type: 'permanent', redirect: 'https://hhh.com' }, + ]); + expect(getRecordCalls(editRedir)).toEqual([ + { domain: `b.${DOMAIN_DOMAIN}`, type: 'permanent', redirect: 'https://wowow.com' }, + { domain: `x.${DOMAIN_DOMAIN}`, type: 'permanent', redirect: 'https://example69.com' }, + ]); + }); }); }); From bd3a5a5043230d8bf23e769bf6c956584ea2d82b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 22:22:28 +0530 Subject: [PATCH 203/239] Adds req test cases for redirection fetch --- tests/cpanel.test.js | 58 +++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 55 insertions(+), 3 deletions(-) diff --git a/tests/cpanel.test.js b/tests/cpanel.test.js index a32c562cf8..f92ce51d33 100644 --- a/tests/cpanel.test.js +++ b/tests/cpanel.test.js @@ -30,7 +30,7 @@ describe('Cpanel client', () => { dependencies: { fetch }, }); - await cpanel.fetchZoneRecords(); + await cpanel.zone.fetch(); }); it('should make the correct request with query', async () => { @@ -53,7 +53,7 @@ describe('Cpanel client', () => { dependencies: { fetch }, }); - await cpanel.fetchZoneRecords({ domain: 'foobar.boeey' }); + await cpanel.zone.fetch({ domain: 'foobar.boeey' }); }); }); @@ -78,7 +78,7 @@ describe('Cpanel client', () => { dependencies: { fetch }, }); - await cpanel.addZoneRecord({ + await cpanel.zone.add({ name: 'googo', type: 'boyee', cname: 'beey', @@ -87,5 +87,57 @@ describe('Cpanel client', () => { }); }); }); + + 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' + }); + }); + }); }); From 85e5181327810b35bbcf8783b9a48d533c9c62d4 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 22:33:21 +0530 Subject: [PATCH 204/239] Removes redundant test for register-dmains --- scripts/register-domains.js | 8 +-- tests/register.test.js | 120 ++---------------------------------- 2 files changed, 9 insertions(+), 119 deletions(-) diff --git a/scripts/register-domains.js b/scripts/register-domains.js index 73186f79ab..4d2941c83a 100644 --- a/scripts/register-domains.js +++ b/scripts/register-domains.js @@ -10,10 +10,10 @@ const toHostList = R.chain(data => { return R.chain(([recordType, urls]) => (Array.isArray(urls) ? urls : [urls]).map(url => ({ - HostName: data.name, - RecordType: recordType, - Address: url, - TTL, + name: data.name, + type: recordType, + address: url, + ttl: TTL, })) , rs); }); diff --git a/tests/register.test.js b/tests/register.test.js index 8a24e0dec2..57a68ac385 100644 --- a/tests/register.test.js +++ b/tests/register.test.js @@ -1,13 +1,5 @@ const { toHostList, registerDomains } = require('../scripts/register-domains'); const { TTL } = require('../utils/constants'); -const { getDomainService } = require('../utils/domain-service'); - -const getNc = ({ onSet, onGet } = {}) => ({ - dns: { - setHosts: (_, list) => onSet(list), - getHosts: (_) => onGet(), - }, -}); describe('toHostList', () => { it('should flatten domain data to list of hosts (without https)', () => { @@ -18,113 +10,11 @@ describe('toHostList', () => { ]); expect(res).toEqual([ - { HostName: 'akshay', RecordType: 'CNAME', Address: 'phenax.github.io', TTL }, - { HostName: 'foobar', RecordType: 'CNAME', Address: 'v.io', TTL }, - { HostName: 'xx', RecordType: 'A', Address: '1.2.3.4', TTL }, - { HostName: 'xx', RecordType: 'A', Address: '5.6.3.2', TTL }, - { HostName: 'xx', RecordType: 'A', Address: '1.2.31.1', TTL }, - ]); - }); -}); - -describe('registerDomains', () => { - return; - 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 = [ - { HostId: 1, Name: 'a', Type: 'CNAME', Address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'goo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'xaa' }, - ]; - - const onSet = jest.fn(async () => ({})); - - const domainService = getDomainService({ nc: getNc({ onSet, onGet: async () => ({ hosts: remoteHosts }) }) }); - await registerDomains({ getDomains: async () => localHosts, domainService }); - - expect(onSet).toBeCalledTimes(1); - - const [hosts] = onSet.mock.calls[0]; - expect(hosts).toEqual([ - { HostId: 1, Address: 'hello', HostName: 'a', RecordType: 'CNAME', TTL }, - { HostId: 2, Address: 'xaa', HostName: 'b', RecordType: 'CNAME', TTL }, - ]); - }); - - it('should add the new set hosts', async () => { - const localHosts = [ - { name: 'a', record: { CNAME: 'boo' } }, - { name: 'b', record: { CNAME: 'xaa' } }, - { name: 'c', record: { CNAME: 'yello' } }, - ]; - const remoteHosts = [ - { HostId: 1, Name: 'a', Type: 'CNAME', Address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'xaa' }, - ]; - - const onSet = jest.fn(async () => ({})); - - const domainService = getDomainService({ nc: getNc({ onSet, onGet: async () => ({ hosts: remoteHosts }) }) }); - await registerDomains({ getDomains: async () => localHosts, domainService }); - - expect(onSet).toBeCalledTimes(1); - - const [hosts] = onSet.mock.calls[0]; - expect(hosts).toEqual([ - { HostId: 1, Address: 'boo', HostName: 'a', RecordType: 'CNAME', TTL }, - { HostId: 2, Address: 'xaa', HostName: 'b', RecordType: 'CNAME', TTL }, - { Address: 'yello', HostName: 'c', RecordType: 'CNAME', TTL }, - ]); - }); - - it('should remove unlisted hosts', async () => { - const localHosts = [ - { name: 'a', record: { CNAME: 'boo' } }, - ]; - const remoteHosts = [ - { HostId: 1, Name: 'a', Type: 'CNAME', Address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'xaa' }, - ]; - - const onSet = jest.fn(async () => ({})); - - const domainService = getDomainService({ nc: getNc({ onSet, onGet: async () => ({ hosts: remoteHosts }) }) }); - await registerDomains({ getDomains: async () => localHosts, domainService }); - - expect(onSet).toBeCalledTimes(1); - - const [hosts] = onSet.mock.calls[0]; - expect(hosts).toEqual([ - { HostId: 1, Address: 'boo', HostName: 'a', RecordType: 'CNAME', TTL }, - ]); - }); - - it('should change record type from cname to a', async () => { - const localHosts = [ - { name: 'a', record: { CNAME: 'boo' } }, - { name: 'b', record: { A: ['1', '2', '3'] } }, - ]; - const remoteHosts = [ - { HostId: 1, Name: 'a', Type: 'CNAME', Address: 'boo' }, - { HostId: 2, Name: 'b', Type: 'CNAME', Address: 'xaa' }, - ]; - - const onSet = jest.fn(async () => ({})); - - const domainService = getDomainService({ nc: getNc({ onSet, onGet: async () => ({ hosts: remoteHosts }) }) }); - await registerDomains({ getDomains: async () => localHosts, domainService }); - - expect(onSet).toBeCalledTimes(1); - - const [hosts] = onSet.mock.calls[0]; - expect(hosts).toEqual([ - { HostId: 1, Address: 'boo', HostName: 'a', RecordType: 'CNAME', TTL }, - { Address: '1', HostName: 'b', RecordType: 'A', TTL }, - { Address: '2', HostName: 'b', RecordType: 'A', TTL }, - { Address: '3', HostName: 'b', RecordType: 'A', TTL }, + { 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 }, ]); }); }); From 44287b850e05e7d025c2398b6b766a0378bbc016 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 23:04:24 +0530 Subject: [PATCH 205/239] Registerdomain tests --- scripts/register-domains.js | 6 +-- tests/register.test.js | 87 ++++++++++++++++++++++++++++++++++++- 2 files changed, 89 insertions(+), 4 deletions(-) diff --git a/scripts/register-domains.js b/scripts/register-domains.js index 4d2941c83a..42b184baaf 100644 --- a/scripts/register-domains.js +++ b/scripts/register-domains.js @@ -18,19 +18,19 @@ const toHostList = R.chain(data => { , rs); }); -const registerDomains = async ({ domainService, getDomains }) => { +const registerDomains = async ({ domainService, getDomains, log = () => {} }) => { const domains = await getDomains().then(toHostList); if (domains.length === 0) return Promise.reject(new Error('Nothing to register')); - console.log(`Publishing ${domains.length} records...`); + log(`Publishing ${domains.length} records...`); return domainService.updateHosts(domains); }; const main = async () => { console.log(`Running in ${ENV} mode`); - const result = await registerDomains({ domainService: dc, getDomains: gd }); + const result = await registerDomains({ domainService: dc, getDomains: gd, log: console.log }); console.log(result); }; diff --git a/tests/register.test.js b/tests/register.test.js index 57a68ac385..2101bcc853 100644 --- a/tests/register.test.js +++ b/tests/register.test.js @@ -1,5 +1,20 @@ +const R = require('ramda'); const { toHostList, registerDomains } = require('../scripts/register-domains'); -const { TTL } = require('../utils/constants'); +const { TTL, DOMAIN_DOMAIN } = require('../utils/constants'); +const { getDomainService } = require('../utils/domain-service'); + +const getCpanel = ({ zone, addZone, editZone, redir, addRedir, editRedir } = {}) => ({ + zone: { + fetch: (_) => zone(), + add: (rec) => addZone(rec), + edit: (rec) => editZone(rec), + }, + redirection: { + fetch: (_) => redir(), + add: (rec) => addRedir(rec), + edit: (rec) => editRedir(rec), + }, +}); describe('toHostList', () => { it('should flatten domain data to list of hosts (without https)', () => { @@ -19,3 +34,73 @@ describe('toHostList', () => { }); }); +describe('registerDomains', () => { + const addZone = jest.fn(async () => ({})); + const editZone = jest.fn(async () => ({})); + const addRedir = jest.fn(async () => ({})); + const editRedir = jest.fn(async () => ({})); + + const mockDS = ({ zones, redirections }) => getDomainService({ cpanel: getCpanel({ + zone: async () => zones, + redir: async () => redirections, + addZone, + addRedir, + editZone, + editRedir, + }) }); + + const getRecordCalls = recfn => recfn.mock.calls.map(R.head).map(R.pick(['name', 'type', 'address', 'redirect', 'domain'])); + + beforeEach(() => { + addZone.mockClear(); + editZone.mockClear(); + addRedir.mockClear(); + editRedir.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 = [ + { someididk: 1, name: 'a', type: 'CNAME', address: 'hello' }, + { someididk: 2, name: 'b', type: 'CNAME', address: 'goo' }, + { someididk: 2, name: 'b', type: 'CNAME', address: 'xaa' }, + ]; + const remoteRedirections = []; + + const domainService = mockDS({ zones: remoteHosts, redirections: remoteRedirections }); + await registerDomains({ getDomains: async () => localHosts, domainService }); + + expect(addZone).toBeCalledTimes(0); + expect(editZone).toBeCalledTimes(0); + expect(addRedir).toBeCalledTimes(0); + expect(editRedir).toBeCalledTimes(0); + }); + + it('should add the new set hosts', async () => { + const localHosts = [ + { name: 'a', record: { CNAME: 'boo', URL: 'z' } }, + { name: 'b', record: { CNAME: 'xaa', URL: 'x' } }, + { name: 'c', record: { CNAME: 'yello', URL: 'https://google.com' } }, + ]; + const remoteHosts = [ + { someididk: 1, name: 'a', type: 'CNAME', address: 'boo' }, + { someididk: 2, name: 'b', type: 'CNAME', address: 'xaa' }, + ]; + 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).toBeCalledTimes(1); + expect(editZone).toBeCalledTimes(0); + expect(addRedir).toBeCalledTimes(1); + expect(editRedir).toBeCalledTimes(1); + }); +}); + From b7741e02ff2928fcfabfde0bb58dc3732f0e2e5b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 23:06:27 +0530 Subject: [PATCH 206/239] cleanup --- scripts/register-domains.js | 2 +- tests/register.test.js | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/scripts/register-domains.js b/scripts/register-domains.js index 42b184baaf..30567eb331 100644 --- a/scripts/register-domains.js +++ b/scripts/register-domains.js @@ -24,7 +24,7 @@ const registerDomains = async ({ domainService, getDomains, log = () => {} }) => if (domains.length === 0) return Promise.reject(new Error('Nothing to register')); - log(`Publishing ${domains.length} records...`); + log(`${domains.length} records found`); return domainService.updateHosts(domains); }; diff --git a/tests/register.test.js b/tests/register.test.js index 2101bcc853..0a87f2f4ec 100644 --- a/tests/register.test.js +++ b/tests/register.test.js @@ -49,8 +49,6 @@ describe('registerDomains', () => { editRedir, }) }); - const getRecordCalls = recfn => recfn.mock.calls.map(R.head).map(R.pick(['name', 'type', 'address', 'redirect', 'domain'])); - beforeEach(() => { addZone.mockClear(); editZone.mockClear(); From 0938dff85a3ace287419b024ab416d44f5575ea2 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 23:31:12 +0530 Subject: [PATCH 207/239] Adds simple batching --- tests/domain-service.test.js | 40 ------------------------------------ utils/domain-service.js | 34 ++++++++++++++++++++++-------- 2 files changed, 25 insertions(+), 49 deletions(-) diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js index 554089466e..19154db6ef 100644 --- a/tests/domain-service.test.js +++ b/tests/domain-service.test.js @@ -141,46 +141,6 @@ describe('Domain service', () => { }); }); - describe('setHosts', () => { - it('should resolve with a list of hosts', async () => { - const records = [ - { name: 'xx', type: 'CNAME', address: 'fck.com' }, - { name: 'xx', type: 'A', address: '111.1.1212.1' }, - { name: 'foo', type: 'URL', address: 'https://google.com' }, - { name: 'foo1', type: 'URL', address: 'https://duck.com' }, - ]; - - const addZone = jest.fn(async () => {}); - const addRedir = jest.fn(async () => {}); - - const mockDomainService = getDomainService({ cpanel: getCpanel({ addZone, addRedir }) }); - await mockDomainService.setHosts(records); - - expect(addZone).toBeCalledTimes(2); - expect(addRedir).toBeCalledTimes(2); - expect(addZone.mock.calls.map(R.head)).toEqual([ - { name: 'xx', type: 'CNAME', address: 'fck.com' }, - { name: 'xx', type: 'A', address: '111.1.1212.1' }, - ]); - expect(addRedir.mock.calls.map(R.head)).toEqual([ - { - domain: 'foo.booboo.xyz', - redirect: 'https://google.com', - redirect_wildcard: 1, - redirect_www: 0, - type: 'permanent', - }, - { - domain: 'foo1.booboo.xyz', - redirect: 'https://duck.com', - redirect_wildcard: 1, - redirect_www: 0, - type: 'permanent', - }, - ]); - }); - }); - describe('updateHosts', () => { it('should append new hosts with existing ones and set it', async () => { const zones = [ diff --git a/utils/domain-service.js b/utils/domain-service.js index 5ffe0a8e86..9aacbee6e7 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -2,7 +2,7 @@ const R = require('ramda'); const { cpanel } = require('./lib/cpanel'); const { DOMAIN_DOMAIN } = require('./constants'); -const flattenPromise = xs => Promise.all(xs); +const promiseAll = xs => Promise.all(xs); const recordToRedirection = ({ name, address }) => ({ domain: `${name}.${DOMAIN_DOMAIN}`, @@ -58,17 +58,33 @@ const diffRecords = (oldRecords, newRecords) => { }, { add: [], edit: [] }); }; +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 executeBatch = (batches) => batches.reduce((promise, batch) => { + return promise.then(() => Promise.all(batch.map(fn => fn()))); +}, Promise.resolve()); + const getDomainService = ({ cpanel }) => { let hostList = []; const fetchZoneRecords = () => cpanel.zone.fetch().then(R.map(zoneToRecord)); const fetchRedirections = () => cpanel.redirection.fetch().then(R.map(redirectionToRecord)); - const addZoneRecord = R.compose(cpanel.zone.add, recordToZone); - const addRedirection = R.compose(cpanel.redirection.add, recordToRedirection); + const addZoneRecord = lazyTask(R.compose(cpanel.zone.add, recordToZone)); + const addRedirection = lazyTask(R.compose(cpanel.redirection.add, recordToRedirection)); - const editZoneRecord = R.compose(cpanel.zone.edit, recordToZone); - const editRedirection = R.compose(cpanel.redirection.edit, recordToRedirection); + const editZoneRecord = lazyTask(R.compose(cpanel.zone.edit, recordToZone)); + const editRedirection = lazyTask(R.compose(cpanel.redirection.edit, recordToRedirection)); const getHosts = async () => { if (hostList.length) return hostList; @@ -79,11 +95,11 @@ const getDomainService = ({ cpanel }) => { return list; }; - const addRecords = R.compose(flattenPromise, R.map(R.cond([ + const addRecords = R.compose(batchLazyTasks(10), R.map(R.cond([ [ R.propEq('type', 'URL'), addRedirection ], [ R.T, addZoneRecord ], ]))); - const editRecords = R.compose(flattenPromise, R.map(R.cond([ + const editRecords = R.compose(batchLazyTasks(10), R.map(R.cond([ [ R.propEq('type', 'URL'), editRedirection ], [ R.T, editZoneRecord ], ]))); @@ -92,10 +108,10 @@ const getDomainService = ({ cpanel }) => { const remoteHostList = await getHosts(); const { add, edit } = diffRecords(remoteHostList, hosts); - return Promise.all([ addRecords(add), editRecords(edit) ]); + return executeBatch(addRecords(add).concat(editRecords(edit))); }; - return { getHosts, setHosts: addRecords, updateHosts }; + return { getHosts, updateHosts }; }; const domainService = getDomainService({ cpanel }); From dda977068af804c5e66ceefff757634b7ff4e633 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 23:51:56 +0530 Subject: [PATCH 208/239] Refactors batching --- utils/domain-service.js | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/utils/domain-service.js b/utils/domain-service.js index 9aacbee6e7..358c98ed6a 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -2,8 +2,6 @@ const R = require('ramda'); const { cpanel } = require('./lib/cpanel'); const { DOMAIN_DOMAIN } = require('./constants'); -const promiseAll = xs => Promise.all(xs); - const recordToRedirection = ({ name, address }) => ({ domain: `${name}.${DOMAIN_DOMAIN}`, redirect: address, @@ -11,7 +9,13 @@ const recordToRedirection = ({ name, address }) => ({ redirect_wildcard: 1, redirect_www: 0, }); -const recordToZone = R.identity; +const recordToZone = ({ name, type, address, ...rec }) => ({ + ...rec, + name, + type, + address, + cname: type === 'CNAME' ? address : undefined, +}) const zoneToRecord = ({ name, type, cname, address, ...host }) => ({ ...host, @@ -71,7 +75,12 @@ const batchLazyTasks = count => tasks => tasks.reduce((batches, task) => { }, []); const executeBatch = (batches) => batches.reduce((promise, batch) => { - return promise.then(() => Promise.all(batch.map(fn => fn()))); + return promise.then(() => { + console.log('>>> Running batch', batch.length); + return Promise.all(batch.map(fn => fn().catch(e => { + console.error(e); + }))); + }); }, Promise.resolve()); const getDomainService = ({ cpanel }) => { @@ -95,11 +104,13 @@ const getDomainService = ({ cpanel }) => { return list; }; - const addRecords = R.compose(batchLazyTasks(10), R.map(R.cond([ + const BATCH_SIZE = 10; + + const addRecords = R.compose(batchLazyTasks(BATCH_SIZE), R.map(R.cond([ [ R.propEq('type', 'URL'), addRedirection ], [ R.T, addZoneRecord ], ]))); - const editRecords = R.compose(batchLazyTasks(10), R.map(R.cond([ + const editRecords = R.compose(batchLazyTasks(BATCH_SIZE), R.map(R.cond([ [ R.propEq('type', 'URL'), editRedirection ], [ R.T, editZoneRecord ], ]))); @@ -108,7 +119,8 @@ const getDomainService = ({ cpanel }) => { const remoteHostList = await getHosts(); const { add, edit } = diffRecords(remoteHostList, hosts); - return executeBatch(addRecords(add).concat(editRecords(edit))); + await executeBatch(addRecords(add).concat(editRecords(edit))); + return { additions: add.length, edits: edit.length }; }; return { getHosts, updateHosts }; From e142b024b55a7dbba2958fc63ddd0ba9f0127ded Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 11 Oct 2020 23:56:32 +0530 Subject: [PATCH 209/239] Adds json file extension test case --- tests/domains.test.js | 7 +++++++ utils/constants.js | 5 ++++- utils/domain.js | 4 +--- utils/lib/cpanel.js | 14 +------------- 4 files changed, 13 insertions(+), 17 deletions(-) diff --git a/tests/domains.test.js b/tests/domains.test.js index 37c59575e7..7f219fec4c 100644 --- a/tests/domains.test.js +++ b/tests/domains.test.js @@ -1,7 +1,14 @@ const R = require('ramda'); +const fs = require('fs'); const { getDomains, validateDomainData } = require('../utils/domain'); +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.map(data => { diff --git a/utils/constants.js b/utils/constants.js index bc76431502..92b835ffba 100644 --- a/utils/constants.js +++ b/utils/constants.js @@ -10,6 +10,8 @@ const { DOMAIN_USER, DOMAIN_API_KEY, DOMAIN_DOMAIN, DOMAIN_API_HOST, DOMAIN_API_ const IS_TEST = ENV === 'test'; +const DOMAINS_PATH = require('path').resolve('domains'); + module.exports = { ENV, VALID_RECORD_TYPES: ['CNAME', 'A', 'ALIAS', 'URL'], @@ -18,5 +20,6 @@ module.exports = { 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, - TTL: 5*60, // TODO: Increase ttl + DOMAINS_PATH, + TTL: 5*60*60, }; diff --git a/utils/domain.js b/utils/domain.js index 089bde4255..0dad1536c5 100644 --- a/utils/domain.js +++ b/utils/domain.js @@ -1,9 +1,7 @@ const fs = require('fs'); const path = require('path'); const R = require('ramda'); -const { VALID_RECORD_TYPES } = require('./constants'); - -const DOMAINS_PATH = path.resolve('domains'); +const { VALID_RECORD_TYPES, DOMAINS_PATH } = require('./constants'); const log = m => x => console.log(m, x) || x; diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js index 9a4ad2e19a..c29c10145e 100644 --- a/utils/lib/cpanel.js +++ b/utils/lib/cpanel.js @@ -1,7 +1,7 @@ const R = require('ramda'); const fetch = require('node-fetch'); const qs = require('qs'); -const { DOMAIN_API_HOST, DOMAIN_API_PORT, DOMAIN_USER, DOMAIN_API_KEY, DOMAIN_DOMAIN, ...c } = require('../constants'); +const { DOMAIN_API_HOST, DOMAIN_API_PORT, DOMAIN_USER, DOMAIN_API_KEY, DOMAIN_DOMAIN } = require('../constants'); const CpanelClient = (options) => { // TODO: Make defaultQuery functional @@ -80,18 +80,6 @@ const cpanel = CpanelClient({ dependencies: { fetch }, }); -//cpanel.fetchZoneRecords() -//cpanel.addRedirection({ - //domain: 'hello.is-a.dev', - //redirect: 'https://googole.com', - //type: 'permanent', - //redirect_wildcard: 1, - //redirect_www: 0, -//}) -//cpanel.fetchRedirections() - //.then(d => console.log(JSON.stringify(d, null, 2))) - //.catch(console.error); - module.exports = { cpanel, CpanelClient, From d7d2ee6ef44bfb5946ff201e7797dbc98f778fe3 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 00:00:40 +0530 Subject: [PATCH 210/239] Removes alias record type --- domains/bradley.json | 2 +- utils/constants.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/bradley.json b/domains/bradley.json index d2137d61bb..29a3966c11 100644 --- a/domains/bradley.json +++ b/domains/bradley.json @@ -5,6 +5,6 @@ "email": "bradley73@gmail.com" }, "record": { - "ALIAS": "bradleyholbrook.com" + "CNAME": "bradleyholbrook.com" } } diff --git a/utils/constants.js b/utils/constants.js index 92b835ffba..a2a22d408a 100644 --- a/utils/constants.js +++ b/utils/constants.js @@ -14,7 +14,7 @@ const DOMAINS_PATH = require('path').resolve('domains'); module.exports = { ENV, - VALID_RECORD_TYPES: ['CNAME', 'A', 'ALIAS', 'URL'], + VALID_RECORD_TYPES: ['CNAME', 'A', 'URL'], DOMAIN_DOMAIN: DOMAIN_DOMAIN || 'booboo.xyz', DOMAIN_USER: IS_TEST ? 'testuser' : DOMAIN_USER, DOMAIN_API_KEY: IS_TEST ? 'testkey' : DOMAIN_API_KEY, From 512c20ac9f6a7bcf36cd15a376132840a7705774 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 00:01:25 +0530 Subject: [PATCH 211/239] Removes alias type from docs --- API.md | 7 +++---- utils/domain.js | 1 - 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/API.md b/API.md index 47d125c53e..abf70250d7 100644 --- a/API.md +++ b/API.md @@ -63,12 +63,11 @@ This is a link to your website repository or your github account. This is purely ### record (required) This is where you specify how you want to link to your server/webpage. -Currently, only `CNAME`, `ALIAS`, `A`, `URL` record types are supported. +Currently, only `CNAME`, `A`, `URL` record types are supported. Here's a few different use cases for the given record types - -* **CNAME/ALIAS** -Replace CNAME with ALIAS for alias record type +* **CNAME** ```json { "record": { @@ -100,7 +99,7 @@ Replace CNAME with ALIAS for alias record type } ``` -* **Force HTTPS on your CNAME (or ALIAS or A) record** +* **Force HTTPS on your CNAME (or or A) record** ```json { "record": { diff --git a/utils/domain.js b/utils/domain.js index 0dad1536c5..85419a0256 100644 --- a/utils/domain.js +++ b/utils/domain.js @@ -60,7 +60,6 @@ const validateDomainData = validate({ R.compose(R.isEmpty, R.flip(R.difference)(VALID_RECORD_TYPES), R.keys), R.cond([ [R.prop('CNAME'), validateNameRecord('CNAME')], - [R.prop('ALIAS'), validateNameRecord('ALIAS')], [R.prop('A'), R.propSatisfies(R.is(Array), 'A')], [R.prop('URL'), R.propSatisfies(R.is(String), 'URL')], [R.T, R.T], From 77f0979100f927d55c651917d872db01432bb53b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 00:29:57 +0530 Subject: [PATCH 212/239] Removes upper case from name validation --- utils/domain.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/domain.js b/utils/domain.js index 85419a0256..f7819f02ab 100644 --- a/utils/domain.js +++ b/utils/domain.js @@ -36,7 +36,7 @@ const validateDomainData = validate({ R.equals('@'), R.allPass([ R.compose(between(2, 100), R.length), - str => str && str.match(/^[A-Za-z0-9\-]+$/ig), + str => str && str.match(/^[a-z0-9\-]+$/ig), ]) ]), }, From e69eff33a3e588548d5fb8627c69a86a03e677d3 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 00:46:19 +0530 Subject: [PATCH 213/239] Fixes diff issues with sanitizations --- scripts/register-domains.js | 2 +- utils/domain-service.js | 29 +++++++++++++++++------------ 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/scripts/register-domains.js b/scripts/register-domains.js index 30567eb331..00626092f1 100644 --- a/scripts/register-domains.js +++ b/scripts/register-domains.js @@ -12,7 +12,7 @@ const toHostList = R.chain(data => { (Array.isArray(urls) ? urls : [urls]).map(url => ({ name: data.name, type: recordType, - address: url, + address: (recordType === 'CNAME' ? `${url}`.toLowerCase() : `${url}`).replace(/\/$/g, ''), ttl: TTL, })) , rs); diff --git a/utils/domain-service.js b/utils/domain-service.js index 358c98ed6a..e1e9abf2a7 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -10,23 +10,24 @@ const recordToRedirection = ({ name, address }) => ({ redirect_www: 0, }); const recordToZone = ({ name, type, address, ...rec }) => ({ - ...rec, + ...rec, //line name, type, - address, - cname: type === 'CNAME' ? address : undefined, -}) + ...(type === 'CNAME' ? { cname: address } : { address }), +}); -const zoneToRecord = ({ name, type, cname, address, ...host }) => ({ +const cleanName = name => `${name}`.replace(new RegExp(`\.${DOMAIN_DOMAIN}\.?$`), '').toLowerCase(); + +const zoneToRecord = ({ name, type, cname, address, record, ...host }) => ({ ...host, - name: `${name}`, + name: cleanName(name), type: `${type}`, - address: `${cname || address}`.replace(/\.$/g, ''), + address: `${cname || address || record}`.replace(/\.$/g, '').toLowerCase(), }); const redirectionToRecord = ({ domain, destination }) => ({ - name: `${domain}`.replace('.' + DOMAIN_DOMAIN, ''), + name: cleanName(domain), type: 'URL', - address: `${destination}`, + address: `${destination}`.replace(/\/$/g, ''), }); const getHostKey = host => `${host.name}##${host.type}`; @@ -79,7 +80,12 @@ const executeBatch = (batches) => batches.reduce((promise, batch) => { console.log('>>> Running batch', batch.length); return Promise.all(batch.map(fn => fn().catch(e => { console.error(e); - }))); + }))).then(values => { + const results = values.map(R.pathOr([], ['cpanelresult', 'data', 0])); + const failed = results.filter(x => (x.result || {}).status != 1); + console.log(`${values.length - failed.length}/${values.length}`); + failed.length && console.log(failed); + }); }); }, Promise.resolve()); @@ -90,9 +96,8 @@ const getDomainService = ({ cpanel }) => { const fetchRedirections = () => cpanel.redirection.fetch().then(R.map(redirectionToRecord)); const addZoneRecord = lazyTask(R.compose(cpanel.zone.add, recordToZone)); - const addRedirection = lazyTask(R.compose(cpanel.redirection.add, recordToRedirection)); - const editZoneRecord = lazyTask(R.compose(cpanel.zone.edit, recordToZone)); + const addRedirection = lazyTask(R.compose(cpanel.redirection.add, recordToRedirection)); const editRedirection = lazyTask(R.compose(cpanel.redirection.edit, recordToRedirection)); const getHosts = async () => { From 36f97c8d06fc64db55581bb4c46ec32e6d0026f0 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 01:18:12 +0530 Subject: [PATCH 214/239] Refactors batching --- utils/constants.js | 1 + utils/domain-service.js | 36 +++++++++++++++++++++--------------- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/utils/constants.js b/utils/constants.js index a2a22d408a..086bb0f29b 100644 --- a/utils/constants.js +++ b/utils/constants.js @@ -14,6 +14,7 @@ const DOMAINS_PATH = require('path').resolve('domains'); module.exports = { ENV, + IS_TEST, VALID_RECORD_TYPES: ['CNAME', 'A', 'URL'], DOMAIN_DOMAIN: DOMAIN_DOMAIN || 'booboo.xyz', DOMAIN_USER: IS_TEST ? 'testuser' : DOMAIN_USER, diff --git a/utils/domain-service.js b/utils/domain-service.js index e1e9abf2a7..f78652740d 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -1,6 +1,8 @@ const R = require('ramda'); const { cpanel } = require('./lib/cpanel'); -const { DOMAIN_DOMAIN } = require('./constants'); +const { DOMAIN_DOMAIN, IS_TEST } = require('./constants'); + +const log = IS_TEST ? () => {} : console.log; const recordToRedirection = ({ name, address }) => ({ domain: `${name}.${DOMAIN_DOMAIN}`, @@ -13,7 +15,8 @@ const recordToZone = ({ name, type, address, ...rec }) => ({ ...rec, //line name, type, - ...(type === 'CNAME' ? { cname: address } : { address }), + address, + ...(type === 'CNAME' ? { cname: address } : {}), }); const cleanName = name => `${name}`.replace(new RegExp(`\.${DOMAIN_DOMAIN}\.?$`), '').toLowerCase(); @@ -75,17 +78,19 @@ const batchLazyTasks = count => tasks => tasks.reduce((batches, task) => { return [...full, [...last, task]]; }, []); -const executeBatch = (batches) => batches.reduce((promise, batch) => { - return promise.then(() => { - console.log('>>> Running batch', batch.length); - return Promise.all(batch.map(fn => fn().catch(e => { - console.error(e); - }))).then(values => { - const results = values.map(R.pathOr([], ['cpanelresult', 'data', 0])); - const failed = results.filter(x => (x.result || {}).status != 1); - console.log(`${values.length - failed.length}/${values.length}`); - failed.length && console.log(failed); - }); +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(R.pathOr({}, ['cpanelresult', 'data', 0])); + const failed = results.filter(x => (x.result || {}).status != 1); + + log(`${values.length - failed.length}/${values.length}`); + failed.length && log(failed); + + return null; }); }, Promise.resolve()); @@ -109,9 +114,10 @@ const getDomainService = ({ cpanel }) => { return list; }; - const BATCH_SIZE = 10; + const BATCH_SIZE = 1; - const addRecords = R.compose(batchLazyTasks(BATCH_SIZE), R.map(R.cond([ + const addRecords = R.compose(batchLazyTasks(BATCH_SIZE), R.filter(Boolean), R.map(R.cond([ + [ R.propEq('name', 'www'), () => null ], [ R.propEq('type', 'URL'), addRedirection ], [ R.T, addZoneRecord ], ]))); From d432edce5e2651708fa5f63a506e4af15f7d90e8 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 01:19:41 +0530 Subject: [PATCH 215/239] Adds missing domain records back --- domains/abhishek.json | 12 ++++++++++++ domains/adarshs.json | 12 ++++++++++++ domains/anoop.json | 12 ++++++++++++ domains/arya.json | 12 ++++++++++++ domains/ashish.json | 12 ++++++++++++ domains/bhadra.json | 12 ++++++++++++ domains/brandon.json | 12 ++++++++++++ domains/govind.json | 12 ++++++++++++ domains/shibiliya.json | 12 ++++++++++++ 9 files changed, 108 insertions(+) create mode 100644 domains/abhishek.json create mode 100644 domains/adarshs.json create mode 100644 domains/anoop.json create mode 100644 domains/arya.json create mode 100644 domains/ashish.json create mode 100644 domains/bhadra.json create mode 100644 domains/brandon.json create mode 100644 domains/govind.json create mode 100644 domains/shibiliya.json diff --git a/domains/abhishek.json b/domains/abhishek.json new file mode 100644 index 0000000000..22545cd82e --- /dev/null +++ b/domains/abhishek.json @@ -0,0 +1,12 @@ +{ + "description": "Abhishek's personal website", + "repo": "https://github.com/nullpointxr", + "owner": { + "username": "nullpointxr", + "email": "abhishek.sankar.in@protonmail.com" + }, + "record": { + "CNAME": "nullpointxr.github.io", + "URL": "https://abhishek.is-a.dev" + } +} diff --git a/domains/adarshs.json b/domains/adarshs.json new file mode 100644 index 0000000000..47670879bf --- /dev/null +++ b/domains/adarshs.json @@ -0,0 +1,12 @@ +{ + "description": "The portfolio of Adarsh S", + "repo": "https://github.com/adarshsuresh07", + "owner": { + "username": "adarshsuresh07", + "email": "adarshsuresh@cet.ac.in" + }, + "record": { + "CNAME":"adarshsuresh07.github.io", + "URL": "https://adarshs.is-a.dev" + } +} diff --git a/domains/anoop.json b/domains/anoop.json new file mode 100644 index 0000000000..53c1c378c9 --- /dev/null +++ b/domains/anoop.json @@ -0,0 +1,12 @@ +{ + "description": "Anoop's blog", + "repo": "https://gitlab.com/anoopmsivadas/anoopmsivadas.gitlab.io", + "owner": { + "username": "anoopmsivadas", + "email": "anoopms@disroot.org" + }, + "record": { + "CNAME": "anoopmsivadas.gitlab.io", + "URL": "https://anoop.is-a.dev" + } +} diff --git a/domains/arya.json b/domains/arya.json new file mode 100644 index 0000000000..7510a71e23 --- /dev/null +++ b/domains/arya.json @@ -0,0 +1,12 @@ +{ + "description": "Arya Vinodan's Website", + "repo": "https://github.com/aryavinodan", + "owner": { + "username": "aryavinodan", + "email": "aryavinodan2000@gmail.com" + }, + "record": { + "CNAME": "aryavinodan2000.github.io", + "URL": "https://arya.is-a.dev" + } +} diff --git a/domains/ashish.json b/domains/ashish.json new file mode 100644 index 0000000000..a1d6e24987 --- /dev/null +++ b/domains/ashish.json @@ -0,0 +1,12 @@ +{ + "description": "Ashish's personal developer website", + "repo": "https://github.com/ashiishme", + "owner": { + "username": "ashiishme", + "email": "contact@ashiish.me" + }, + "record": { + "CNAME": "ashiish.me", + "URL": "https://ashish.is-a.dev" + } +} diff --git a/domains/bhadra.json b/domains/bhadra.json new file mode 100644 index 0000000000..69b9a8fd18 --- /dev/null +++ b/domains/bhadra.json @@ -0,0 +1,12 @@ +{ + "description": "Personal Website", + "repo": "https://github.com/BhadraJayakumarSandhya/BhadraJayakumarSandhya.github.io", + "owner": { + "username": "BhadraJayakumarSandhya", + "email": "tomjerryparu@gmail.com" + }, + "record": { + "CNAME": "BhadraJayakumarSandhya.github.io", + "URL": "https://bhadra.is-a.dev" + } +} diff --git a/domains/brandon.json b/domains/brandon.json new file mode 100644 index 0000000000..b533a756a9 --- /dev/null +++ b/domains/brandon.json @@ -0,0 +1,12 @@ +{ + "description": "Brandons's personal developer website", + "repo": "https://github.com/b-hexsoul", + "owner": { + "username": "b-hexsoul", + "email": "brandon.hexsel@gmail.com" + }, + "record": { + "CNAME": "b-hexsoul.github.io", + "URL": "https://brandon.is-a.dev" + } +} diff --git a/domains/govind.json b/domains/govind.json new file mode 100644 index 0000000000..32732a21d9 --- /dev/null +++ b/domains/govind.json @@ -0,0 +1,12 @@ +{ + "description": "Govind's personal developer website", + "repo": "https://github.com/govind-shenoy", + "owner": { + "username": "govind-shenoy", + "email": "govindvshenoy@gmail.com" + }, + "record": { + "CNAME": "govind-shenoy.github.io", + "URL": "https://govind.is-a.dev" + } +} diff --git a/domains/shibiliya.json b/domains/shibiliya.json new file mode 100644 index 0000000000..4c31049862 --- /dev/null +++ b/domains/shibiliya.json @@ -0,0 +1,12 @@ +{ + "description": "Shibiliya's personal developer website", + "repo": "https://github.com/duaboola", + "owner": { + "username": "duaboola", + "email": "ismailshibiliya@gmail.com" + }, + "record": { + "CNAME": "duaboola.github.io", + "URL": "https://shibiliya.is-a.dev" + } +} From c4302c392fdefccc38954790fb54bc6746ac64b6 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 02:11:47 +0530 Subject: [PATCH 216/239] Changes text on pr auto reply --- scripts/reply.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/reply.js b/scripts/reply.js index e1ae2d25c0..b4fad71ae7 100644 --- a/scripts/reply.js +++ b/scripts/reply.js @@ -1,6 +1,6 @@ const getInstructions = () => ` -The changes you have made will soon be reflected!! +The changes have been published!! It should reflect in less than 24 hours. ## Here\'s what you need to do next @@ -16,7 +16,7 @@ If your domain points to a server you own, add \`domain-name.is-a.dev\` to your ## Need support 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) and pick the \`support\` template. Describe any issue you are facing there. I\'ll try my best to get back to you asap! +If you are having trouble setting up your domain, [create an issue](https://github.com/is-a-dev/register/issues/new/choose). I\'ll try my best to get back to you asap! ## Love/Hate the service? From a56a3534179bc25c9c13ad4f115cf8d614b5b159 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 02:14:15 +0530 Subject: [PATCH 217/239] Fixes manual publish action --- .github/workflows/publish-records.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/publish-records.yml b/.github/workflows/publish-records.yml index 17bb7bdc0a..f7b49f627a 100644 --- a/.github/workflows/publish-records.yml +++ b/.github/workflows/publish-records.yml @@ -10,10 +10,11 @@ jobs: env: CI: '1' ENV: production - NC_USER: ${{ secrets.NC_USER }} - NC_API_KEY: ${{ secrets.NC_API_KEY }} - NC_DOMAIN: ${{ secrets.NC_DOMAIN }} - IP_ADDRESS: ${{ secrets.IP_ADDRESS }} + DOMAIN_USER: ${{ secrets.DOMAIN_USER }} + DOMAIN_API_KEY: ${{ secrets.DOMAIN_API_KEY }} + DOMAIN_API_HOST: ${{ secrets.DOMAIN_API_HOST }} + DOMAIN_API_PORT: ${{ secrets.DOMAIN_API_PORT }} + DOMAIN_DOMAIN: ${{ secrets.DOMAIN_DOMAIN }} steps: - uses: actions/checkout@v2 - uses: borales/actions-yarn@v2.0.0 From aecce11b2a20bfc8525114d110ea0e13cebaf190 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 02:16:27 +0530 Subject: [PATCH 218/239] Removes force https --- API.md | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/API.md b/API.md index abf70250d7..746f953f12 100644 --- a/API.md +++ b/API.md @@ -17,8 +17,7 @@ "email": "any@email" }, "record": { - "CNAME": "github-username.github.io", - "URL": "https://your-domain.is-a.dev" + "CNAME": "github-username.github.io" } } ``` @@ -99,13 +98,3 @@ Here's a few different use cases for the given record types - } ``` -* **Force HTTPS on your CNAME (or or A) record** -```json -{ - "record": { - "CNAME": "username.github.io", - "URL": "https://your-domain.is-a.dev" - } -} -``` - From 1423eeddad2c91fa6aa54960377a2adc9b7eb8c8 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 02:32:09 +0530 Subject: [PATCH 219/239] Update domains/alestor123.json --- domains/alestor123.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/alestor123.json b/domains/alestor123.json index 7fef3325ed..b9ae0804ef 100644 --- a/domains/alestor123.json +++ b/domains/alestor123.json @@ -6,7 +6,7 @@ "email": "alestoraldous@gmail.com" }, "record": { - "CNAME": "http://alestor123.github.io/", + "CNAME": "alestor123.github.io", "URL": "https://alestor123.is-a.dev" } } From 67fa454e0a35967a44c73fcfacee5a6fbda01710 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 02:43:23 +0530 Subject: [PATCH 220/239] Fixes publish records script --- .github/workflows/publish-records.yml | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/publish-records.yml b/.github/workflows/publish-records.yml index f7b49f627a..5fbadd1534 100644 --- a/.github/workflows/publish-records.yml +++ b/.github/workflows/publish-records.yml @@ -8,7 +8,7 @@ jobs: publish: runs-on: ubuntu-latest env: - CI: '1' + CI: 1 ENV: production DOMAIN_USER: ${{ secrets.DOMAIN_USER }} DOMAIN_API_KEY: ${{ secrets.DOMAIN_API_KEY }} @@ -23,4 +23,4 @@ jobs: - name: Publishing records uses: borales/actions-yarn@v2.0.0 with: - cmd: publish-records + cmd: publish-records:ci diff --git a/package.json b/package.json index 055959d8c1..1e4d031f17 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Register *.is-a.dev domains for free", "scripts": { "test": "ENV=test jest", - "publish-records": "yarn test && node ./scripts/register-domains.js" + "publish-records:ci": "ENV=test yarn test && ENV=production node ./scripts/register-domains.js" }, "repository": { "type": "git", From 2f5bf97af766e693ff17b7fbe34c44aac265a443 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 02:46:53 +0530 Subject: [PATCH 221/239] Removes test from publishci --- .github/workflows/publish-records.yml | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish-records.yml b/.github/workflows/publish-records.yml index 5fbadd1534..e4b02e0117 100644 --- a/.github/workflows/publish-records.yml +++ b/.github/workflows/publish-records.yml @@ -23,4 +23,4 @@ jobs: - name: Publishing records uses: borales/actions-yarn@v2.0.0 with: - cmd: publish-records:ci + cmd: publish-records diff --git a/package.json b/package.json index 1e4d031f17..8a92a77a15 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Register *.is-a.dev domains for free", "scripts": { "test": "ENV=test jest", - "publish-records:ci": "ENV=test yarn test && ENV=production node ./scripts/register-domains.js" + "publish-records": "node ./scripts/register-domains.js" }, "repository": { "type": "git", From faba306cef385e07f81ab81d1767667962b081a1 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 13:27:17 +0530 Subject: [PATCH 222/239] doc change --- API.md | 2 +- scripts/reply.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/API.md b/API.md index 746f953f12..43bc51d648 100644 --- a/API.md +++ b/API.md @@ -22,7 +22,7 @@ } ``` * After the pull request is merged, you will see a 404 error on `your-domain.is-a.dev`. To fix this go to your github page repo's `Settings > Github pages > Custom domain` and add `your-domain.is-a.dev` in the given field -* If you have added the `URL` record for forced https, check the `Enforce HTTPS` checkbox too +* Check the `Enforce HTTPS` checkbox below the custom domain input diff --git a/scripts/reply.js b/scripts/reply.js index b4fad71ae7..9c5fc11b29 100644 --- a/scripts/reply.js +++ b/scripts/reply.js @@ -11,7 +11,7 @@ If your domain points to a server you own, add \`domain-name.is-a.dev\` to your * 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' check box if you added the URL record for forced https redirection +* Check the 'Enforce HTTPS' checkbox below the input * Give it some time to reflect and you should be good to go From 96e8e269f135603c4bb7a4fcb8d2e9df70ed6666 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 13:28:28 +0530 Subject: [PATCH 223/239] Removes www for redirection --- utils/domain-service.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/domain-service.js b/utils/domain-service.js index f78652740d..733ca29b6d 100644 --- a/utils/domain-service.js +++ b/utils/domain-service.js @@ -9,7 +9,7 @@ const recordToRedirection = ({ name, address }) => ({ redirect: address, type: 'permanent', redirect_wildcard: 1, - redirect_www: 0, + redirect_www: 1, }); const recordToZone = ({ name, type, address, ...rec }) => ({ ...rec, //line From b4dc020d2705ec1c1cbb96a34594224befd88653 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Mon, 12 Oct 2020 13:45:49 +0530 Subject: [PATCH 224/239] Adds simple migrate script --- scripts/migrate.js | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 scripts/migrate.js diff --git a/scripts/migrate.js b/scripts/migrate.js new file mode 100644 index 0000000000..e5da7ebf5f --- /dev/null +++ b/scripts/migrate.js @@ -0,0 +1,30 @@ +const fs = require('fs'); +const path = require('path'); +const R = require('ramda'); +const { DOMAINS_PATH } = require('./utils/constants'); + +const migrate = ([file, domain]) => [ + file, + { + ...domain, + record: /\.github\.io$/.test(domain.record.CNAME || '') + ? R.dissoc('URL', domain.record) + : domain.record, + } +]; + +const main = async () => { + const domains = await fs.promises.readdir(DOMAINS_PATH).then(R.map(async file => [ + file, + JSON.parse(await fs.promises.readFile(path.join(DOMAINS_PATH, file), 'utf-8')), + ])).then(ps => Promise.all(ps)); + + const newDomains = domains.map(migrate); + + await Promise.all(newDomains.map(([file, json]) => { + return fs.promises.writeFile(path.join(DOMAINS_PATH, file), JSON.stringify(json, null, 2)); + })); +}; + +main(); + From f22cbdb0d81412a109ad536a60927254a8ff1bbf Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Mon, 12 Oct 2020 18:12:01 +0530 Subject: [PATCH 225/239] Update domains/sharath.json Co-authored-by: Akshay Nair --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index 82abb788ac..c85832d1aa 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -6,7 +6,7 @@ "email": "sharathct22@gmail.com" }, "record": { - "CNAME":"http://34.67.228.107.xip.io" + "CNAME":"34.67.228.107.xip.io" "URL": "http://sharath.is-a.dev" } } From ab8ba757d52d248ce34f4fc3e289ce877776c7f4 Mon Sep 17 00:00:00 2001 From: Ahmed Tarek Date: Mon, 12 Oct 2020 15:00:04 +0200 Subject: [PATCH 226/239] Update tokyo.json --- domains/tokyo.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/tokyo.json b/domains/tokyo.json index a053a2ccd8..fb1814029d 100644 --- a/domains/tokyo.json +++ b/domains/tokyo.json @@ -6,7 +6,7 @@ "email": "ahmed.tokyo1@gmail.com" }, "record": { - "CNAME": "tokyo.is-a-dev.github.io", + "CNAME": "a-tokyo.github.io", "URL": "https://tokyo.is-a.dev" } } From 1c29e2184c295a0e1916d24c25575497a4d49231 Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Mon, 12 Oct 2020 18:50:59 +0530 Subject: [PATCH 227/239] Update sharath.json --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index c85832d1aa..90af294d96 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -6,7 +6,7 @@ "email": "sharathct22@gmail.com" }, "record": { - "CNAME":"34.67.228.107.xip.io" + "CNAME":"34.67.228.107" "URL": "http://sharath.is-a.dev" } } From b7a1a588821fdf5d7e4bfe44dad0efadf0def8e7 Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Mon, 12 Oct 2020 18:53:03 +0530 Subject: [PATCH 228/239] Update sharath.json --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index 90af294d96..8d1c5b2dae 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -6,7 +6,7 @@ "email": "sharathct22@gmail.com" }, "record": { - "CNAME":"34.67.228.107" + "CNAME":"thesct22.github.io" "URL": "http://sharath.is-a.dev" } } From 2ca01b696aad37d9256a1922a17d475002f5a07a Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Mon, 12 Oct 2020 18:53:14 +0530 Subject: [PATCH 229/239] Update sharath.json From 1ffbdee8022564dd9310999cabf7de709f33c6ce Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Mon, 12 Oct 2020 18:56:23 +0530 Subject: [PATCH 230/239] Update sharath.json --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index 8d1c5b2dae..4119e4c5f0 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -6,7 +6,7 @@ "email": "sharathct22@gmail.com" }, "record": { - "CNAME":"thesct22.github.io" + "CNAME": "34.67.228.107.xip.io" "URL": "http://sharath.is-a.dev" } } From d081a11a4e38847cc1f8196437cd329aa56ba348 Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Mon, 12 Oct 2020 18:56:56 +0530 Subject: [PATCH 231/239] Update sharath.json --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index 4119e4c5f0..ff0999bacd 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -6,7 +6,7 @@ "email": "sharathct22@gmail.com" }, "record": { - "CNAME": "34.67.228.107.xip.io" + "CNAME": "http://34.67.228.107.xip.io", "URL": "http://sharath.is-a.dev" } } From de614340d78a83df8c032de128024bbb8151ed80 Mon Sep 17 00:00:00 2001 From: Sharath Cherian Thomas Date: Mon, 12 Oct 2020 18:57:26 +0530 Subject: [PATCH 232/239] Update sharath.json --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index ff0999bacd..be4039e6df 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -6,7 +6,7 @@ "email": "sharathct22@gmail.com" }, "record": { - "CNAME": "http://34.67.228.107.xip.io", + "CNAME": "https://thesct22.github.io/", "URL": "http://sharath.is-a.dev" } } From c93ad187688d85ef0d9d9a14b65253d78f5a3594 Mon Sep 17 00:00:00 2001 From: Sailesh Dahal <43571990+saileshbro@users.noreply.github.com> Date: Mon, 12 Oct 2020 19:41:19 +0545 Subject: [PATCH 233/239] Update sailesh.json --- domains/sailesh.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/domains/sailesh.json b/domains/sailesh.json index 65865984d2..641f1d2634 100644 --- a/domains/sailesh.json +++ b/domains/sailesh.json @@ -5,7 +5,6 @@ "email": "saileshbro@gmail.com" }, "record": { - "CNAME": "saileshbro.github.io", - "URL": "https://saileshbro.github.io/saileshbro/" + "CNAME": "saileshbro.github.io" } } From 9b21d327794c78c97e221dc1855e6c80b0127b72 Mon Sep 17 00:00:00 2001 From: George S Aykara Date: Mon, 12 Oct 2020 19:49:48 +0530 Subject: [PATCH 234/239] Updated to CNAME --- domains/george.json | 1 + 1 file changed, 1 insertion(+) diff --git a/domains/george.json b/domains/george.json index 366e408c6b..105a796bf0 100644 --- a/domains/george.json +++ b/domains/george.json @@ -6,6 +6,7 @@ "email": "aykarageorge@gmail.com" }, "record": { + "CNAME": "george.aykara4.com", "URL": "https://george.aykara4.com" } } From c2fd4a7e332d38f51e3c488a216c45054cdcab50 Mon Sep 17 00:00:00 2001 From: Nishant Chaturvedi Date: Fri, 9 Oct 2020 23:06:53 +0200 Subject: [PATCH 235/239] Create nishant.json --- domains/nishant.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/nishant.json diff --git a/domains/nishant.json b/domains/nishant.json new file mode 100644 index 0000000000..a6872e8d86 --- /dev/null +++ b/domains/nishant.json @@ -0,0 +1,11 @@ +{ + "description": "Nishant's website and blog", + "repo": "https://github.com/nishch/nishch.github.io", + "owner": { + "username": "nishch", + "email": "nishantchvedi@gmail.com" + }, + "record": { + "URL": "https://twistedsoft.com" + } +} From d1e443811d867be0f64964e39386cb6deb2e0ae0 Mon Sep 17 00:00:00 2001 From: Nishant Chaturvedi Date: Mon, 12 Oct 2020 20:27:28 +0200 Subject: [PATCH 236/239] update nishant.json --- domains/nishant.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/domains/nishant.json b/domains/nishant.json index a6872e8d86..8c827c715e 100644 --- a/domains/nishant.json +++ b/domains/nishant.json @@ -6,6 +6,7 @@ "email": "nishantchvedi@gmail.com" }, "record": { - "URL": "https://twistedsoft.com" + "CNAME": "twistedsoft.com", + "URL": "https://nishant.is-a.dev" } } From ceeb5098ef86f5492d23db73e9346f2b683532f1 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Tue, 13 Oct 2020 00:22:29 +0530 Subject: [PATCH 237/239] Update domains/sharath.json --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index be4039e6df..67d1d4fbf6 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -6,7 +6,7 @@ "email": "sharathct22@gmail.com" }, "record": { - "CNAME": "https://thesct22.github.io/", + "CNAME": "thesct22.github.io", "URL": "http://sharath.is-a.dev" } } From 2721971bd8fbed5be1a02cc4632c7cb5f36c0cab Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Tue, 13 Oct 2020 00:24:03 +0530 Subject: [PATCH 238/239] Update sharath.json --- domains/sharath.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/sharath.json b/domains/sharath.json index 67d1d4fbf6..c213eb8264 100644 --- a/domains/sharath.json +++ b/domains/sharath.json @@ -1,5 +1,5 @@ { - "description": "Social media website project", + "description": "Social media website project.", "repo": "https://github.com/thesct22", "owner": { "username": "thesct22", From 575d71d74cfd7e45430a48893bf231213bfb828c Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Tue, 13 Oct 2020 00:26:10 +0530 Subject: [PATCH 239/239] Update domains/george.json --- domains/george.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/domains/george.json b/domains/george.json index 105a796bf0..5246589f1a 100644 --- a/domains/george.json +++ b/domains/george.json @@ -6,7 +6,6 @@ "email": "aykarageorge@gmail.com" }, "record": { - "CNAME": "george.aykara4.com", - "URL": "https://george.aykara4.com" + "CNAME": "george.aykara4.com" } }