Compare commits

...

25 Commits

Author SHA1 Message Date
Johannes Meyer
1e682710d9
Add deprecation notice 2021-07-13 08:22:26 +02:00
Johannes Meyer
649bdeaa76 README.md: Update version refs to v0.9.0 2021-02-16 15:56:25 +01:00
Johannes Meyer
62967011dc Require guzzlehttp/guzzle and guzzlehttp/psr7 2021-02-16 15:56:25 +01:00
Thomas Gelf
825f9e95c7 README: update version
fixes #8
2020-09-22 05:36:56 +02:00
Thomas Gelf
9ab4b2efed composer: upgrade to stable react/http and others
fixes #10
2020-09-22 05:31:12 +02:00
Thomas Gelf
342a1d15fc composer: raise versions 2019-09-13 17:53:02 +02:00
Thomas Gelf
b0c9f6d2b7 composer: require stdio 2019-09-12 22:50:38 +02:00
Thomas Gelf
61986dd131 make-release: fix module version string 2019-09-12 22:48:59 +02:00
Thomas Gelf
c699cdf689 LICENSE: add missing file 2019-05-20 12:47:43 +02:00
Thomas Gelf
71d4bfe08e make-release: keep json files, otherwise...
...composer will not understand what's currently installed
2019-05-16 17:54:07 +02:00
Thomas Gelf
a41978b574 .gitignore: allow composer.lock 2019-05-16 17:46:06 +02:00
Thomas Gelf
40391095e3 README, others: prepare release 2019-05-16 17:35:34 +02:00
Thomas Gelf
f44e3d2bdb make-release: fix sed 2019-03-26 07:30:27 +01:00
Thomas Gelf
285c0b8d30 README: fix path 2019-03-26 06:32:44 +01:00
Thomas Gelf
200f89a2a3 composer: add ramsey/uuid 2019-03-26 05:09:37 +01:00
Thomas Gelf
3080cb4156 README: syntax, cleanup, fix path, prepare v0.5.0
fixes #3
2019-03-26 01:31:30 +01:00
Thomas Gelf
b8e9f8962b composer: raise dependencies 2019-03-26 01:29:40 +01:00
Thomas Gelf
253dbc5ccf composer: enforce PHP 5.6
fixes #6
2019-03-25 16:10:27 +01:00
Thomas Gelf
2901edded9 composer: remove chrisboulton/php-resque
fixes #4
2019-03-25 16:09:04 +01:00
Thomas Gelf
92955dd02b
Merge pull request #2 from Icinga/feature/auto-release-version
make-release: Update module.info and support Macs
2019-03-25 12:59:55 +01:00
Eric Lippmann
254eb41ba6 Support make-release on Macs 2019-01-24 09:35:44 +01:00
Eric Lippmann
4e510e5ea7 Set version in module.info 2019-01-24 09:35:44 +01:00
Eric Lippmann
e05c561b26 Change version to dev-master 2019-01-24 09:35:44 +01:00
Thomas Gelf
03e2042034 README: fix git instructions, show 'master' info 2018-11-21 22:04:13 +01:00
Thomas Gelf
4053b8454c Cleanup docs, prepare v0.4.1 2018-11-09 21:33:43 +01:00
6 changed files with 106 additions and 42 deletions

5
.gitignore vendored
View File

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

21
LICENSE Normal file
View File

@ -0,0 +1,21 @@
The MIT License
Copyright (c) 2018 Icinga GmbH https://www.icinga.com
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -1,3 +1,10 @@
# DEPRECATED
The currently maintained version of this project can be found [here](https://github.com/Icinga/icinga-php-thirdparty).
💡 Some modules (e.g. the Director) still depend on this module. This module is still available for usage, so if you're on Icinga Web 2 v2.8.2 or lower please install v0.9.0.
💡 However, if you're on Icinga Web 2 v2.9.0 or higher, this module is **not** required anymore. Unless you're running the Director in version 1.8.0 or lower, v1.8.1 also doesn't require this module.
Icinga Web 2 - ReactPHP-based 3rd party libraries
=================================================
@ -5,27 +12,47 @@ This repository is an attempt to ship 3rd party libraries that might be useful
for asynchronous PHP-based 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! Checking out a
> branch like `stable/0.9.0` or a tag like `v0.9.0` is fine.
Sample Tarball installation
---------------------------
```sh
RELEASES="https://github.com/Icinga/icingaweb2-module-reactbundle/archive" \
&& MODULES_PATH="/usr/share/icingaweb2/modules" \
&& MODULE_VERSION=0.3.1 \
&& mkdir "$MODULES_PATH" \
&& wget -q $RELEASES/v${MODULE_VERSION}.tar.gz -O - \
| tar xfz - -C "$MODULES_PATH" --strip-components 1
icingacli module enable reactbundle
MODULE_NAME=reactbundle
MODULE_VERSION=v0.9.0
MODULES_PATH="/usr/share/icingaweb2/modules"
MODULE_PATH="${MODULES_PATH}/${MODULE_NAME}"
RELEASES="https://github.com/Icinga/icingaweb2-module-${MODULE_NAME}/archive"
mkdir "$MODULE_PATH" \
&& wget -q $RELEASES/${MODULE_VERSION}.tar.gz -O - \
| tar xfz - -C "$MODULE_PATH" --strip-components 1
icingacli module enable "${MODULE_NAME}"
```
Sample GIT installation
-----------------------
Add a new dependency
--------------------
```sh
MODULE_NAME=reactbundle
MODULE_VERSION=v0.9.0
REPO="https://github.com/Icinga/icingaweb2-module-${MODULE_NAME}"
MODULES_PATH="/usr/share/icingaweb2/modules"
git clone ${REPO} "${MODULES_PATH}/${MODULE_NAME}" --branch "${MODULE_VERSION}"
icingacli module enable "${MODULE_NAME}"
```
Developer Documentation
-----------------------
### Add a new dependency
composer require author/library:version
Create a new release
--------------------
### Create a new release
./bin/make-release.sh <version>
e.g.
./bin/make-release.sh 0.3.1
./bin/make-release.sh 0.9.0

View File

@ -2,15 +2,21 @@
VERSION="$1"
if [ -z $VERSION ]; then
if [[ -z $VERSION ]]; then
echo "USAGE: $0 <version>"
echo " e.g.: $0 0.1.0"
exit 1
fi
function fail {
local msg="$1"
echo "ERROR: $msg"
exit 1
}
TAG=$(git tag | grep -c "$VERSION")
if [ "$TAG" -ne "0" ]; then
if [[ "$TAG" -ne "0" ]]; then
echo -n "Version $VERSION has already been tagged: "
git tag | grep "$VERSION"
exit 1
@ -20,20 +26,24 @@ BRANCH="stable/$VERSION"
git checkout -b "$BRANCH"
git rm -rf vendor
rm -rf vendor
rm composer.lock
composer install
rm -f composer.lock
composer install || fail "composer install failed"
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
| xargs -L1 git add -f
find vendor/ -type f -name LICENSE | xargs -L1 git add -f
find vendor/ -type f -name '*.json' | xargs -L1 git add -f
sed -i.bak "s/^Version:.*/Version: $VERSION/" module.info && rm -f module.info.bak
git add module.info
git add composer.lock -f
git commit -m "Version v$VERSION"
rm -f composer.lock
rm -rf vendor
git checkout vendor
composer validate --no-check-all --strict || fail "Composer validate failed"
git tag -a v$VERSION -m "Version v$VERSION"
echo "Finished, tagged v$VERSION"

View File

@ -5,37 +5,44 @@
"homepage": "https://github.com/Icinga/icingaweb2-module-reactbundle",
"license": "MIT",
"config": {
"sort-packages": true
"sort-packages": true,
"platform": {
"php": "5.6.3"
}
},
"support": {
"issues": "https://github.com/Icinga/icingaweb2-module-reactbundle/issues"
},
"require": {
"php": ">=5.4.0",
"php": ">=5.6.3",
"ext-curl": "*",
"chrisboulton/php-resque": "^1.2",
"clue/block-react": "^1.2",
"clue/buzz-react": "^2.3",
"clue/block-react": "^1",
"clue/buzz-react": "~2.7.0",
"clue/connection-manager-extra": "^1.1",
"clue/http-proxy-react": "^1.2",
"clue/mq-react": "^1.0",
"clue/redis-react": "^2",
"clue/soap-react": "^0.2.0",
"clue/socket-raw": "~1.2",
"clue/socks-react": "^0.8",
"clue/http-proxy-react": "^1",
"clue/mq-react": "^1.1",
"clue/redis-react": "^2.3",
"clue/soap-react": "^1.0",
"clue/socket-raw": "^1.4",
"clue/socks-react": "^1",
"clue/stdio-react": "^2.3",
"evenement/evenement": "^2",
"predis/predis": "^1.1",
"psr/http-message": "^1",
"react/child-process": "^0.5",
"react/datagram": "^1.4",
"react/dns": "^0.4",
"react/event-loop": "^1.0",
"react/http": "^0.8",
"ramsey/uuid": "^3.8",
"react/child-process": "^0.6",
"react/datagram": "^1.5",
"react/dns": "^1",
"react/event-loop": "^1.1",
"react/http": "^1",
"react/http-client": "^0.5",
"react/promise": "^2.7",
"react/promise": "^2",
"react/promise-stream": "^1",
"react/promise-timer": "^1.5",
"react/socket": "^1.0",
"react/stream": "^1.0"
"react/socket": "^1",
"react/stream": "^1.1",
"guzzlehttp/psr7": "^1.7",
"guzzlehttp/guzzle": "^6.5.5"
},
"require-dev": {
}

View File

@ -1,5 +1,5 @@
Name: React Bundle
Version: v0.3.1
Version: dev-master
Description: ReactPHP-based 3rd party libraries
This repository is an attempt to ship 3rd party libraries that might be useful
for asynchronous PHP-based Icinga Web 2 modules. Please download the latest