PHP files to automatically sync geographical information standards managed on GitHub to https://register.geostandaarden.nl
This is a replacement of https://github.com/Geonovum/technisch-register.
The Guide for information model owners and maintainers [NL] explains how to add information models to GitHub and offer them for tracking to https://register.geostandaarden.nl
The Guide for registry maintainers [NL] explains how to setup tracking of new information models by the register.
The guides above are copied from https://github.com/Geonovum/technisch-register/documentatie.
- main index, URL pattern
/
Generated byindex.php
. - cluster page, URL pattern
/{clusterId}
. A collection for a standard or cluster (group) of standards with artefacts in the register. If there is only one repository for a cluster, this page is an index for a standard. If multiple repositories are available (the second case) the page lists the standards available in that cluster. NB: inrepos.json
, the cluster is an empty string then. Generated byindex.php
. - index for a standard, URL pattern
/{clusterId}
or/{clusterId}/{repoId}
lists directly the types of artefacts available for the standard identified by therepoId
. Generated byindex.php
. - directory listing of an artefacttype , URL pattern
/{descriptionId}
. Lists all standards that have artefacts in the register of the artefacttype identified bydescriptionId
. Example:/xmlschema
. Basic directory listing generated by Apache webserver. Corresponds to a physical subdirectory in the register's base directory (on the filesystem) with the same name. - directory listing of artefacts for a standard, URL pattern
/{descriptionId}/{repoId}
. Contains subdirectories with version numbers of artefacts (identified bydescriptionId
) available for the standard identified by therepoId
. Example/xmlschema/imgeo/
Is in fact a copy of the Github repo directory for that artefacttype of the standard. Basic directory listing generated by Apache webserver. Corresponds to a physical subdirectory in the register's base directory (on the filesystem) with the same name.
Note these types of pages and the structure originate from the previous implementation of the technisch register (see https://github.com/Geonovum/technisch-register).
- PHP (version 7.2 used currently)
- Apach2 webserver, module required:
- mod_rewrite
- writable directory to publish files with the webhook script
autodeploy/releasecreated.php
- JSON config files (like
src/autodeploy/config/*.json
) online available
- create a directory for the register (baseDir) on the filesystem, which is writable by php
- the
${baseDir}/production
is the DocumentRoot for Apache. Configure Apache to serve files from this directory, including indexes for the files - copy all files from the
src
directory of this repository to the baseDir - configure autodeploy/githubConfig.php and registerConfig.php
- configure Apache to use the rewrite rules from
conf/apache2/rewrite-rules.txt
- reload Apache config or start Apache
(Note: we deliberately did not include the entire Apache configuration files on Github, contact us for any questions)
If users update files via FTP, make sure these users are part of the appropriate group with write access (e.g. by adding the user to the www-data group, like sudo usermod -aG {group} {user}