Skip to main content

Write host public ip to Google Drive.

Project description

PyPI-Status PyPI-Versions LICENCE

A service that writes the public ip address of the host computer to a file on Google Drive.

# after setting up ~/.config/ipgdrive/cfg.json
# setup a cronjob to write the public ip address to
# Google doc every 5 minutes
ipgdrive setupjob -m 5

1 Installation

pip install ipgdrive

2 Setup

To enable Google Drive access, follow the instructions here to create a service account with Google Drive access, and create a json key file for it.

Don’t forget to follow all the above instructions, including sharing your spreadsheet with an email you have in your json_key['client_email'] (Otherwise you’ll get a SpreadsheetNotFound or an APIError with "PERMISSION_DENIED" exception when trying to open it).

Place this file in the ~/.config/ipgdrive/ folder, and rename it to google_drive_service_account_key.json.

Additionally, create a cfg.json file inside the ~/.config/ipgdrive/ folder, and populate it with the following values:

{
    "spreadsheet_name": "my_server_public_ip",
    "username": "momo",
    "freq_minutes": 5
}

The username is for the user running the process on the server, NOT the Google account username.

3 Use

# after setting up ~/.config/ipgdrive/cfg.json
# setup a cronjob to write the public ip address to
# Google doc every 5 minutes
ipgdrive setupjob -m 5

4 Contributing

Package author and current maintainer is Shay Palachy (shay.palachy@gmail.com); You are more than welcome to approach him for help. Contributions are very welcomed.

4.1 Installing for development

Clone:

git clone git@github.com:shaypal5/ipgdrive.git

Install in development mode, including test dependencies:

cd ipgdrive
pip install -e '.[test]'

4.2 Running the tests

To run the tests use:

cd ipgdrive
pytest

4.3 Adding documentation

The project is documented using the numpy docstring conventions, which were chosen as they are perhaps the most widely-spread conventions that are both supported by common tools such as Sphinx and result in human-readable docstrings. When documenting code you add to this project, follow these conventions.

Additionally, if you update this README.rst file, use python setup.py checkdocs to validate it compiles.

5 Credits

Created by Shay Palachy (shay.palachy@gmail.com).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ipgdrive-0.0.12-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file ipgdrive-0.0.12-py3-none-any.whl.

File metadata

  • Download URL: ipgdrive-0.0.12-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.5

File hashes

Hashes for ipgdrive-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 73c195d6c5b649ae90ad32b059c7b50fca934d4daf73d73b06669cc417e6744a
MD5 c2947dd431d13db45ee428f9e947c4be
BLAKE2b-256 96ddeef3fc8ad0c4ba55ed1447034688699d4dbc0329e35cc64aa98b4da9ba16

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page