Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress
Người tạo công cụ dành cho nhà phát triển khách của chúng tôi tại Pantheon nói về cách tự động hóa việc triển khai WordPress bằng GitLab CI/CD.

В Đền Tôi làm việc trong lĩnh vực quan hệ nhà phát triển, vì vậy tôi luôn tìm kiếm những cách mới để giúp các nhà phát triển WordPress và Drupal giải quyết các vấn đề tự động hóa trong quy trình làm việc của họ. Để làm được điều này, tôi thích thử nghiệm các công cụ mới và kết hợp chúng với nhau để hoạt động hiệu quả.

Tôi thường thấy các nhà phát triển gặp khó khăn với một máy chủ dàn dựng duy nhất.

Thật là vui khi chờ đến lượt bạn sử dụng máy chủ trung gian hoặc gửi cho khách hàng một URL kèm theo ghi chú: “Nhìn vào đây, nhưng chưa nhìn vào đây”.

Môi trường đa nhà phát triển - một trong những công cụ Pantheon thú vị - giải quyết vấn đề này, vì với chúng, bạn có thể tạo môi trường cho các nhánh Git theo yêu cầu. Mỗi môi trường multidev có URL và cơ sở dữ liệu riêng, vì vậy các nhà phát triển có thể làm việc lặng lẽ, kiểm tra chất lượng và nhận được sự chấp thuận mà không cần phải dẫm chân lên nhau.

Nhưng Pantheon không có công cụ kiểm soát phiên bản hoặc tích hợp và triển khai liên tục (CI/CD). Nhưng nó là một nền tảng linh hoạt mà bạn có thể tích hợp bất kỳ công cụ nào.

Tôi cũng nhận thấy rằng các nhóm sử dụng một số công cụ nhất định để phát triển và các công cụ khác nhau để lắp ráp và triển khai.

Ví dụ: họ có các công cụ khác nhau để kiểm soát phiên bản và CI/CD. Bạn phải loay hoay và chuyển đổi giữa các công cụ để chỉnh sửa mã và chẩn đoán sự cố.

Trên GitLab có một bộ công cụ phát triển đầy đủ: để kiểm soát phiên bản, vé, yêu cầu hợp nhất, quy trình CI/CD tốt nhất, sổ đăng ký vùng chứa và mọi thứ tương tự. Tôi chưa từng thấy ứng dụng nào cung cấp nhiều tính năng như vậy để quản lý quy trình phát triển của bạn.

Tôi yêu thích tự động hóa nên đã học cách kết nối Pantheon với GitLab để cam kết với nhánh chính trên GitLab được triển khai vào môi trường phát triển chính trong Pantheon. Và các yêu cầu hợp nhất trên GitLab có thể tạo và triển khai mã tới môi trường multidev trong Pantheon.

Trong hướng dẫn này, tôi sẽ hướng dẫn bạn cách thiết lập kết nối giữa GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc WordPress và Drupal của bạn.

Tất nhiên là có thể, kho lưu trữ nhân bản GitLab, nhưng chúng tôi sẽ làm mọi thứ bằng chính đôi tay của mình để tìm hiểu sâu hơn CI GitLab và trong tương lai, hãy sử dụng công cụ này không chỉ để triển khai.

Giới thiệu

Đối với bài đăng này, bạn cần hiểu rằng Pantheon chia mỗi trang web thành ba thành phần: mã, cơ sở dữ liệu và tệp.

Mã này bao gồm các tệp CMS như lõi, plugin và chủ đề WordPress. Các tập tin này được quản lý trong Kho Git, được lưu trữ bởi Pantheon, nghĩa là chúng tôi có thể triển khai mã từ GitLab đến Pantheon bằng Git.
Các tệp trong Pantheon là các tệp phương tiện, tức là hình ảnh cho trang web. Thông thường chúng được người dùng tải lên và Git bỏ qua chúng.

Tạo một tài khoản miễn phí, tìm hiểu thêm về Quy trình làm việc của Pantheon hoặc đăng ký bản demo tại pantheon.io.

Giả định

Dự án của tôi trên Pantheon và GitLab có tên là pantheon-gitlab-blog-demo. Tên dự án phải là duy nhất. Ở đây chúng tôi sẽ làm việc với một trang web WordPress. Bạn có thể dùng Drupal, nhưng bạn sẽ cần thay đổi một số thứ.

tôi sẽ sử dụng Dòng lệnh Gitvà bạn có thể làm việc ở Giao diện đồ họa, nếu bạn muốn.

Tạo một dự án

Đầu tiên, hãy tạo Dự án GitLab (chúng ta sẽ quay lại vấn đề này sau).

Bây giờ tạo trang web WordPress trên Pantheon. Sau đó, chúng tôi cài đặt WordPress cho bảng điều khiển trang web.

Nếu tay bạn đang muốn thay đổi thứ gì đó, chẳng hạn như xóa hoặc thêm plugin, hãy kiên nhẫn. Trang web chưa được kết nối với GitLab và chúng tôi muốn tất cả các thay đổi mã đều phải thông qua GitLab.

Sau khi chúng tôi cài đặt WordPress, hãy quay lại bảng điều khiển trang web Pantheon và thay đổi chế độ phát triển thành Git.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Cam kết ban đầu trên GitLab

Bây giờ bạn cần chuyển mã WordPress ban đầu từ trang Pantheon sang GitLab. Để thực hiện việc này, chúng tôi sao chép cục bộ mã từ kho lưu trữ Git của trang Pantheon, sau đó gửi mã đó đến kho lưu trữ GitLab.

Để làm cho nó dễ dàng và an toàn hơn, thêm khóa SSH vào Pantheon và chúng tôi sẽ không phải nhập mật khẩu mỗi lần sao chép kho lưu trữ Pantheon Git. Đồng thời rồi thêm khóa SSH vào GitLab.

Để thực hiện việc này, hãy sao chép cục bộ trang web Pantheon bằng cách sao chép lệnh từ trường Sao chép bằng Git trên bảng điều khiển trang web.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress
Nếu bạn cần trợ giúp, hãy đọc tài liệu bắt đầu với Git cho Pantheon.

Bây giờ hãy thay đổi git remote originđể trỏ đến GitLab thay vì Pantheon. Nó có thể được thực hiện командой git remote.

Hãy truy cập dự án GitLab và sao chép URL kho lưu trữ từ danh sách thả xuống Bản sao trên trang chi tiết dự án. Hãy chọn tùy chọn Sao chép bằng SSH vì chúng tôi đã định cấu hình khóa SSH.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Theo mặc định git remote để có bản sao cục bộ của kho lưu trữ mã - origin. Điều này có thể được thay đổi c git remote set-url origin [URL репозитория GitLab], trong đó thay vì dấu ngoặc, chúng ta nhập URL thực tế.

Cuối cùng, chúng tôi khởi động git push origin master --forceđể đẩy mã WordPress từ Pantheon sang GitLab.

Tùy chọn –force chỉ cần thiết một lần. Sau đó trong các đội git push nó sẽ không có trên GitLab.

Thiết lập thông tin xác thực và biến

Bạn có nhớ cách chúng tôi thêm khóa SSH cục bộ để đăng nhập vào Pantheon và GitLab không? Mã thông báo SSH có thể được sử dụng để ủy quyền cho GitLab và Pantheon.

GitLab có tài liệu tuyệt vời. Hãy xem nào phần về khóa SSH khi sử dụng trình thực thi Docker trong tài liệu về cách sử dụng khóa SSH với GitLab CI/CD.

Bây giờ chúng ta sẽ hoàn thành hai bước đầu tiên: Hãy tạo một cặp khóa SSH mới cục bộ bằng ssh-keygen và thêm khóa riêng làm biến cho dự án.

Sau đó chúng tôi sẽ hỏi SSH_PRIVATE_KEY như Biến môi trường GitLab CI/CD trong cài đặt dự án.
Ở bước thứ ba và thứ tư, chúng ta sẽ tạo một tệp .gitlab-ci.yml với nội dung như thế này:

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"

Chúng ta chưa cam kết tập tin .gitlab-ci.yml, thì bạn sẽ cần phải thêm một cái gì đó khác vào nó.

Bây giờ chúng ta thực hiện bước thứ năm và thêm khóa chung mà bạn đã tạo ở bước đầu tiên vào các dịch vụ mà bạn cần truy cập trong môi trường xây dựng.

Trong trường hợp của chúng tôi, chúng tôi muốn truy cập Pantheon từ GitLab. Chúng ta làm theo hướng dẫn trong tài liệu của Pantheon trên thêm khóa SSH vào Pantheon và thực hiện bước này.

Hãy nhớ: SSH riêng tư có trong GitLab, SSH mở có trong Pantheon.

Hãy thiết lập thêm một vài biến môi trường. Cái đầu tiên được gọi là PANTHEON_SITE. Giá trị của nó là tên của trang Pantheon trên máy của bạn.

Tên trên máy được liệt kê ở cuối lệnh Clone with Git. Bạn đã sao chép trang web cục bộ nên đây sẽ là tên của thư mục kho lưu trữ cục bộ.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Tiếp theo, hãy thiết lập biến môi trường PANTHEON_GIT_URL. Đây là URL kho lưu trữ Git cho trang Pantheon mà chúng tôi đã sử dụng.

Chỉ nhập URL kho lưu trữ SSH, không nhập git clone và tên của trang web trên máy ở cuối.

Phù. Thế là xong, bây giờ chúng ta có thể hoàn thành tập tin của mình .gitlab-ci.yml.

Tạo nhiệm vụ triển khai

Những gì chúng tôi sẽ làm ban đầu với GitLab CI rất giống với những gì chúng tôi đã làm với kho Git trước đây. Nhưng lần này, hãy thêm kho lưu trữ Pantheon làm nguồn Git từ xa thứ hai, sau đó đẩy mã từ GitLab sang Pantheon.

Để làm điều này, hãy cấu hình giai đoạn deploy и nhiệm vụ deploy:dev, vì chúng tôi sẽ triển khai lên môi trường phát triển trên Pantheon. Tệp kết quả .gitlab-ci.yml sẽ trông như thế này:

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

Biến SSH_PRIVATE_KEY, PANTHEON_SITE и PANTHEON_GIT_URL trông quen quen - chúng tôi đã thiết lập các biến môi trường này trước đó. Với các biến này chúng ta sẽ có thể sử dụng các giá trị trong file .gitlab-ci.yml nhiều lần và chúng sẽ chỉ cần được cập nhật ở một nơi.

Cuối cùng, thêm, cam kết và gửi tệp .gitlab-ci.yml trên GitLab.

Kiểm tra việc triển khai

Nếu chúng tôi làm mọi thứ một cách chính xác, nhiệm vụ deploy:dev sẽ chạy thành công trong GitLab CI/CD và gửi cam kết .gitlab-ci.yml ở Pantheon. Chúng ta hãy xem xét.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Gửi chủ đề yêu cầu hợp nhất tới Pantheon

Ở đây chúng ta sẽ sử dụng tính năng Pantheon yêu thích của tôi − multidev, nơi bạn có thể tạo môi trường Pantheon bổ sung cho các nhánh Git theo yêu cầu.

Quyền truy cập vào multidev bị hạn chế, nên phần này có thể bỏ qua. Nhưng nếu có quyền truy cập, bạn có thể tăng năng suất một cách đáng kể bằng cách thiết lập tự động tạo môi trường nhiều nhà phát triển trên Pantheon từ các yêu cầu hợp nhất GitLab.

Trước tiên hãy tạo một nhánh Git mới cục bộ bằng cách sử dụng git checkout -b multidev-support. Bây giờ hãy thay đổi một cái gì đó một lần nữa trong .gitlab-ci.yml.

Tôi muốn đưa số yêu cầu hợp nhất vào tên môi trường Pantheon. Ví dụ: yêu cầu hợp nhất đầu tiên là mr-1, thứ hai - mr-2 Vân vân.

Yêu cầu hợp nhất thay đổi, vì vậy chúng tôi cần xác định động tên các nhánh Pantheon. Thật dễ dàng trên GitLab - bạn chỉ cần sử dụng biến môi trường được xác định trước.

Chúng ta có thể lấy $CI_MERGE_REQUEST_IIDđể chỉ định số yêu cầu hợp nhất. Hãy áp dụng tất cả những điều này cùng với các biến môi trường toàn cục mà chúng ta đã chỉ định trước đó và thêm một tác vụ triển khai: multidev mới vào cuối tệp .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

Nó sẽ tương tự như nhiệm vụ của chúng tôi deploy:dev, chỉ có nhánh được gửi tới Pantheon, không tới master.

Chúng tôi đã thêm và cam kết tập tin cập nhật .gitlab-ci.yml, và bây giờ hãy đẩy một nhánh mới tới GitLab với git push -u origin multidev-support.

Bây giờ hãy tạo một yêu cầu hợp nhất mới từ chi nhánh multidev-supportbằng cách nhấp chuột Tạo yêu cầu hợp nhất.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Sau khi tạo yêu cầu hợp nhất, chúng tôi xem cách thực thi tác vụ CI/CD deploy:multidev.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Hãy nhìn xem, một chủ đề mới đã được gửi tới Pantheon. Nhưng nếu đi tới phần multidev trên bảng điều khiển của trang Pantheon, chúng ta sẽ không thấy môi trường mới ở đó

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Hãy xem phần Chi nhánh Git.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Kết quả là, chủ đề của chúng tôi mr-1 đã tới Pantheon. Hãy tạo một môi trường từ một nhánh mr-1.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Chúng ta đã tạo một môi trường multidev, bây giờ chúng ta hãy quay lại GitLab và xem phần Hoạt động > Môi trường. Chúng ta sẽ thấy các mục cho dev и mr-1.

Điều này là do chúng tôi đã thêm một mục environment Với tên name и url vào các nhiệm vụ CI/CD. Nếu nhấp vào biểu tượng môi trường mở, chúng ta sẽ được đưa đến URL của môi trường multidev trên Pantheon.

Tự động tạo multidev

Về nguyên tắc, bạn có thể dừng ở đây và chỉ cần nhớ tạo môi trường multidev cho mỗi yêu cầu hợp nhất, nhưng quá trình này có thể được tự động hóa.

Pantheon có công cụ dòng lệnh Ga chót, nơi bạn có thể làm việc với nền tảng một cách tự động. Terminus cho phép bạn tạo môi trường multidev từ dòng lệnh - lý tưởng cho CI GitLab.

Chúng tôi cần một yêu cầu hợp nhất mới để kiểm tra điều này. Hãy tạo một nhánh mới bằng cách sử dụng git checkout -b auto-multidev-creation.

Để sử dụng Terminus trong các tác vụ CI/CD của GitLab, bạn cần có mã thông báo máy để xác thực với Terminus và hình ảnh vùng chứa với Terminus.

Tạo mã thông báo máy Pantheon, lưu nó ở nơi an toàn và thêm nó dưới dạng biến môi trường toàn cầu trong GitLab với tên PANTHEON_MACHINE_TOKEN.

Nếu bạn quên cách thêm biến môi trường GitLab, hãy quay lại nơi chúng tôi đã xác định PANTHEON_SITE.

Tạo Dockerfile với Terminus

Nếu bạn không sử dụng Docker hoặc không thích tập tin Dockerfile, chụp ảnh của tôi registry.gitlab.com/ataylorme/pantheon-gitlab-blog-demo:latest và bỏ qua phần này.

GitLab có cơ quan đăng ký vùng chứa, nơi chúng ta có thể xây dựng và đặt Dockerfile cho dự án của mình. Hãy tạo một Dockerfile với Terminus để hoạt động với Pantheon.

Terminus là một công cụ dòng lệnh PHP, vì vậy hãy bắt đầu với hình ảnh PHP. Tôi đang cài đặt Terminus thông qua Composer nên tôi sẽ sử dụng hình ảnh Docker Composer chính thức. Chúng tôi tạo ra Dockerfile trong thư mục kho lưu trữ cục bộ với nội dung sau:

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

Làm theo hướng dẫn để ghép và gửi hình ảnh từ phần Xây dựng và đẩy hình ảnh в tài liệu đăng ký containerđể thu thập một hình ảnh từ Dockerfile và đẩy nó vào GitLab.

Mở phần Đăng ký trong dự án GitLab. Nếu mọi thứ diễn ra theo đúng kế hoạch, hình ảnh của chúng ta sẽ ở đó. Viết một liên kết đến thẻ hình ảnh - chúng tôi cần nó cho tập tin .gitlab-ci.yml.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Mục script trong vấn đề deploy:multidev đang bắt đầu phát triển, vì vậy hãy chuyển nó sang một tệp riêng. Tạo một tập tin mới 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

Tập lệnh nằm trong một thư mục riêng và không cho phép truy cập web vào Pantheon. Chúng tôi có một tập lệnh cho logic multidev của mình. Bây giờ chúng ta hãy cập nhật phần deploy:multidev tập tin .gitlab-ci.ymlđể nó thành ra thế này:

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

Chúng ta cần đảm bảo rằng các tác vụ của mình được thực hiện trong hình ảnh tùy chỉnh đã tạo, vì vậy hãy thêm một định nghĩa image từ URL đăng ký tới .gitlab-ci.yml. Kết quả là chúng tôi đã có được một tệp như thế này .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

Thêm, cam kết và gửi private/multidev-deploy.sh и .gitlab-ci.yml. Bây giờ chúng ta quay lại GitLab và đợi tác vụ CI/CD hoàn thành. Hãy kiên nhẫn: multidev có thể mất vài phút để tạo.

Sau đó chúng ta xem danh sách multidev trên Pantheon. Ôi phép lạ! Môi trường đa nhà phát triển mr-2 đã ở đây rồi.

Cách kết nối GitLab và Pantheon cũng như tối ưu hóa quy trình làm việc của Drupal và WordPress

Kết luận

Nhóm của tôi vui hơn rất nhiều khi chúng tôi bắt đầu mở các yêu cầu hợp nhất và tạo môi trường một cách tự động.

Với các công cụ mạnh mẽ của GitLab và Pantheon, bạn có thể tự động kết nối GitLab với Pantheon.

Vì chúng tôi sử dụng GitLab CI/CD nên quy trình làm việc của chúng tôi sẽ có chỗ để phát triển. Dưới đây là một vài ý tưởng để giúp bạn bắt đầu:

Hãy cho tôi biết suy nghĩ của bạn về GitLab, Pantheon và tự động hóa.

Tái bút Bạn có biết rằng Terminus, công cụ dòng lệnh của Pantheon, có thể được mở rộng thông qua plugin?

Chúng tôi ở Pantheon đã làm rất tốt phiên bản 2 của chúng tôi. plugin cho công cụ xây dựng Terminus với sự hỗ trợ của GitLab. Nếu bạn không muốn bận tâm đến cài đặt cho từng dự án, hãy thử plugin này và giúp chúng tôi kiểm tra phiên bản beta v2. Dành cho nhóm Terminus build:project:create Bạn chỉ cần mã thông báo Pantheon và mã thông báo GitLab. Cô ấy sẽ triển khai một trong các dự án mẫu với Composer và thử nghiệm tự động, tạo một dự án mới trong GitLab, một trang Pantheon mới và kết nối chúng bằng cách sử dụng các biến môi trường và khóa SSH.

Thông tin về các Tác giả

Andrew Taylor tạo ra các công cụ dành cho nhà phát triển trong Đền.

Nguồn: www.habr.com

Thêm một lời nhận xét