Skip to content

Latest commit

 

History

History
205 lines (154 loc) · 6.47 KB

CHANGELOG.md

File metadata and controls

205 lines (154 loc) · 6.47 KB

Change Log

All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.

2.4.1 - 2020-02-21

Added

  • Cache yaml files loaded by !from_yaml

Removed

  • Drop support for Python 3.4

2.4.0 - 2020-01-06

Added

  • Enable scuba to override entrypoint via --entrypoint or .scuba.yml (#125)
  • Add support for nested scripts (#128)
  • Add SCUBA_ROOT environment variable (#129)
  • Add support for escaped dots in !from_yml (#137)

Changed

  • Don't run image entrypoint for each line in a mult-line alias (#121)
  • Use yaml.SafeLoader for loading config (#133)

Removed

  • Drop support for Python 2.6, 3.2, and 3.3 (#119, #130)

2.3.0 - 2018-09-10

Added

  • Add -e/--env command-line option (#111)
  • Add support for setting environment in .scuba.yml (#120)

Changed

  • Implemented auto-versioning using Git and Travis (#112)

Fixed

  • Copy scubainit to allow SELinux relabeling (#117)

2.2.0 - 2018-03-07

Changed

  • Allow script to be a single string value in the "common script schema" which applies to hooks and aliases (#102)

Fixed

  • Display nicer error message if no command is given and image doesn't specify a Cmd (#104)
  • Don't mangle && in scripts (#100)
  • Don't allocate tty if stdin is redirected (#95)

2.1.0 - 2017-04-03

Added

  • Added --image option (#87)

2.0.1 - 2017-01-17

Fixed

  • Fixed image entrypoint being ignored (#83)

2.0.0 - 2016-11-21

Added

  • Added support for enhanced aliases (#67)
  • Added support for per-alias image specification (#68)
  • Add bash completion support (#69)

Changed

  • All ancillary files are bind-mounted via single temp dir
  • Hook scripts are moved to hooks/ subdirectory
  • User commands always executed via shell (#66)
  • Top-level directory mounted at same path in container (#70)
  • Alias names cannot contain spaces
  • Improve distributions (#74, #75, #76, #78)

Removed

  • Remove support for remote Docker instances (#64) Support for this was limited/broken as of 1.7.0 anyway; this officially removes support for it.

Fixed

  • Fixed inability to run an image that doesn't yet exist locally, broken in 1.7.0 (#79)

1.7.0 - 2016-05-19

Added

  • Add support for scubainit hooks

Changed

  • scubainit re-implemented as a C program, which does the following:
    • Creates the scubauser user/group
    • Sets the umask
    • Switches users then execs the user command This is to provide more control during initialization, without the artifacts caused by the use of 'su' in the .scubainit from 1.3.
  • scubauser now has a proper writable home directory in the container (#45)

1.6.0 - 2016-02-06

Added

  • Add -d to pass arbitrary arguments to docker run

1.5.0 - 2016-02-01

Added

  • Add -r option to run container as root
  • Add automated testing (both unit and system tests)
  • Add support for Python 2.6 - 3.5
  • Added to PyPi

Changed

  • Scuba is now a package, and setup.py installs it as such, including an auto-generated console_script wrapper.
  • --dry-run output now shows an actual docker command-line.
  • Only pass --tty to docker if scuba's stdout is a TTY.

Fixed

  • Better handle empty .scuba.yml and other YAML-related errors
  • Fix numerous bugs when running under Python 3

1.4.0 - 2016-01-08

Added

  • Added --verbose and --dry-run options

Removed

  • umask is no longer set in the container. (See #24)

Fixed

  • Problems introduced in v1.3.0 with Ctrl+C in images are fixed. The user command now runs as PID 1 again, as there is no more .scubainit script.

1.3.0 - 2016-01-07

Added

  • Set umask in container to the same as the host (local Docker only)

Changed

  • Change working directory from /build to /scubaroot
  • Use .scubainit script to create scubauser user/group at container startup. This avoids the oddity of running as a uid not listed in /etc/passwd, avoiding various bugs (see issue 11). (local Docker only)

1.2.0 - 2015-12-27

Added

  • Search up the directory hierarchy for .scuba.yml; this allows invoking scuba from a project subdirectory.
  • Add !from_yaml support to YAML loading; this allows specifying image from an external YAML file (e.g. .gitlab-ci.yml).
  • Add CHANGELOG.md

Changed

  • Show better error message when docker cannot be executed

1.1.2 - 2015-12-22

Fixed

  • Don't pass --user option when remote docker is being used

1.1.1 - 2015-12-22

Fixed

  • Fix bug when aliases is not found in .scuba.yml

1.1.0 - 2015-12-20

Added

  • Support for Bash-like aliases, specified in .scuba.yml

1.0.0 - 2015-12-18

Removed

  • Remove the command node from .scuba.yml spec; it limits the usefulness of scuba by limiting the user to one command. Now command is specified on command line after scuba.

Added

  • Argument parsing to scuba (-v for version)
  • Check for and reject extraneous nodes in .scuba.yml

0.1.0 - 2015-12-09

First versioned release