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.1.tar.gz (28.1 kB view details)

Uploaded Source

Built Distribution

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

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for sat_utils-1.7.1.tar.gz
Algorithm Hash digest
SHA256 cec157d9ef114460e16b5ce6f8b1c0d200ab3db9036b669e7a1b4682a816d850
MD5 7fdc4b6b071eb7744374ba0b7c5eb439
BLAKE2b-256 8fe49363dca0524341221e1c51f9d8042e059bc6e6438d738b4929cb160e6208

See more details on using hashes here.

File details

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

File metadata

  • Download URL: sat_utils-1.7.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d63f21afba0a690df5b5db02c6d3cdebb7e14afe860d9e99b41e51412ebfd2a8
MD5 83059f669afdc10d402a2263833a6da8
BLAKE2b-256 b8078e71091a1da76103af08e0eff9f7f416c68088aa037dd2877141c0a069af

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