Skip to main content

Tool for creating FME Packages.

Project description

fme-packager: FME Package Creator

fme-packager is a Python command-line tool for validating and creating FME Packages. Give it the path to an FME Package directory, and it'll do some quick checks and build an .fpkg file out of it.

The validations done by fme-packager will catch common mistakes in package development, but is still very basic. The FME Packages it creates will be validly formed according to the FME Packages Specification, but whether the installed components function correctly within FME is not in its scope.

Install

Download the latest whl distribution from the releases page. Then install it:

$ pip install [fme-packager].whl

Once installed, the fme-packager command is available on your system. fme-packager --help shows an overview of commands.

What it does

  • Validate package.yml against the FME Packages Specification.
  • Verifies that components listed in package.yml are present.
  • Checks that transformer and format names are valid and well-formed.
  • Verifies that the transformer version in the package.yml is included in the FMX.
  • Requires that Custom Transformers be Linked Always, declare Python 3 support, and authored with a sufficiently recent version of FME Workbench.
  • Excludes components that are present in directories, but not listed in package.yml.
  • Cleans and rebuilds wheels for Python packages that are subdirectories of python/.
  • Copies wheels from python/*/dist into python/.
  • Enforces required package icon dimensions.

These steps are done while copying files into a temporary build directory, so existing files are not modified.

Get started with a template

fme-packager init [template name] helps you get started with developing FME Packages by using Cookiecutter templates.

Available templates:

These templates are not currently bundled with fme-packager.

Make an fpkg distribution

Call fme-packager pack with the path to your package directory (it contains package.yml):

$ fme-packager pack my-package

If everything went well, the fpkg will be in my-package/dist/.

Development

Setup and Testing

To set up a development environment, clone this repository and install the dependencies:

$ pip install ".[dev]"

Install the pre-commit hooks:

$ pre-commit install

To run the tests:

$ pytest

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

fme_packager-1.9.0.tar.gz (30.1 kB view details)

Uploaded Source

Built Distribution

fme_packager-1.9.0-py3-none-any.whl (26.7 kB view details)

Uploaded Python 3

File details

Details for the file fme_packager-1.9.0.tar.gz.

File metadata

  • Download URL: fme_packager-1.9.0.tar.gz
  • Upload date:
  • Size: 30.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for fme_packager-1.9.0.tar.gz
Algorithm Hash digest
SHA256 ad49e348529f50d75ddb767c85c8726f0b31d4a58745672abc3841f573fa0bc9
MD5 5bbd6b25dea2cf02bbe884b528d8d4c6
BLAKE2b-256 19efc147b2a960f34ad1fb3ecba3807c58171706a2d70c8320232f01afb434be

See more details on using hashes here.

File details

Details for the file fme_packager-1.9.0-py3-none-any.whl.

File metadata

  • Download URL: fme_packager-1.9.0-py3-none-any.whl
  • Upload date:
  • Size: 26.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for fme_packager-1.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 175757c8da86cab312b721a7bc45ea3f236e9829adf5e7d22137ded9782fcd47
MD5 7497ff6df1c52be32ab64176bb83edd4
BLAKE2b-256 96956ba83c2adc4df6261498f4baff20ab8578b49a787b49af78894324d7ec4a

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