Skip to main content

Snowflake Wokspace Extractor is a Python package that provides a simple way to extract and analyze data from Snowflake workspaces. It allows users to retrieve metadata, query history, and other relevant information from their Snowflake workspaces, enabling better understanding and management of their data environment.

Project description

Workspace Estimator (WE)

Workspace Estimator allows you to analyze information about your workspace without giving direct access to your system.

Disclaimer

This application is not part of the Snowflake Service and is governed by the terms in LICENSE, unless expressly agreed to in writing. You use this application at your own risk, and Snowflake has no obligation to support your use of this application.

License

These scripts are licensed under the Apache license.

Requirement

  • Account with admin privilege in the workspace.

How to

Please follow instructions in the step by step guide.

Building and Publishing to PyPI

This guide explains how to build your Python package using Hatch and publish it to PyPI using twine.

Prerequisites

Ensure you have the required tools installed:

pip install hatch twine

Step 1: Build the Package

Using Hatch (recommended)

# Clean any previous builds
rm -rf dist/ build/ *.egg-info/

# Build the package using Hatch
hatch build

After building, you should see the generated files in the dist/ directory:

  • workspace_extractor-x.y.z.tar.gz (source distribution)
  • workspace_extractor-x.y.z-py3-none-any.whl (wheel distribution)

Step 2: Test Your Build

Before uploading to PyPI, test your package locally:

# Install your package locally
pip install dist/your-package-name-version.tar.gz

# Or install from wheel
pip install dist/your-package-name-version-py3-none-any.whl

Step 3: Upload to PyPI

Option A: Upload to Test PyPI (Recommended First)

  1. Upload to Test PyPI:
twine upload --repository testpypi dist/*
  1. Test installation from Test PyPI:
pip install --index-url https://test.pypi.org/simple/ your-package-name

Option B: Upload to Production PyPI

  1. Upload to PyPI:
twine upload dist/*

Step 4: Authentication

Using API Tokens (Recommended)

After the twine upload dist/* command is executed it will ask for a password (API Token)

Complete Workflow Example

# 1. Clean previous builds
rm -rf dist/ build/ *.egg-info/

# 2. Build the package using Hatch
hatch build

# 3. Check the build
twine check dist/*

# 4. Upload to Test PyPI first
twine upload --repository testpypi dist/*

# 5. Test installation
pip install --index-url https://test.pypi.org/simple/ your-package-name

# 6. If everything works, upload to production PyPI
twine upload dist/*

Troubleshooting

Common Issues

  • "Package already exists": You cannot overwrite existing versions. Increment your version number in pyproject.toml or setup.py.
  • Authentication failed: Check your API token or credentials.
  • File not found: Ensure you've built the package first with hatch build.

Checking Your Build

# Verify your package contents
twine check dist/*

# List contents of your wheel
unzip -l dist/your-package-name-version-py3-none-any.whl

Version Management

Always increment your version number for new releases in __version__.py:

  • Patch version: 1.0.01.0.1 (bug fixes)
  • Minor version: 1.0.01.1.0 (new features)
  • Major version: 1.0.02.0.0 (breaking changes)

Note: With Hatch, the version is managed in the __version__.py file as configured in pyproject.toml.

Security Best Practices

  1. Use API tokens instead of username/password
  2. Limit token scope to specific projects when possible
  3. Keep tokens secure - don't commit them to version control
  4. Use Test PyPI first to avoid mistakes on production

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

snow_workspace_extractor-0.1.2.tar.gz (23.5 kB view details)

Uploaded Source

Built Distribution

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

snow_workspace_extractor-0.1.2-py3-none-any.whl (26.9 kB view details)

Uploaded Python 3

File details

Details for the file snow_workspace_extractor-0.1.2.tar.gz.

File metadata

  • Download URL: snow_workspace_extractor-0.1.2.tar.gz
  • Upload date:
  • Size: 23.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for snow_workspace_extractor-0.1.2.tar.gz
Algorithm Hash digest
SHA256 ad0124f30323b38d4254bd9669d552eb8ea8306b5622496f1e439734167f1f90
MD5 3c3cc3d9c0359059a2271712bfcffbbd
BLAKE2b-256 43c24a25c1577d21e2756ba5f82e7c547a60a03af914be0ad6726642469656c3

See more details on using hashes here.

File details

Details for the file snow_workspace_extractor-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for snow_workspace_extractor-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 53b4476be3fe68a48917fc268a6ed0e7dc7fa85e9cbdbe3533417c9a11d9b0fd
MD5 b12e94c84430cda5822802627659215d
BLAKE2b-256 a843411b02bc8c7ec1dae0359681b2d4a3be3b048263ce389851a63aa64ffbba

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