Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/digital-blueprint/relay-sublibrary-connector-campusonline-bundle
https://github.com/digital-blueprint/relay-sublibrary-connector-campusonline-bundle
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/digital-blueprint/relay-sublibrary-connector-campusonline-bundle
- Owner: digital-blueprint
- License: agpl-3.0
- Created: 2023-05-15T13:26:07.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-21T09:56:14.000Z (2 months ago)
- Last Synced: 2024-10-21T14:19:32.493Z (2 months ago)
- Language: PHP
- Homepage: https://packagist.org/packages/dbp/relay-sublibrary-connector-campusonline-bundle
- Size: 741 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# DbpRelaySublibraryConnectorCampusonlineBundle
[GitHub](https://github.com/digital-blueprint/relay-sublibrary-connector-campusonline-bundle)
This Symfony bundle can be used as a template for creating new bundles for the
DBP Relay project.When including this bundle into your API server it will gain the following
features:* A custom `./bin/console` command
* An example entity
* Various HTTP methods implemented for that entity## TL;DR
The quickest way to make use of this template bundle is to feed your desired names
to one command and generate a ready-to-use bundle with the correct naming.See [Generate DBP Symfony bundle](https://dbp-demo.tugraz.at/dev-guide/relay/naming/#generate-dbp-symfony-bundle) for more information.
## Using the Bundle as a Template
* Copy the repo contents
* Adjust the package name in `composer.json`, in this example we'll pretend you named your bundle `dbp/relay-your-bundle`
* Invent a new PHP namespace and adjust it in all PHP files
* Rename `src/DbpRelaySublibraryConnectorCampusonlineBundle` and `DependencyInjection/DbpRelaySublibraryConnectorCampusonlineExtension` to match the new project name## Integration into the API Server
* Push your bundle on a git server, in this example we'll use `[email protected]:dbp/relay/dbp-relay-your-bundle.git`
* Add the repository to your composer.json (as soon as you published your bundle to [Packagist](https://packagist.org/)
you can remove that block again):```json
"repositories": [
{
"type": "vcs",
"url": "[email protected]:dbp/relay/dbp-relay-your-bundle.git"
}
],
```* Add the bundle package as a dependency:
```bash
composer require dbp/relay-your-bundle=dev-main
```* Add the bundle to your `config/bundles.php`:
```php
...
Dbp\Relay\YourBundle\DbpRelayYourBundle::class => ['all' => true],
DBP\API\CoreBundle\DbpCoreBundle::class => ['all' => true],
];
```* Run `composer install` to clear caches
## Configuration
The bundle has a `example_config` configuration value that you can specify in your
app, either by hard-coding it, or by referencing an environment variable.For this create `config/packages/dbp_relay_sublibrary_connector_campusonline.yaml` in the app with the following
content:```yaml
dbp_relay_sublibrary_connector_campusonline:
example_config: 42
# example_config: '%env(EXAMPLE_CONFIG)%'
```The value gets read in `DbpRelaySublibraryConnectorCampusonlineExtension` (your extension will be named differently)
and passed when creating the `MyCustomService` service.For more info on bundle configuration see [Symfony bundles configuration](https://symfony.com/doc/current/bundles/configuration.html).
## Development & Testing
* Install dependencies: `composer install`
* Run tests: `composer test`
* Run linters: `composer run lint`
* Run cs-fixer: `composer run cs-fix`## Bundle dependencies
Don't forget you need to pull down your dependencies in your main application if you are installing packages in a bundle.
```bash
# updates and installs dependencies from dbp/relay-your-bundle
composer update dbp/relay-your-bundle
```