A place for reusable code, templates, and documentation required for getting a repository in Ory working.
This repository contains templates for things like the software license, security policy, contributing guidelines, code of conduct, and so on.
You can find the repository templates in templates/repository. Libraries (e.g. Dockertest) and servers (e.g. Kratos) share templates from the common directory. Additionally, servers copy files from server and libraries from the library directory.
To update the repositories simply make your changes. Once merged to master, they will be published using a GitHub Action.
The meta scripts synchronize all Ory repositories to a common template including README, CONTRIBUTING, COC, SECURITY, LICENCE and Github Workflows with close to zero manual interaction.
Depending on repository type (server, library, action) specific templates can be copied as well.
The project names, links to documentation ect. are being substituted for each project in sync.sh. For more details please refer to the documentation within the scripts.
To run the sync script locally, open a Bash terminal and copy the respective commands from sync.sh into the terminal. For example, to see the changes made by all sync jobs:
source scripts/sync.sh
workspace=$(create_workspace)
GITHUB_SHA=12345
replicate_all "$workspace" keep
Then cd $workspace
to see all repositories with the uncommitted changes made
by the sync script. To test committing, replace the last line with this one:
replicate_all "$workspace" commit
To test syncing problems with a single repo:
source scripts/sync.sh
workspace=$(create_workspace)
GITHUB_SHA=12345
replicate ory/hydra server "Hydra" "$workspace" "keep"