Giter Site home page Giter Site logo

brooklyn-repo-split's Introduction

brooklyn-repo-split

This is the scripts needed to split the Apache Brooklyn repository into smaller modules, as agreed by vote on the community's dev mailing list.

To try it out:

git clone https://github.com/ahgittin/brooklyn-repo-split.git
cd brooklyn-repo-split
git submodule init
git submodule update
./all.sh

Then look for the results, all the new repos in new-repos, carved up including carved up history

Running this script can take a couple of hours. You can run parts of it; see below.

Files

The file env.sh sets local environment variables. Adjust to suit your individual identity.

The script runs several stages, as indicated by the commands 1-*.sh, 2-*.sh, ... . For the most part these can be run individually.

There are a few other scripts *.sh and programs *.rb used by the scripts above.

The files *-whitelist.txt files list the initial whitelists to use for each project. If any projects are restructured these should be kept consistent with script 1-rearrange-incubator.sh.

Files *.gen.txt are auto-generated. In particular the files *-whitelist.full.gen.txt contain the final expanded whitelists, auto-generated by step 3. These are checked in as it is useful to cache these and to observe changes (but these may need updating after any change to the incubator project).

The files big-to-small.* are a script and output of a program which records the biggest files in the history.

Steps

Step 1 is done and applied to incubator-brooklyn, and now skipped as part of all.sh.

Step 2 is required locally at least once.

Step 3 has been run and the results checked in here (*-whitelist.full.gen.txt).

Step 4

Steps 2-4 will need re-run as more changes are pushed to incubator.

The steps are now pretty quick, with 1 taking <1m, 2 taking 20m, 3 taking 3m, on my box. Step 4 takes the longest, about 15m per sub-repo or 1h30m total.

References

brooklyn-repo-split's People

Contributors

ahgittin avatar johnmccabe avatar rdowner avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.