Skip to content
This repository has been archived by the owner on Sep 27, 2019. It is now read-only.
/ UberInstaller Public archive

Script for bulk software installation from a JSON configuration file.

License

Notifications You must be signed in to change notification settings

endorama/UberInstaller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Uberinstaller

Uberinstaller is a ruby gem that make easy to install system packages from a JSON configuration file. Thinked for Ubuntu, can handle pre and post installation commands, repositories and PPA, package installation from system repositories, git repositories or local files.

Has support for different Package Managers as the one in use now can be modified and extended as needed.

Installation

Add this line to your application's Gemfile:

gem 'uberinstaller'

And then execute:

$ bundle

Or install it yourself as:

$ gem install uberinstaller

Also, you need to have sudo installed and working on your machine to execute the uberinstaller executable and for every command launched from uberinstaller.

Usage

duplicates are overridden! order is respected!

Architecture verification:

  • system => leave to the system to handle architecture package version resolution
  • i386 => can be run only on 32 bit systems
  • x86_64 => can be run only on 64 bit systems

Version verification:

  • codename of OS ( precise on ubuntu )

Installation type:

  • system
  • git
  • local
  • json ( no extension )

Command before/after:

  • in the right folder: cmds/after/ cmds/before/, so specify only the filename, with extension
  • array of commands

before all => cmds/before/all.sh after all => cmds/after/all.sh

Blocking package configuration as Debconf in Debian system must be properly avoided ( APT Package Manager use gnome DEBIAN_FRONTEND to avoid apt-get hangs)

Folder structure

package ├── cmds ├── log ├── pkgs └── package.json

Variables substitution

You can use some variables in package.json:

  • :cmds: path to package/cmds folder
  • :pgks: path to package/pkgs folder
  • :json: path to package/package.json file

Docs

http://rubydoc.info/docs/yard/file/docs/GettingStarted.md http://rubydoc.info/docs/yard/file/docs/Tags.md

http://gorails.com/setup/ubuntu

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

About

Script for bulk software installation from a JSON configuration file.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages