Skip to content

Releases: deploymenttheory/jamftf-python-terraform-importer

v1.0.1

06 May 14:31
Compare
Choose a tag to compare

Adjusted init.py, added all to resources

Full Changelog: v1.0.0...v1.0.1

v1.0.0

06 May 14:27
558e9fc
Compare
Choose a tag to compare

Resource Abstraction & Standardization
• All Jamf resource types (e.g., Scripts, Policies, Configuration Profiles) now inherit from a shared Resource base class.
• Resources use a common _get_from_api() method to standardize fetching and transformation logic.
• Enum Centralization
• Introduced ProviderResourceTags and ResourceResponseKeys enums for type-safe, centralized identifiers.
• Prevents hardcoded strings and improves lintability.
• Simplified Data Representation
• New SingleItem class (now a @DataClass) represents individual resources.
• Each item carries only a resource_type and jamf_id for leaner import block generation.
• Terraform Import Block Generation
• Added import_block() and generate_imports() utilities to create well-formatted Terraform import statements.
• Enum values are correctly stringified to avoid polluted output (e.g., ProviderResourceTags.SCRIPT is rendered as jamfpro_script).

🧹 Refactors & Cleanups
• Replaced per-resource _get() boilerplate with minimal calls to _get_from_api(...) in each class.
• Improved type annotations (Callable, Optional, Response, etc.) and fixed all pylint complaints.
• Moved logic for constructing import blocks into reusable helpers.
• Modularized enums and helper functions to avoid cyclic imports.

🐛 Bug Fixes
• Fixed incorrect enum string interpolation in import block formatting.
• Resolved circular import errors between constants, models, and resources.

📚 Docs & Developer Experience
• Rewritten README.md with full setup, usage, and example config.
• Docstrings standardized across the codebase for clarity and conciseness.
• Internal TODOs addressed or resolved (self.data = [] is now explained and required).
• Full type hints and stricter validation on resource initialization (assert isinstance(...)).

Full Changelog: v0.2.1...v1.0.0

v0.2.1

06 Sep 14:34
ac81155
Compare
Choose a tag to compare

Debug logs in Applicator now run

What's Changed

New Contributors

Full Changelog: v0.2.0...v0.2.1

v0.2.0

05 Sep 10:44
Compare
Choose a tag to compare
version bump