Move the default config to a Chef attribute
This is tested by serverspec integration test Closes #5
This commit is contained in:
parent
c6a0159e82
commit
553ec510eb
|
@ -1,7 +1,35 @@
|
|||
node.default['ipfs']['version'] = '0.4.17'
|
||||
node.default['ipfs']['checksum'] = '1bb1050ebe74f9042ac721eb1b71f92e1b0e78e54c59dadfde13080facb2901c'
|
||||
# Do not contact local network addresses. This will stop platforms like Hetzner
|
||||
# to block your server (https://github.com/ipfs/go-ipfs/issues/1226)
|
||||
node.default['ipfs']['config']['swarm']['addr_filter'] = ['/ip4/10.0.0.0/ipcidr/8', '/ip4/100.64.0.0/ipcidr/10', '/ip4/169.254.0.0/ipcidr/16', '/ip4/172.16.0.0/ipcidr/12', '/ip4/192.0.0.0/ipcidr/24', '/ip4/192.0.0.0/ipcidr/29', '/ip4/192.0.0.8/ipcidr/32', '/ip4/192.0.0.170/ipcidr/32', '/ip4/192.0.0.171/ipcidr/32', '/ip4/192.0.2.0/ipcidr/24', '/ip4/192.168.0.0/ipcidr/16', '/ip4/198.18.0.0/ipcidr/15', '/ip4/198.51.100.0/ipcidr/24', '/ip4/203.0.113.0/ipcidr/24', '/ip4/240.0.0.0/ipcidr/4']
|
||||
|
||||
node.default['ipfs']['cluster']['version'] = '0.4.0'
|
||||
|
||||
node.default['ipfs']['config'] = {
|
||||
# Do not contact local network addresses. This will stop platforms like Hetzner
|
||||
# to block your server (https://github.com/ipfs/go-ipfs/issues/1226)
|
||||
"Swarm.AddrFilters" => ['/ip4/10.0.0.0/ipcidr/8',
|
||||
'/ip4/100.64.0.0/ipcidr/10',
|
||||
'/ip4/169.254.0.0/ipcidr/16',
|
||||
'/ip4/172.16.0.0/ipcidr/12',
|
||||
'/ip4/192.0.0.0/ipcidr/24',
|
||||
'/ip4/192.0.0.0/ipcidr/29',
|
||||
'/ip4/192.0.0.8/ipcidr/32',
|
||||
'/ip4/192.0.0.170/ipcidr/32',
|
||||
'/ip4/192.0.0.171/ipcidr/32',
|
||||
'/ip4/192.0.2.0/ipcidr/24',
|
||||
'/ip4/192.168.0.0/ipcidr/16',
|
||||
'/ip4/198.18.0.0/ipcidr/15',
|
||||
'/ip4/198.51.100.0/ipcidr/24',
|
||||
'/ip4/203.0.113.0/ipcidr/24',
|
||||
'/ip4/240.0.0.0/ipcidr/4'],
|
||||
# Do not keep track of bandwidth metrics. Disabling bandwidth metrics can
|
||||
# lead to a slight performance improvement, as well as a reduction in memory
|
||||
# usage.
|
||||
"Swarm.DisableBandwidthMetrics" => true,
|
||||
# Disable the p2p-circuit relay transport
|
||||
"Swarm.DisableRelay" => true,
|
||||
# Number of connections that, when exceeded, will trigger a connection GC
|
||||
# operation
|
||||
"Swarm.ConnMgr.HighWater" => 10,
|
||||
# Minimum number of connections to maintain
|
||||
"Swarm.ConnMgr.LowWater" => 1
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@ maintainer_email 'mail@kosmos.org'
|
|||
license 'MIT'
|
||||
description 'Installs/Configures ipfs'
|
||||
long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
|
||||
version '0.1.3'
|
||||
version '0.2.0'
|
||||
|
||||
supports %w(ubuntu debian)
|
||||
|
||||
|
|
|
@ -79,30 +79,8 @@ else
|
|||
end
|
||||
end
|
||||
|
||||
# Configure ipfs to not contact local network addresses
|
||||
ipfs_config 'Swarm.AddrFilters' do
|
||||
value node['ipfs']['config']['swarm']['addr_filter']
|
||||
end
|
||||
|
||||
# Do not keep track of bandwidth metrics. Disabling bandwidth metrics can
|
||||
# lead to a slight performance improvement, as well as a reduction in memory
|
||||
# usage.
|
||||
ipfs_config 'Swarm.DisableBandwidthMetrics' do
|
||||
value true
|
||||
end
|
||||
|
||||
# Disable the p2p-circuit relay transport
|
||||
ipfs_config 'Swarm.DisableRelay' do
|
||||
value true
|
||||
end
|
||||
|
||||
# Number of connections that, when exceeded, will trigger a connection GC
|
||||
# operation
|
||||
ipfs_config 'Swarm.ConnMgr.HighWater' do
|
||||
value 10
|
||||
end
|
||||
|
||||
# Minimum number of connections to maintain
|
||||
ipfs_config 'Swarm.ConnMgr.LowWater' do
|
||||
value 1
|
||||
node['ipfs']['config'].each do |k, v|
|
||||
ipfs_config k do
|
||||
value v
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
require 'serverspec'
|
||||
require 'json'
|
||||
|
||||
# Required by serverspec
|
||||
set :backend, :exec
|
||||
|
@ -21,4 +22,37 @@ describe 'IPFS' do
|
|||
expect(service('ipfs')).to be_running
|
||||
expect(service('ipfs')).to be_enabled
|
||||
end
|
||||
|
||||
addr_filters = <<-EOF
|
||||
[
|
||||
"/ip4/10.0.0.0/ipcidr/8",
|
||||
"/ip4/100.64.0.0/ipcidr/10",
|
||||
"/ip4/169.254.0.0/ipcidr/16",
|
||||
"/ip4/172.16.0.0/ipcidr/12",
|
||||
"/ip4/192.0.0.0/ipcidr/24",
|
||||
"/ip4/192.0.0.0/ipcidr/29",
|
||||
"/ip4/192.0.0.8/ipcidr/32",
|
||||
"/ip4/192.0.0.170/ipcidr/32",
|
||||
"/ip4/192.0.0.171/ipcidr/32",
|
||||
"/ip4/192.0.2.0/ipcidr/24",
|
||||
"/ip4/192.168.0.0/ipcidr/16",
|
||||
"/ip4/198.18.0.0/ipcidr/15",
|
||||
"/ip4/198.51.100.0/ipcidr/24",
|
||||
"/ip4/203.0.113.0/ipcidr/24",
|
||||
"/ip4/240.0.0.0/ipcidr/4"
|
||||
]
|
||||
EOF
|
||||
|
||||
{
|
||||
"Swarm.AddrFilters" => addr_filters.rstrip,
|
||||
"Swarm.DisableBandwidthMetrics" => true,
|
||||
"Swarm.DisableRelay" => true,
|
||||
"Swarm.ConnMgr.HighWater" => 10,
|
||||
"Swarm.ConnMgr.LowWater" => 1,
|
||||
}.each do |k, v|
|
||||
describe command("IPFS_PATH=/home/ipfs/.ipfs ipfs config '#{k}'") do
|
||||
let(:sudo_options) { '-u ipfs -i' }
|
||||
its(:stdout) { should eq "#{v}\n" }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue