Skip to main content

Contains a collection of shared utility functions

Project description

SAT Utilities

This repository contains a collection of shared utility functions.

  • Slack: A class to upload files to our Slack workspace
  • SATLogger: A standard logger for SAT projects

Installation

# Install the package from private PyPI (CLI)
$ pip install sat-utils

Usage

Slack

from sat.slack import Slack

message = Slack(token="abc123-8dkhnna-97hasdj-xyz")
message.upload_file(channel="support", file_path="C:/files", file_name="support.pdf", file_type="", title="Support manual v3.2", initial_comment="Woot!")

SATLogger

from sat.logs import SATLogger
logger = SATLogger(__name__)

...
logger.info("Hello, world!")

Gravity Forms

Three environment variables are required to authenticate with the Gravity Forms API.

  • GRAVITY_FORMS_CONSUMER_KEY
  • GRAVITY_FORMS_CONSUMER_SECRET
  • GRAVITY_FORMS_BASE_URL

Alternatively, these values can be passed into the GravityForms initialization as parameters.

from sat.gravity_forms import GravityForms


gravity = GravityForms()
cards_requested = gravity.get("/forms/3/entries")

Development

Setup

Ensure you are in a virtual environment with Python 3.9.6 or higher.

> make setup

Add dependencies

Updating Requirements

This project uses pip-tools to manage requirements. To update the requirements add your requirement to the pyproject.toml file.

For dependencies required to run the app in production, add them to the pyproject.toml file under the [project] section.

[project]
...
dependencies = [
    "fastapi>=0.95.1, <1.0.0",
    "pyjwt>=2.6.0, <3.0.0",
    "...",
    "<YOUR NEW REQUIREMENT HERE>",
    "...",
]

For developer dependencies required or nice to have for development, add them to the pyproject.toml file under the [project.optional-dependencies] section.

[project.optional-dependencies]
dev = [
    "pytest>=6.2.5, <7.0.0",
    "...",
    "<YOUR NEW DEV REQUIREMENT HERE>",
    "...",
]

When you have add the dependency run:

> make update-requirements

Build and Publish

Update the version in pyproject.toml before building.

Build

> flit build

Publish

As long as your PyPI credentials are set up correctly, you can publish to PyPI with the following command:

> flit publish

Project details


Download files

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

Source Distribution

sat_utils-1.7.0.tar.gz (27.9 kB view details)

Uploaded Source

Built Distribution

sat_utils-1.7.0-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file sat_utils-1.7.0.tar.gz.

File metadata

  • Download URL: sat_utils-1.7.0.tar.gz
  • Upload date:
  • Size: 27.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for sat_utils-1.7.0.tar.gz
Algorithm Hash digest
SHA256 71a0750afc34d824694410043d7020d10176b7f323caa4d2024af839e1bbbfeb
MD5 f84a56aca7cef2f511ebc5ebed8c49cd
BLAKE2b-256 6d126d068011954789ab480bb219654422f412a73f54c3a6e0058e55e43c2c36

See more details on using hashes here.

File details

Details for the file sat_utils-1.7.0-py3-none-any.whl.

File metadata

  • Download URL: sat_utils-1.7.0-py3-none-any.whl
  • Upload date:
  • Size: 12.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for sat_utils-1.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dbc3478bba90967110acf51850fb2f64ec2a77ef44b653b36a39cc05aad4c5dc
MD5 732ae4472f48f20e0653d1e305d9f186
BLAKE2b-256 6dfaaeac932c7a00e43de7b31959ccff7c00f87f063af06f77bb360eb3f2b8a9

See more details on using hashes here.

Supported by

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