Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress
Krijuesi ynë i mjeteve të zhvilluesve të ftuar në Pantheon flet se si të automatizohen vendosjet e WordPress duke përdorur GitLab CI/CD.

В Panteon Unë punoj në marrëdhëniet me zhvilluesit, kështu që jam gjithmonë në kërkim të mënyrave të reja për të ndihmuar zhvilluesit e WordPress dhe Drupal të zgjidhin problemet e automatizimit në rrjedhat e tyre të punës. Për ta bërë këtë, më pëlqen të eksperimentoj me mjete të reja dhe t'i kombinoj ato me njëra-tjetrën për të punuar në mënyrë efektive.

Unë shpesh shoh zhvillues që luftojnë me një server të vetëm skenik.

Është një kënaqësi e madhe të presësh radhën tënde për të përdorur një server të ndërmjetëm ose për t'u dërguar klientëve një URL me shënimin: "Shiko këtu, por mos shiko akoma këtu".

Mjediset Multidev - një nga mjetet më të mira të Pantheon - e zgjidh këtë problem, sepse me to mund të krijoni mjedise për degët e Git sipas kërkesës. Çdo mjedis multidev ka URL-në dhe bazën e të dhënave të tij, kështu që zhvilluesit mund të punojnë në heshtje, të kontrollojnë cilësinë dhe të marrin miratim pa shkelur gishtat e njëri-tjetrit.

Por Pantheon nuk ka mjete për kontrollin e versionit ose integrimin dhe vendosjen e vazhdueshme (CI/CD). Por është një platformë fleksibël me të cilën mund të integroni çdo mjet.

Vura re gjithashtu se ekipet përdorin mjete të caktuara për zhvillim, dhe të ndryshme për montim dhe vendosje.

Për shembull, ata kanë mjete të ndryshme për kontrollin e versionit dhe CI/CD. Ju duhet të lëvizni dhe të kaloni midis mjeteve për të modifikuar kodin dhe për të diagnostikuar problemet.

Mbi GitLab ekziston një grup i plotë mjetesh zhvillimi: për kontrollin e versionit, biletat, kërkesat për bashkim, një tubacion CI/CD më i mirë në klasë, një regjistër kontejnerësh dhe gjithçka të ngjashme. Unë nuk kam hasur ende në një aplikacion që ofron kaq shumë për të menaxhuar rrjedhën e punës tuaj të zhvillimit.

Më pëlqen automatizimi, kështu që mësova se si të lidh Pantheon me GitLab në mënyrë që angazhimet në degën kryesore në GitLab të vendosen në mjedisin kryesor të zhvillimit në Pantheon. Dhe kërkesat për bashkim në GitLab mund të krijojnë dhe vendosin kodin në mjediset multidev në Pantheon.

Në këtë tutorial, unë do t'ju tregoj se si të vendosni një lidhje midis GitLab dhe Pantheon dhe të optimizoni rrjedhën tuaj të punës në WordPress dhe Drupal.

Sigurisht që është e mundur, pasqyroni depon e GitLab, por ne do të bëjmë gjithçka me duart tona për t'u thelluar GitLab CI dhe në të ardhmen përdorni këtë mjet jo vetëm për vendosje.

Paraqitje

Për këtë postim, duhet të kuptoni se Pantheon ndan çdo faqe në tre elementë: kodin, bazën e të dhënave dhe skedarët.

Kodi përfshin skedarë CMS si bërthama e WordPress, shtojcat dhe temat. Këto skedarë menaxhohen në Depot Git, i organizuar nga Pantheon, që do të thotë se ne mund të vendosim kodin nga GitLab në Pantheon me Git.
Skedarët në Pantheon janë skedarë mediatikë, domethënë imazhe për sitin. Zakonisht ato ngarkohen nga përdoruesit dhe Git i injoron ato.

Krijo një llogari falas, mësoni më shumë rreth Rrjedha e punës Pantheon ose regjistrohu për një demonstrim në pantheon.io.

Supozimet

Projekti im në Pantheon dhe GitLab quhet pantheon-gitlab-blog-demo. Emri i projektit duhet të jetë unik. Këtu do të punojmë me një faqe WordPress. Ju mund të merrni Drupal, por do t'ju duhet të ndryshoni disa gjëra.

do të përdor Linja e komandës Gitdhe ju mund të punoni në ndërfaqe grafike, nëse dëshironi.

Krijo një projekt

Së pari, le të krijojmë Projekti GitLab (do t'i kthehemi kësaj më vonë).

Tani duke krijuar një faqe interneti WordPress në Pantheon. Më pas instalojmë WordPress për panelin e faqes.

Nëse duart tuaja kruhen për të ndryshuar diçka, për shembull, hiqni ose shtoni shtojca, jini të durueshëm. Faqja nuk është ende e lidhur me GitLab dhe ne duam që të gjitha ndryshimet e kodit të kalojnë përmes GitLab.

Pasi të instalojmë WordPress, kthehuni te paneli i faqes së internetit të Pantheon dhe ndryshoni mënyrën e zhvillimit në Git.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Angazhimi fillestar në GitLab

Tani ju duhet të transferoni kodin fillestar të WordPress nga faqja e Pantheon në GitLab. Për ta bërë këtë, ne klonojmë kodin nga depoja Git e faqes Pantheon në vend, dhe më pas e dërgojmë atë në depo GitLab.

Për ta bërë më të lehtë dhe më të sigurt, shtoni një çelës SSH në Pantheon dhe nuk do të na duhet të fusim një fjalëkalim sa herë që klonojmë një depo të Pantheon Git. Në të njëjtën kohë tashmë shtoni një çelës SSH në GitLab.

Për ta bërë këtë, klononi faqen e internetit të Pantheon në nivel lokal duke kopjuar komandën nga fusha Clone with Git në panelin e faqes së internetit.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress
Nëse keni nevojë për ndihmë, lexoni dokumentacionin duke filluar me Git për Pantheon.

Tani le të ndryshojmë git remote originpër të treguar GitLab në vend të Pantheon. Mund të bëhet командой git remote.

Le të shkojmë te projekti GitLab dhe të kopjojmë URL-në e depove nga menyja rënëse Clone në faqen e detajeve të projektit. Le të zgjedhim opsionin Clone with SSH, sepse tashmë kemi konfiguruar çelësin SSH.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

By default git remote për një kopje lokale të depove të kodit - origin. Kjo mund të ndryshohet c git remote set-url origin [URL репозитория GitLab], ku në vend të kllapave vendosim URL-në aktuale.

Më në fund, ne nisim git push origin master --forcepër të shtyrë kodin e WordPress nga Pantheon në GitLab.

Opsioni i forcës nevojitet vetëm një herë. Pastaj në ekipe git push nuk do të jetë në GitLab.

Vendosja e kredencialeve dhe variablave

Mbani mend se si shtuam një çelës SSH në nivel lokal për t'u identifikuar në Pantheon dhe GitLab? Shenja SSH mund të përdoret për të autorizuar GitLab dhe Pantheon.

GitLab ka dokumentacion të shkëlqyer. Le të shohim seksioni për çelësat SSH kur përdorni ekzekutuesin Docker në dokument për përdorimin e çelësave SSH me GitLab CI/CD.

Tani do të përfundojmë dy hapat e parë: Le të krijojmë një çift të ri çelësash SSH në nivel lokal me ssh-keygen dhe të shtojmë çelësin privat si një variabël në projekt.

Atëherë do të pyesim SSH_PRIVATE_KEY si Variabli i mjedisit GitLab CI/CD në cilësimet e projektit.
Në hapin e tretë dhe të katërt do të krijojmë një skedar .gitlab-ci.yml me përmbajtje si kjo:

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"

Le të mos e angazhojmë akoma dosjen .gitlab-ci.yml, atëherë do t'ju duhet të shtoni diçka tjetër në të.

Tani kryejmë hapin e pestë dhe shtoni çelësin publik që keni krijuar në hapin e parë te shërbimet në të cilat keni nevojë për akses në mjedisin e ndërtimit.

Në rastin tonë, ne duam të hyjmë në Pantheon nga GitLab. Ne ndjekim udhëzimet në dokumentin Pantheon në duke shtuar një çelës SSH në Pantheon dhe kryeni këtë hap.

Mbani mend: SSH private është në GitLab, SSH e hapur është në Pantheon.

Le të vendosim disa ndryshore të tjera mjedisore. E para quhet PANTHEON_SITE. Vlera e tij është emri i faqes Pantheon në kompjuterin tuaj.

Emri në makinë është renditur në fund të komandës Clone with Git. Tashmë e keni klonuar sitin lokalisht, kështu që ky do të jetë emri i drejtorisë lokale të depove.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Më pas, le të konfigurojmë variablin e mjedisit PANTHEON_GIT_URL. Kjo është URL-ja e depove Git për faqen Pantheon që ne kemi përdorur tashmë.

Futni vetëm URL-në e depove SSH, pa git clone dhe emri i faqes në makinë në fund.

Phew. Kjo është bërë, tani ne mund të përfundojmë dosjen tonë .gitlab-ci.yml.

Krijo një detyrë vendosjeje

Ajo që ne fillimisht do të bëjmë me GitLab CI është shumë e ngjashme me atë që kemi bërë me depot e Git në të kaluarën. Por këtë herë, le të shtojmë depon e Pantheon si një burim të dytë të largët Git, dhe më pas shtyjmë kodin nga GitLab në Pantheon.

Për ta bërë këtë, le të konfigurojmë fazë deploy и detyrë deploy:dev, sepse ne do të vendosemi në mjedisin e zhvillimit në Pantheon. Skedari që rezulton .gitlab-ci.yml будет выглядеть так:

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

variabla SSH_PRIVATE_KEY, PANTHEON_SITE и PANTHEON_GIT_URL duhet të duken të njohura - ne i vendosëm këto variabla të mjedisit më herët. Me këto variabla do të jemi në gjendje të përdorim vlerat në skedar .gitlab-ci.yml shumë herë, dhe ato do të duhet vetëm të përditësohen në një vend.

Së fundi, shtoni, angazhoni dhe dërgoni skedarin .gitlab-ci.yml në GitLab.

Kontrollimi i vendosjes

Nëse kemi bërë gjithçka siç duhet, detyra deploy:dev do të ekzekutohet me sukses në GitLab CI/CD dhe do të dorëzojë një commit .gitlab-ci.yml në Panteon. Le të hedhim një vështrim.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Dërgimi i temave të kërkesës për bashkim te Pantheon

Këtu do të përdorim funksionin tim të preferuar Pantheon − multidev, ku mund të krijoni mjedise shtesë Pantheon për degët e Git sipas kërkesës.

Qasja në multidev është e kufizuar, kështu që ky seksion mund të anashkalohet. Por nëse keni akses, mund të rrisni seriozisht produktivitetin duke vendosur krijimin automatik të mjediseve multidev në Pantheon nga kërkesat e bashkimit të GitLab.

Së pari le të krijojmë një degë të re Git në nivel lokal duke përdorur git checkout -b multidev-support. Tani le të ndryshojmë diçka përsëri në .gitlab-ci.yml.

Më pëlqen të përfshij numrin e kërkesës për bashkim në emrin e mjedisit Pantheon. Për shembull, kërkesa e parë për bashkim është mr-1, e dyta - mr-2 etj.

Kërkesa për bashkim ndryshon, kështu që ne duhet të përcaktojmë në mënyrë dinamike emrat e degëve të Pantheon. Është e lehtë në GitLab - thjesht duhet ta përdorni variablat e mjedisit të paracaktuar.

Ne mund të marrim $CI_MERGE_REQUEST_IIDpër të specifikuar numrin e kërkesës për bashkim. Le t'i zbatojmë të gjitha këto së bashku me variablat globale të mjedisit që specifikuam më parë dhe të shtojmë një detyrë të re deploy:multidev në fund të skedarit .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

Do të jetë e ngjashme me detyrën tonë deploy:dev, vetëm dega dërgohet në Panteon, jo në master.

Ne kemi shtuar dhe kryer skedarin e përditësuar .gitlab-ci.yml, dhe tani le të shtyjmë një degë të re në GitLab me git push -u origin multidev-support.

Tani le të krijojmë një kërkesë të re për bashkim nga dega multidev-supportduke shtypur Krijo kërkesë për bashkim.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Pasi kemi krijuar një kërkesë për bashkim, ne shikojmë se si ekzekutohet detyra CI/CD deploy:multidev.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Shikoni, një temë e re është dërguar në Pantheon. Por nëse shkojmë në seksionin multidev në panelin e faqes Pantheon, nuk do të shohim mjedisin e ri atje

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Le të shohim seksionin Git Branches.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Si rezultat, filli ynë mr-1 mbërriti në Panteon. Le të krijojmë një mjedis nga një degë mr-1.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Ne kemi krijuar një mjedis multidev, tani le të kthehemi te GitLab dhe të shohim seksionin Operacionet > Mjediset. Ne do të shohim hyrjet për dev и mr-1.

Kjo është për shkak se kemi shtuar një hyrje environment Me emër name и url në detyrat CI/CD. Nëse klikojmë në ikonën e mjedisit të hapur, do të çojmë në URL-në e mjedisit multidev në Pantheon.

Automatizoni krijimin e multidev

Në parim, mund të ndaleni këtu dhe thjesht mos harroni të krijoni një mjedis multidev për çdo kërkesë bashkimi, por ky proces mund të automatizohet.

Pantheon ka një mjet të linjës së komandës Kufi, ku mund të punoni automatikisht me platformën. Terminus ju lejon të krijoni mjedise multidev nga linja e komandës - ideale për GitLab CI.

Na duhet një kërkesë e re për bashkim për ta testuar këtë. Le të krijojmë një degë të re duke përdorur git checkout -b auto-multidev-creation.

Për të përdorur Terminus në detyrat CI/CD të GitLab, ju nevojitet një kod makine për vërtetim me Terminus dhe një imazh kontejneri me Terminus.

Krijimi i një Tokeni të Makinerisë Pantheon, ruajeni në një vend të sigurt dhe shtojeni si një variabël mjedisor global në GitLab me emrin PANTHEON_MACHINE_TOKEN.

Nëse keni harruar se si të shtoni variablat e mjedisit GitLab, kthehuni atje ku përcaktuam PANTHEON_SITE.

Krijimi i një skedari Docker me Terminus

Nëse nuk përdorni Docker ose nuk ju pëlqejnë skedarët Dockerfile, merr imazhin tim registry.gitlab.com/ataylorme/pantheon-gitlab-blog-demo:latest dhe kaloni këtë seksion.

GitLab ka një regjistër të kontejnerëve, ku mund të ndërtojmë dhe vendosim Dockerfile për projektin tonë. Le të krijojmë një Dockerfile me Terminus për të punuar me Pantheon.

Terminus është një mjet i linjës së komandës PHP, kështu që le të fillojmë me imazhin PHP. Unë jam duke instaluar Terminus përmes Composer, kështu që do ta përdor imazhi zyrtar i Docker Composer. Ne krijojmë Dockerfile në drejtorinë lokale të depove me përmbajtjen e mëposhtme:

# 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"

Ndiqni udhëzimet për montimin dhe dërgimin e imazheve nga seksioni Ndërtoni dhe shtyni imazhe в dokumentacioni i regjistrit të kontejnerëvepër të mbledhur një imazh nga Dockerfile dhe shtyje atë te GitLab.

Hapja e seksionit regjistrimi në projektin GitLab. Nëse gjithçka shkoi sipas planit, imazhi ynë do të jetë aty. Shkruani një lidhje me etiketën e imazhit - na nevojitet për skedarin .gitlab-ci.yml.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

seksion script në problem deploy:multidev po fillon të rritet, kështu që le ta zhvendosim atë në një skedar të veçantë. Krijo një skedar të ri 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

Skripti është në një drejtori private dhe nuk lejon hyrjen në ueb në Pantheon. Ne kemi një skript për logjikën tonë multidev. Le të përditësojmë tani seksionin deploy:multidev dosje .gitlab-ci.ymlkështu që rezulton kështu:

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

Ne duhet të sigurohemi që detyrat tona të kryhen në imazhin e krijuar me porosi, kështu që le të shtojmë një përkufizim image nga URL e regjistrit në .gitlab-ci.yml. Si rezultat, ne përfunduam me një skedar si ky .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

Shtoni, angazhoni dhe dërgoni private/multidev-deploy.sh и .gitlab-ci.yml. Tani kthehemi në GitLab dhe presim që detyra CI/CD të përfundojë. Jini të durueshëm: multidev mund të marrë disa minuta për të krijuar.

Pastaj shkojmë të shikojmë listën multidev në Pantheon. O mrekulli! Mjedisi Multidev mr-2 tashmë këtu.

Si të lidhni GitLab dhe Pantheon dhe të optimizoni rrjedhat e punës së Drupal dhe WordPress

Përfundim

Ekipi im u argëtua shumë më tepër kur filluam të hapnim kërkesat për bashkim dhe të krijonim mjedise automatikisht.

Me mjetet e fuqishme të GitLab dhe Pantheon, ju mund ta lidhni GitLab me Pantheon automatikisht.

Meqenëse ne përdorim GitLab CI/CD, rrjedha jonë e punës do të ketë vend për t'u rritur. Këtu janë disa ide për të filluar:

Na tregoni se çfarë mendoni për GitLab, Pantheon dhe automatizimin.

PS A e dini se Terminus, mjeti i linjës së komandës së Pantheon, mund të zgjerohet nëpërmjet shtojcave?

Ne në Pantheon kemi bërë një punë të mirë në versionin 2 të tonë shtojcë për mjetet e ndërtimit të Terminus me mbështetjen e GitLab. Nëse nuk doni të shqetësoheni me cilësimet për secilin projekt, provoni këtë shtesë dhe na ndihmoni të testojmë versionin beta të v2. Për ekipin Terminus build:project:create Ju duhet vetëm një shenjë Pantheon dhe një shenjë GitLab. Ajo do të vendosë një nga projektet e mostrës me Composer dhe testimin e automatizuar, do të krijojë një projekt të ri në GitLab, një faqe e re Pantheon, dhe do t'i lidhë ato duke përdorur variablat e mjedisit dhe çelësat SSH.

Rreth Autorit

Andrew Taylor krijon mjete për zhvilluesit në Panteon.

Burimi: www.habr.com

Shto një koment