
Design the pipeline for the worst rollback scenario, not the best deploy scenario. Appendix A: Sample .yml Pipeline (GitHub Actions) name: Salesforce CI - Validate and Deploy on: pull_request: branches: [ main ] jobs: validate: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install sfdx run: npm install -g sfdx-cli - name: Authenticate to Dev Hub run: sfdx auth:jwt:grant --client-id $ secrets.CLIENT_ID --jwt-key-file keys/server.key -u $ secrets.DEVHUB - name: Create Scratch Org run: sfdx force:org:create -f config/project-scratch-def.json -a validate-org -d 1 - name: Deploy Source run: sfdx force:source:deploy -p force-app -u validate-org -l RunLocalTests -c - name: Run Apex Tests run: sfdx force:apex:test:run -u validate-org -c -r human End of Report
| Environment | Purpose | Refresh Strategy | Data Strategy | | :--- | :--- | :--- | :--- | | | Ephemeral feature testing | On every PR | Sample dataset (100 records) | | Integration (CI) | Merge validation & conflict resolution | Nightly (auto) | Anonymized production subset | | Staging/UAT | Business sign-off & performance | Bi-weekly | Full copy (masked) | | Production | Live customer environment | Never (backup only) | Live data | 4. Tooling Landscape: Build vs. Buy Architects must decide between the Salesforce DevOps Center (native, free, immature) and ISV solutions (costly, robust).
3. Reference Architecture: The 4-Environment Pipeline While many teams use Dev -> QA -> Prod, the architect’s standard for high-velocity teams is a 4-track trunk-based strategy .
Design the pipeline for the worst rollback scenario, not the best deploy scenario. Appendix A: Sample .yml Pipeline (GitHub Actions) name: Salesforce CI - Validate and Deploy on: pull_request: branches: [ main ] jobs: validate: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install sfdx run: npm install -g sfdx-cli - name: Authenticate to Dev Hub run: sfdx auth:jwt:grant --client-id $ secrets.CLIENT_ID --jwt-key-file keys/server.key -u $ secrets.DEVHUB - name: Create Scratch Org run: sfdx force:org:create -f config/project-scratch-def.json -a validate-org -d 1 - name: Deploy Source run: sfdx force:source:deploy -p force-app -u validate-org -l RunLocalTests -c - name: Run Apex Tests run: sfdx force:apex:test:run -u validate-org -c -r human End of Report
| Environment | Purpose | Refresh Strategy | Data Strategy | | :--- | :--- | :--- | :--- | | | Ephemeral feature testing | On every PR | Sample dataset (100 records) | | Integration (CI) | Merge validation & conflict resolution | Nightly (auto) | Anonymized production subset | | Staging/UAT | Business sign-off & performance | Bi-weekly | Full copy (masked) | | Production | Live customer environment | Never (backup only) | Live data | 4. Tooling Landscape: Build vs. Buy Architects must decide between the Salesforce DevOps Center (native, free, immature) and ISV solutions (costly, robust).
3. Reference Architecture: The 4-Environment Pipeline While many teams use Dev -> QA -> Prod, the architect’s standard for high-velocity teams is a 4-track trunk-based strategy .
댓글/평가 (평가글은 5자 이상 작성시 등록이 가능합니다. 별점만 선택할 경우, 기본 평가글이 등록됩니다.)
5/5 정말 최고에요!!