/GD-Utils-1

This repo is just for heroku deployment of GD-Utils

Primary LanguageJavaScript

GDUtils Terminal + Bot

Gd-Utils is just another Tool which helps us to Bypass the 750GB daily limit by Google

🌟 This repo is just for Docker/Heroku deployment of GDUtils 🌟

Pre Requisites

1️⃣ Github Account

2️⃣ Heroku Account

3️⃣ Telegram Account

4️⃣ Some Patience

Deployment

🔷 Here I Don't Provide any Deploy button to heroku, We Use Github Actions to Deploy container to Heroku

Steps

  1. Fork this Repo

  2. Go to Repository Settings -> Secrets

    Secrets

  3. Now set the below Variables in the Github Repository Secrets Environmental Variables

  4. After Setting this go to Actions and Run the Workflow

    Actions

  5. Now Go to the App URL and Press the link shown Below

    Webhook

  6. Now it Opens the Web Terminal

    Terminal

  7. Now Copy paste the Below Line's and Paste it there and press enter

    🔷 if You had given HTTP Basic Auth Vars then Use the Below One

    > curl -F "url=https://${HTTP_USER}:${HTTP_PASS}@${APP_NAME}.herokuapp.com/gutils/api/gdurl/tgbot" "https://api.telegram.org/bot${BOT_TOKEN}/setWebhook"
    

    🔷 Else Use the Below One

    > curl -F "url=https://${APP_NAME}.herokuapp.com/gutils/api/gdurl/tgbot" "https://api.telegram.org/bot${BOT_TOKEN}/setWebhook"
    
  8. Done You Bot is Now Live and You can use the terminal Even if you want and Can generate Snap2HTML and Tree

    🔷 To access your files in your working directory go to (Avoid Using name index.html for Both Snap2HTML and Tree)

    https://YOURAPP.herokuapp.com/out/
    

Usage

  • Web Terminal

    Just type gdutils in Web Terminal

    bash-5.0$ gdutils
    GD-UTILS by iwestlin, English version by Roshanconnor, Polished by Nenokkadine
    1.Copy Files to your Teamdrive
    ➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
    2.Calculate Size
    ➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
    3.Remove Duplicate Files
    ➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖
    4.EXIT
    
    Choose any Number [1-4]:
    
    
  • Telegram Bot

    Just Type /help in Telegram Bot

Environmental Variables

Variable Value Example Required Description
HEROKU_EMAIL Heroku email abc@abc.com True Just Give the email you used for Heroku Account
HEROKU_API_KEY Heroku API key xxxxxxx-xxxx-xxxx-xxxx-xxxxxx True Get it from Heroku
REGION Heroku Container Region EU False Needed only if you need an EU Container
HEROKU_APP Heroku app name Name Must be unique True Heroku app name that needs to be Updated or Created (Should be in lowercase)
SA_ZIP Direct Link https://abc.com/sa.zip False* Service accounts to be zipped in a way that there should be a folder named accounts containing SA Jsons
GH_REPO SA repo name accounts False** Git repo name where SA's are Uploaded
GH_USER Github Username Nenokkadine False** Github username Where SA are uploaded
GH_AUTH_TOKEN Github Auth Token xxxxxxxxxxxxxx False** Get this from Github With Scopes repo
BOT_TOKEN Telegram Bot Token 123456:abcdef True Get this from Telegram
AUTH_CHATS Authorized Chats 'UserA','UserB' True Telegram Username's Should be Given and Should be in Single Quotes
HTTP_USER Username user False HTTP Basic auth adds an Extra Layer security for you app (recommended)
HTTP_PASS Password pass False HTTP Basic auth adds an Extra Layer security for you app (recommended)

How to make the App Never Sleep?

  1. Setup a CronJob to Make the heroku app never sleep

    • First Sign-up in the above Site

    • Then Go here, and Follow the ScreenShot below

      URL:
      https://YOURAPPNAME.herokuapp.com/gdutils/check.js
      

      cronJob Basic

    • If you have Setup Basic HTTP Auth you should fill these too

      HTTP Auth

    • Now you can save and enable the cron job, and your app never Sleeps again.

  2. Use Kaffeine and Just give the app name, App's With Basic HTTP Auth enabled Might not work here

Credits

👏 iwestlin - The original Developer of this tool

👏 Roshan - Translated Entire repo into English and the bash Script

👏 Shuanglei Tao - Developer of TTYD (Terminal over Web)

License

MIT