Source code repository management made simple.
Packages is a PHP 5.6 and 7.x application providing an interface and tools for maintaining a private Composer repository. Packages extends Satis, adding a web frontend and useful management functionality like GitHub and GitLab integration.
Packages automatically registers GitLab, GitHub, and Bitbucket project webhooks to keep Satis up to date every time you push code. Packages also features a web management interface that allows for easy management of exposed packages and configured source control repositories.
Packages version 3 works on a plugin based system based around source code repositories. Packages can trigger, with each code push, many automated tasks like documentation generation or code analysis. The simple event-based architecture allows easy creation of new automation tasks.
Requirements:
Download the latest release, or clone the repository.
git clone git@github.com:terramar-labs/packages.git
Switch to the project root directory and run composer install
.
cd packages
composer install
Copy config.yml.dist
to config.yml
and edit as appropriate.
cp config.yml.dist config.yml
vi config.yml
Packages uses Doctrine ORM to auto-generate the database schema for your configured platform.
bin/console orm:schema-tool:create
Start PHP's built-in webserver to run the Packages web application with minimal effort.
# Visit http://localhost:8080 to see the landing page.
php -S localhost:8080 -t web
For fully-automatic integration with GitHub, GitLab, and your Satis repository, you must always have at least one Resque worker running.
bin/console resque:worker:start
For more information on Resque workers, check the dedicated section.
Read the usage and design documentation for an overview of Packages functionality.
Visit index_dev.php
in your browser to view the site with the dev
environment configuration. In this env, views and the service container are not cached, so changes made are immediately visible.
Check out the Contributing Guide for the recommended way to set up your development environment.
Some tips:
views/
.
prod
env; use http://localhost:8080/index_dev.php
to develop.views/base.html.twig
, except forviews/Default/base.html.twig
.web/images/
, web/js/bootstrap.min.js
, and such are symlinks pointing to the real files installed by Composer in vendor/
.Packages comes with an example docker-compose.yml
that starts an nginx container and a Redis container, ready to get up and running quickly.
Visit the documentation to get started.
index_dev.php
contains a non-localhost block, comment it out when using Docker.bin/console
command-line utility.
packages.json
file with the satis:build
command.
bin/console satis:build
resque:queue:list
command.
bin/console resque:queue:list
resque:worker:list
command.
bin/console resque:worker:list
resque:worker:start
.
bin/console resque:worker:start
tail -f logs/resque.log