Salesforce DevOps-oplossingen

Salesforce DevOps voor Education Cloud

Het triggerframework van Education Cloud wordt geconfigureerd via datarecords, niet metadata. Zo struikelen deployments hierover.

Wat lastig is om te deployen

Education Cloud is gebouwd op de Education Data Architecture (EDA), en de triggerlogica van EDA loopt via TDTM, Table-Driven Trigger Management, waarbij elke trigger handler een rij is in een custom object in plaats van een metadatacomponent. Een deployment die alleen metadata bevat, kan een nieuwe class uitrollen die bedoeld is om via TDTM te draaien, maar als het bijbehorende Trigger Handler-record niet ook wordt gemigreerd, wordt de class simpelweg nooit aangeroepen, en faalt het gat stilzwijgend in plaats van de deploy te blokkeren.

Waar het lastig wordt

Triggerhandlers zijn data, geen metadata
De automatisering van EDA loopt via TDTM, Table-Driven Trigger Management, waarbij elke handler een rij is in een custom object in plaats van een metadatacomponent.
Een ontbrekend handlerrecord faalt stilzwijgend
Een deploy die alleen metadata bevat, kan een class uitrollen die bedoeld is om via TDTM te draaien, maar als het bijbehorende Trigger Handler-record niet ook wordt gemigreerd, wordt de class simpelweg nooit aangeroepen, en niets blokkeert de deploy om je te waarschuwen.
Hierarchy settings sturen kernwerking aan
EDA leunt op Hierarchy Settings en andere custom settings-records voor zaken als automatische aanmaak van contacten en affiliaties, dus het werkelijke gedrag van een org hangt af van data die de meeste metadatatools nooit inspecteren.
In de praktijk

Hoe Serpent helpt

De dependency detection van Serpent reikt verder dan metadata om deze data-als-configuratie-patronen op te sporen, zodat een TDTM-handlerrecord kan worden gevolgd en gemigreerd als onderdeel van dezelfde taak als de class die het activeert. Zie orgbeheer in Serpent voor hoe omgevingen gesynchroniseerd blijven. Voor een blik op specifieke datamigratietools, zie hoe Serpent zich verhoudt tot Prodly.

Elke Salesforce-omgeving op één plek beheerd in Serpent

Typische release voor Salesforce DevOps voor Education Cloud

  1. Leg de class en zijn handler samen vast als taak
    Een TDTM-gedreven wijziging wordt als één geheel getaskt: de Apex-class plus het Trigger Handler-record dat hem activeert.
  2. Dependency detection signaleert het gat
    De dependency detection van Serpent kijkt verder dan metadata om te signaleren wanneer een class verwijst naar een handlerrecord dat nog niet is uitgerold.
  3. Migreer het handlerrecord samen met de deploy
    De Trigger Handler-data verplaatst als een gevolgde stap naast de metadata, niet als een aparte handmatige invoeging.
  4. Bevestig dat de automatisering daadwerkelijk afgaat
    Valideer in een gesynchroniseerde sandbox dat de nieuwe handler actief is, aangezien een stil gat hier geen foutmelding zal geven.
Veelgestelde vragen

Education Cloud DevOps, beantwoord

Waarom stopte onze TDTM-automatisering met afgaan na een deploy?
Bijna altijd een ontbrekend Trigger Handler-record. De class werd gedeployed, maar niets in de doel-org vertelt EDA om hem aan te roepen. De dependency detection van Serpent signaleert dit vóór de deploy in plaats van erna.
Deployt Serpent de Hierarchy Settings en andere configuratiedata van EDA?
Ja, als onderdeel van dezelfde taakgebaseerde pipeline die voor metadata wordt gebruikt. Data-als-configuratierecords zoals deze verplaatsen als een gevolgde stap in plaats van een handmatige invoeging.
Hebben we een aparte tool nodig voor TDTM-records?
Nee. De data operations van Serpent verzorgen de migratie als onderdeel van dezelfde release als de metadata die ze ondersteunen.

Start gratis. Geen creditcard, geen installatie, geen verplichting.

Binnen 15 minuten ingesteld. Geen aparte DevOps-medewerker nodig.

Benieuwd naar sneller releasen voordat je instapt? Laten we praten

Vrijblijvend.