Skip to content

Commit

Permalink
docsify poc
Browse files Browse the repository at this point in the history
  • Loading branch information
KHeith Hazelton authored and KHeith Hazelton committed Sep 6, 2023
2 parents 5c81604 + 8470a09 commit ded7992
Show file tree
Hide file tree
Showing 48 changed files with 2,307 additions and 138 deletions.
35 changes: 35 additions & 0 deletions Documentation-as-DevOps.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
=== DevOps Approach to Documentation

==== Proposal

. Review Evolveum Documentation: https://docs.evolveum.com/, and their writing processes: https://docs.evolveum.com/about/writing-documentation/, https://docs.evolveum.com/about/asciidoc/
. Use Hugo static site builder with Docsy module: www.docsy.dev/docs/get-started/docsy-as-module/example-site-as-template/
. Create and edit new and existing files with markdown or asciidoc, push to the site repo
. Include support forPlanntUML, C4, and output from additional diagramming tools with an extension for kroki: https://kroki.io/
. Trigger republication on commit using Github Actions

---

.Docsy and the Four Types of Documentation
[width="70%",options="header"]
|=======
| 4 types of documentation | Docsy Example Site Documentation Page
| tutorials | Tutorials
| how-to's | Core Tasks
| explanation | Concepts
| reference | Reference
|=======

---

==== Reference Materials
- Evolveum documentation site: https://docs.evolveum.com
- Hugo: https://gohugo.io/
- Docsy: https://www.docsy.dev/
- Docsy example site; https://example.docsy.dev/
- Asciidoc: https://asciidoc.org
- Markdown: https://www.markdownguide.org/
- Github Flavored Markdown: https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet
- Github Pages: https://pages.github.com (Auto Re-Publication on commit to repo)


Binary file added Screenshot 2023-02-23 at 14.55.33.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
20 changes: 20 additions & 0 deletions asciidocTemplate.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
= Document Title
Doc Writer <doc@example.com>

An example of a basic https://asciidoc.org[AsciiDoc] document.

== Introduction

A paragraph followed by an unordered list

* item 1
* item 2
* item 3

== Main

"`Hello, World!`"

== Conclusion

That's all, folks!
46 changes: 0 additions & 46 deletions async-message-resources.adoc

This file was deleted.

31 changes: 31 additions & 0 deletions async-msg-resources.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
=== async-msg-resources.adoc

# Async Message Resources

#### The Protocol
https://www.amqp.org/specification/0-9-1/amqp-org-download <- AMQP Protocol 0.9.1 +
http://docs.oasis-open.org/amqp/core/v1.0/amqp-core-complete-v1.0.pdf <- AMQP Core Complete v1.0 (pdf) +

#### Rabbit AMQP
https://rabbitmq.com/reliability.html <- +
https://rabbitmq.com/download.html <- download and install page +
https://github.com/rabbitmq/rabbitmq-server <- +
https://rabbitmq.com/documentation.html <- +
https://rabbitmq.com/configure.html <- +
https://rabbitmq.com/queues.html <- +

#### Apache QPID
https://qpid.apache.org/index.html <- +
https://github.com/amqphub/quarkus-qpid-jms-quickstart <- +

#### Intros and Tutorials

https://ably.com/topic/intro-to-amqp-0-9-1 <- AMQP 0.9.1 +
https://ably.com/topic/intro-to-amqp-1-0 <- AMQP 1.0 +
https://jstobigdata.com/rabbitmq/complete-rabbitmq-tutorial-in-java/ <- +
https://spring.io/projects/spring-amqp <- +

#### Challenges: Ordering of Event
https://medium.com/baseds/ordering-distributed-events-29c1dd9d1eff <- +
https://medium.com/baseds/logical-time-and-lamport-clocks-part-1-d0317e407112 <- +
https://medium.com/baseds/logical-time-and-lamport-clocks-part-2-272c097dcdda <- +
231 changes: 231 additions & 0 deletions connector-howto.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,231 @@
=== connector-howto.adoc

SEE workbench.adoc +
permalink: https://github.internet2.edu/internet2/iam-knowledge-bits/blob/main/connector-howto.adoc +
next] LDAP/AD provisioning with midPoint

- - -
_2023-03-22 19:12:40 Connector Howto_

*- Reset Workbench to pristine state -*

```
ssh csprootuser@khazelton.workbench.incommon.org
cd /csp-tap/InCommonTAP-Examples/Workbench

docker-compose down -v
docker-compose up -d
```

==== Add the Artists' Collective, a new CSV resource, to the Workbench

*- First, Where is the MIDPOINT_HOME directory? -*

` In the Workbench host for the containers, MIDPOINT_HOME is: +
` /csp-tap/InCommonTAP-Examples/Workbench/midpoint_server/container_files/mp-home

` Everything in MIDPOINT_HOME is mapped to +
` /opt/midpoint/var +
` inside the running container


*- Artists Collective demo -*

` User schema extension .xsd files go into MIDPOINT_HOME/schema +
` .csv data file for the Artist Collective resource also goes into MIDPOINT_HOME +

```
cd $MIDPOINT_HOME
ls -la schema
ls -la usertype_export.csv
```

*- Complete the Artists' Collective resource definition, 100-mnt0.xml -*

` Edit resource definition file on local computer: +
` ~/opt/kh-wb/objects/resources/100-mnt0.xml

` fill in the essential parameter definitions section by section:

` Connector section +
` Schema section +
` Schema Handling section +
` Capabilities section +
` Synchronization section +

*- The Artist Collective resource config goes into MIDPOINT_HOME/post-initial-objects/resources on the Workbench host -*

` Use MidPoint Studio to connect to the workbench host and upload the above files to their proper locations +

*- Once the files are in place, Open the Workbench UI and select Midpoint -*

` go to Resources / Import Resource Definition, Browse to 100-mnt0.xml on local host +
` click Import +

` Back to 'All Resources / TMNT System', select Accounts, scroll down and press the Import button +
` Open 'Accounts' on the new resource, Scroll down to the list of users and select one for viewing

*- Now browse to the Users tab, scroll to 2nd page and note that Cesare Borgia from the Artists' Collective is now recognized as a User in midPoint

*- This process can be used as a template for adding any other csv-based resource -*

*- TBD: native install -*

` replicate artist/hr resource on MBProMax: ~/opt/midpoint-4.6 +
` ~/Users/khazelton/opt/midpoint-4.6 <- MIDPOINT_HOME +
` MIDPOINT_HOME/bin <- All the start/stop/etc scripts

```
cd $MIDPOINT_HOME
./bin/start.sh <- To Start midPoint
```
- - -

next: replicate artist/hr resource on MBProMax:midpoint-4.6

- - -
_2023-03-22 14:36:48 csv connector, resource configuration_

/csp-tap/InCommonTAP-Examples/Workbench/midpoint_server/container_files/mp-home
/csp-tap/InCommonTAP-Examples/Workbench/midpoint_server/container_files/mp-home/post-initial-objects/
resources/100-mnt.xml

if you make changes in the midpoint files on the host running docker, you must bring the running containers down with the option that clears out the existing mapped files in the container:

```
docker-compose down -v
...
docker-compose up -d
```
*- working tmnt resource def -* +
~/opt/kh.wb/objects/resources/SourceTMNTSystem.xml

- - -
_2023-03-21 17:42:32 csv connector, resource configuration_

*- Host for containerize workbench -*

```
Workbench/midpoint_server/container_files/mp-home

COPY ../Workbench/midpoint_server/container_files/mp-home/ /opt/midpoint/var/
| |
base in container host base inside connector
```

*- in the container -*

```
├── container_files
│ ├── csv
│ │ ├── source-hr.csv
│ │ └── UserType_export.csv // <-
│ ├── httpd
│ │ ├── 00-shib.conf
│ │ ├── host-cert.pem
│ │ ├── host-key.pem
│ │ ├── midpoint-shib.conf
│ │ └── vhosts.conf
│ ├── mp-home
│ │ ├── config.xml
│ │ ├── cs-portal.csv
│ │ ├── faculty-portal.csv
│ │ ├── icf-connectors
│ │ │ ├── connector-grouper-rest-0.7.jar
│ │ │ ├── connector-rest-wordpress-.23-SNAPSHOT.jar
│ │ │ ├── connector-sympa-1.0.2-connector.jar
│ │ │ └── net.tirasa.connid.bundles.db.scriptedsql-2.2.-SNAPSHOT.jar
│ │ ├── lib
│ │ │ ├── mariadb-java-client-3.0.jar
│ │ │ └── mysql-connector-java-8.0.30.jar
│ │ ├── mailing-lists.csv
│ │ ├── post-initial-objects
│ │ │ ├── archetypes
│ │ │ │ ├── 300-archetype-affiliation.xml
│ │ │ │ ├── 300-archetype-course.xml
│ │ │ │ ├── 300-archetype-department.xml
│ │ │ │ ├── 300-archetype-external-person.xml
│ │ │ │ ├── 300-archetype-generic-grouper-group.xml
│ │ │ │ ├── 300-archetype-mailing-list.xml
│ │ │ │ ├── 300-archetype-midpoint-group.xml
│ │ │ │ ├── 300-archetype-sis-person.xml
│ │ │ │ ├── 400-archetype-guest-person.xml
│ │ │ │ └── 500-archetype-hr-person.xml
│ │ │ ├── bulkActions
│ │ │ │ ├── 900-test-all-resources.xml
│ │ │ │ └── 910-recompute-grouper-objects.xml
│ │ │ ├── functionLibraries
│ │ │ │ └── 100-function-library-grouper.xml
│ │ │ ├── objectTemplates
│ │ │ │ └── 100-template-user.xml
│ │ │ ├── ordering.txt
│ │ │ ├── orgs
│ │ │ │ ├── 100-org-affiliations.xml
│ │ │ │ ├── 100-org-courses.xml
│ │ │ │ ├── 100-org-departments.xml
│ │ │ │ ├── 100-org-generic-groups.xml
│ │ │ │ ├── 100-org-mailing-lists.xml
│ │ │ │ ├── 100-org-midpoint-groups.xml
│ │ │ │ ├── 400-org-grouper-sysadmin.xml
│ │ │ │ ├── 500-org-hr-sor.xml
│ │ │ │ └── 600-org-guest-sor.xml
│ │ │ ├── resources // <-
│ │ │ │ ├── 100-connector-rest-wordpress.xml
│ │ │ │ ├── 100-grouper.xml
│ │ │ │ ├── 100-guest-db.xml
│ │ │ │ ├── 100-ldap-main.xml
│ │ │ │ ├── 100-source-hr-sor.xml
│ │ │ │ ├── 100-source-sis-persons.xml
│ │ │ │ ├── 100-target-cs-portal.xml
│ │ │ │ ├── 100-target-faculty-portal.xml
│ │ │ │ └── 100-target-mailing-lists.xml
│ │ │ ├── roles
│ │ │ │ ├── 200-metarole-grouper-provided-group.xml
│ │ │ │ ├── 200-metarole-ldap-group.xml
│ │ │ │ ├── 200-metarole-role-wordpress-admin.xml
│ │ │ │ ├── 200-metarole-role-wordpress-editor.xml
│ │ │ │ ├── 200-role-ldap-basic.xml
│ │ │ │ ├── 300-direct-wordpress-role-admin.xml
│ │ │ │ └── 300-direct-wordpress-role-editor.xml
│ │ │ ├── securityPolicy
│ │ │ │ └── 000-security-policy.xml
│ │ │ ├── systemConfigurations
│ │ │ │ └── 010-system-configuration.xml
│ │ │ ├── tasks
│ │ │ │ ├── 300-task-hr-import.xml
│ │ │ │ ├── 300-task-import-guests-sql.xml
│ │ │ │ ├── 300-task-import-sis-persons.xml
│ │ │ │ ├── 500-task-import-guests-sql-livesync.xml
│ │ │ │ ├── 995-task-group-scavenger.xml
│ │ │ │ ├── 997-task-async-update-grouper.xml
│ │ │ │ ├── 998-task-reconciliation-grouper-groups.xml
│ │ │ │ └── 999-task-recomputation-users.xml
│ │ │ └── users
│ │ │ └── 600-user-banderson.xml
│ │ ├── res
│ │ │ └── sis-persons
│ │ │ ├── SchemaScript.groovy
│ │ │ ├── SearchScript.groovy
│ │ │ └── TestScript.groovy
│ │ ├── schema
│ │ │ ├── fanner.xsd
│ │ │ └── internet2.xsd
│ │ ├── source-external.csv
│ │ ├── staff-portal.csv
│ │ └── UserType_export.csv
│ ├── shibboleth
│ │ ├── attribute-map.xml
│ │ ├── idp-metadata.xml
│ │ ├── shibboleth2.xml
│ │ ├── shibd.logger
│ │ ├── sp-encrypt-cert.pem
│ │ ├── sp-encrypt-key.pem
│ │ ├── sp-signing-cert.pem
│ │ └── sp-signing-key.pem
│ └── system
│ └── setservername.sh
└── Dockerfile
```

- - -

Loading

0 comments on commit ded7992

Please sign in to comment.