Initial import

This commit is contained in:
Thomas Gelf 2018-11-06 12:42:54 +01:00
commit 962e8ba30d
7 changed files with 156 additions and 0 deletions

4
.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
/vendor/
/.idea/
.*.sw[op]
composer.lock

32
README.md Normal file
View File

@ -0,0 +1,32 @@
Icinga Web 2 - Incubator
========================
This repository ships bleeding edge libraries useful for Icinga Web 2 modules.
Please download the latest release and install it like any other module.
> **HINT**: Do NOT install the GIT master, it will not work!
```sh
RELEASES="https://github.com/Icinga/icingaweb2-module-incubator/archive" \
&& MODULES_PATH="/usr/share/icingaweb2/modules" \
&& MODULE_VERSION=0.1.0 \
&& mkdir "$MODULES_PATH" \
&& wget -q $RELEASES/v${MODULE_VERSION}.tar.gz -O - \
| tar xfz - -C "$MODULES_PATH" --strip-components 1
icingacli module enable gipfl
```
Developer Documentation
-----------------------
### Add a new dependency
composer require author/library:version
### Create a new release
./bin/make-release.sh <version>
e.g.
./bin/make-release.sh 0.1.0

41
bin/make-release.sh Executable file
View File

@ -0,0 +1,41 @@
#!/bin/bash
VERSION="$1"
if [ -z $VERSION ]; then
echo "USAGE: $0 <version>"
echo " e.g.: $0 0.1.0"
exit 1
fi
TAG=$(git tag | grep -c "$VERSION")
if [ "$TAG" -ne "0" ]; then
echo -n "Version $VERSION has already been tagged: "
git tag | grep "$VERSION"
exit 1
fi
BRANCH="stable/$VERSION"
git checkout -b "$BRANCH"
git rm -rf vendor
rm -rf vendor
rm composer.lock
composer install
find vendor/ -type f -name "*.php" \
| grep -v '/examples/' \
| grep -v '/example/' \
| grep -v '/tests/' \
| grep -v '/test/' \
| xargs -l git add -f
find vendor/ -type f -name LICENSE | xargs -l git add -f
git commit -m "Version v$VERSION"
rm -f composer.lock
rm -rf vendor
git checkout vendor
git tag -a v$VERSION -m "Version v$VERSION"
echo "Finished, tagged v$VERSION"
echo "Now please run:"
echo "git push origin "$BRANCH":"$BRANCH" && git push --tags"

51
composer.json Normal file
View File

@ -0,0 +1,51 @@
{
"name": "icinga/reactbundle",
"type": "library",
"description": "Icinga Web 2 - ReactPHP-based 3rd party libraries",
"homepage": "https://github.com/Icinga/icingaweb2-module-reactbundle",
"license": "MIT",
"authors": [{
"name": "Thomas Gelf",
"email": "thomas@gelf.net"
}],
"config": {
"sort-packages": true
},
"repositories": [{
"type": "vcs",
"url": "https://github.com/gipfl/calendar",
"no-api":true
}, {
"type": "vcs",
"url": "https://github.com/gipfl/protocol",
"no-api":true
}, {
"type": "vcs",
"url": "https://github.com/gipfl/protocol-jsonrpc",
"no-api":true
}, {
"type": "vcs",
"url": "https://github.com/gipfl/protocol-netstring",
"no-api":true
}, {
"type": "vcs",
"url": "https://github.com/gipfl/systemd",
"no-api":true
}, {
"type": "vcs",
"url": "https://github.com/gipfl/translation",
"no-api":true
}],
"require": {
"php": ">=5.4.0",
"ext-ctype": "*",
"gipfl/calendar": "dev-master",
"gipfl/protocol": "dev-master",
"gipfl/protocol-jsonrpc": "dev-master",
"gipfl/protocol-netstring": "dev-master",
"gipfl/systemd": "dev-master",
"gipfl/translation": "dev-master"
},
"require-dev": {
}
}

5
module.info Normal file
View File

@ -0,0 +1,5 @@
Name: Incubator
Version: v0.1.0
Description: Incubator provides bleeding-edge libraries
This repository ships libraries useful for Icinga Web 2 modules. Please download
the latest release and install it like any other module.

3
run.php Normal file
View File

@ -0,0 +1,3 @@
<?php
require_once __DIR__ . '/vendor/autoload.php';

20
vendor/autoload.php vendored Normal file
View File

@ -0,0 +1,20 @@
<?php
namespace Icinga\Module\Incubator {
use Icinga\Application\Hook\ApplicationStateHook;
class ApplicationState extends ApplicationStateHook
{
public function collectMessages()
{
$this->addError(
'incubator.master',
time(),
'Please install a Release version of the Incubator module, not the GIT master'
);
}
}
$this->provideHook('ApplicationState', '\\Icinga\\Module\\Incubator\\ApplicationState');
}