Links
This guide outlines how to connect multiple Skpr projects to support scalable and maintainable microservice architectures.
Linking one Project to Another
The following example demonstrates how one project can reference another using the Skpr project configuration.
You can define a custom name or key, then specify the target project and environment accordingly.
If the environment is not explicitly set, it defaults to the name of the main project — for example: dev = dev, stg = stg, prod = prod.
link:
example:
project: project2
# This will default to the name of the current environment when not set.
# environment: dev
How to connect to a linked Project
Automatic Skpr Configuration
Once linked, Skpr automatically supplies your project with connection details through the Skpr Configuration System:
- skpr.project.example.endpoint
- skpr.project.example.token
$ skpr config list dev --show-secrets
╭────────────────────────────────┬──────────────────────────────────────────────────┬────────╮
│ Key │ Value │ Type │
├────────────────────────────────┼──────────────────────────────────────────────────┼────────┤
│ skpr.project.pdf.endpoint │ https://skpr-project-project2.alb.skpr.internal │ System │
│ skpr.project.pdf.token │ xxxyyyzzz1233 │ System │
╰────────────────────────────────┴──────────────────────────────────────────────────┴────────╯
NOTE: The --show-secrets
flag was used for context in the next step.
How do I use the Skpr Configuration?
Below is an example using curl
and the config values provided above.
curl -H "X-Skpr-Token: xxxyyyzzz123" https://skpr-project-project2.alb.skpr.internal
Automate connectivity using our config libraries
As an example, you can automatically connect these configuration values to your application using our config package together with Drupal’s settings.php file.
https://docs.skpr.io/integrations/drupal#step-1-ensure-you-have-skprconfig-as-a-composer-dependency
We also provide configuration libraries for other languages: