Skip to content
GitLab
Explore
Projects
Groups
Topics
Snippets
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
fusiondirectory
dev-manual
Commits
8ea9b644
Verified
Commit
8ea9b644
authored
2 months ago
by
dockx thibault
Browse files
Options
Download
Patches
Plain Diff
orchestrator plugin
Dev Manual - orchetrator plugin
parent
2014f881
dev
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
source/fusiondirectory-orchestrator/development/index.rst
+8
-0
source/fusiondirectory-orchestrator/development/index.rst
source/fusiondirectory-orchestrator/development/orchDevPlugin.rst
+71
-0
...usiondirectory-orchestrator/development/orchDevPlugin.rst
source/fusiondirectory-orchestrator/index.rst
+1
-0
source/fusiondirectory-orchestrator/index.rst
with
80 additions
and
0 deletions
+80
-0
source/fusiondirectory-orchestrator/development/index.rst
0 → 100644
+
8
−
0
View file @
8ea9b644
========================
Development Orchestrator
========================
.. toctree::
:maxdepth: 2
orchDevPlugin.rst
This diff is collapsed.
Click to expand it.
source/fusiondirectory-orchestrator/development/orchDevPlugin.rst
0 → 100644
+
71
−
0
View file @
8ea9b644
===================
Orchestrator plugin
===================
This guide will help you get started with development within our GitLab environment.
It covers account creation, issue creation, project forking, and submitting a Merge Request (MR).
----------------------------
1. Orchestrator contribution
----------------------------
Please follow how to create an account, fork a project, create an MR and creating issues from FusionDirectory development section.
Exact same methodology will apply for your orchestrator plugin if you want it to be contributed within the main project.
With that said, let's see how to create a plugin, a new orchestrator endpoints.
------------------
2. Class structure
------------------
**Your class must implements the interface "EndPointInterface"**
In order to interact with many defined methods, including LDAP interaction, we received a "gateway" object.
class anOrchestratorPluginClass implements EndpointInterface
{
private TaskGateway $gateway;
public function __construct (TaskGateway $gateway)
{
$this->gateway = $gateway;
}
/**
* @return array
* Part of the interface of orchestrator plugin to treat GET method
*/
public function processEndPointGet (): array
{
}
/**
* @param array|null $data
* @return array
*/
public function processEndPointPost (array $data = NULL): array
{
return [];
}
/**
* @param array|NULL $data
* @return array
*/
public function processEndPointDelete (array $data = NULL): array
{
return [];
}
/**
* @param array|NULL $data
* @return array
* @throws Exception
*/
public function processEndPointPatch (array $data = NULL): array
{
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
source/fusiondirectory-orchestrator/index.rst
+
1
−
0
View file @
8ea9b644
...
...
@@ -6,3 +6,4 @@ FusionDirectory Orchestrator
whatis/orchestrator.rst
requirements/mandatory.rst
development/index.rst
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment
Menu
Explore
Projects
Groups
Topics
Snippets