Skip to content

Commit

Permalink
Merge branch 'release/3.0.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
tyler-sommer committed Dec 5, 2014
2 parents 75da7af + 575bd1d commit 3494e88
Show file tree
Hide file tree
Showing 96 changed files with 4,303 additions and 2,344 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,4 @@
/config.yml
/cache/*
/logs/*
/config/deploy.rb
65 changes: 60 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,25 @@ packages

Packages extends [Satis](https://github.com/composer/satis), adding useful management functionality.

Packages automatically registers GitLab project web hooks to keep references up to date. The latest version
Packages automatically registers GitLab and GitHub project web hooks to keep Satis up to date. Packages also
features a web management interface that allows for easy management of exposed packages and configured source
control repositories.

Packages 3.0 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.

Currently implemented plugins:

* **GitLab integration plugin**
Provides project sync support and automatic webhook registration within GitLab.

* **GitHub integration plugin**
Provides project sync support and automatic webhook registration within GitHub.

* **Satis plugin**
Updates Satis when source code is updated.


Installation
------------
Expand All @@ -33,16 +48,56 @@ cp config.yml.dist config.yml
vi config.yml
```

Run database migrations to create your database schema.
Create your database if necessary, then run the schema tool to update your database schema.

```
bin/console migrations:migrate
bin/console orm:schema-tool:create
```

Your installation is complete! Visit the project's web directory from your browser to configure your packages.


### Updating satis.json
Usage
-----

### Using the web interface

Point your webserver's webroot to your Packages installation's `web` folder, then visit the app in your browser.

You can login with the configured credentials.


### Creating Remotes

Before you can use Packages, you need to configure a GitHub or GitLab remote. Do this by logging into the
web interface and going to Remotes. Add a Remote, select the Remote type, then configure any additional
parameters necessary for the chosen type.

Now Sync your remote to create a package within your Packages installation.


### Enabling Package plugins

After you have synced your Remote, you can configure each package. Go to Packages and click Edit on one of your
packages. Check the "Enabled" checkbox to enable and configure further plugins.


Satis Configuration
-------------------

Enable the Satis plugin on each Package you want to expose via Satis. A webhook will be installed in GitHub or
GitLab to enable the automatic update of your Satis repository information.


### Manually updating Satis

Sometimes you need to manually build or generate the exposed Satis information. You can do this by using the
Packages command-line interface.


#### Updating satis.json

`satis.json` is the Satis configuration file. This file tells Satis which repositories to look at.

```
bin/console satis:update
Expand All @@ -51,7 +106,7 @@ bin/console satis:update
This command generates an updated satis.json with all enabled packages.


### Updating the exposed packages.json
#### Updating the exposed packages.json

`packages.json` is publicly accessible, exposing information about the available repositories
and their branches, tags, etc. Once `satis.json` is updated, run the build command to update `packages.json`.
Expand Down
2 changes: 1 addition & 1 deletion bin/console
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env php
<?php

require __DIR__.'/../src/bootstrap.php';
require __DIR__.'/../vendor/autoload.php';

use Terramar\Packages\Console\Application;

Expand Down
25 changes: 14 additions & 11 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,36 @@
"name": "terramar/packages",
"description": "Packages extends Composer Satis with a management interface and GitLab integration",
"license": "MIT",
"type": "application",
"require": {
"php": ">=5.4.0",
"composer/satis": "dev-master",
"composer/composer": "1.0.x-dev",
"doctrine/orm": "~2.4",
"doctrine/migrations": "dev-master",
"twig/twig": "~1.15",
"nice/framework": "1.0.x-dev",
"nice/security": "1.0.x-dev",
"nice/doctrine-orm": "1.0.x-dev",
"nice/twig": "1.0.x-dev",
"chrisboulton/php-resque": "dev-master",
"doctrine/migrations": "1.0.x-dev",
"symfony/debug": "~2.4",
"symfony/console": "~2.4",
"symfony/process": "~2.4",
"symfony/yaml": "~2.4",
"composer/satis": "dev-master",
"composer/composer": "1.0.x-dev",
"sami/sami": "dev-master",
"m4tthumphrey/php-gitlab-api": "dev-master",
"chrisboulton/php-resque": "dev-master",
"nikic/fast-route": "dev-master",
"tyler-sommer/nice": "1.0.x-dev"
"knplabs/github-api": "~1.2"
},
"require-dev": {
"phpunit/phpunit": "~3.7"
},
"autoload": {
"psr-0": {
"Terramar\\Packages": "src/"
"psr-4": {
"Terramar\\Packages\\": "src/"
}
},
"extra": {
"branch-alias": {
"dev-develop": "2.1-dev"
"dev-develop": "3.0-dev"
}
},
"minimum-stability": "beta",
Expand Down
Loading

0 comments on commit 3494e88

Please sign in to comment.