actions hero background image

GitHub Actions iconGitHub Actions

アイデアからリリースまでのワークフローを自動化

GitHub Actionsを使用することで、高機能のCI / CDですべてのソフトウェアワークフローを簡単に自動化できます。 GitHubから直接コードをビルド、テスト、デプロイします。コードレビュー、ブランチ管理、問題のトリアージを希望どおりに機能させます。

ベータ版に登録する
    • on: milestone
    • on: commit_comment
    • on: check_run
    • on: deployment
    • on: label
    • on: project_card
    • on: pull_request_comment
    • on: release
    • on: repository_vulnerability_alert
    • on: milestone
    • on: public
    • on: repository_dispatch
    • on: commit_comment
    • on: fork
    • on: deployment_status
    • on: page_build
    • on: watch
    • on: pull_request
    • on: delete
    • on: issue_comment
    • on: issues
    • on: check_suite
    • on: scheduled
    • on: pull_request_review
    • on: project_column
    • on: status
    • on: project
    • on: pull_request
    • on: delete
    • on: issue_comment
    • on: push
    • on: page_build
    • on: watch

GitHubのすべてのイベントでワークフローを起動

プッシュ、Issue、リリースなどのGitHubプラットフォームのイベントをトリガーとしてワークフローを起動しましょう。コミュニティが開発・保守し、ユーザが熟知・愛用しているサービスについて、対応するアクションを組み合わせて設定できます。

コンテナアプリの構築、Webサービスの展開、レジストリへのパッケージの公開、またはオープンソースプロジェクトへの新しいユーザーのウェルカムメッセージを自動化するなど、さまざまな用途でActionsを利用できます。

    • on: milestone
    • on: commit_comment
    • on: check_run
    • on: deployment
    • on: label
    • on: project_card
    • on: pull_request_comment
    • on: release
    • on: repository_vulnerability_alert
    • on: milestone
    • on: public
    • on: repository_dispatch
    • on: commit_comment
    • on: fork
    • on: deployment_status
    • on: page_build
    • on: watch
    • on: pull_request
    • on: delete
    • on: issue_comment
    • on: issues
    • on: check_suite
    • on: scheduled
    • on: pull_request_review
    • on: project_column
    • on: status
    • on: project
    • on: pull_request
    • on: delete
    • on: issue_comment
    • on: push
    • on: page_build
    • on: watch
Linux, macOS, Windows, and containers icon

Linux、 macOS、 Windowsおよびコンテナに対応

すべての主要なOSに対応しているためプロジェクトを簡単にビルドおよびテストできます。 VM上またはコンテナ内で直接実行できます。

Matrix builds icon

マトリックスビルド

複数のオペレーティングシステムとランタイムのバージョンを同時にテストするマトリックスワークフローで時間を節約できます。

Any language icon

あらゆる言語に対応

GitHub ActionsはNode.js, Python, Java, Ruby, PHP, Go, Rust, .NETなど、さまざまな言語に対応しています。自分が利用している言語でアプリのビルド、テストそしてデプロイが可能です。

            error-pages
  GET /
     should respond with page list
  Accept: text/html
    GET /403
       should respond with 403
    GET /404
       should respond with 404
    GET /500
       should respond with 500
  Accept: application/json
    GET /403
       should respond with 403
    GET /404
       should respond with 404
    GET /500
       should respond with 500
  Accept: text/plain
    GET /403
       should respond with 403
    GET /404
       should respond with 404
    GET /500
       should respond with 500
error
  GET /
     should respond with 500
  GET /next
     should respond with 500
  GET /missing
     should respond with 404

markdown
  GET /
     should respond with html
  GET /fail
     should respond with an error

multi-router
  GET /
     should respond with root handler
  GET /api/v1/
     should respond with APIv1 root handler
  GET /api/v1/users
     should respond with users from APIv1
  GET /api/v2/
     should respond with APIv2 root handler
  GET /api/v2/users
     should respond with users from APIv2

mvc
  GET /
     should redirect to /users
  GET /pet/0
     should get pet
  GET /pet/0/edit
     should get pet edit page
  PUT /pet/2
     should update the pet
  GET /users
     should display a list of users (70ms)
  GET /user/:id
    when present
       should display the user
       should display the users pets
    when not present
       should 404
  GET /user/:id/edit
     should display the edit form
  PUT /user/:id
     should 500 on error
     should update the user
  POST /user/:id/pet
     should create a pet for user (19ms)

params
  GET /
     should respond with instructions
  GET /user/0
     should respond with a user
  GET /user/9
     should fail to find user
  GET /users/0-2
     should respond with three users
  GET /users/foo-bar
     should fail integer parsing

resource
  GET /
     should respond with instructions
  GET /users
     should respond with all users
  GET /users/1
     should respond with user 1
  GET /users/9
     should respond with error
  GET /users/1..3
     should respond with users 1 through 3
  DELETE /users/1
     should delete user 1
  DELETE /users/9
     should fail
  GET /users/1..3.json
     should respond with users 2 and 3 as json

route-map
  GET /users
     should respond with users
  DELETE /users
     should delete users
  GET /users/:id
     should get a user
  GET /users/:id/pets
     should get a users pets
  GET /users/:id/pets/:pid
     should get a users pet

route-separation
  GET /
     should respond with index
  GET /users
     should list users
  GET /user/:id
     should get a user
     should 404 on missing user
  GET /user/:id/view
     should get a user
     should 404 on missing user (13ms)
  GET /user/:id/edit
     should get a user to edit
  PUT /user/:id/edit
     should edit a user
  POST /user/:id/edit?_method=PUT
     should edit a user
  GET /posts
     should get a list of posts

vhost
  example.com
    GET /
       should say hello
    GET /foo
       should say foo
  foo.example.com
    GET /
       should redirect to /foo
  bar.example.com
    GET /
       should redirect to /bar

web-service
  GET /api/users
    without an api key
       should respond with 400 bad request
    with an invalid api key
       should respond with 401 unauthorized
    with a valid api key
       should respond users json
  GET /api/repos
    without an api key
       should respond with 400 bad request
    with an invalid api key
       should respond with 401 unauthorized
    with a valid api key
       should respond repos json

GET /api/user/:name/repos
  without an api key
     should respond with 400 bad request
  with an invalid api key
     should respond with 401 unauthorized
  with a valid api key
     should respond user repos json
     should 404 with unknown user

when requesting an invalid route
   should respond with 404 json

1123 passing (4s)

=============================================================================
Writing coverage object [/home/runner/build/expressjs/express/coverage/coverage.json]
Writing coverage reports at [/home/runner/build/expressjs/express/coverage]
=============================================================================

=============================== Coverage summary ===============================
Statements   : 98.81% ( 1916/1939 ), 38 ignored
Branches     : 94.58% ( 751/794 ), 22 ignored
Functions    : 100% ( 267/267 )
Lines        : 100% ( 1872/1872 )
================================================================================
The command "npm run test-ci" exited with 0.

$ npm run lint

> express@4.17.1 lint /home/runner/build/expressjs/express
> eslint .

The command "npm run lint" exited with 0.

store build cache

$ # Upload coverage to coveralls

Done. Your build exited with 0.

          
PR checks
Live logs icon

ライブログ

ワークフローの実行ログは色や絵文字付きでリアルタイムに確認することが出来ます。ログの行を1回クリックするだけで、その行をハイライトしてリンクをコピーすることができるので、簡単にCI/CDの失敗を共有することができます。

Built-in secret store icon

組み込みのシークレット管理機能

ソフトウェア開発の自動化をリポジトリ上のワークフローファイルにコード化することで、自動化プロセスの変更にGitフローを使うことができます。

Multi-container testing icon

マルチコンテナテスト

ワークフローファイルにdocker-composeを追加するだけで、ワークフローでWebサービスとそのDBをテストできます。

ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
on: push
jobs:
  test:
    strategy:
      matrix:
        platform: [ubuntu-latest, macos-latest, windows-latest]
    runs-on: $
    steps:
    - uses: actions/checkout@master
    - uses: actions/setup-node@master
      with:
        version: 12
    - run: npm install-ci-test
    - uses:











  publish:
    needs: [build]
    steps:
    - uses: actions/github-packages@master
              

コミュニティが作るワークフロー

GitHub Actionsは、すべてのツールを連携して、開発ワークフローのすべてのステップを自動化します。任意のクラウドに簡単にデプロイしたり、Jiraでチケットを作成したり、npmにパッケージを公開することが可能です。

GitHub Actionsを試してみませんか? GitHubで利用可能な数百万のオープンソースライブラリを使用して、独自のアクションを作成しましょう。 JavaScriptで記述するか、または、コンテナでActionsを作成しましょう。どちらも全てのGitHub APIおよびその他のパブリックAPIと連携できます。

参考ワークフローを見る

コミュニティのフィードバック

SciPy
「Actionsはエキサイティングな開発であり、CI / CDを超えた多くの可能性を引き出します。 Webサイトのデプロイから、カスタムステータスレポートのGitHub APIへの問い合わせ、通常のCIビルドまで、さまざまなタスクのワークフローを合理化できるようになります。」

Ralf Gommers

SciPy maintainer

Yarn
「オープンソースプロジェクトの場合、インフラストラクチャの摩擦が少ないほど、外部の貢献者との作業が容易になります。 GitHub ActionsをCIやイシューのトリアージのような一般的なタスクに使用すると、障壁をさらに下げることができるため、優れた製品の開発に集中できます。」

Maël Nison

Yarn maintainer

UBS
「GitHubアクションを使用すると、CI / CDワークフローをコードで簡潔に定義し、数千のリポジトリで標準化して、Pull Requestと連携して進化させることができます。このソリューションにより、開発者のエクスペリエンスが向上し、チームの生産性が向上すると同時に、ソフトウェア開発ライフサイクルの管理が簡素化および強化されます。」

Mike Dargan

Group Head of Technology

LaunchDarkly
「Code ReferencesとGitHub Actionsの統合により、開発者はコード内の機能フラグを簡単に見つけることができます。内部的には、アクションを使用することで、CIインフラストラクチャを最適化し、Windows、Linux、OSXでクライアントを並行してテストすることでビルドプロセスを合理化できると考えています。」

Edith Harbaugh

CEO of LaunchDarkly

シンプルな従量課金

パブリックリポジトリ

無料

heart icon GitHubはオープンソースを支援します。

プライベートリポジトリ

含まれる利用時間

  • Free

    2,000分

    1か月あたり

  • Pro

    3,000分

    1か月あたり

  • Team

    10,000分

    1か月あたり

  • Enterprise

    50,000分

    1か月あたり

追加購入

  • Linux

    2 cores, 7GB

    $0.008

    1分あたり

  • Windows

    2 cores, 7GB

    $0.016

    1分あたり

  • macOS

    2 cores, 7GB

    $0.08

    1分あたり

  • セルフホスト

    Coming soon

    Free

未来のワークフローの自動化を今すぐ実現しましょう。

GitHub Actionsをいち早く利用したいという方は、ベータ版のウェイティングリストにご登録ください。

ベータ版に登録する