Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows
Ny mpamorona fitaovana mpamorona vahiny ao amin'ny Pantheon dia miresaka momba ny fomba automatique ny fametrahana WordPress amin'ny alΓ lan'ny GitLab CI/CD.

Π’ Pantheon Miasa amin'ny fifandraisana amin'ny mpamorona aho, noho izany dia mitady fomba vaovao foana aho hanampiana ireo mpamorona WordPress sy Drupal hamaha ny olan'ny automatique amin'ny rindranasany. Mba hanaovana izany, tiako ny manandrana fitaovana vaovao ary manambatra azy ireo mba hiasa tsara.

Matetika aho no mahita mpivoatra miady amin'ny mpizara fandaharana tokana.

Tena mahafinaritra ny miandry ny anjaranao hampiasa mpizara mpanelanelana na mandefa URL amin'ny mpanjifa misy fanamarihana hoe: "Jereo eto, fa aza mijery eto."

Tontolo iainana Multidev - iray amin'ireo fitaovana Pantheon mahafinaritra - mamaha ity olana ity, satria miaraka amin'izy ireo ianao dia afaka mamorona tontolo ho an'ny sampana Git raha ilaina. Ny tontolon'ny multidev tsirairay dia manana URL sy angon-drakitra manokana, mba hahafahan'ny mpamorona miasa mangina, manamarina ny kalitao ary mahazo fankatoavana nefa tsy mifanitsaka.

Saingy tsy manana fitaovana ho an'ny fanaraha-maso ny dikan-teny na ny fampidirana mitohy sy ny fametrahana (CI/CD) i Pantheon. Izy io anefa dia sehatra mora azo ampiasaina izay ahafahanao mampiditra fitaovana rehetra.

Hitako ihany koa fa ny ekipa dia mampiasa fitaovana sasany ho an'ny fampandrosoana, ary samy hafa amin'ny fivoriambe sy ny fametrahana.

Ohatra, manana fitaovana samihafa izy ireo amin'ny fanaraha-maso ny dikan-teny sy CI/CD. Tsy maintsy mandehandeha manodidina ianao ary mifamadika eo amin'ny fitaovana hanitsiana kaody sy hamantarana olana.

amin'ny GitLab misy fitaovana fampivoarana feno: ho an'ny fanaraha-maso ny dikan-teny, tapakila, fangatahana fanakambanana, fantsona CI/CD tsara indrindra ao amin'ny kilasy, rejisitra kaontenera, sy ny toy izany. Mbola tsy nahita rindranasa manolotra betsaka hitantana ny rindranasan'ny fampandrosoana anao aho.

Tiako ny automatique, noho izany dia nianatra ny fomba hampifandray an'i Pantheon amin'ny GitLab aho mba hapetraka amin'ny sampana lehibe ao amin'ny GitLab amin'ny tontolo fampandrosoana lehibe ao Pantheon. Ary ny fangatahana manambatra ao amin'ny GitLab dia afaka mamorona sy mametraka kaody amin'ny tontolo multidev ao Pantheon.

Amin'ity lesona ity, dia handeha aho amin'ny fomba fametrahana fifandraisana eo amin'ny GitLab sy Pantheon ary manatsara ny workflow WordPress sy Drupal.

Mazava ho azy fa azo atao, fitaratra GitLab repository, fa hanao ny zavatra rehetra amin'ny tananay izahay mba handalina GitLab CI ary amin'ny ho avy dia ampiasao ity fitaovana ity fa tsy amin'ny fametrahana fotsiny.

fampidirana

Ho an'ity lahatsoratra ity, mila mahatakatra ianao fa ny Pantheon dia manapaka ny tranokala tsirairay ho singa telo: code, database, ary rakitra.

Ny kaody dia misy rakitra CMS toy ny WordPress core, plugins, ary lohahevitra. Mitantana ao amin'ny Git repository, nampiantranoin'ny Pantheon, midika izany fa afaka mametraka kaody avy amin'ny GitLab mankany Pantheon miaraka amin'i Git isika.
Ny rakitra ao amin'ny Pantheon dia rakitra media, izany hoe, sary ho an'ny tranokala. Matetika izy ireo dia ampidirin'ny mpampiasa ary tsy miraharaha azy ireo i Git.

Mamorona kaonty maimaim-poana, fantaro bebe kokoa momba ny Pantheon workflow na misoratra anarana amin'ny demo ao amin'ny pantheon.io.

tombantombana

Ny tetikasako amin'ny Pantheon sy GitLab dia antsoina pantheon-gitlab-blog-demo. Tsy maintsy miavaka ny anaran'ny tetikasa. Eto isika dia hiasa amin'ny tranokala WordPress. Azonao atao ny maka Drupal, saingy mila manova zavatra sasany ianao.

Hampiasaiko Git command lineary afaka miasa ianao interface grafika, raha izay no tianao.

Mamorona tetikasa

Voalohany, andao hamorona tetikasa GitLab (hiverina amin'ity indray izahay).

ankehitriny mamorona tranokala WordPress amin'ny Pantheon. Avy eo dia mametraka WordPress ho an'ny dashboard tranokala izahay.

Raha mangidihidy hanova zavatra ny tananao, ohatra, manala na manampy plugins dia mahareta. Mbola tsy mifandray amin'ny GitLab ny tranokala, ary tianay ny hanova ny kaody rehetra amin'ny GitLab.

Rehefa mametraka WordPress izahay dia miverena any amin'ny dashboard tranokalan'ny Pantheon ary ovao ho Git ny fomba fampandrosoana.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Fanoloran-tena voalohany amin'ny GitLab

Ankehitriny dia mila mamindra ny kaody WordPress voalohany avy amin'ny tranokala Pantheon mankany GitLab ianao. Mba hanaovana izany, dia clone ny kaody avy amin'ny tahiry Git an'ny tranokala Pantheon eo an-toerana, ary avy eo mandefa azy any amin'ny tahiry GitLab.

Mba ho mora kokoa sy azo antoka kokoa, ampio ny lakile SSH amin'ny Pantheon ary tsy voatery hampiditra tenimiafina isaky ny manangom-bokatra Pantheon Git. Amin'izay fotoana izay dia efa ampio famaha SSH amin'ny GitLab.

Mba hanaovana izany, clone ny tranokala Pantheon eo an-toerana amin'ny alΓ lan'ny kopia ny baiko avy amin'ny saha Clone miaraka amin'ny Git ao amin'ny dashboard tranokala.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows
Raha mila fanampiana ianao dia vakio ny antontan-taratasy manomboka amin'ny Git ho an'ny Pantheon.

Andeha isika hiova git remote originmanondro GitLab fa tsy Pantheon. Azo atao izany ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ git remote.

Andao ho any amin'ny tetikasa GitLab ary kopia ny URL tahiry avy amin'ny Clone dropdown amin'ny pejy antsipirian'ny tetikasa. Andao hisafidy ny Clone miaraka amin'ny SSH safidy, satria efa nanamboatra ny fanalahidy SSH izahay.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

amin'ny alalan'ny toerana misy anao git remote ho an'ny dika mitovy eo an-toerana amin'ny tahiry kaody - origin. Azo ovaina izany c git remote set-url origin [URL рСпозитория GitLab], izay idirantsika ho solon'ny fononteny ny URL tena izy.

Farany, manomboka izahay git push origin master --forcehanosika ny kaody WordPress avy amin'ny Pantheon mankany GitLab.

Ny safidy -force dia ilaina indray mandeha ihany. Avy eo amin'ny ekipa git push tsy ho ao amin'ny GitLab izany.

Fametrahana ny fahazoan-dΓ lana sy ny variables

Tsarovy ny fomba nampidiranay fanalahidy SSH teo an-toerana mba hidirana ao amin'ny Pantheon sy GitLab? Ny mari-pamantarana SSH dia azo ampiasaina hanomezana alalana ny GitLab sy Pantheon.

GitLab dia manana antontan-taratasy tsara. Andao hojerena fizarana amin'ny fanalahidy SSH rehefa mampiasa ny Docker executor ao amin'ny antontan-taratasy momba ny fampiasana fanalahidy SSH miaraka amin'ny GitLab CI/CD.

Hamita ny dingana roa voalohany isika izao: Andao hamorona mpivady fanalahidy SSH vaovao eo an-toerana miaraka amin'ny ssh-keygen ary ampio ny lakile manokana ho fari-piadidiana amin'ny tetikasa.

Dia hanontany isika SSH_PRIVATE_KEY Ahoana no GitLab CI/CD environment variable ao amin'ny firafitry ny tetikasa.
Amin'ny dingana fahatelo sy fahefatra dia hamorona rakitra isika .gitlab-ci.yml miaraka amin'ny atiny toy izao:

before_script:
  # See https://docs.gitlab.com/ee/ci/ssh_keys/README.html
  - eval $(ssh-agent -s)
  - echo "$SSH_PRIVATE_KEY" | tr -d 'r' | ssh-add - > /dev/null
  - mkdir -p $HOME/.ssh && echo "StrictHostKeyChecking no" >> "$HOME/.ssh/config"
  - git config --global user.email "$GITLAB_USER_EMAIL"
  - git config --global user.name "Gitlab CI"

Aoka isika tsy hanolo-tena ny rakitra .gitlab-ci.yml, dia mila manampy zavatra hafa amin'izany ianao.

Ankehitriny dia manao ny dingana fahadimy isika ary ampio ny fanalahidin'ny daholobe noforoninao tamin'ny dingana voalohany amin'ireo serivisy ilainao idirana amin'ny tontolo fananganana.

Amin'ity tranga ity, te-hiditra amin'ny Pantheon avy amin'ny GitLab izahay. Araho ny toromarika ao amin'ny antontan-taratasy Pantheon on manampy fanalahidy SSH amin'ny Pantheon ary tanteraho ity dingana ity.

Tsarovy: ao amin'ny GitLab ny SSH manokana, ao amin'ny Pantheon ny SSH misokatra.

Andeha isika hanangana fari-piainana vitsivitsy hafa. Ny voalohany dia antsoina hoe PANTHEON_SITE. Ny sandany dia ny anaran'ny tranokala Pantheon amin'ny milinanao.

Ny anarana amin'ny milina dia voatanisa eo amin'ny faran'ny Clone miaraka amin'ny baiko Git. Efa nanao clone ny tranokala teo an-toerana ianao, ka ity no anaran'ny lahatahiry fitehirizana eo an-toerana.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Manaraka, andeha apetraka ny fari-piainan'ny tontolo iainana PANTHEON_GIT_URL. Ity no URL fitehirizana Git ho an'ny tranokala Pantheon izay efa nampiasainay.

Ampidiro ihany ny URL SSH repository, tsy misy git clone ary ny anaran'ny tranokala amin'ny milina amin'ny farany.

Phew. Vita izany, afaka mamita ny rakitray izahay .gitlab-ci.yml.

Mamorona asa fametrahana

Ny zavatra hataontsika voalohany amin'ny GitLab CI dia mitovy amin'ny nataonay tamin'ny tahiry Git taloha. Fa amin'ity indray mitoraka ity, andao ampio ny tahiry Pantheon ho loharano Git lavitra faharoa, ary avy eo manosika ny code avy amin'ny GitLab mankany Pantheon.

Mba hanaovana izany, andao ny configure sehatra deploy ΠΈ ASA deploy:dev, satria haparitaka amin'ny tontolo fampandrosoana ao amin'ny Pantheon izahay. Ny rakitra vokarina .gitlab-ci.yml dia ho toy izao:

stages:
- deploy

before_script:
  # See https://docs.gitlab.com/ee/ci/ssh_keys/README.html
  - eval $(ssh-agent -s)
  - echo "$SSH_PRIVATE_KEY" | tr -d 'r' | ssh-add - > /dev/null
  - mkdir -p $HOME/.ssh && echo "StrictHostKeyChecking no" >> "$HOME/.ssh/config"
  - git config --global user.email "$GITLAB_USER_EMAIL"
  - git config --global user.name "Gitlab CI"

deploy:dev:
  stage: deploy
  environment:
    name: dev
    url: https://dev-$PANTHEON_SITE.pantheonsite.io/
  script:
    - git remote add pantheon $PANTHEON_GIT_URL
    - git push pantheon master --force
  only:
    - master

hiovaova SSH_PRIVATE_KEY, PANTHEON_SITE ΠΈ PANTHEON_GIT_URL tokony ho mahazatra - nametraka ireo fari-piainan'ny tontolo iainana ireo izahay teo aloha. Miaraka amin'ireo fari-pahalalana ireo dia ho afaka hampiasa ny soatoavina ao anaty rakitra isika .gitlab-ci.yml imbetsaka, ary amin'ny toerana iray ihany no mila havaozina.

Farany, ampio, manolora ary alefaso ny rakitra .gitlab-ci.yml amin'ny GitLab.

Fanamarinana ny fametrahana

Raha nanao ny zava-drehetra araka ny tokony ho, ny asa deploy:dev dia handeha soa aman-tsara ao amin'ny GitLab CI/CD ary handefa commit .gitlab-ci.yml ao amin'ny Pantheon. Andeha hojerentsika.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Mandefa kofehy fangatahana fampitambatra amin'ny Pantheon

Eto isika dia hampiasa ny endri-javatra Pantheon tiako indrindra βˆ’ multidev, izay ahafahanao mamorona tontolo Pantheon fanampiny ho an'ny sampana Git raha ilaina.

Ny fidirana amin'ny multidev dia voafetra, ka azo tsidihana ity fizarana ity. Fa raha manana fidirana ianao dia afaka mampitombo ny vokatra amin'ny alΓ lan'ny fananganana automatique ny tontolo multidev ao amin'ny Pantheon avy amin'ny fangatahana merge GitLab.

Andao aloha hanao sampana Git vaovao eo an-toerana mampiasa git checkout -b multidev-support. Andeha isika hanova zavatra indray .gitlab-ci.yml.

Tiako ny mampiditra ny laharan'ny fangatahana fanakambanana amin'ny anaran'ny tontolo manodidina ny Pantheon. Ohatra, ny fangatahana fampiraisana voalohany dia mr-1, faharoa - mr-2 Sns

Miova ny fangatahana fampiraisana, noho izany dia mila mamaritra ny anaran'ny sampana Pantheon isika. Mora amin'ny GitLab - mila mampiasa fotsiny ianao fari-piainana voafaritra mialoha.

Afaka mandray isika $CI_MERGE_REQUEST_IIDmba hamaritana ny laharana fangatahana fanakambanana. Andao hampihatra izany rehetra izany miaraka amin'ireo fari-piainan'ny tontolo iainana maneran-tany izay nofaritanay teo aloha ary ampio asa vaovao: multidev amin'ny faran'ny rakitra .gitlab-ci.yml.

deploy:multidev:
  stage: deploy
  environment:
    name: multidev/mr-$CI_MERGE_REQUEST_IID
    url: https://mr-$CI_MERGE_REQUEST_IID-$PANTHEON_SITE.pantheonsite.io/
  script:
    # Checkout the merge request source branch
    - git checkout $CI_COMMIT_REF_NAME
    # Add the Pantheon git repository as an additional remote
    - git remote add pantheon $PANTHEON_GIT_URL
    # Push the merge request source branch to Pantheon
    - git push pantheon $CI_COMMIT_REF_NAME:mr-$CI_MERGE_REQUEST_IID --force
  only:
    - merge_requests

Ho mitovy amin'ny asantsika izany deploy:dev, ny sampana ihany no alefa any Pantheon fa tsy any master.

Nampiana sy natolotray ny rakitra nohavaozina .gitlab-ci.yml, ary ankehitriny andeha hanosika sampana vaovao mankany GitLab miaraka amin'ny git push -u origin multidev-support.

Andeha isika hamorona fangatahana fanakambanana vaovao avy amin'ny sampana multidev-supportamin'ny fanerena Mamorona fangatahana fampitambatra.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Rehefa avy namorona fangatahana fampiraisana isika dia mijery ny fomba fanatanterahana ny asa CI/CD deploy:multidev.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Jereo fa nisy kofehy vaovao nalefa tany Pantheon. Fa raha mankany amin'ny fizarana multidev ao amin'ny dashboard tranokala Pantheon isika dia tsy hahita ny tontolo vaovao ao.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Andeha hojerentsika ny fizarana Git Branches.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Vokatr'izany, ny lohanay mr-1 tonga tany Pantheon. Andao hamorona tontolo iainana avy amin'ny sampana mr-1.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

Namorona tontolo iainana multidev izahay, andao hiverina any amin'ny GitLab ary hijery ilay fizarana Operations > Tontolo iainana. Ho hitantsika ny fidirana ho an'ny dev ΠΈ mr-1.

Izany dia satria nampiditra fidirana izahay environment Miaraka amin'ny anarany name ΠΈ url amin'ny asa CI/CD. Raha manindry ny kisary tontolo iainana misokatra isika dia hoentina any amin'ny URL an'ny tontolo multidev ao amin'ny Pantheon.

Ataovy ho azy ny famoronana multidev

Amin'ny ankapobeny, afaka mijanona eto ianao ary tadidio fotsiny ny hamorona tontolo multidev ho an'ny fangatahana fampiraisana tsirairay, fa ity dingana ity dia azo automatique.

Pantheon dia manana fitaovana andalana baiko gara farany, izay ahafahanao miasa miaraka amin'ny sehatra ho azy. Terminus dia ahafahanao mamorona tontolo multidev avy amin'ny baiko baiko - mety tsara ho an'ny GitLab CI.

Mila fangatahana fampivondronana vaovao izahay hanandrana izany. Andao hamorona sampana vaovao mampiasa git checkout -b auto-multidev-creation.

Raha hampiasa ny Terminus amin'ny asa GitLab CI/CD dia mila mari-pamantarana ho an'ny fanamarinana miaraka amin'i Terminus sy sary fitoeran-javatra misy Terminus ianao.

Mamorona ny Pantheon Machine Token, tehirizo ao amin'ny toerana azo antoka ary ampio ho toy ny fari-piainana manerantany ao amin'ny GitLab miaraka amin'ny anarana PANTHEON_MACHINE_TOKEN.

Raha adinonao ny fomba hanampiana ny fari-piainan'ny GitLab dia miverena any amin'izay nofaritanay PANTHEON_SITE.

Mamorona Dockerfile miaraka amin'ny Terminus

Raha tsy mampiasa Docker ianao na tsy tia rakitra Dockerfile, alaivo ny sariko registry.gitlab.com/ataylorme/pantheon-gitlab-blog-demo:latest ary tsidiho ity fizarana ity.

GitLab dia manana rejisitra fitahirizana, izay ahafahantsika manangana sy mametraka ny Dockerfile ho an'ny tetikasantsika. Andao hamorona Dockerfile miaraka amin'ny Terminus hiasa amin'ny Pantheon.

Ny Terminus dia fitaovan'ny baikon'ny PHP, ka andao hanomboka amin'ny sary PHP. Mametraka Terminus amin'ny alΓ lan'ny Composer aho, ka hampiasaiko sary ofisialy Docker Composer. Mamorona isika Dockerfile ao amin'ny lahatahiry fitahirizana eo an-toerana miaraka amin'ireto atiny manaraka ireto:

# Use the official Composer image as a parent image
FROM composer:1.8

# Update/upgrade apk
RUN apk update
RUN apk upgrade

# Make the Terminus directory
RUN mkdir -p /usr/local/share/terminus

# Install Terminus 2.x with Composer
RUN /usr/bin/env COMPOSER_BIN_DIR=/usr/local/bin composer -n --working-dir=/usr/local/share/terminus require pantheon-systems/terminus:"^2"

Araho ny torolΓ lana momba ny fanangonana sy fandefasana sary avy amin'ny fizarana Manangana sy manosika sary Π² antontan-taratasy fisoratana anarana containerhanangona sary avy amin'ny Dockerfile ary manosika azy mankany GitLab.

Sokafy ny fizarana lisitra ao amin'ny tetikasa GitLab. Raha nandeha araka ny drafitra ny zava-drehetra dia ho eo ny sarintsika. Manorata rohy mankany amin'ny mari-pamantarana sary - ilaintsika ho an'ny rakitra .gitlab-ci.yml.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

fizarana script amin'ny olana deploy:multidev manomboka mitombo, ka aleo afindra amin'ny rakitra mitokana. Mamorona rakitra vaovao private/multidev-deploy.sh:

#!/bin/bash

# Store the mr- environment name
export PANTHEON_ENV=mr-$CI_MERGE_REQUEST_IID

# Authenticate with Terminus
terminus auth:login --machine-token=$PANTHEON_MACHINE_TOKEN

# Checkout the merge request source branch
git checkout $CI_COMMIT_REF_NAME

# Add the Pantheon Git repository as an additional remote
git remote add pantheon $PANTHEON_GIT_URL

# Push the merge request source branch to Pantheon
git push pantheon $CI_COMMIT_REF_NAME:$PANTHEON_ENV --force

# Create a function for determining if a multidev exists
TERMINUS_DOES_MULTIDEV_EXIST()
{
    # Stash a list of Pantheon multidev environments
    PANTHEON_MULTIDEV_LIST="$(terminus multidev:list ${PANTHEON_SITE} --format=list --field=id)"

    while read -r multiDev; do
        if [[ "${multiDev}" == "$1" ]]
        then
            return 0;
        fi
    done <<< "$PANTHEON_MULTIDEV_LIST"

    return 1;
}

# If the mutltidev doesn't exist
if ! TERMINUS_DOES_MULTIDEV_EXIST $PANTHEON_ENV
then
    # Create it with Terminus
    echo "No multidev for $PANTHEON_ENV found, creating one..."
    terminus multidev:create $PANTHEON_SITE.dev $PANTHEON_ENV
else
    echo "The multidev $PANTHEON_ENV already exists, skipping creating it..."
fi

Ny script dia ao amin'ny lahatahiry manokana ary tsy mamela ny fidirana amin'ny tranonkala amin'ny Pantheon. Manana script ho an'ny lojika multidev izahay. Andeha isika hanavao ny fizarana deploy:multidev rakitra .gitlab-ci.ymlka dia toy izao no miseho:

deploy:multidev:
  stage: deploy
  environment:
    name: multidev/mr-$CI_MERGE_REQUEST_IID
    url: https://mr-$CI_MERGE_REQUEST_IID-$PANTHEON_SITE.pantheonsite.io/
  script:
    # Run the multidev deploy script
    - "/bin/bash ./private/multidev-deploy.sh"
  only:
    - merge_requests

Mila maka antoka isika fa ny asantsika dia vita amin'ny sary namboarina noforonina, koa andao asiana famaritana image avy amin'ny URL rejisitra mankany .gitlab-ci.yml. Vokatr'izany dia nahazo rakitra tahaka izao izahay .gitlab-ci.yml:

image: registry.gitlab.com/ataylorme/pantheon-gitlab-blog-demo:latest

stages:
- deploy

before_script:
  # See https://docs.gitlab.com/ee/ci/ssh_keys/README.html
  - eval $(ssh-agent -s)
  - echo "$SSH_PRIVATE_KEY" | tr -d 'r' | ssh-add - > /dev/null
  - mkdir -p $HOME/.ssh && echo "StrictHostKeyChecking no" >> "$HOME/.ssh/config"
  - git config --global user.email "$GITLAB_USER_EMAIL"
  - git config --global user.name "Gitlab CI"

deploy:dev:
  stage: deploy
  environment:
    name: dev
    url: https://dev-$PANTHEON_SITE.pantheonsite.io/
  script:
    - git remote add pantheon $PANTHEON_GIT_URL
    - git push pantheon master --force
  only:
    - master

deploy:multidev:
  stage: deploy
  environment:
    name: multidev/mr-$CI_MERGE_REQUEST_IID
    url: https://mr-$CI_MERGE_REQUEST_IID-$PANTHEON_SITE.pantheonsite.io/
  script:
    # Run the multidev deploy script
    - "/bin/bash ./private/multidev-deploy.sh"
  only:
    - merge_requests

Ampio, manolora ary alefaso private/multidev-deploy.sh ΠΈ .gitlab-ci.yml. Miverina any GitLab isika izao ary miandry ny asa CI/CD ho vita. Mahareta: afaka maka minitra maromaro ny multidev vao mamorona.

Avy eo isika dia mijery ny lisitry ny multidev ao amin'ny Pantheon. Fahagagana Γ΄! Multidev tontolo iainana mr-2 efa eto.

Ahoana ny fampifandraisana ny GitLab sy Pantheon ary manatsara ny Drupal sy WordPress Workflows

famaranana

Nahafinaritra kokoa ny ekipako rehefa nanomboka nanokatra fangatahana fanakambanana sy namorona tontolo ho azy izahay.

Miaraka amin'ny fitaovana mahery an'ny GitLab sy Pantheon, azonao atao ny mampifandray an'i GitLab amin'ny Pantheon ho azy.

Koa satria mampiasa GitLab CI/CD izahay, dia hanana toerana hitomboan'ny asantsika. Ireto misy hevitra roa hanombohana anao:

Ampahafantaro anay ny hevitrao momba ny GitLab, Pantheon ary ny automation.

PS Fantatrao ve fa Terminus, fitaovana andalana baikon'ny Pantheon, azo itarina amin'ny alΓ lan'ny plugins?

Izahay ato amin'ny Pantheon dia nanao asa tsara tamin'ny version 2 an'ny anay plugin ho an'ny fitaovana fananganana Terminus miaraka amin'ny fanohanana GitLab. Raha tsy te hanahirana anao amin'ny fikandrana ho an'ny tetikasa tsirairay ianao, andramo ity plugin ity ary ampio izahay hizaha ny v2 beta. Ho an'ny ekipa Terminus build:project:create Ny marika Pantheon sy ny marika GitLab ihany no ilainao. Hametraka ny iray amin'ireo tetikasa santionany miaraka amin'ny Composer sy fitiliana mandeha ho azy izy, hamorona tetikasa vaovao ao amin'ny GitLab, tranokala Pantheon vaovao, ary hampifandray azy ireo amin'ny fampiasana ny fari-piainan'ny tontolo iainana sy ny fanalahidy SSH.

Momba ny mpanoratra

Andrew Taylor dia mamorona fitaovana ho an'ny mpamorona ao Pantheon.

Source: www.habr.com

Add a comment