Manual Repository
Ascend Projects require a Git repository to store your code. Choose one of the following options to set up your repository and connect it to your Ascend Instance.
Set up a Git repository
- Ascend-managed Repository
- Sample Project repository
- Existing repository
Refer to this guide to use an Ascend-managed Repository.
1. Create a new repository on GitHub
- Navigate to GitHub's New Repository page
- Set Owner to your personal GitHub account or organization
tip
If you have permissions to your company's GitHub Organization, create the repository there. Otherwise, create it under your personal account.
- Set Repository name to
ascend-quickstart-bigquery(or your preferred name) - Set Description to
Ascend Quickstart BigQuery - Set visibility to Private
- Click Create repository
2. Clone the Ascend Community Repository and push it to your new repository
# Set the variables
GITHUB_ORG="<your-github-org>" # Use your GitHub username or organization name
GITHUB_REPO="ascend-quickstart-bigquery"
# Clone the Ascend Community Repository
git clone git@github.com:ascend-io/ascend-community.git ${GITHUB_REPO}
cd ${GITHUB_REPO}
# Set the remote URL to your new repository
git remote set-url origin git@github.com:${GITHUB_ORG}/${GITHUB_REPO}.git
# Push the code to your new repository
git push -u origin main
If you encounter this error: git@github.com: Permission denied (publickey), follow the SSH steps outlined below before creating your repository.
For more detailed setup instructions for using Otto's Expeditions on your preferred GitHub provider, refer to our how-to guides for GitHub, GitLab, and Bitbucket.
Ensure your repository follows the Ascend Project structure. Your repository should include:
Required:
ascend_project.yamlandpyproject.tomlconfiguration files (empty placeholders are acceptable initially)profilesfolder with template Profiles for Parameter managementconnectionsfolder for data source configurationsflowsfolder containing your data Flows, each withcomponentsandtestssubfolders
Optional (add as needed):
srcandtemplatesfolders for Applicationsautomationsfolder for Automationsdatafolder for local files
Store all secrets securely in your Ascend Vault, not in your repository.
Your repository file structure should look like this:
Connect Ascend to your Git repository
Create the SSH key pair
- Linux
- Mac
- Windows
-
On your local machine, open a terminal and run the following command:
mkdir -p ~/.ssh && ssh-keygen -t ed25519 -f ~/.ssh/ascend_quickstart_repo_key -q -N "" -
This command will generate a new SSH key pair in the
~/.sshdirectory. -
The public key will be saved in
~/.ssh/ascend_quickstart_repo_key.pub -
The private key will be saved in
~/.ssh/ascend_quickstart_repo_key.tipYou can copy the contents of a file (eg: the public key) to your clipboard by running:
cat ~/.ssh/ascend_quickstart_repo_key.pub | xclip -selection clipboardOr if xclip is not installed:
cat ~/.ssh/ascend_quickstart_repo_key.puband manually copy the output.
- On your local machine, open a terminal and run the following command:
mkdir -p ~/.ssh && ssh-keygen -t ed25519 -f ~/.ssh/ascend_quickstart_repo_key -q -N "" - This command will generate a new SSH key pair in the
~/.sshdirectory. - The public key will be saved in
~/.ssh/ascend_quickstart_repo_key.pub - The private key will be saved in
~/.ssh/ascend_quickstart_repo_key.tipYou can copy the contents of the public key to your clipboard by running:
cat ~/.ssh/ascend_quickstart_repo_key.pub | pbcopy
- On your local machine, open PowerShell and run the following commands:
# Create .ssh directory if it doesn't exist
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.ssh"
# Generate SSH key
ssh-keygen -t ed25519 -f "$env:USERPROFILE\.ssh\ascend_quickstart_repo_key" -N '""' - This command will generate a new SSH key pair in the
.sshdirectory within your user profile folder. - The public key will be saved in
%USERPROFILE%\.ssh\ascend_quickstart_repo_key.pub - The private key will be saved in
%USERPROFILE%\.ssh\ascend_quickstart_repo_key.tipYou can copy the contents of the public key to your clipboard by running:
Get-Content "$env:USERPROFILE\.ssh\ascend_quickstart_repo_key.pub" | Set-Clipboard
Add the public key to your repository
- Bitbucket
- GitHub
- GitLab
To allow for Ascend to have write access to your Bitbucket repository, you will need to add your public key to a Bitbucket account with write access, not to the repository itself.
Please follow the instructions under Provide Bitbucket Cloud with your public key to add the public ssh key to a Bit Bucket user.
Please follow the instructions here to setup the public ssh key in your Github repository. You will need to allow write access.
Please follow the instructions here to setup the public ssh key in your Gitlab repository. You will to need to grant write permissions to the key.
Add the private key to Ascend
- In the Ascend UI, navigate to the instance settings by clicking on the button in the top right with your instance name and your user icon.
- Click on the Repositories settings tab.
- Click the Add Repository button.
- Set the Repository URI in this format:
git@github.com:<github-org>/<github-repo>.git. - Set SSH Private Key to the private key you generated in the previous step.
Make sure to copy the entire private key, including the lines that indicate the beginning and end of the key.
- Click Check and Create.
Next steps
Connect your newly created Ascend-managed Repository to a Project and begin building in the Ascend platform.