Skip to main content

Module for generating Baseline packages for deployment

Project description

Baseline Builder

Python-based tooling for generating Baseline packages, with the goal of streamlining package deployment for multiple clients. Designed for easier CI/CD integration with Python 3.6+.


Features implemented:

  • Resolves local files such as scripts, packages and images to Baseline packaging
    • Scans in same directory as invocation script
  • Calculates MD5 for scripts and packages
  • Determines Team ID for local packages

Logic

Baseline Builder works by taking config files for Baseline, and generating a package for deployment. If scripts, packages or images are declared in the file, Baseline Builder will attempt to resolve them and embed inside the package.

  • See Baseline's documentation on how to configure: Baseline Wiki

Example configuration can be found in the Samples directory. Below is pulled from RIPEDA Engineering configuration:

<key>Packages</key>
<array>
  <dict>
    <key>DisplayName</key>
    <string>Printer</string>
    <key>PackagePath</key>
    <string>/usr/local/Baseline/Packages/Printer.pkg</string>
    <key>Icon</key>
    <string>/usr/local/Baseline/Icons/Scripts-Printer.png</string>
  </dict>
</array>

The project will attempt to resolve the PackagePath and Icon keys through scanning the local directory:

Baseline Builder Directory:
- client.plist
- Packages:
  - Printer.pkg
- Icons:
  - Scripts-Printer.png

Installation

pip3 install baseline-builder

Usage

import baseline

baseline_obj = baseline.BaselineBuilder("ripeda.plist", "com.ripeda.baseline.engineering", "1.0.0")
baseline_obj.build()

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

baseline_builder-1.0.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file baseline_builder-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for baseline_builder-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eae8b3c0a4e23ba00af2def0899e654fc7fdb05002a3e7156ab0d592a3bd9641
MD5 5c9e0a88c4dbf938c2b3ac1966a4ce88
BLAKE2b-256 aa6c79cbbca607e547230ee8188eb2ba130b6a29bae02ce859c17648e65ec546

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