Skip to content

Commit c31260d

Browse files
authored
Merge pull request #39 from thisisqubika/DC-394-documentation-define-repository-setup-strategy
feat: update README with accelerator setup when forking
2 parents 5306bec + bb537fa commit c31260d

1 file changed

Lines changed: 89 additions & 0 deletions

File tree

README.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,95 @@ A project for testing and validating Snowflake to Databricks migration tools and
66

77
This project contains Snowflake test objects that can be used to validate extractors and conversion tools that migrate Snowflake database objects to Databricks.
88

9+
---
10+
11+
## Getting Started for New Clients
12+
13+
This section guides new clients through setting up the Data Migration Accelerator for their own projects.
14+
15+
### Repository Setup: Fork the Repository
16+
17+
Forking creates a copy under your GitHub organization while maintaining a connection to the original repository for future updates.
18+
19+
#### Step 1: Fork the Repository
20+
21+
1. Navigate to the original repository on GitHub
22+
2. Click **Fork** in the top-right corner
23+
3. Select your organization as the destination
24+
4. Uncheck "Copy the `main` branch only" if you want all branches
25+
26+
#### Step 2: Clone Your Fork
27+
28+
```bash
29+
git clone https://github.com/YOUR_ORG/data-migration-accelerator.git
30+
cd data-migration-accelerator
31+
```
32+
33+
#### Step 3: Configure Upstream Remote
34+
35+
```bash
36+
# Add the original repository as "upstream"
37+
git remote add upstream https://github.com/thisisqubika/data-migration-accelerator.git
38+
39+
# Verify remotes
40+
git remote -v
41+
# origin https://github.com/YOUR_ORG/data-migration-accelerator.git (fetch)
42+
# origin https://github.com/YOUR_ORG/data-migration-accelerator.git (push)
43+
# upstream https://github.com/thisisqubika/data-migration-accelerator.git (fetch)
44+
# upstream https://github.com/thisisqubika/data-migration-accelerator.git (push)
45+
```
46+
47+
#### Step 4: Create a Client Branch
48+
49+
Keep your customizations separate from `main` for easier upstream merges:
50+
51+
```bash
52+
git checkout -b client/your-company-name
53+
```
54+
55+
### Pulling Upstream Updates
56+
57+
When the original accelerator has updates you want to incorporate:
58+
59+
```bash
60+
# Fetch upstream changes
61+
git fetch upstream
62+
63+
# Merge upstream main into your branch
64+
git checkout main
65+
git merge upstream/main
66+
67+
# Push updated main to your fork
68+
git push origin main
69+
70+
# Rebase your client branch on updated main
71+
git checkout client/your-company-name
72+
git rebase main
73+
```
74+
75+
### Contributing Back
76+
77+
If you make improvements that could benefit others:
78+
79+
1. Create a feature branch from `main`
80+
2. Make your changes
81+
3. Push to your fork
82+
4. Open a Pull Request to the upstream repository
83+
84+
### Post-Setup Checklist
85+
86+
After forking the repository:
87+
88+
- [ ] Update `databricks.yml` with your bundle name
89+
- [ ] Configure GitHub Secrets for CI/CD (see [GitHub Secrets](#github-secrets-for-cicd))
90+
- [ ] Set up Databricks Secrets scope (see [Databricks Secrets](#databricks-secrets))
91+
- [ ] Configure cluster environment variables (see [Cluster Environment Variables](#cluster-environment-variables))
92+
- [ ] Update `env.example` with your default values
93+
- [ ] Create the required Databricks group (`DEVS_GROUP`)
94+
- [ ] Test the deployment pipeline
95+
96+
---
97+
998
## Files
1099

11100
- **snowflake_test_objects.sql** - Contains sample Snowflake objects (tables, views, procedures, functions, etc.) with the `data_migration` naming convention for testing migration tools.

0 commit comments

Comments
 (0)