GitHub App Integration
The DeployStack GitHub App ensures your Infrastructure as Code (IaC) templates remain synchronized with your Docker configurations. After submitting your repository to deploystack.io, install our GitHub App to enable automatic updates.
How It Works
When you install the DeployStack Repository Sync app, it monitors specific files in your repository:
.deploystack/
directory - Contains your Docker configurations and assetsREADME.md
- For README.md updates
When changes are detected in these files, the app automatically triggers an update of your IaC templates in our deploy-templates repository.
Changes are only processed when they occur on your repository's default branch. Modifications in other branches will not trigger template, logo, config or any other updates.
Installation
- Visit the installation page
- Select the repositories you want to monitor
- Approve the requested permissions
Security & Permissions
The app follows the principle of least privilege and requires only:
- Read access to repository contents
- Read access to repository metadata
These minimal permissions ensure the app can only:
- Monitor changes to your Docker configurations
- Access basic repository information needed for template generation
What Gets Updated?
When the app detects changes, it automatically updates:
- Repository metadata in our catalog:
- Topics
- Repository Homepage
- Description
- IaC templates
- Depends on which technique (docker compose or docker run command) you choose, you can upload the
docker-compose.yml
ordocker-run.txt
in the.deploystack
directory. Every time you update the files on your main branch (or additional branch), IaC templates will be updated automatically - Automatic Updates.
- Depends on which technique (docker compose or docker run command) you choose, you can upload the
- Environment variables
- To make it easier for a user to deploy IaC templates, it is recommended to work with environment variables. For this purpose, you can upload an
env
file and add your appropriate variables - Environment Variables.
- To make it easier for a user to deploy IaC templates, it is recommended to work with environment variables. For this purpose, you can upload an
- DeployStack Configuration
- Project / Applicaton Logo
- It is possible to upload your own logo to DeployStack catalog. To do this you need to upload a file to our directory
.deploystack
. Read more about it here: Repository Logo
- It is possible to upload your own logo to DeployStack catalog. To do this you need to upload a file to our directory
Managing the Integration
You can manage or remove the integration at any time through your GitHub Applications Settings. The app installation can be configured for specific repositories or your entire organization.
Next Steps
After installing the app:
- Make changes to your Docker configurations in the
.deploystack
directory - Commit and push your changes
- DeployStack will automatically update your deployment templates
For details about the .deploystack
directory structure, check our .deploystack Directory Reference.
Environment Variables
Learn how to manage environment variables in DeployStack using the .deploystack/env file. Support for Docker Compose, Docker run commands, and default values.
Infrastructure as Code Lifecycle
Guide to how DeployStack manages Infrastructure as Code template updates, including automatic synchronization, update triggers, and version control.