Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/toumorokoshi/surgen
A tool to help perform automated upgrades to codebases
https://github.com/toumorokoshi/surgen
Last synced: about 2 months ago
JSON representation
A tool to help perform automated upgrades to codebases
- Host: GitHub
- URL: https://github.com/toumorokoshi/surgen
- Owner: toumorokoshi
- License: mit
- Created: 2017-04-11T02:52:47.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-07-05T22:49:53.000Z (over 5 years ago)
- Last Synced: 2024-09-30T07:49:32.262Z (3 months ago)
- Language: Python
- Size: 37.1 KB
- Stars: 5
- Watchers: 4
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.rst
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
======
surgen
======Surgen is a tool and library to help perform automated upgrades to codebases. It's goals are:
* provide a simple CLI to facilitate upgrading codebases
* provide libraries to allow easy authoring of code migration scripts.------------
Installation
------------`pip install surgen`
-----
Usage
-----Surgen is available as a command line tool, providing the directory
containing surgen scripts, and the directory to apply them to:.. code-block:: bash
surgen ./my_upgrade_scripts ./my_target_directory
Both arguments are optional, and default to the ./surgen-scripts
directory and the current working directory, respectively.Surgen Script
=============A surgen script MUST contain a class that:
* extends surgen.Procedure
* overrides operate(self)
* does NOT override __init__A surgen script can:
* provide a should_run function to determine if the script should run (default true)
Examples of surgen scripts can be found in the examples/ directory.
----
TODO
----* backup / restore