Skip to content

Releases: nir0s/ghost

v0.6.1 (contains changes of all previous versions which were not released)

02 Apr 09:08
Compare
Choose a tag to compare

0.6.1 (2017.04.02)

  • Remove official Python2.6 support! Most things will probably work, but not guaranteed.
  • Add ghost ssh connecting through proxy using ProxyCommand.
  • Add ghost put --add flag to add values to an existing key.
  • Fix init in TinyDB and SqlAlchemy backends not idempotent.
  • Fix SqlAlchemy backend not creating a non-existing database on non-SQLite storage.
  • Allow to pass arbitrary directives to any ssh command via the extend value in an ssh type key.
  • Delete stale stash when initializing a stash without being able to write its passphrase file due to filesystem access errors.
  • Disallow using a stash before it is initialized.
  • Fix ghost ssh failing miserably on non-existing key.
  • Fix load not working due to it using the wrong passphrase.

0.6.0 (2017-03-26)

  • Allow to use multiple stashes on the same backend
  • Allow to lock and unlock keys to prevent deletion and modification of critical keys
  • Allow to list close matches or containing strings
  • Add key type system to allow for additional functionality. See github issue #106
  • Add ghost ssh command to allow to connect to a machhine based on a key of type ssh
  • Error out instead of overriding passphrase.ghost file when generating two stashes
  • Re-encrypt on migrate only if passphrases are different between the stashes
  • Change transation.log file name to audit.log
  • Add more verbose logging in the CLI

0.5.0 (2017-02-07)

  • Use default stash path for tinydb when using the CLI so that it is no longer a required option
  • Add automatic reading of passphrase.ghost from different locations (cwd/..., ~/.ghost/... and /etc/ghost/...)
  • Allow to get a single value from a key (e.g. ghost get aws SECRET_ACCESS_KEY)
  • Validate passphrase before any action, not only read
  • Add file-based transation log for auditing purposes
  • Make init idempotent on all storage backends
  • Disallow deleting the built in passphrase key
  • Fix vault path using backslackes instead of slashes on Windows
  • Output new line when retrieving key using CLI
  • Greatly simplify storage testing framework to allow adding storages much easily
  • Improve code quality

0.4.1 (2016-10-11)

  • Fix any remaining Windows related issues and fix the tests. Windows support is now official.

0.4.0 (2016-10-11)

  • Add a Vault backend
  • Add an Elasticsearch backend
  • Add a Consul backend (Thanks tehasdf!)
  • Add migrate command and API which performs a comfortable export and load from one stash to another.
  • Add contribution docs, backend specific docs and more elaborate docs in general.
  • Add extras_require for the different backends so that you can now run pip install ghost[backend_name] to install the backend's dependencies.
  • Verify Windows support. Ghost currently supports Windows, there are some tests to fix though.
  • Provide a default stash path in the CLI for each backend type.
  • Use appdirs to provide the default dir for ghost's home (Thanks jcollado!)
  • Fix not being able to stash.get(key) twice using the API.
  • Fix not being able to create a stash in the cwd when using a file based backend like TinyDB or SQLite

First production release

25 Sep 16:56
Compare
Choose a tag to compare
  • Generated passphrase will now be printed to a file (cwd/passphrase.ghost) instead of to the screen.
  • Add 99% test coverage.
  • Support Python 3.
  • Remove logger in favor of click's echo.
  • Allow to choose backend using the CLI.
  • Add export and load CLI commands and APIs to allow to export all keys in a stash to a file and then load them, potentially to a stash of a different backend.
  • Add purge API and CLI command to delete all keys in a stash.
  • Replace --value options with unlimited arguments in the form of key=value for the value field of a key.
  • Add --no-decrypt flag to the CLI when running ghost get.
  • Use SQLAlchemy PickleType for values in the SQLAlchemy Storage.
  • Add -j flag to jsonify key list.
  • Remove T from the timestamp in the modified_at and created_at fields of a key.

First usable release

24 Sep 18:59
Compare
Choose a tag to compare
First usable release Pre-release
Pre-release
  • Replace simple-crypt with cryptography for a faster and more common encryption engine.
  • Replace the current inheritence implementation with a composition implementation which easily allow to implement additional backends.
  • Fix a bug where a stash couldn't be initialized.
  • When using the Python API, verify that the value field is always a dict.
  • Allow to retrieve a value via stash.get_value(key=key)
  • Raise an error if a stash is initialized twice in the same path
  • Change the --val flag to --value. --val is just weird.