Skip to main content

Easy creation of engineering information models and related specification documents

Project description

DEXPI Specificator

Introduction

The DEXPI Specificator is a tool for generating DEXPI specifications in various formats. It automates the creation of engineering information models and related specification documents. This guide describes three different ways to run the Specificator:

  1. As a CI/CD pipeline in GitLab (Preferred method for automation)
  2. Using Docker to run the Specificator locally
  3. Executing the Specificator as a Python script

1. Running the Specificator in GitLab CI/CD (Preferred)

The GitLab CI/CD pipeline automates the execution of the Specificator and provides the generated files as artifacts.

Steps to Run in GitLab CI/CD:

  1. Push your changes to the repository.
  2. The GitLab pipeline will automatically build the Specificator Docker image (if necessary) and execute it.
  3. After the pipeline completes, download the generated artifacts (specification.zip and specification.tar.gz) from the CI/CD job artifacts.

Advantages:

✅ Fully automated execution ✅ Output files are available in GitLab artifacts ✅ No local setup required


2. Running the Specificator using Docker

You can use Docker to run the Specificator locally without setting up a Python environment.

Steps to Run Using Docker:

  1. Download the latest docker_image.tar artifact from GitLab CI/CD.
  2. Load the Docker image:
    docker load -i docker_image.tar
    
  3. Run the Specificator inside a Docker container:
    docker run --rm -v "$(pwd):/app" IMAGE_NAME python examples/flexpi\ minus/run_specificator.py
    
    (Replace IMAGE_NAME with the actual image tag from GitLab.)

Advantages:

✅ No need to install Python or dependencies ✅ Fully isolated execution environment ✅ Works on Windows, MacOS, and Linux


3. Running the Specificator as a Python script

You can also run the Specificator directly as a Python script in a virtual environment.

Steps to Run Using Python:

  1. Install Python 3.12 or later.
  2. Clone the repository:
    git clone <repository-url>
    cd dexpi-specificator
    
  3. Create a virtual environment and install dependencies:
    python -m venv env
    source env/bin/activate  # On Windows: env\Scripts\activate
    pip install .
    
  4. Run the Specificator:
    python examples/flexpi\ minus/run_specificator.py
    

Advantages:

✅ Allows development and debugging of the Specificator ✅ Full control over dependencies and execution ✅ No need for Docker


Conclusion

The preferred way to use the Specificator is through GitLab CI/CD for automation and consistency. However, Docker provides a flexible way to run it locally, while running it as a Python script allows for development and debugging.

Choose the method that best fits your needs! 🚀

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

dexpi_specificator-0.9.tar.gz (52.9 kB view details)

Uploaded Source

Built Distribution

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

dexpi_specificator-0.9-py3-none-any.whl (58.2 kB view details)

Uploaded Python 3

File details

Details for the file dexpi_specificator-0.9.tar.gz.

File metadata

  • Download URL: dexpi_specificator-0.9.tar.gz
  • Upload date:
  • Size: 52.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for dexpi_specificator-0.9.tar.gz
Algorithm Hash digest
SHA256 c15f24a95fe7f4554679e9b1d0ff2613e34dadde3ac3164d4a527346c216a48b
MD5 fad69d9a4f16140fa74982a43cba9dcf
BLAKE2b-256 3abe8b32be6332d2fe9eee24f51505d94704ead3f4e0d9b5d245d2d0e6ca6d92

See more details on using hashes here.

File details

Details for the file dexpi_specificator-0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for dexpi_specificator-0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 aeaafdebc355dc1bd582e41416c290ace8acd1b6f04eb2438de1e982673eadfb
MD5 0b2fc25f3e0ff67cf60ec276d41bf775
BLAKE2b-256 893dcbdd6201bc9bcb615bd8338e109b72e399110ce289f8991f68a58ba55a62

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