Skip to content

Geonovum/technisch-register-2019

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Geonovum technisch register 2019

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.

User documentation

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.

Types of pages

  1. main index, URL pattern / Generated by index.php.
  2. 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: in repos.json, the cluster is an empty string then. Generated by index.php.
  3. index for a standard, URL pattern /{clusterId} or /{clusterId}/{repoId} lists directly the types of artefacts available for the standard identified by the repoId. Generated by index.php.
  4. directory listing of an artefacttype , URL pattern /{descriptionId}. Lists all standards that have artefacts in the register of the artefacttype identified by descriptionId. 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.
  5. directory listing of artefacts for a standard, URL pattern /{descriptionId}/{repoId}. Contains subdirectories with version numbers of artefacts (identified by descriptionId) available for the standard identified by the repoId. 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).

Installation

Requirements

  • 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

Steps

  1. create a directory for the register (baseDir) on the filesystem, which is writable by php
  2. the ${baseDir}/production is the DocumentRoot for Apache. Configure Apache to serve files from this directory, including indexes for the files
  3. copy all files from the src directory of this repository to the baseDir
  4. configure autodeploy/githubConfig.php and registerConfig.php
  5. configure Apache to use the rewrite rules from conf/apache2/rewrite-rules.txt
  6. reload Apache config or start Apache

(Note: we deliberately did not include the entire Apache configuration files on Github, contact us for any questions)

Tips

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}