This repository has been archived by the owner on Jun 2, 2022. It is now read-only.
Releases: puppetlabs-toy-chest/wash
Releases · puppetlabs-toy-chest/wash
v0.13.1
v0.13.0
New + Improved
- It is now possible to signal resources via the new
signal
action.signal
's been implemented for Docker containers, EC2 instances, and GCP compute instances (so you can start/stop/restart/reset/hibernate them), and you can also implementsignal
for any of your external plugin entries. Use thedocs
command to view an entry's supported signals/signal groups, and the newsignal
command to signal an entry. Stay tuned for an upcoming blog post that discusses thesignal
action in detail. (#548)
Fixes
- The Docker plugin downloads the busybox image for you if it's not already present on your machine. Busybox is used to explore persistent volumes. (#312)
- The
fs/delete
endpoint now reportsDelete
invocations to analytics (18f72ff) whistory
no longer fails when printing large journal lines (#580)- The AWS plugin now normalizes the configured region so that there's always a region set when listing buckets (#316)
- A dangling reference to the previous
describe
command was removed (#587)
Operational
- The website's been updated to include documentation for
delete
v0.12.0
New + Improved
- The
whistory
command will now omit most commands that did not originate from user action (#521) - It is now possible to delete some resources. The
delete
command was added, which will work on VMs/pods/containers, S3 and Google Storage objects and prefixes (directories), and files and directories within VMs and volumes. (#479)
Fixes
- The AWS plugin will now load successfully if only a credentials or config file exists (#520)
- Directories representing resources that you do not have permission to access - such as the
compute
directory of a project in GCP - will no longer appear. When that happens, a message will be logged in Wash history/logging. (#534) - A crash resulting in
panic: send on closed channel
when listing files in a volume has been fixed (#562) - A crash resulting in
panic serving : runtime error: invalid memory address or nil pointer dereference
when listing a container that isn't running has been fixed (#558)
Operations
v0.11.0
New + Improved
- External plugins now load faster by initializing in parallel (#537)
- Running
ls
in Wash now uses a custom implementation that handles Wash errors cleanly and provides more context-specific info withls -l
; note that it doesn't support most options available with/bin/ls
(#284) - AWS profiles now include some relevant metadata (try
meta aws/<profile>
) (#549, thanks @bryanculver!) - The
--include-meta
option has been removed fromwinfo
; it was identical tometa --attribute
but more confusing (#552) - Kubernetes pods are now folders listing their containers, with most operations that worked on pods now moved to the individual container instances (#228, thanks @pop!)
Fixes
- Fix reading GCP and AWS S3 read operations on Linux (#532, thanks @adrienthebo!)
- Fixed using the Docker client with mismatched server API versions, they'll now negotiate a common version (#525)
- The Wash prompt will now display an absolute path when navigating in the local filesystem; relative paths are reserved for Wash paths (#535)
- Wash now provides more context when loading the filesystem via FUSE fails (#540)
- The meta primary now allows specifying keys with
.
,[
, and]
in them by escaping them with a backslash, as in\.
; backslashes in keys now also need to be escaped with\\
(#509) - Wash now only shows a core set of actions you perform when listing entries for external plugins with
ls -l
(#544) - Calling plugin methods from within a core plugin has been simplified, they should now all use
plugin.List|Stream|Open|Exec
wrappers (#550)
Operations
- Website moved to a new layout (based on http://bolt.guide) and backend (Jekyll) (#524)
- Added core plugin development docs to the repository (#529)
- Fixed the
go test
instructions in the README (#531, thanks @adrienthebo!) - Fixed a unit test that assumed a local Wash binary existed (#528)
v0.10.0
New + Improved
- Exec on EC2 instances now falls back to the private IP address if a public one isn't provided (#504, thanks @angrychimp!)
- The
describe
command has been renameddocs
(#510) - Kubernetes contexts now dynamically reload instead of having to restart Wash (#129, thanks @pop!)
Fixes
- GCP plugin entries now have their attributes properly set (#501)
- Dependencies have been updated to their newest version (#511)
- Extra newline's been omitted for
winfo
andmeta
(#508) - Mode can again be represented as octal/hexadecimal strings. This was a regression. (#516)
- The Docker plugin will now negotiate API version instead of failing (#526)
v0.9.0
New + Improved
- Switched
meta
andinfo
's default output to YAML to be more readable (#475) - Added a
W
environment variable that can be used to return to Wash's start, i.e.cd $W
orls $W
(#313) - Added a
--output text
option for a more greppable format formeta
(#481) info
now hides the meta attribute (which can be quite verbose) by default, adds a--include-meta
flag to include it (#484)- Added a
describe
command to see descriptions of plugins and specific entries (#473)
Fixes
- Removed s3Object's Stream implementation because it didn't actually stream and interfered with
tail
(#476) - Fix and clarify help around meta time predicates (#491)
- Ensure Wash aliases aren't overridden by default bashrc or zshrc files (#489)
- Makes the
realpath
command optional, as it's not present by default on all systems (#492) - Fix concurrency panic from analytics submission (#496)
Operations
- Added a link to @logicminds AWS IoT plugin. Thanks @logicminds! (#472)
- Fixed (hopefully) release automation to update https://github.com/puppetlabs/homebrew-puppet
- Restructured Wash site, added a separate Tutorial page (#409)
- Moved details of how activity journals out of the Tutorial to Docs (#477)
- Various other website editing
- Made
coreutils
a recommended dependency of the Wash Homebrew formula sorealpath
will be installed by default (puppetlabs/homebrew-puppet#108)
Plugins
- Added a
SetDescription
method toEntrySchema
for setting the description of a plugin and its entry types (#473)
v0.8.1
Fixes
- Wash now starts with a custom prompt that's consistent with website examples when using Bash or Zsh. (#432)
- Analytics now captures both OS name and system architecture. (#460)
- Fix a panic when exploring
kubernetes
resources. (#469) - Wash now has a crtime attribute to represent creation time. Several resources that used ctime to represent creation time have been updated to use crtime. (#405)
Operations
- Updated examples to use the new
kind
primary. (#453) - Website updates are now automatically published to https://puppetlabs.github.io/wash/dev on commit via a GitHub Action. On release, https://puppetlabs.github.io/wash will be updated to reflect any new content since the last release. (#457)
- The website now submits analytics to a different ID than Wash to help separate different types of activity. (#459)
- Wash releases use a GitHub Action to automatically open a pull request to https://github.com/puppetlabs/homebrew-puppet. (#461)
- The website now includes a news section for developer updates on the project. (#467)
v0.8.0
New + Improved
- The
kind
primary was added towash find
. It lets you filter on a specific kind of things (e.g. EC2 instances, S3 buckets), which is a very useful way to makewash find
invocations readable without all the hierarchy-related clutter (#404)
Fixes
- Wash no longer exits with an error when the
~/.puppetlabs/wash
directory doesn't exist (#451)
v0.7.0
New + Improved
- GCP plugin with Google Compute Engine support (#390). See https://puppetlabs.github.io/wash/docs/#gcp for more details on how to use the plugin. To view the plugin’s hierarchy, run
stree gcp
after starting up Wash. - The Wash binary now reports anonymous usage data to Google Analytics (#383). See https://puppetlabs.github.io/wash/docs/#analytics for more details.
Fixes
- ssh_config dependency updated to v0.0.0-20190724205821-6cfae18c12b8 (#425)
- EC2 instance exec no longer panics on null metadata fields (#426)
- Previous typo in AWS config parsing error has now been fixed (#433)
Operations
- The Wash website now reports tracking data to Google Analytics. See https://tools.google.com/dlpage/gaoptout for details on how to opt out.
v0.6.1
Plugins
- External plugin type IDs are now namespaced as
<plugin_name>::<raw_type_id>
(#416) - External plugin exec’s calling convention has been modified to set
opts[‘stdin’]
totrue
if stdin was provided,false
otherwise. This gives external plugin authors an easy way to check ifstdin
was provided (#421)
Fixes
- Critical FUSE errors and plugin initialization errors are now exposed to the Wash shell (#171)
- The Wash shell is no longer suspended when an external process like
ls
orcat
prompts for user input (#171) stree <mountpoint>
now shows the right schema for an external plugin with entry schema support instead of the stub schema (#406).- Wash no longer panics when retrieving the schema of a local file/directory (#414)
wash validate
has been fixed to useplugin.Schema
so that it can properly retrieve an external plugin’s schema (#419)- External plugin’s stream has been fixed to properly implement the io.Closer semantics where, on Close, the plugin will terminate the stream invocation. (#420)
wash ps
no longer panics if all the entries did not return any process data (#423)
Operations
- The AWS plugin’s docs (https://puppetlabs.github.io/wash/docs/#aws) have been updated to include notes around using exec with EC2 instances
- https://puppetlabs.github.io/wash/ now includes more examples of how to use Wash with different plugins (e.g. AWS, Kubernetes)
- https://puppetlabs.github.io/wash/ includes links to community-built external plugins