From 2a0ad03acf1ef8f2dac76806ed6a487985c06720 Mon Sep 17 00:00:00 2001 From: Jon Date: Mon, 14 Aug 2023 16:49:50 +0930 Subject: [PATCH] feat(docs): publish to website !1 --- .gitmodules | 4 ++ README.md | 1 + docs/articles/index.md | 0 docs/contact.md | 0 docs/index.md | 0 docs/operations/index.md | 0 docs/projects/index.md | 0 docs/projects/ldap_self_service/index.md | 71 +++++++++++++++++++ docs/tags.md | 0 docs/task-doc-template.md | 87 ++++++++++++++++++++++++ mkdocs.yml | 27 ++++++++ website-template | 1 + 12 files changed, 191 insertions(+) create mode 100644 docs/articles/index.md create mode 100644 docs/contact.md create mode 100644 docs/index.md create mode 100644 docs/operations/index.md create mode 100644 docs/projects/index.md create mode 100644 docs/projects/ldap_self_service/index.md create mode 100644 docs/tags.md create mode 100644 docs/task-doc-template.md create mode 100644 mkdocs.yml create mode 160000 website-template diff --git a/.gitmodules b/.gitmodules index cc4d8a5..de6bfdd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,3 +2,7 @@ path = gitlab-ci url = https://gitlab.com/nofusscomputing/projects/gitlab-ci.git branch = development +[submodule "website-template"] + path = website-template + url = https://gitlab.com/nofusscomputing/infrastructure/website-template.git + branch = development diff --git a/README.md b/README.md index 8916010..3e12870 100644 --- a/README.md +++ b/README.md @@ -41,6 +41,7 @@ links: - [Merge Requests (Pull Requests)](https://gitlab.com/nofusscomputing/projects/nodered_ldap_self_service/-/merge_requests) +- [Documentation](https://nofusscomputing.com/projects/ldap_self_service/) ## Contributing diff --git a/docs/articles/index.md b/docs/articles/index.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/contact.md b/docs/contact.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/operations/index.md b/docs/operations/index.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/projects/index.md b/docs/projects/index.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/projects/ldap_self_service/index.md b/docs/projects/ldap_self_service/index.md new file mode 100644 index 0000000..ca75782 --- /dev/null +++ b/docs/projects/ldap_self_service/index.md @@ -0,0 +1,71 @@ +--- +title: LDAP Self Service +description: How to use No Fuss Computings NodeRED LDAP Self Service Full-Stack Application. +date: 2023-08-14 +template: project.html +about: https://gitlab.com/nofusscomputing/projects/nodered_ldap_self_service +--- + +This project is a NodeRED Full-Stack application for LDAP Self-Service. You can deploy this project by cloning the repo and adding to your NodeRED instance, or you can pull [our docker image](https://hub.docker.com/r/nofusscomputing/ldap-selfservice) that is already setup for immediate spin-up. The latter only requires that you add your credential encryption key and the credentials for LDAP, GLPI and your OAuth2 provider. + + +## Features + +Currently this project is a work-in-progress. Whilst it can be used, some features are still in the planning stage. + +Self Service Features: + +- Edit personal details _(planned)_ + +- Edit Self-Service password reset questions _(planned)_ + +- Change password + +- Reset password + +General Features: + +- Oauth2 Authentication + +- Token Authentication + +- GLPI form to ticket flow + +- Cron Jobs: + + - Remove expired sessions + + +## Usage + +There are two ways to use this NodeRed flow: + +1. Clone to the data directory of your NodeRED insance + +1. Use our pre-built docker image + + +### Docker Image + +!!! info + The docker image is available via `docker pull nofusscomputing/ldap-selfservice` available tags are detailed below + + +Available tags for the docker image is as follows: + +- `dev` The current working head of the repositories `development` branch. + +- `{\d}.{\d}.{\d}rc{\d}` The tag on the repositories `development` branch. + +- `{\d}.{\d}.{\d}` The tag on the repositories `master` branch. _considered stable_ + +- `latest` The current working head of the repositories `master` branch. _considered stable_ + + +[This docker image](https://hub.docker.com/r/nofusscomputing/ldap-selfservice) is designed to be behind a reverse-proxy. The proxy will be the service that provides ingress logging and `HTTPS` termination. NodeRED serves the the Self-Service site on `HTTP/80` at the `/` path with `/admin` path available for administering the flows. If when starting the docker container you specify an environmental variable of `NODE_RED_CREDENTIAL_SECRET` it will be used by NodeRED to decrypt your `flows_cred.json` file. + +Data for the container is stored in two volumes `/data` and `/usr/src/node-red`. The repo does contain a `flows_cred.json` file, however this is our credential file. It's recommended that you log into the flows admin and set the credentials to your desired values. Export it and as part of the deployment process, mount a read-only copy of your `flows_cred.json` file to path `/data/flows_cred.json` within the container. + +!!! danger "Security" + Path `/admin` should not be made publically available, as access to this path grants full access to the backend as well as access to passwords and secrets from your `flows_cred.json` file. + diff --git a/docs/tags.md b/docs/tags.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/task-doc-template.md b/docs/task-doc-template.md new file mode 100644 index 0000000..ade9fcd --- /dev/null +++ b/docs/task-doc-template.md @@ -0,0 +1,87 @@ + + +short summary of the task file + +## {Task Name} + +- **Name**: + +- **Description**: + +- **Module**: + +- **Arguments**: + + - + +- **Conditional**: + +- **Tags**: + + - + +## {Task Name} + +- **Name**: + +- **Description**: + +- **Module**: + +- **Arguments**: + + - + +- **Registers**: + +- **Conditional**: + +- **Tags**: + + - + + +## Variables + +The following variables can be customized in this task file: + +```yaml +variable_name: "default_value" +``` + +- `variable_name`: Description of the variable. + +## Tags + +The tasks in this task file are tagged with the following tags: + +- + +## Usage + +To use this Ansible task file, you can include it in your playbook or role and provide values for the required variables. Here's an example of how you can use this task file: + +1. Create a playbook (e.g., `your_playbook.yaml`) and define the necessary variables: + +```yaml +--- + +- hosts: your_hosts + vars: + variable_name: "value" + + tasks: + - include_tasks: path/to/task_file.yaml +``` + +2. Create a separate file for the task file (e.g., `task_file.yaml`) and copy the content of the task file into it. + +3. Run the playbook: + +```shell +ansible-playbook your_playbook.yaml +``` + +Make sure to replace the placeholder values (`variable_name`, `value`) with the appropriate values for your setup. + +Note: You may need to adjust the playbook structure and additional tasks based on your specific requirements and the tasks you want to execute. \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 0000000..0644a98 --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,27 @@ +INHERIT: website-template/mkdocs.yml + +docs_dir: 'docs' + +repo_name: LDAP Self Service +repo_url: https://gitlab.com/nofusscomputing/projects/nodered_ldap_self_service +edit_uri: '/-/ide/project/nofusscomputing/projects/nodered_ldap_self_service/edit/development/-/docs/' + +nav: +- Home: index.md + +- Articles: + + - articles/index.md + +- Projects: + + - projects/index.md + + - projects/ldap_self_service/index.md + +- Operations: + + - operations/index.md + +- Contact Us: contact.md + diff --git a/website-template b/website-template new file mode 160000 index 0000000..992b548 --- /dev/null +++ b/website-template @@ -0,0 +1 @@ +Subproject commit 992b54805b8b6c78a3d2a5ea7de71c7be2b070c8