Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/peterfox/roadrunner-plugin-demo


https://github.com/peterfox/roadrunner-plugin-demo

Last synced: 5 days ago
JSON representation

Awesome Lists containing this project

README

        

# RoadRunner Plugin Template






Total alerts
All releases

## Installation

To use this plugin with RoadRunner you will need to fork or clone your
own copy of the [RoadRunner binary](https://github.com/spiral/roadrunner-binary).

You can import the plugin via go modules:

```sh
go get github.com/peterfox/roadrunner-plugin-demo
```

From there you can edit the [plugins.go](https://github.com/spiral/roadrunner-binary/blob/stable/internal/container/plugins.go) file to
import the plugin.

```go
package container

import (
// ...
demoPlugin "github.com/peterfox/roadrunner-plugin-demo"
// ...
)

// Plugins returns active plugins for the endure container. Feel free to add or remove any plugins.
func Plugins() []interface{} {
return []interface{}{
// ...
&demoPlugin.Plugin{},
// ...
}
}

```

By importing this plugin and registering it the plugin will be compiled into the final binary.

The plugin will require that the _.rr.yaml_ config has the key `plugin` for the plugin won't initialise with roadrunner.

```yaml
plugin:
value: foobar
```

## Usage

To make use of this plugin via PHP you must install the [Spiral Goridge](https://github.com/spiral/goridge-php) library.

You can use the following code as an example in php:

```php
getRPCAddress());

// returns ['message' => 'test']
$output = $rpc->call('plugin.Message', ['message' => 'test']);
```

## Testing

You may download the project and test the plugin using the following command.

```bash
go test
```

## Changelog

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

## Contributing

Please see [CONTRIBUTING](.github/CONTRIBUTING.md) for details.

## Security Vulnerabilities

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

## Credits

- [Peter Fox](https://github.com/peterfox)
- [All Contributors](../../contributors)

## License

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.