# # Apache configuration file for Pulp's Puppet support # # -- HTTPS Repositories --------- Alias /pulp/puppet /var/www/pub/puppet/https/repos Options FollowSymLinks Indexes # -- HTTP Repositories ---------- Options FollowSymLinks Indexes # -- Files Repositories ---------- Alias /pulp/puppet_files /var/www/pub/puppet/files SSLRequireSSL SSLVerifyClient optional_no_ca SSLVerifyDepth 2 SSLOptions +StdEnvVars +ExportCertData +FakeBasicAuth Options FollowSymLinks Indexes # The puppet module tool does url joins improperly. When we send it a path to a # file like "/pulp/puppet/demo/system/releases/p/puppetlabs/puppetlabs-stdlib-3.1.0.tar.gz", # it treats that like a relative path instead of absolute. The following redirect # compensates for this. The only path that should be available under # /pulp_puppet/forge/ is /pulp_puppet/forge//consumer_id|repo_id>/api/v1/releases.json # and so the following redirect will match any path that isn't the above. RedirectMatch ^\/?pulp_puppet\/forge\/[^\/]+\/[^\/]+\/(?!api\/v1\/releases\.json)(.*)$ /$1 WSGIDaemonProcess pulp_forge user=apache group=apache processes=1 display-name=%{GROUP} WSGIProcessGroup pulp_forge WSGIApplicationGroup pulp_forge WSGIScriptAlias /api/v1 /usr/share/pulp/wsgi/puppet_forge.wsgi process-group=pulp_forge application-group=pulp_forge WSGIScriptAlias /pulp_puppet/forge /usr/share/pulp/wsgi/puppet_forge.wsgi process-group=pulp_forge application-group=pulp_forge WSGIScriptAlias /v3 /usr/share/pulp/wsgi/puppet_forge.wsgi process-group=pulp_forge application-group=pulp_forge WSGIPassAuthorization On