kindredgroup / puppet-forge-server

Private Puppet forge server supports local files and both v1 and v3 API proxies
69 stars 44 forks source link

reuse existing modules path #50

Open ReSearchITEng opened 8 years ago

ReSearchITEng commented 8 years ago

Hi, First of all, great idea! Much easier than figuring out the pulp!

If I understood well, the puppet-forge-server is able to reuse a locally downloaded puppet forge mirror. I have downloaded the entire puppet forge (1 Gb) by using: https://github.com/jhaals/puppet-forge-mirror/blob/master/lib/puppet-forge-mirror.rb and I have pointed this puppet-forge-server to use the ./modules folder.

Well, it seems it's not able to find them and it's downloading from internet. The modules downloaded are each in it's subfolder, in the format: ./modules/puppetlabs/apache/puppetlabs-apache-1.10.0.tar.gz

This is how I call it: puppet-forge-server -D -m $base/modules -x https://forgeapi.puppetlabs.com --log-dir $base/log --cache-basedir $base/cache --pidfile $base/server.pid

i11 commented 7 years ago

Hi!

Sorry for the delay and thanks for giving it a try. Could you please list the current content of your modules folder (something like ls ./modules would do). What's the value of $base, could you try using the absolute path? Also please include the log output.

You could start it without daemonizing (e.g. puppet-forge-server -x https://forgeapi.puppetlabs.com -m ./modules)

ReSearchITEng commented 7 years ago

ls -la /extra/puppetforge/modules | tail drwxrwxrwx 3 root root 4096 Jun 10 14:44 zeleznypa drwxrwxrwx 4 root root 4096 Jun 10 15:30 zerlgi drwxrwxrwx 7 root root 4096 Jun 10 17:00 zivtech drwxrwxrwx 20 root root 4096 Jun 10 17:46 zleslie drwxrwxrwx 3 root root 4096 Jun 10 15:06 zoni drwxrwxrwx 4 root root 4096 Jun 10 16:30 zoojar drwxrwxrwx 8 root root 4096 Jun 10 15:16 zooz drwxrwxrwx 3 root root 4096 Jun 10 15:31 zordrak drwxrwxrwx 3 root root 4096 Jun 10 15:19 zpetr drwxrwxrwx 3 root root 4096 Jun 10 14:58 zuinnote

ls -la /extra/puppetforge/modules/zuinnote/ total 48 drwxrwxrwx 3 root root 4096 Jun 10 14:58 . drwxrwxrwx 1439 root root 36864 Jun 10 22:52 .. drwxrwxrwx 2 root root 4096 Jun 10 17:51 oraclejdk8

ls -la /extra/puppetforge/modules/zuinnote/oraclejdk8/ total 16 drwxrwxrwx 2 root root 4096 Jun 10 17:51 . drwxrwxrwx 3 root root 4096 Jun 10 14:58 .. -rwxrwxrwx 1 root root 3443 Jun 10 17:51 zuinnote-oraclejdk8-1.0.0.tar.gz -rwxrwxrwx 1 root root 3464 Jun 10 14:58 zuinnote-oraclejdk8-1.0.1.tar.gz

ls -la modules/adrien/filemapper/adrien-filemapper-1.* -rwxrwxrwx 1 root root 10532 Jun 10 18:42 modules/adrien/filemapper/adrien-filemapper-1.0.2.tar.gz -rwxrwxrwx 1 root root 12871 Jun 10 19:19 modules/adrien/filemapper/adrien-filemapper-1.1.0-rc1.tar.gz -rwxrwxrwx 1 root root 12452 Jun 10 19:25 modules/adrien/filemapper/adrien-filemapper-1.1.0.tar.gz -rwxrwxrwx 1 root root 12539 Jun 10 17:18 modules/adrien/filemapper/adrien-filemapper-1.1.1.tar.gz -rwxrwxrwx 1 root root 12472 Jun 10 14:34 modules/adrien/filemapper/adrien-filemapper-1.1.2.tar.gz -rwxrwxrwx 1 root root 12782 Jun 10 14:18 modules/adrien/filemapper/adrien-filemapper-1.1.3.tar.gz

As you can see, cache is being populated instead:

ls -la /extra/puppetforge/cache/93c654b7b5d3bff7decd0a021bf7cd0a28040c3c/a/a* -rwxrwxrwx 1 root root 12316 Jun 13 08:19 cache/93c654b7b5d3bff7decd0a021bf7cd0a28040c3c/a/adrien-filemapper-1.0.2 -rwxrwxrwx 1 root root 14589 Jun 13 08:19 cache/93c654b7b5d3bff7decd0a021bf7cd0a28040c3c/a/adrien-filemapper-1.1.0 -rwxrwxrwx 1 root root 14801 Jun 13 08:19 cache/93c654b7b5d3bff7decd0a021bf7cd0a28040c3c/a/adrien-filemapper-1.1.1 -rwxrwxrwx 1 root root 15090 Jun 13 08:19 cache/93c654b7b5d3bff7decd0a021bf7cd0a28040c3c/a/adrien-filemapper-1.1.2 -rwxrwxrwx 1 root root 15289 Jun 13 08:19 cache/93c654b7b5d3bff7decd0a021bf7cd0a28040c3c/a/adrien-filemapper-1.1.3

This is how I start it: root 105444 1 0 Jun27 ? 00:01:33 /usr/bin/ruby /usr/local/bin/puppet-forge-server -D -m /extra/puppetforge//modules -x https://forgeapi.puppetlabs.com --log-dir /extra/puppetforge//log --cache-basedir /extra/puppetforge//cache --pidfile /extra/puppetforge//server.pid