cookbook 'transmission', '= 4.0.0'
transmission
(33) Versions
4.0.0
-
Follow7
Installs and configures transmission
cookbook 'transmission', '= 4.0.0', :supermarket
knife supermarket install transmission
knife supermarket download transmission
transmission Cookbook
Installs the Transmission BitTorrent Client and includes a transmission_torrent_file
LWRP.
Requirements
Platforms
- Debian/Ubuntu
- RHEL/CentOS/Scientific/Amazon/Oracle 7+
- Fedora
Note: Package installs are only available on Ubuntu/Debian. Source installs are possible on all platforms
Chef
- Chef 12.14+
Cookbooks
- build-essential - for compiling the source.
- openssl - for generating a secure password.
Attributes
-
node["transmission"]["peer_port"]
- The port Transmission listens on for peering, default51413
. -
node["transmission"]["rpc_bind_address"]
- Where to listen for RPC connections, default0.0.0.0
. -
node["transmission"]["rpc_port"]
- The port Transmission listens on for remote services, default9091
. -
node["transmission"]["rpc_username"]
- The username required to access remote services, defaulttransmission
. -
node["transmission"]["rpc_password"]
- The sha1 encrypted password, default generated bysecure_password
. -
node["transmission"]["home"]
- Transmission's home directory, default/var/lib/transmission-daemon
. -
node["transmission"]["config_dir"]
- Transmission's config directory, default/var/lib/transmission-daemon/info
. -
node["transmission"]["download_dir"]
- Directory to move complete files to, default/var/lib/transmission-daemon/downloads
. -
node["transmission"]["incomplete_dir"]
- Directory to keep incomplete files in, default/var/lib/transmission-daemon/incomplete
. -
node["transmission"]["incomplete_dir_enabled"]
- Whether the incomplete file directory is used, defaultfalse
. -
node["transmission"]["speed_limit_down"]
- The KB/s limit for downloading files, default100
. -
node["transmission"]["speed_limit_down_enabled"]
- Whether the download limit is used, defaultfalse
. -
node["transmission"]["speed_limit_up"]
- The KB/s limit for uploading files, default100
. -
node["transmission"]["speed_limit_up_enabled"]
- Whether the upload limit is used, defaultfalse
. -
node["transmission"]["watch_dir"]
- Directory to watch for new torrent files, default/var/lib/transmission-daemon/watch
. -
node["transmission"]["watch_dir_enabled"]
- Whether the watch file directory is used, defaultfalse
.
The file also contains the following attribute types:
- platform specific locations and settings.
- source installation settings
Resource/Provider
transmission_torrent_file
Download a file via the BitTorrent protocol. The usage semantics are like that of the existing file and remote_file resources. This allows very fast downloads for files that are part of large BitTorrent swarms. The Ubuntu 10.04 LTS ISO (around 700MB) downloads in about 50 seconds.
Actions
- :create: Download a file via the BitTorrent protocol
Attribute Parameters
- path: name attribute. the path to the file
- torrent: torrent file of the swarm to join. can either be a url or local file path
- blocking: should the file be downloaded in a blocking way? If
true
Chef will download the file in a single Chef run, iffalse
Chef will check for a completed download during each Chef run until the download is complete. default istrue
. - continue_seeding: should the file continue to be seeded to the swarm after download? default is
false
. - owner: The owner for the file
- group: The group owner of the file (string or id)
- rpc_host: the address of the Transmission RPC host to connect to. default is
localhost
. - rpc_port: the port of the Transmission RPC host to connect to. default is
9091
. - rpc_username: the username of the Transmission RPC account. default is
transmission
. - rpc_password: the password of the Transmission RPC account . should probably be
node['transmission']['rpc_password']
which by default is a secure password generated for this node.
Examples
Download the lucid ISO
transmission_torrent_file "/home/ubuntu/ubuntu.iso" do torrent "http://releases.ubuntu.com/lucid/ubuntu-10.04.1-server-i386.iso.torrent" owner 'ubuntu' group 'ubuntu' rpc_username node['transmission']['rpc_username'] rpc_password node['transmission']['rpc_password'] action :create end
Continue seeding after download
transmission_torrent_file "/home/ubuntu/ubuntu.iso" do torrent "http://releases.ubuntu.com/lucid/ubuntu-10.04.1-server-i386.iso.torrent" owner 'ubuntu' group 'ubuntu' continue_seeding true rpc_username node['transmission']['rpc_username'] rpc_password node['transmission']['rpc_password'] action :create end
Usage
default
Include default recipe in a run list, to get some Transmission installed. Installs Transmission by package or source depending on the platform.
package
Installs Transmission from packages. This should only be loaded by the default recipe.
source
Installs Transmission from source. This should only be loaded by the default recipe.
License & Authors
Author: Cookbook Engineering Team (cookbooks@chef.io)
Copyright: 2011-2016, Chef Software, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Dependent cookbooks
openssl >= 0.0.0 |
build-essential >= 0.0.0 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
transmission Cookbook CHANGELOG
This file is used to list changes made in each version of the transmission cookbook.
4.0.0 (2017-01-18)
- Use multipackage to speed up package installs
- Expand platform testing and fix 16.04 package tests
- Make sure we have ssl libs on debian systems
- Remove the chef 11 compatibility check in chef_gem
- Switch back to stable ChefDK builds for testing
- Require Chef 12.14 to get ruby 2.2.2+ which is needed for the gems that are installed by this cookbook
3.0.0 (2016-09-08)
- Add matchers
- Require Chef 12.1+
2.2.1 (2016-09-01)
- Add chef_version
- Testing updates
- Pull transmission from Github and use 2.92
2.2.0 (2016-08-11)
- Fix up chef_gem compile time warnings.
- Add support for transmission whitelist settings.
- Add use_inline_resources
- Add conditional to support older versions of chef.
- Update testing
- Specif version 4.x of activesupport to fix installs on Ruby 2.1 Chef omnibus
v2.1.1 (2016-01-08)
- Add supports metadata for all supported platforms
v2.1.0 (2016-01-08)
- Fixed installation via source on RHEL systems by adding openssl / tar packages to the source recipe
- Switched to platform_family to better support derivitive operating systems
- Updated to the latest version of Transmission for source installs
- Switched from .bz2 to .xz format archives for source installs as .bz2 archives are no longer being published. Xz tools will now be installed in the source recipe
- Added source test suite in Test Kitchen
- Removed support for RHEL releases before 7 as the version of libevent shipped in these distros is too old to compile tranmission
v2.0.10 (2015-12-14)
- Set the minimum supported Chef release to 11
- Removed the monkeypatch to Ruby 1.8.6 support
- Resolved all rubocop warnings
- Added testing with Travis CI
- Added chefignore file
- Swaped Digital Ocean Test Kitchen config for Docker
- Added standard Chef .rubocop.yml
- Updated contributing and testing docs
- Added Gemfile with development deps
- Added maintainers file
- Added a Rakefile for simplified testing
v2.0.9 (2015-02-18)
- reverting OpenSSL module namespace change
v2.0.8 (2015-02-18)
- reverting chef_gem compile_time work
v2.0.7 (2015-02-18)
- Updating to use the latest openssl
v2.0.6 (2015-02-18)
- Fixing chef_gem for Chef below 12.1.0
v2.0.4 (2014-09-18)
- [#11] prevent circular symlink for settings.json on Ubuntu 14.04
- Add Berksfile and test-kitchen config
v2.0.2 (2014-03-19)
- [COOK-4424] Updates Transmission url in README'
v2.0.0
Requires Ruby 1.9 or higher!
Bug
- COOK-3451 - Use Hash#key to silence Hash#index deprecation warnings
- COOK-3450 - Delete torrent local data when not seeding
- COOK-3449 - Prevent torrent status of checking from prematurely ending blocking downloads
-
COOK-3324 - Use
BEncode.load_file
to load torrent file when hashing to avoid UTF-8 encoding issues
Improvement
- COOK-2227 - Add watch dir options
v1.0.4
Bug
- [COOK-2981]: transmission cookbook has foodcritic errors
v1.0.2
- [COOK-729]:
transmission_torrent_file
doesn't work for more than a single torrent - [COOK-732]: link to file in swarm not created if torrent already completely downloaded
Collaborator Number Metric
4.0.0 passed this metric
Contributing File Metric
4.0.0 passed this metric
Foodcritic Metric
4.0.0 passed this metric
License Metric
4.0.0 passed this metric
No Binaries Metric
4.0.0 passed this metric
Testing File Metric
4.0.0 passed this metric
Version Tag Metric
4.0.0 passed this metric
4.0.0 passed this metric
4.0.0 passed this metric
Foodcritic Metric
4.0.0 passed this metric
License Metric
4.0.0 passed this metric
No Binaries Metric
4.0.0 passed this metric
Testing File Metric
4.0.0 passed this metric
Version Tag Metric
4.0.0 passed this metric
4.0.0 passed this metric
4.0.0 passed this metric
No Binaries Metric
4.0.0 passed this metric
Testing File Metric
4.0.0 passed this metric
Version Tag Metric
4.0.0 passed this metric
4.0.0 passed this metric
4.0.0 passed this metric
Version Tag Metric
4.0.0 passed this metric
4.0.0 passed this metric