PHP 프로그램의 자동화된 패키징 및 배포를 위해 GitHub Actions를 사용하는 방법은 무엇입니까?

王林
풀어 주다: 2023-07-31 14:30:02
원래의
968명이 탐색했습니다.

PHP 프로그램의 자동화된 패키징 및 배포를 위해 GitHub Actions를 사용하는 방법은 무엇입니까?

소개
클라우드 컴퓨팅과 DevOps의 등장으로 소프트웨어 개발의 자동화와 지속적인 통합이 점점 더 중요해지고 있습니다. GitHub Actions는 개발자가 신속하고 효율적인 소프트웨어 개발 및 배포를 달성하는 데 도움이 되는 강력한 자동화 도구입니다. 이 기사에서는 개발 효율성을 향상시키기 위해 GitHub Actions를 사용하여 PHP 프로그램의 자동화된 패키징 및 배포를 수행하는 방법에 중점을 둘 것입니다.

1. GitHub Actions 워크플로 설정
GitHub Actions를 사용하려면 먼저 프로젝트 루트 디렉터리에 ".github/workflows"라는 폴더를 만들어야 합니다. 이 폴더에 YAML 형식 파일을 만들고 이름을 "ci.yml"로 지정합니다. 이 문서에서는 작업 흐름과 특정 단계를 정의합니다.

다음은 예제 ci.yml 파일의 내용입니다.

name: CI

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    - name: Checkout code
      uses: actions/checkout@v2

    - name: Set up PHP
      uses: shivammathur/setup-php@v2
      with:
        php-version: '7.4'

    - name: Install dependencies
      run: composer install

    - name: Run tests
      run: composer test

    - name: Build application
      run: composer build

    - name: Deploy to server
      uses: easingthemes/ssh-deploy@v2
      with:
        server: ${{ secrets.SERVER }}
        port: ${{ secrets.PORT }}
        username: ${{ secrets.USERNAME }}
        password: ${{ secrets.PASSWORD }}
        source: 'dist/'
        target: '/var/www/html'
로그인 후 복사

위 예제에서는 일련의 단계가 포함된 "build"라는 작업을 정의했습니다. 먼저 코드 저장소에서 코드를 확인한 다음 PHP 환경을 설정하고, 종속성을 설치하고, 테스트를 실행하고, 애플리케이션을 빌드하고, 마지막으로 빌드된 애플리케이션을 서버에 배포합니다.

배포 단계에서는 원격 서버에 코드를 배포하는 데 도움이 되는 오픈 소스 배포 도구인 "ssh-deploy"라는 작업을 사용한다는 점에 주목할 가치가 있습니다. 배포 중에 사용할 GitHub 저장소의 "설정"에서 일부 환경 변수를 설정해야 합니다. 예를 들어, 서버의 주소, 포트, 사용자 이름, 비밀번호 및 기타 정보를 설정해야 합니다.

2. 코드 패키징 및 배포
GitHub Actions의 워크플로에서는 다양한 명령을 실행하여 코드 패키징 및 배포를 구현할 수 있습니다. 구체적인 구현 프로세스는 프로젝트마다 다릅니다. 다음 예는 일반적인 관행입니다.

# 打包
composer build

# 部署
uses: easingthemes/ssh-deploy@v2
with:
  server: ${{ secrets.SERVER }}
  port: ${{ secrets.PORT }}
  username: ${{ secrets.USERNAME }}
  password: ${{ secrets.PASSWORD }}
  source: 'dist/'
  target: '/var/www/html'
로그인 후 복사

먼저 작곡가 명령을 사용하여 애플리케이션을 빌드하고(컴포저 빌드) 필요한 패키징 파일을 생성합니다. 그런 다음 ssh-deploy 작업을 사용하여 패키지된 파일을 원격 서버에 배포합니다. 배포 프로세스 중에 서버 관련 정보를 저장하기 위해 환경 변수를 사용한다는 점에 유의해야 합니다.

배포 단계를 수행하기 전에 서버 주소, 포트, 사용자 이름 및 비밀번호와 같은 올바른 환경 변수가 설정되었는지 확인하세요. 이러한 환경 변수는 GitHub 저장소의 "설정" - "비밀"에서 설정할 수 있습니다.

3. GitHub Actions 활성화
워크플로 정의와 코드 패키징 및 배포가 완료되면 GitHub Actions를 활성화하여 이러한 작업을 자동화할 수 있습니다.

GitHub Warehouse 페이지의 "Actions" 탭에서 정의된 워크플로 "CI"를 볼 수 있습니다. 회색이면 워크플로가 활성화되지 않았음을 의미하고, 녹색이면 워크플로가 활성화되었음을 의미합니다.

코드 커밋(푸시)을 수행하면 GitHub Actions가 자동으로 워크플로를 실행하고 단계를 실행합니다. "작업" 탭 아래의 "CI" 워크플로 페이지에서 실행 로그와 각 단계의 실행을 볼 수 있습니다.

GitHub Actions를 활성화하면 PHP 프로그램의 자동화된 패키징 및 배포를 실현하여 개발 효율성과 배포 속도를 향상시킬 수 있습니다. 수동 작업이 필요하지 않으며 코드를 제출할 때마다 워크플로가 자동으로 트리거되어 개발자의 워크플로를 단순화하는 동시에 인적 오류의 위험을 줄입니다.

결론
이 기사에서는 PHP 프로그램의 자동화된 패키징 및 배포를 위해 GitHub Actions를 사용하는 방법을 소개합니다. 워크플로우를 정의하고 적절한 단계를 설정함으로써 코드 패키징 및 배포를 쉽게 자동화할 수 있습니다. 동시에 오픈 소스 배포 도구인 "ssh-deploy"를 사용하여 원격 서버를 배포하는 방법도 언급했습니다.

GitHub Actions는 PHP 프로젝트를 지원할 뿐만 아니라 다른 언어로 프로젝트 개발 및 배포에도 사용할 수 있습니다. 이 강력한 도구를 사용하면 개발자는 코드 개발 및 최적화에 더 집중하여 작업 효율성과 소프트웨어 품질을 향상시킬 수 있습니다.

위 내용은 PHP 프로그램의 자동화된 패키징 및 배포를 위해 GitHub Actions를 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿