Skip to content

Python GUI tool for managing Microsoft Dynamics 365 Finance and Operations deployable package extensions. Selectively remove unwanted extensions before deployment.

Notifications You must be signed in to change notification settings

KOSHKE/DeployVersionD365

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

D365 Package Extension Manager

A Python GUI application for managing Microsoft Dynamics 365 Finance and Operations deployable package extensions. This tool allows you to selectively remove unwanted extensions from deployable packages before deployment.

Installation

  1. Clone the repository:
git clone https://github.com/KOSHKE/DeployVersionD365.git
cd DeployVersionD365
  1. Run the application:
python main.py

Usage

  1. Select your D365 deployable package folder using the "Browse" button

  2. Choose which extensions to keep (unselected extensions will be removed)

  3. Click "Process Package" to apply changes

Configuration

To add or modify extensions, edit src/config/extensions.py:

EXTENSIONS = {
    "ext1": {
        "name": "Extension Display Name",
        "file_prefix": "dynamicsax-extension-prefix",
        "xml_prefix": "xml-prefix"
    },
    # Add more extensions...
}

Package Structure

The application expects the following D365 package structure:

PackageFolder/
├── AOSService/
│   └── Packages/
│       ├── files/
│       └── [extension files]
└── HotfixInstallationInfo.xml

How It Works

  1. File Removal: Removes files and directories starting with specified prefixes from:

    • AOSService/Packages/
    • AOSService/Packages/files/
  2. XML Processing: Updates HotfixInstallationInfo.xml by removing entries from:

    • MetadataModuleList
    • AllComponentList

Safety Features

  • Validation: Checks package structure before processing
  • Confirmation: Shows which extensions will be removed before proceeding
  • Error Handling: Comprehensive error handling with user-friendly messages

Requirements

  • Python 3.7+
  • tkinter (included with Python)

License

This project is open source. Please check the license file for details.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

Support

For issues and questions, please create an issue on the GitHub repository.

About

Python GUI tool for managing Microsoft Dynamics 365 Finance and Operations deployable package extensions. Selectively remove unwanted extensions before deployment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages