Skaalattavan ALM-lähestymistavan toteuttaminen Microsoft Package Deployerilla

Power Platformin ja Dynamics 365 toteutusten koon ja monimutkaisuuden kasvaessa organisaatiot tarvitsevat sovelluksen elinkaaren hallinnan (ALM) strategian, joka tukee useita kehittäjiä, hallittuja julkaisuja, käyttöönoton automatisointia ja hallintaa kaikissa ympäristöissä.

Tässä viitearkkitehtuurissa yhdistyvät Microsoft Package Deployer, Git, Azure DevOps ja Power Platform CLI skaalautuvaa ALM:ää varten. Se integroi lähteen hallinnan, vertaisarvioinnin, automaattisten käyttöönottojen, hotfix-korjausten hallinnan ja käyttöönoton jäljitettävyyden.

Tip

Tässä artikkelissa on esimerkkiskenaario ja yleinen viitearkkitehtuuri. Lähestymistapa voidaan mukauttaa erikokoisiin organisaatioihin ja useille toimialoille skaalautuvien kehitys-, käyttöönotto- ja julkaisuhallintakäytäntöjen tukemiseksi.

Arkkitehtuurikaavio

Dataverse ALM -työnkulun kaavio, joka käyttää Visual Studio Code, Azure Pipelines, paketin käyttöönottotoimintoa ja vaiheistettuja ympäristöjä.

Workflow

Seuraava työnkulku vastaa arkkitehtuurikaaviossa kuvattuja vaiheita.

Vaihe 1: Muutosten kehittäminen ja lähettäminen

Kehittäjät valmistelevat muutokset vertaisarviointia varten Visual Studio Code ja Power Platform CLI:n avulla.

  1. Kehittäjät käyttävät Visual Studio Codea ympäristöyhteyksien hallintaan Power Platform Tools Visual Studio Code -laajennuksen kautta. Laajennus tarjoaa toiminnon, jolla hallitaan todennusprofiileja, jotka tallentavat kehittäjien yhteydet eri tenanttien ympäristöihin.

  2. Kehittäjät luovat haaroja Visual Studio Codessa omia töitään varten.

  3. Kehittäjät poimivat ratkaisuja Dataversesta ja määrittävät ratkaisuversioita käyttämällä Visual Studio Codessa määritettyjä Power Platformin komentorivikäyttöliittymätehtäviä. Prosessi sisältää ratkaisun .zip-tiedostojen purkamisen ja poimittujen tiedostojen sijoittamisen erillisiin kansioihin.

  4. Kehittäjät valitsevat sitten ("cherry-pick") heidän valmiiseen työhönsä liittyvät muutokset, mikä auttaa varmistamaan, että muiden kehittäjien keskeneräisiä muutoksia jaetussa kehitysympäristössä ei viedä versionhallintaan.

  5. Kehittäjät vievät sitten poimitut muutokset Gitiin pull-pyyntöinä vertaisarvioitavaksi.

Vaihe 2: Käyttöönottopakettien luominen ja vahvistaminen

Git-säilöjä, Package Deployeria ja Azure Pipelines käytetään pakettien luomiseen ja käyttöönottoon.

  1. Git-säilöt

    1. Säilöt sisältävät Dataversen versionhallinnassa olevat komponentit.

    2. Edellisestä vaiheesta cherry-pickatut muutokset yhdistetään versionhallintaan vasta sen jälkeen, kun pull request on hyväksytty. Liitä jäljitettävyyden vuoksi kaikki muutoksiin liittyvät relevantit backlogin työkohteet pull-pyyntöön.

    Pull-pyyntöihin linkitetyillä työkohteilla on historia putken suorituksista ja perinteisistä julkaisuista, jotka sisältävät työkohteen kattamat muutokset. Tarkastele tätä historiaa työkohteessa ja seuraa, missä sen muutokset on otettu käyttöön.

  2. Package Deployer

    1. Microsoft Package Deployer luo paketteja, jotka sisältävät käyttöönottoon tarvittavat ratkaisut ja tiedot jatkoympäristöihin, kuten testaukseen ja tuotantoon. Sen avulla voidaan myös toteuttaa laajennettavissa olevat ominaisuudet C#-koodin avulla lisälogiikan suorittamiseksi ennen käyttöönottoa, sen aikana tai sen jälkeen.

    2. Sijoita Package Deployer -projekti samaan säilöön kuin puretut ratkaisut. Se sisältää seuraavat kansiot ja tiedostot:

    • PkgAssets sisältää kaikki ratkaisun .zip ja datatiedostot, jotka otetaan käyttöön osana pakettia.

    • ImportConfig.xml määrittää, missä järjestyksessä ratkaisuja otetaan käyttöön. Tämä tiedosto sisältää myös kunkin ratkaisun käyttöönottoasetukset, kuten sen, korvataanko hallitsemattomat mukautukset käyttöönoton aikana.

  3. koontiputki

    Azure Pipeline luo Package Deployer -ratkaisun:

    1. pipeline pakkaa ratkaisujen komponentit versionhallinnassa .zip-tiedostoihin ja sijoittaa ne PkgAssets-kansioon.

    2. Pipeline sitten tekee commitin päivitetystä paketin dynamic-link library (DLL) -tiedostosta versionhallintaan.

  4. Julkaisuputki

    1. Koontiputki käynnistää tämän Azure Pipelinen, kun se on valmis.

    2. Käyttöönoton työnkulku on monivaiheinen työnkulku:

      1. Ensimmäinen vaihe: Luo käyttöönottoputken artefakti, joka sisältää Package Deployer -projektin paketin.

      2. Toinen vaihe: Ota paketti käyttöön artefaktista CI-ympäristöön (jatkuva integrointi).

        1. CI-ympäristö on varattu käyttöönoton validointiin. Et voi kirjautua tähän ympäristöön. Jos käyttöönotto epäonnistuu, tiimit voivat ratkaista ongelmia, ennen kuin käyttöönotto vaikuttaa muihin testaus-, integrointi- tai tuotantoympäristöihin.

        2. Ota käyttöön QA- (laadunvarmistus), MIG- (migraatio) ja INT- (integrointi)ympäristöissä rinnakkain tai järjestyksessä. Käyttöönottovaiheiden määrä riippuu käytössä olevista ympäristöistä ja käyttöönoton työnkulusta.

Vaihe 3: Hyväksy ja julkaise

Tämä vaihe tukee jatkuvaa julkaisua hallittujen julkaisujen kautta.

  1. Perinteiset versiot käyttävät edellisen pipelinen tuottamia artefakteja, ja ne voidaan määrittää edellyttämään valtuutusta ennen käyttöönottoa. Käytä niitä hallituimmissa ympäristöissä, kuten UAT- ja tuotantoympäristöissä.

    Käytä käyttöönottoa edeltäviä hyväksyntäportteja, kun otat käyttöön tuotantoympäristöihin, sen varmistamiseksi, että käyttöönotot on sallittu oikein. Tahattomien tuotannon käyttöönottojen estämiseksi edellytä hyväksyntää ennalta määritetyltä käyttäjämäärältä ja uudelleentodennusta, ennen kuin käyttöönotto voidaan suorittaa.

  2. Tässä skenaariossa käytä käyttöönottoa edeltäviä portteja CD:lle (jatkuva julkaisu) varmistaaksesi, että vain valmiiksi kehitetyt ja testatut ominaisuudet otetaan käyttöön vaiheittaisten julkaisujen kautta hyväksyntäporteilla. Edellinen vaihe tukee CI/CD:tä (jatkuva integrointi ja jatkuva käyttöönotto), jossa muutokset siirretään automaattisesti ympäristöstä toiseen.

Vaihe 4: Hotfix-korjausten käyttöönotto ja synkronointi

Tämä vaihe tukee hotfix-käyttöönottoja tuotanto- ja kehitysympäristöissä.

Kehittäjä käynnistää tämän Azure Pipelinen manuaalisesti ja antaa korjausratkaisun loogisen nimen. Työnkulku:

  1. Poimii korjauspaketin sekä hallitsemattomana että hallittuna hotfix-ympäristöstä.

  2. Ottaa hallitun korjauksen käyttöön tuotantoympäristössä.

  3. Ottaa käyttöön hallitsemattoman korjaustiedoston kehitysympäristössä.

    1. Suorittaa PowerShell-komentosarjan, joka käyttää AddSolutionComponent Dataverse -toimintoa ja yhdistää korjausratkaisun komponentit pääratkaisuun. Viimeisessä vaiheessa komentosarja poistaa korjauksen kehitysympäristöstä.

    2. Kun ratkaisut seuraavan kerran poimitaan, korjaus siirretään versionhallintaan pääprosessin kautta, sillä se on nyt osa pääratkaisurakennetta, joka deploidaan. Tämä prosessi tapahtuu myös ajoittetun varmuuskopion yhteydessä. Voit suorittaa tämän pipen tarpeen mukaan, jotta tiimien ei tarvitse odottaa ajastettua suoritusta.

    3. Kun ratkaisut otetaan käyttöön tuotannossa versiolla, joka on korkeampi kuin korjauspäivitysten versio, päivitys poistaa korjauspäivitykset.

Vaihe 5: Kehitysratkaisujen varmuuskopioiminen

Tämä Azure Pipeline suoritetaan aikataulun mukaisesti kehitysratkaisujen varmuuskopiointia varten erilliseen Git-säilöön.

Putkisto:

  1. Poimii sekä hallitsemattomat että hallitut ratkaisut.

  2. Avaa ratkaisut.

  3. Tallentaa muutokset varmuuskopiosäilöihin.

  4. Pitää pääsäilön ajan tasalla tiimin tallentamilla valmiilla ominaisuuksilla, kun taas varmuuskopiosäilössä on uusin versio ajoitetun käynnistyksen hetkellä. Tämän lähestymistavan avulla voit hallita päälinjan käyttöönottoa paremmin.

Komponentit

Tämä viitearkkitehtuuri käyttää seuraavia osia:

  • Visual Studio Code seuraaville:

    • Paikallisen toimipisteen hallinta.
    • Power Platform -laajennuksen valtuutusprofiilien hallinta
    • Ratkaisun poimiminen Power Platform CLI:n avulla.
    • Muutosten valikoiva sisällyttäminen Git-commiteihin.
  • Git-säilöt kohteelle:

    • Versionhallinta.
    • Pull-pyyntöjen vertaisarviointi.
  • Azure Boards varten:

    • Backlogin hallinta.
    • Työkohteen käyttöönotto-/julkaisuputken ja julkaisujen jäljitettävyys.
  • Azure DevOps -putket CI/CD:n käyttöönottoon ratkaisun käyttöönotossa.

  • Azure julkaisut testattujen artefaktien hallittuun käyttöönottoon ylimpiin ympäristöihin.

Skenaarion tiedot

Tässä ratkaisussa yhdistyvät Azure DevOps pipelinet, Git-pohjainen repositorioiden hallinta sekä Power Platform- ja Dynamics 365 -toteutukset. Tuloksena on skaalattava ALM-lähestymistapa, joka tukee usean kehittäjän tiimejä, käyttöönottoja useissa ympäristöissä ja vertaisarviointeja. Se skaalautuu toteutuksen koon ja Dataverse-ratkaisujen määrän mukaan, kun käsitellään hallintoa, muutosten seurantaa ja rinnakkaista kehitystä.

Voit soveltaa tätä lähestymistapaa moniin aloihin, joilla on monimutkaisia, laajamittaisia Power Platform- ja Dynamics 365 -ratkaisuja, jotka käyttävät Dataversea. Esimerkkejä ovat vähittäiskauppa, rahoitus, valmistus, terveydenhuolto, hallinto, energia, televiestintä, koulutus, autoteollisuus, voittoa tavoittelematon sektori, peliala, media ja viihde, matkailu ja majoitus- ja ravintola-ala, tilat ja kiinteistöt, ilmailu, maatalous ja urheilu. Tämän lähestymistavan avulla voit luoda käyttöönoton ja tarkistusprosessin, joka skaalautuu kehitystiimisi ja kuormituksesi kanssa.

Tässä lähestymistavassa keskitytään muutosten hallintaan Dynamics 365:n ja Dataversen mukauttamisesta koodipohjaiseen kehitykseen Git-haarautumisen ja vertaisarviointivaiheiden avulla. Se mahdollistaa tietojen parametrisoimisen yksittäisessä Dataverse-ratkaisuja sisältävässä paketissa, mikä antaa tiimeille mahdollisuuden mukauttaa käyttöönottotapaansa paketin sisäisen laajennettavan koodin, kuten käyttöönottoa edeltävien tai käyttöönoton jälkeisten toimintojen, avulla.

Harkitse tätä lähestymistapaa, kun määrität ympäristöstrategian projektin kartoitusvaiheessa.

Tämä ratkaisu soveltuu eniten seuraaviin:

  • Suuret, usean kehittäjän Dataverse-toteutukset eri toimialoilla.
  • Organisaatiot, jotka tarvitsevat vahvan muutoksen hallinnan, jäljitettävyyden ja rinnakkaisen kehityksen tuen.

Ensisijaisia sidosryhmiä ovat seuraavat:

  • IT-tiimit
  • Tekniset tiimit
  • Projektipäälliköt

Tämän ratkaisun avulla voit tehdä seuraavaa:

  • Vältä keskeneräisten ominaisuuksien käyttöönottoa.
  • Helpota rinnakkaista kehitystä.
  • Paranna muutosten jäljitettävyyttä.
  • Ota vertaisarviointiprosessi käyttöön ennen käyttöönottoa.
  • Ylläpidä yksittäistä toimintoa hallitsemalla yksittäistä käyttöönotettavaa pakettia.
  • Tallenna artefaktit pienemmistä muutoksista ja ota ne käyttöön usein käyttöönottovirheiden riskin pienentämiseksi.

Huomioitavat asiat

Näillä näkökohdilla toteutetaan Power Platform Well-Architected -pilareita, joka on joukko ohjaavia periaatteita, jotka parantavat työkuorman laatua. Lisätietoja: Microsoft Power Platform Well-Architected.

Reliability

Tämä arkkitehtuuri mahdollistaa ennustettavissa olevat käyttöönotot, tukee hallittuja julkaisuja ja vähentää käyttökatkoja siirtämällä riskin aiempiin automaattisiin vaiheisiin.

  • Monivaiheiset prosessiketjut: pienennä käyttöönottoriskiä varmistamalla jokaisessa vaiheessa.

  • Dedikoitu CI-ympäristö: Mahdollistaa virheiden varhaisen havaitsemisen ilman, että se vaikuttaa muihin ympäristöihin.

  • Paketin käyttöönottotyökalu: takaa johdonmukaisen käyttöönoton ja ratkaisujen järjestyksen ImportConfig.xml kautta.

  • Hotfix pipeline: Tarjoaa jäsennellyn tavan soveltaa kiireellisiä korjauksia sekä tuotanto- että kehitysympäristöihin.

  • Varmuuskopiointiprosessi: Säilytä ajoitetut tilannevedokset kehitysratkaisuista, mikä varmistaa palautusvaihtoehdot.

Security

Ota käyttöön vahva tehtävien eriyttäminen, tarkastetut hyväksynnät ja turvalliset automatisoidut vuorovaikutukset, mikä vähentää luvattomien tai tahattomien käyttöönottojen riskiä.

  • Palveluyhteydet palveluprinsipaalien kanssa: Suojaa roolipohjaisen käyttöoikeuden ja hallitun Dataverse-suojauksen avulla.

  • Todentamisportti: Pakota uudelleentodentaminen ja hyväksynnät ennen käyttöönottoja tuotantoon.

  • Haarasäännöt: Edellytä vertaisarviointia, ennen kuin yhdistät muutoksia suojattuihin haaroihin.

  • ADO-käyttöoikeudet: Rajoita pääsyä koontiputkiin ja julkaisuihin valtuutetuille käyttäjille.

Toiminnallinen erinomaisuus

Tukee optimoituja toimintoja automatisoitujen putkien, jäljitettävien muutosten ja hallintaystävällisten prosessien kautta, jotka skaalautuvat tiimin ja ratkaisun monimutkaisuuden mukaan.

  • Azure Boards integrointi: tarjoaa täyden jäljitettävyyden työkohteesta vetopyyntöön, koontiin ja julkaisuun.

  • Vertaisarviointi- ja haarastrategia: parantaa koodin laatua ja vähentää regressioriskejä.

  • Vaiheutettu käyttöönotto hyväksyntäporteilla: Varmistaa uusien ominaisuuksien hallitun käyttöönoton.

  • Automaatio varmuuskopioita, hotfix-korjauksia ja päälinjan käyttöönottoja varten: vähentää manuaalisia virheitä ja parantaa johdonmukaisuutta.

Suoritustehokkuus

Se tarjoaa päivityksiä nopeammin, käsittelee suurempia muutosmääriä ja skaalaa tehokkaasti käyttöönotto- ja kehityskapasiteettia useissa ympäristöissä.

  • Rinnakkaiset käyttöönotot: lisää käyttöönoton läpimenoa ja lyhentää odotusaikoja.

  • Power Platform CLI ja muutosten poiminta: Optimoi ratkaisun poiminnan ja tehtyjen muutosten hallinnan.

  • Dedikoidut YAML-putkimallit: tue uudelleenkäytettävyyttä ja vähemmän hallinnointia.

  • CI-ympäristö: Nopeuttaa validointeja ihmistarkastuksista riippumatta.

Käyttökokemuksen optimointi

Tiimien kokemus on entistä virtaviivaisempi, läpinäkyvämpi ja yhdenmukaisempi kehitys- ja käyttöönottosyklien ajan.

  • Visual Studio Code ja Power Platform Tools for Visual Studio Code -laajennus: Käytä moderneja työkaluja ja mahdollistavat saumattoman käyttökokemuksen IDE:n ja Dataversen välillä.

  • pull requestit: paranna yhteistyötä ja tiedonjakoa.

  • Package Deployer -laajennettavuus (ennen tai jälkeen vaiheet): Lisää ylimääräisiä käyttöönottovaiheita, kuten tietojen tuonti, tietuepäivitykset ja käyttöönoton tarkistukset.

  • Käyttöönottohistoriaan linkitetty työkohde: antaa kertomuksen muutoksista.

Seuraavat vaiheet

Kun olet ottanut ALM-lähestymistavan käyttöön, määritä jäsennetty prosessi, jonka avulla voit luoda julkaisumuistiinpanoja, jotka viestivät selvästi muutoksista ja päivityksistä.

Voit käyttää esimerkiksi seuraavaa:

  • Skriptien käyttö linkitettyjen työkohteiden lukemiseen ja yhteenvedon luomiseen.
  • Microsoft Copilot Studio agentti, joka noutaa tietoja Azure DevOps -ohjelmointirajapinnasta MCP-palvelimen (Model Context Protocol) kautta ja luo automaattisesti versiotiedot.

Avustajat

Microsoft ylläpitää tätä artikkelia. Seuraavat avustajat kirjoittivat tämän artikkelin.

Tärkeimmät kirjoittajat: