Skip to content

Singularity builder to build, install, and update Singularity software on different platforms

License

Notifications You must be signed in to change notification settings

ArangoGutierrez/singularity-builder

 
 

Repository files navigation

Singularity Builder

Build Status

build, install, and update Singularity container. Support for Debian/Ubuntu, Centos/Fedora

USAGE:

./singularity_build.sh <command> [options] ...

COMMANDS:

- all		setup, build, and install [sudo]
- setup		install dependencies for your distribution [sudo]
- build		configure and make the installation, with optional --prefix
- install	make, and make install [sudo]
- update	[sudo]
- clean		clean Singularity installations
- test		run `make test`

Options:

--prefix/-p  install to specified prefix.
--devel/-d   do specified commands for development version
--sysconfdir specify system config directory for singularity.conf

Examples:

  • Install dependencies, setup, build + install
 $ sudo ./singularity_build.sh all
  • Build + optional prefix
$ sudo ./singularity_build.sh build --prefix=/my/path
  • If you already have the needed dependencies, just install
  $ sudo ./singularity_build.sh install
  • Update to the latest release
 sudo ./singularity_build.sh update
  • Clean Singularity installations from /my/path
 sudo ./singularity_build.sh clean --prefix /my/path

Singularity: Application containers for Linux For additional help, see http://singularity.lbl.gov/

cloud platforms

With this packer configuration you can generate build instances (images) on different cloud platforms.

packer build builder.json 
googlecompute output will be in this color.

==> googlecompute: Checking image does not exist...
==> googlecompute: Creating temporary SSH key for instance...
==> googlecompute: Creating instance...
    googlecompute: Loading zone: us-west1-a
    googlecompute: Loading machine type: n1-standard-1
    googlecompute: Loading network: default
    googlecompute: Requesting instance creation...
    googlecompute: Waiting for creation operation to complete...
    googlecompute: Instance has been created!
==> googlecompute: Waiting for the instance to become running...
    googlecompute: IP: 104.196.236.212
==> googlecompute: Waiting for SSH to become available...
==> googlecompute: Connected to SSH!
==> googlecompute: Waiting for any running startup script to finish...
==> googlecompute: Startup script not finished yet. Waiting...
==> googlecompute: Startup script not finished yet. Waiting...
==> googlecompute: Startup script, if any, has finished running.
==> googlecompute: Deleting instance...
    googlecompute: Instance has been deleted!
==> googlecompute: Creating image...
==> googlecompute: Deleting disk...
    googlecompute: Disk has been deleted!
Build 'googlecompute' finished.

==> Builds finished. The artifacts of successful builds are:
--> googlecompute: A disk image was created: singularity-hub-test-58151473-5671-eed2-1511-c8afdb680a36

This script can be used outside of Singularity Hub/Singularity Python - currently we aren't using Packer to generate the image because there seems to be an issue with installing Singularity with it. Instead, the image is created interactively, and saved for Singularity Hub. If you get the packer version to work, please let us know!

About

Singularity builder to build, install, and update Singularity software on different platforms

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Shell 100.0%