Public and private project setup - davidgb8246/RapidRollout GitHub Wiki
๐ Creating a New Project
To start deploying with RapidRollout, you'll first need to create a project from your application's Git repository.
๐ Steps to Create a New Project
-
Navigate to the My Projects page from the top navigation bar.
-
Click the Create New Project button.
-
In the form that appears:
- Repository URL: Enter the Git URL of your project (e.g.,
https://github.com/username/repository
). - SSH Key (optional): If you're using a private repository, you must provide the private SSH key (
id_rsa
) that has access to the repository. This key is used by RapidRollout to securely clone your code.
- Repository URL: Enter the Git URL of your project (e.g.,
โ ๏ธ Note: Only the private key should be pasted into the SSH Key field. The public key must be added to GitHub to grant access. If your repository is public, you can leave the SSH Key field empty.
๐ Generating an RSA SSH Key (for Private Repositories)
If you're using a private Git repository, you'll need to generate an SSH key pair to allow RapidRollout to access your code securely.
๐ Generate an SSH Key Pair (All Platforms)
Linux / macOS / WSL / Windows (Git Bash or PowerShell)
-
Open your terminal and run:
ssh-keygen -t rsa -b 4096 -C "RapidRollout Deployment System"
-
Press Enter to accept the default file location or specify a custom one.
-
When prompted for a passphrase, leave it empty by pressing Enter.
โ ๏ธ Important: Do not set a passphrase, as RapidRollout cannot use password-protected keys for automated access.
-
After generation, your key files will be located in:
~/.ssh/id_rsa
(private key)~/.ssh/id_rsa.pub
(public key)
๐ Keep your private key secure. Do not share it or commit it to version control.
๐ Copy Your Public Key
To copy your public key, run:
-
Linux/macOS:
cat ~/.ssh/id_rsa.pub
-
Windows:
type $env:USERPROFILE\.ssh\id_rsa.pub
๐ Adding the SSH Key to GitHub
To allow RapidRollout access to a specific private repository:
- Go to your repository on GitHub.
- Navigate to Settings โ Deploy Keys
(e.g.,
https://github.com/username/repository/settings/keys
). - Click Add deploy key.
- Set a recognizable Title (e.g., โRapidRollout Deploymentโ).
- Paste your public key (
id_rsa.pub
) into the Key field. - Click Add key.
๐ก Note: Deploy keys are repository-specific. If deploying multiple private repositories, add the key to each repo or use unique keys per project.
โ Final Step: Submit to RapidRollout
Once your public key has been added as a Deploy Key in your GitHub repository, return to RapidRollout and paste the corresponding private key (id_rsa
) into the SSH Key field when creating a new project.
After entering the repository URL and (if needed) the private SSH key, click Create Project. RapidRollout will save your project and wait for a webhook ping event from GitHub to continue.
โ ๏ธ Important: RapidRollout does not finalize setup or trigger deployments until the webhook is configured and the initial ping event is received.
To complete the setup and enable automated deployments, you must now configure a webhook in your repository settings.
๐จ Setting Up Repository Webhooks
RapidRollout requires a webhook to receive updates when your repository changes.
- A ping event is sent immediately when you configure the webhook โ this finalizes setup in RapidRollout.
- Push events will then trigger automatic deployments.
๐ง How to Configure Webhooks in GitHub
-
Go to your repositoryโs Settings โ Webhooks.
-
Click Add webhook.
-
For Payload URL, enter your own domain followed by the endpoint
/api/management/githubUpdate/
. For example:https://rapidrollout.net/api/management/githubUpdate/
-
Set Content type to
application/json
. -
In the Secret field, paste the secret token generated by RapidRollout after clicking Create Project.
-
Under Which events would you like to trigger this webhook?, select:
- โ Send me everything
-
Click Add webhook.
โ ๏ธ Important:
- You must configure the webhook for RapidRollout to function.
- The secret secures the webhook communication.
โ You're Ready to Deploy!
Once the webhook is active and the ping event is received, your project is fully set up and ready for automated deployments!
To manage your project:
- Go to the My Projects section.
- Find your project and click Edit to open the management view.
From here, you can:
- ๐ View deployment status and logs
- ๐ Manage private files such as
.env
- ๐ง Update your SSH key if needed
From this point on, every time you push new commits to your repository, RapidRollout will automatically handle deployment for you.