I'm trying to use the forge server in vagrant, with CentOS Linux release 7.2.1511 (Core), the following way:
bin/puppet-forge-server --debug -x https://forge.puppet.com -p 8081
[2016-12-19 09:20:11] INFO Using RAM memory LRUCache with time to live of 1800sec and max size of 250 elements
[2016-12-19 09:20:11] INFO Detecting API version for https://forge.puppet.com...
[2016-12-19 09:20:11] INFO Cache in RAM memory size: 0, MISS for url: https://forge.puppet.com/v3/modules/puppetlabs-stdlib
[2016-12-19 09:20:11] DEBUG Fetching data for url: https://forge.puppet.com/v3/modules/puppetlabs-stdlib from remote server
[2016-12-19 09:20:12] DEBUG Data for url: https://forge.puppet.com/v3/modules/puppetlabs-stdlib fetched, 125935 bytes
[2016-12-19 09:20:12] INFO +- Daemonizing: false
[2016-12-19 09:20:12] INFO |- Port: 8081
[2016-12-19 09:20:12] INFO |- Host: default
[2016-12-19 09:20:12] INFO |- Pidfile: default
[2016-12-19 09:20:12] INFO |- Server: default
[2016-12-19 09:20:12] INFO `- Backends:
[2016-12-19 09:20:12] INFO - #<PuppetForgeServer::Backends::Directory:0x000000025a8640 @module_dir="/tmp/puppet-forge-server/cache", @log=#<PuppetForgeServer::Logger:0x000000025f10e8 @loggers=[#<Logger:0x000000025f0f80 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x000000025f0f58 @datetime_format=nil>, @formatter=#<Proc:0x000000025f0cb0@/root/puppet-forge-server/lib/puppet_forge_server/logger.rb:31>, @logdev=#<Logger::LogDevice:0x000000025f0e68 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<IO:<STDERR>>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x000000025f0e40 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000025f0df0>>>>]>, @readonly=true>
[2016-12-19 09:20:12] INFO - #<PuppetForgeServer::Backends::ProxyV3:0x0000000259f7e8 @url="https://forge.puppet.com", @cache_dir="/tmp/puppet-forge-server/cache/a3c5ffb74360ad0af0567024ebc24a03ed3a74c6", @http_client=#<PuppetForgeServer::Http::HttpClient:0x259f7c0 @log=#<PuppetForgeServer::Logger:0x000000025f10e8 @loggers=[#<Logger:0x000000025f0f80 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x000000025f0f58 @datetime_format=nil>, @formatter=#<Proc:0x000000025f0cb0@/root/puppet-forge-server/lib/puppet_forge_server/logger.rb:31>, @logdev=#<Logger::LogDevice:0x000000025f0e68 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<IO:<STDERR>>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x000000025f0e40 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000025f0df0>>>>]>, @uri_options={"User-Agent"=>"Puppet-Forge-Server/1.9.0", :allow_redirections=>:safe}, @cache=#<LRUCache:0x25dc490 @max_size=250, @default=nil, @eviction_handler=nil, @ttl=1800.0, @soft_ttl=0.0, @retry_delay=0.0, @pqueue=<PriorityQueue: [["https://forge.puppet.com/v3/modules/puppetlabs-stdlib", 1]]>, @counter=1, @size=1>>, @log=#<PuppetForgeServer::Logger:0x000000025f10e8 @loggers=[#<Logger:0x000000025f0f80 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x000000025f0f58 @datetime_format=nil>, @formatter=#<Proc:0x000000025f0cb0@/root/puppet-forge-server/lib/puppet_forge_server/logger.rb:31>, @logdev=#<Logger::LogDevice:0x000000025f0e68 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<IO:<STDERR>>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x000000025f0e40 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x000000025f0df0>>>>]>, @file_path="/v3/files">
[2016-12-19 09:20:12] INFO WEBrick 1.3.1
[2016-12-19 09:20:12] INFO ruby 2.0.0 (2014-11-13) [x86_64-linux]
[2016-12-19 09:20:12] WARN TCPServer Error: Address already in use - bind(2)
[2016-12-19 09:20:12] INFO WEBrick::HTTPServer#start: pid=4254 port=8081
When trying to install a module I get the following error:
[root@library-centos7 ~]# puppet module install --module_repository=http://127.0.0.1:8081 puppetlabs-stdlib
Notice: Preparing to install into /etc/puppet/modules ...
Notice: Downloading from http://127.0.0.1:8081 ...
Error: Request to Puppet Forge failed.
The server being queried was http://127.0.0.1:8081/v3/releases?module=puppetlabs-stdlib
The HTTP response we received was '400 Bad Request'
When running with -b 127.0.0.1 and -p 8181 I get a different error:
[root@library-centos7 puppet-forge-server]# bin/puppet-forge-server -b 127.0.0.1 --debug -x https://forge.puppet.com -p 8181
[2016-12-19 09:25:11] INFO Using RAM memory LRUCache with time to live of 1800sec and max size of 250 elements
[2016-12-19 09:25:11] INFO Detecting API version for https://forge.puppet.com...
[2016-12-19 09:25:11] INFO Cache in RAM memory size: 0, MISS for url: https://forge.puppet.com/v3/modules/puppetlabs-stdlib
[2016-12-19 09:25:11] DEBUG Fetching data for url: https://forge.puppet.com/v3/modules/puppetlabs-stdlib from remote server
[2016-12-19 09:25:12] DEBUG Data for url: https://forge.puppet.com/v3/modules/puppetlabs-stdlib fetched, 125935 bytes
[2016-12-19 09:25:12] INFO +- Daemonizing: false
[2016-12-19 09:25:12] INFO |- Port: 8181
[2016-12-19 09:25:12] INFO |- Host: default
[2016-12-19 09:25:12] INFO |- Pidfile: default
[2016-12-19 09:25:12] INFO |- Server: default
[2016-12-19 09:25:12] INFO `- Backends:
[2016-12-19 09:25:12] INFO - #<PuppetForgeServer::Backends::Directory:0x00000000e3c718 @module_dir="/tmp/puppet-forge-server/cache", @log=#<PuppetForgeServer::Logger:0x00000000e85080 @loggers=[#<Logger:0x00000000e84f40 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x00000000e84ef0 @datetime_format=nil>, @formatter=#<Proc:0x00000000e84c48@/root/puppet-forge-server/lib/puppet_forge_server/logger.rb:31>, @logdev=#<Logger::LogDevice:0x00000000e84e00 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<IO:<STDERR>>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x00000000e84dd8 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x00000000e84d88>>>>]>, @readonly=true>
[2016-12-19 09:25:12] INFO - #<PuppetForgeServer::Backends::ProxyV3:0x00000000e32bf0 @url="https://forge.puppet.com", @cache_dir="/tmp/puppet-forge-server/cache/a3c5ffb74360ad0af0567024ebc24a03ed3a74c6", @http_client=#<PuppetForgeServer::Http::HttpClient:0xe32bc8 @log=#<PuppetForgeServer::Logger:0x00000000e85080 @loggers=[#<Logger:0x00000000e84f40 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x00000000e84ef0 @datetime_format=nil>, @formatter=#<Proc:0x00000000e84c48@/root/puppet-forge-server/lib/puppet_forge_server/logger.rb:31>, @logdev=#<Logger::LogDevice:0x00000000e84e00 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<IO:<STDERR>>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x00000000e84dd8 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x00000000e84d88>>>>]>, @uri_options={"User-Agent"=>"Puppet-Forge-Server/1.9.0", :allow_redirections=>:safe}, @cache=#<LRUCache:0xe701d0 @max_size=250, @default=nil, @eviction_handler=nil, @ttl=1800.0, @soft_ttl=0.0, @retry_delay=0.0, @pqueue=<PriorityQueue: [["https://forge.puppet.com/v3/modules/puppetlabs-stdlib", 1]]>, @counter=1, @size=1>>, @log=#<PuppetForgeServer::Logger:0x00000000e85080 @loggers=[#<Logger:0x00000000e84f40 @progname=nil, @level=0, @default_formatter=#<Logger::Formatter:0x00000000e84ef0 @datetime_format=nil>, @formatter=#<Proc:0x00000000e84c48@/root/puppet-forge-server/lib/puppet_forge_server/logger.rb:31>, @logdev=#<Logger::LogDevice:0x00000000e84e00 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<IO:<STDERR>>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x00000000e84dd8 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x00000000e84d88>>>>]>, @file_path="/v3/files">
[2016-12-19 09:25:12] INFO WEBrick 1.3.1
[2016-12-19 09:25:12] INFO ruby 2.0.0 (2014-11-13) [x86_64-linux]
[2016-12-19 09:25:12] WARN TCPServer Error: Address already in use - bind(2)
[2016-12-19 09:25:12] INFO WEBrick::HTTPServer#start: pid=4352 port=8181
[root@library-centos7 ~]# puppet module install --module_repository=http://127.0.0.1:8181 puppetlabs-stdlib
Notice: Preparing to install into /etc/puppet/modules ...
Notice: Downloading from http://127.0.0.1:8181 ...
Error: Request to Puppet Forge failed.
The server being queried was http://127.0.0.1:8181/v3/releases?module=puppetlabs-stdlib
The HTTP response we received was '503 Service Unavailable'
There seems to be a problem with the binding, although I'm not sure if this problem is related:
[root@library-centos7 ~]# netstat -tulpen
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
tcp 0 0 0.0.0.0:8181 0.0.0.0:* LISTEN 0 27455 4352/ruby
UPDATE:
If I run curl on the address, I get some output, not sure if it is the correct output:
`[root@library-centos7 ~]# curl http://127.0.0.1:8181/v3/releases?module=puppetlabs-stdlib
{"pagination":{"next":false,"total":48},"results":[{"uri":"/v3/releases/puppetlabs-stdlib-0.1.1","module":{"uri":"/v3/modules/puppetlabs-stdlib","name":"stdlib","owner":{"username":"puppetlabs","uri":"/v3/users/puppetlabs"}},"metadata":{"name":"puppetlabs-stdlib","version":"0.1.1","author":"puppetlabs","summary":"Puppet Module Standard Library","license":"Apache","source":"git://github.com/puppetlabs/puppetlabs-stdlib","project_page":"https://github.com/puppetlabs/puppetlabs-stdlib","dependencies":[],"description":"Standard Library for Puppet Modules","types":[],"checksums":{"spec/spec_helper.rb":"ca19ec4f451ebc7fdb035b52eae6e909","CHANGELOG":"3669a98bf4e1ce6c011ebeb827847ee4","manifests/stages.pp":"5bd746c34c0cbb3fe7d27bfa941582e7","tests/init.pp":"1d98070412c76824e66db4b7eb74d433","README.markdown":"dbe2ed7059399f57eb7737dc763ee451","spec/spec.op
SNIP
The daemon log then:
[2016-12-19 09:25:12] INFO WEBrick 1.3.1
[2016-12-19 09:25:12] INFO ruby 2.0.0 (2014-11-13) [x86_64-linux]
[2016-12-19 09:25:12] WARN TCPServer Error: Address already in use - bind(2)
[2016-12-19 09:25:12] INFO WEBrick::HTTPServer#start: pid=4352 port=8181
[2016-12-19 09:35:56] INFO Cache in RAM memory size: 1, MISS for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib
[2016-12-19 09:35:56] DEBUG Fetching data for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib from remote server
[2016-12-19 09:36:01] DEBUG Data for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib fetched, 1301725 bytes
[2016-12-19 09:36:01] INFO Cache in RAM memory size: 2, MISS for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib&limit=20&offset=20
[2016-12-19 09:36:01] DEBUG Fetching data for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib&limit=20&offset=20 from remote server
[2016-12-19 09:36:03] DEBUG Data for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib&limit=20&offset=20 fetched, 740981 bytes
[2016-12-19 09:36:03] INFO Cache in RAM memory size: 3, MISS for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib&limit=20&offset=40
[2016-12-19 09:36:03] DEBUG Fetching data for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib&limit=20&offset=40 from remote server
[2016-12-19 09:36:04] DEBUG Data for url: https://forge.puppet.com/v3/releases?module=puppetlabs-stdlib&limit=20&offset=40 fetched, 86803 bytes
127.0.0.1 - - [19/Dec/2016 09:36:04] "GET /v3/releases?module=puppetlabs-stdlib HTTP/1.1" 200 1394259 7.5882
library-centos7 - - [19/Dec/2016:09:35:56 CET] "GET /v3/releases?module=puppetlabs-stdlib HTTP/1.1" 200 1394259
- -> /v3/releases?module=puppetlabs-stdlib
I'm trying to use the forge server in vagrant, with CentOS Linux release 7.2.1511 (Core), the following way:
When trying to install a module I get the following error:
When running with -b 127.0.0.1 and -p 8181 I get a different error:
There seems to be a problem with the binding, although I'm not sure if this problem is related:
UPDATE: If I run curl on the address, I get some output, not sure if it is the correct output:
The daemon log then: