Metadata-Version: 2.1
Name: stir
Version: 0.0.3
Summary: A simple merging package manager for microservices
Home-page: https://github.com/nullism/stir
Author: Aaron Meier
Author-email: webgovernor@gmail.com
License: MIT
Description: # stir
        
        ![stir header image](stir-800x200.png?raw=true)
        
        stir is a tool for synchronizing files between two or more systems &mdash; a general purpose package manager.
        
        stir is a simple method of sharing source code libraries between microservices,
        fetching credential files (like Google's service account `credentials.json`),
        or any other files.
        
        ## How It Works
        
        1. A package containing some files is created and placed on your private server.
        2. The package is then installed via `stir install package-name` wherever the files are needed.
        
        ## Features
        
        * **Merging** - Multiple packages can be installed in the same directory.
        * **Easy** - Creating and publishing packages is trivial.
        * **Language Agnostic** - Python, JavaScript, C source, or any file type you need to package and share.
        * **Secure** - Packages can require authentication to update or fetch.
        * **Private** - Host your own stir server.
        * **Microservices** - No need to duplicate code between services.
        
        
        ## Examples
        
        ### Sharing Source Code
        
        Project `bar` depends on libraries maintained in project `foo`'s git repository.
        
        1. From `foo`'s git repository, in a directory that will be the package root, create your package.
            * `stir upsert foolibs -p "**.py"`
            * This will find all files in the current that match `**.py` (`**` is the convention for recursive matching).
        2. From `foo`'s git repository, run `stir publish foolibs`. This will bundle the package (`foolibs-0.0.1.zip`) and push it to the server.
        3. When working in the `bar` project, fetch the latest `foolibs` package.
            * `stir install foolibs`
            * If `foolibs` is not installed, or an older version, this will pull the most recent `foolibs` package from your stir server and install it in `foolibs/`.
        4. Add to your deployment pipeline. For example, in your Dockerfile:
            * `RUN pip install stir && (cd /app/bar && stir -y install foolibs)`
        
Platform: UNKNOWN
Provides: stir
Description-Content-Type: text/markdown
