ホームページ >バックエンド開発 >Python チュートリアル >GitHub アクションを使用して DevOps ワークフローを自動化する
著者: Trix Cyrus
ウェイマップ侵入テストツール: ここをクリック
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
コードの品質を確保するために、ワークフローに lint ステップを追加できます。
- 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
ここでは、needs: 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 パイプラインを実現できます。
~TrixSec
以上がGitHub アクションを使用して DevOps ワークフローを自動化するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。