Skip to main content

Command line interface for developing SAF solutions from scaffolding to packaging.

Project description

Python PyPI GH-CI Codecov Apache Ruff

Overview

SAF CLI is a command-line tool that streamlines the development, management, and packaging of SAF-based solutions. It provides a unified developer workflow for common SAF tasks such as scaffolding new solutions, installing and managing solution environments, running solutions locally, executing commands in the correct Python environment, building distributable installers, archiving solution source code, and listing registered solutions. Under the hood, it helps coordinate the tools and services involved in the SAF ecosystem so that developers can work with solutions through a consistent command set instead of stitching together manual steps.

Command

Description

new

Scaffold a new SAF solution from a template.

install

Set up the solution development environment and dependencies.

run

Run a solution locally for development and testing.

execute

Run arbitrary commands in the solution Python environment.

build

Build a distributable package or installer for a solution.

add-step

Add a new step to an existing SAF solution.

archive

Archive a solution source tree into a distributable bundle.

solutions

List the solutions registered in the SAF solution database.

doc

Open the SAF CLI documentation.

The CLI is designed to improve developer productivity and solution consistency across the full solution lifecycle. It reduces setup friction for new projects, lowers the amount of custom scripting teams need to maintain, and makes local development, packaging, and delivery more repeatable.

Installation

Ensure you have all the necessary prerequisites. Then, refer to the installation guidelines for detailed instructions on how to install the project on your system.

Documentation

The official documentation of SAF CLI contains the following chapters:

  • Getting started. This section provides a brief overview and instructions on how to get started with the project. It typically includes information on how to install the project, set up any necessary dependencies, and run a basic example or test to ensure everything is functioning correctly.

  • User guide. The user guide section offers detailed documentation and instructions on how to use the project. It provides comprehensive explanations of the project’s features, functionalities, and configuration options. The user guide aims to help users understand the project’s concepts, best practices, and recommended workflows.

  • Contribute. This section provides guidelines and instructions on how to contribute to the project. It includes information on how to set up the development environment, run tests, submit pull requests, and follow contribution guidelines.

Troubleshooting

For troubleshooting or reporting issues, please open an issue in the project repository.

Please follow these steps to report an issue:

  • Go to the project repository.

  • Click on the Issues tab.

  • Click on the New Issue button.

  • Provide a clear and detailed description of the issue you are facing.

  • Include any relevant error messages, code snippets, or screenshots.

Additionally, you can refer to the official documentation for additional resources and troubleshooting guides.

Using GitHub Copilot for Development

This repository includes a Copilot instructions file that provides AI-assisted development guidance. When working on SAF CLI enhancements or bug fixes:

  1. GitHub Copilot will automatically reference the project structure, architecture, and development guidelines from the instructions file.

  2. The instructions cover core concepts like solution resolution, dependency groups, environment management, and code style expectations.

  3. Use Copilot to generate code that follows the established patterns for CLI commands, configuration management, and integrations.

  4. The instructions emphasize type hints, Google-style docstrings, and the modular structure of the codebase.

This helps ensure consistency across contributions and speeds up development workflows.

Suggested Copilot Prompt:

When starting a new feature or fix, you can use a prompt like this to guide Copilot:

“I’m working on the SAF CLI project. [Describe your task]. Please follow the project’s Copilot instructions, including using Click for CLI commands, type hints, Google-style docstrings, and the existing modular structure in src/ansys/saf/cli/. Ensure the code integrates with the existing modules and includes appropriate error handling.”

This prompt helps ensure Copilot generates code that aligns with SAF CLI’s architecture and standards.

License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

Changelog

The changelog section provides a summary of notable changes for each version of SAF CLI for Python. It helps you keep track of updates, bug fixes, new features, and improvements made to the project over time.

To view the complete changelog, visit the project repository and navigate to the CHANGELOG file. It provides a comprehensive list of changes categorized by version, along with brief descriptions of each change.

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

ansys_saf_cli-4.1.dev0.tar.gz (583.6 kB view details)

Uploaded Source

Built Distribution

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

ansys_saf_cli-4.1.dev0-py3-none-any.whl (649.9 kB view details)

Uploaded Python 3

File details

Details for the file ansys_saf_cli-4.1.dev0.tar.gz.

File metadata

  • Download URL: ansys_saf_cli-4.1.dev0.tar.gz
  • Upload date:
  • Size: 583.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ansys_saf_cli-4.1.dev0.tar.gz
Algorithm Hash digest
SHA256 f431b8d0f9f141f4e5e0350ee826d156244f7c3f84bedfe1a9b9925c2e6c2013
MD5 f0e93338123be43b32bad0b1d70cfb32
BLAKE2b-256 08ba594f97e68464d155fd3b520e8043d12706b54876c41f093431b11ce99364

See more details on using hashes here.

Provenance

The following attestation bundles were made for ansys_saf_cli-4.1.dev0.tar.gz:

Publisher: ci_cd_release.yml on ansys/saf-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ansys_saf_cli-4.1.dev0-py3-none-any.whl.

File metadata

File hashes

Hashes for ansys_saf_cli-4.1.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 f309bd70cdc5c67a7c15987c9915c63bb9ee7160ca2750cff65b07d1fa226fa4
MD5 5f4dacb2980340a887d5e4c3cc82651e
BLAKE2b-256 fe735adea936c73dd1d7e03034d2a36dc49245e905a80531da72435fd3d56dba

See more details on using hashes here.

Provenance

The following attestation bundles were made for ansys_saf_cli-4.1.dev0-py3-none-any.whl:

Publisher: ci_cd_release.yml on ansys/saf-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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