Edwin Salguero
chore: enterprise-grade project structure, robust .gitignore, and directory cleanup
9289e29
| # Branch Protection Setup Script | |
| # Run this script to automatically configure branch protection | |
| echo "π‘οΈ Setting up branch protection for algorithmic trading repository..." | |
| # Configuration | |
| REPO="EAName/algorithmic_trading" | |
| BRANCH="main" | |
| REQUIRED_REVIEWS=2 | |
| REQUIRED_CHECKS='["ci-cd/quality-check","ci-cd/test","ci-cd/security","ci-cd/backtesting"]' | |
| echo "π Configuration:" | |
| echo " Repository: $REPO" | |
| echo " Branch: $BRANCH" | |
| echo " Required reviews: $REQUIRED_REVIEWS" | |
| echo " Required checks: $REQUIRED_CHECKS" | |
| echo "" | |
| echo "β οΈ IMPORTANT: You need a GitHub Personal Access Token with 'repo' permissions" | |
| echo " Get one from: https://github.com/settings/tokens" | |
| echo "" | |
| read -p "Enter your GitHub Personal Access Token: " GITHUB_TOKEN | |
| if [ -z "$GITHUB_TOKEN" ]; then | |
| echo "β No token provided. Exiting." | |
| exit 1 | |
| fi | |
| echo "" | |
| echo "π§ Applying branch protection rules..." | |
| # Apply branch protection | |
| curl -X PUT \ | |
| -H "Authorization: token $GITHUB_TOKEN" \ | |
| -H "Accept: application/vnd.github.v3+json" \ | |
| "https://api.github.com/repos/$REPO/branches/$BRANCH/protection" \ | |
| -d "{ | |
| \"required_status_checks\": { | |
| \"strict\": true, | |
| \"contexts\": $REQUIRED_CHECKS | |
| }, | |
| \"enforce_admins\": true, | |
| \"required_pull_request_reviews\": { | |
| \"required_approving_review_count\": $REQUIRED_REVIEWS, | |
| \"dismiss_stale_reviews\": true, | |
| \"require_code_owner_reviews\": true | |
| }, | |
| \"restrictions\": null, | |
| \"allow_force_pushes\": false, | |
| \"allow_deletions\": false | |
| }" | |
| if [ $? -eq 0 ]; then | |
| echo "" | |
| echo "β Branch protection successfully applied!" | |
| echo "" | |
| echo "π Applied rules:" | |
| echo " - Require pull request before merging" | |
| echo " - Require $REQUIRED_REVIEWS approvals" | |
| echo " - Require code owner reviews" | |
| echo " - Require status checks: $REQUIRED_CHECKS" | |
| echo " - No force pushes allowed" | |
| echo " - No deletions allowed" | |
| echo "" | |
| echo "π View settings: https://github.com/$REPO/settings/branches" | |
| else | |
| echo "" | |
| echo "β Failed to apply branch protection. Check your token and permissions." | |
| fi |