okleinschmidt / wdmc

The missing CLI Client for Western Digital MyCloud NAS Systems.
MIT License
14 stars 3 forks source link
mycloud nas wd

wdmc

The missing command line interface for Western Digital MyCloud NAS local REST API.

Installation

Since wdmc is not published to rubygems.org yet, by now you have to build yourself as follows:

# clone git repository
$ git clone git@github.com:okleinschmidt/wdmc.git

# enter wdmc source directory
$ cd wdmc

# to install run
$ bundle exec rake install
wdmc 0.0.1 built to pkg/wdmc-0.0.1.gem.
wdmc (0.0.1) installed.

Configuration

Create YAML file in your $HOME: ~/.wdmc.yml

url: http://192.168.0.10
username: admin
password: super-secure-password
validate_cert: true | false | warn (optional, default: true)
api_net_nl_bug: true | false (optional, default: false)

The value of validate_cert is relevant only for HTTPS URLs:

Set _api_net_nlbug to true to avoid crashes caused by newline characters in DNS server data in the API response from your server.

I gave admin permission to my user account:

$ wdmc user update <USER> -a

Usage

$ wdmc
Commands:
  wdmc acl             # Fileshare ACLs
  wdmc device          # Device commands
  wdmc help [COMMAND]  # Describe available commands or one specific command
  wdmc share           # Fileshare commands
  wdmc sysinfo         # Device information
  wdmc tm              # TimeMachine commands
  wdmc user            # User commands
  wdmc version         # Version information

# List available shares
$ wdmc share list
AVAILABLE SHARES
 - Public
 - TimeMachineBackup

Development

After checking out the repo, run bin/setup to install dependencies. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/okleinschmidt/wdmc. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.