작가: 트릭스 사이러스
Waymap 침투 테스트 도구: 여기를 클릭하세요
TrixSec Github: 여기를 클릭하세요
GitHub Actions는 GitHub에 통합된 자동화 도구로, 워크플로, CI/CD 파이프라인, 테스트, 코드 품질 검사는 물론 저장소 내 직접 배포까지 자동화하는 기능을 제공합니다. YAML 파일을 사용하여 워크플로를 정의할 수 있으므로 트리거, 환경 및 작업을 완벽하게 제어할 수 있습니다.
새 커밋이 푸시될 때마다 코드를 테스트하고 빌드하기 위한 기본 CI 워크플로를 만드는 과정을 살펴보겠습니다.
워크플로 파일 만들기
저장소의 .github/workflows로 이동하여 ci.yml이라는 파일을 생성합니다.
워크플로 구조 정의
name: CI Workflow on: push: branches: - main pull_request: branches: - main jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: '16' - name: Install dependencies run: npm install - name: Run tests run: npm test - name: Build project run: npm run build
코드 품질을 보장하려면 워크플로에 Linting 단계를 추가할 수 있습니다.
- name: Lint code run: npm run lint
종속성 설치 후에 이 단계를 추가하면 파이프라인 초기에 코드 품질 문제를 식별하는 데 도움이 됩니다.
이제 AWS 또는 Firebase와 같은 클라우드 서비스에 자동화된 배포 단계를 추가해 보겠습니다.
Firebase CLI 설정
먼저 로컬 머신에 Firebase CLI를 설치하고 구성합니다. Firebase login:ci를 사용하여 토큰을 생성하고 GitHub 비밀번호(FIREBASE_TOKEN)로 저장합니다.
배포 단계 추가
name: CI Workflow on: push: branches: - main pull_request: branches: - main jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: '16' - name: Install dependencies run: npm install - name: Run tests run: npm test - name: Build project run: npm run build
여기서 need: build를 지정합니다. 즉, 이 배포 작업은 빌드 작업이 성공적으로 완료된 후에만 실행됩니다.
- name: Lint code run: npm run lint
deploy: needs: build runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: '16' - name: Install dependencies run: npm install - name: Build project run: npm run build - name: Deploy to Firebase env: FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }} run: | npm install -g firebase-tools firebase deploy
프로젝트가 성장함에 따라 특히 코드 형식 지정이나 보안 검색과 같은 작업의 경우 YAML 파일에서 Workflow_call을 정의하고 여러 저장소에서 재사용하여 재사용 가능한 워크플로를 만드는 것을 고려해 보세요.
GitHub Actions로 DevOps 워크플로를 자동화하면 생산성이 향상되고 인적 오류가 줄어들며 더욱 강력한 CI/CD 파이프라인이 생성됩니다. 워크플로가 백그라운드에서 원활하게 실행되므로 개발자는 배포 작업에 신경쓰지 않고 코드 작성에 더 집중할 수 있습니다. DevOps 여정에서 GitHub Actions의 잠재력을 극대화하려면 테스트부터 시작해 점차적으로 배포 및 모니터링으로 확장하세요.
이 가이드는 GitHub Actions를 사용하여 프로젝트를 구축, 테스트 및 배포하기 위한 기초를 제공합니다. 일단 익숙해지면 완전히 최적화된 DevOps 파이프라인을 위한 사용자 지정 작업, 통합 및 고급 자동화를 통해 더욱 확장할 수 있습니다.
~트릭스섹
위 내용은 GitHub Actions로 DevOps 워크플로 자동화의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!