5

Features • GitHub Actions · GitHub

 2 years ago
source link: https://github.com/features/actions
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
hero-bg.jpg

GitHub Actions

Automate your workflow from idea to production

GitHub Actions makes it easy to automate all your software workflows, now with world-class CI/CD. Build, test, and deploy your code right from GitHub. Make code reviews, branch management, and issue triaging work the way you want.

Get started with Actions

Questions? Contact Sales

on: milestone
on: issue_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: issue_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

Run a workflow
on any GitHub event

Kick off workflows with GitHub events like push, issue creation, or a new release. Combine and configure actions for the services you use, built and maintained by the community.

Whether you want to build a container, deploy a web service, or automate welcoming new users to your open source projects—there's an action for that. Pair GitHub Packages with Actions to simplify package management, including version updates, fast distribution with our global CDN, and dependency resolution, using your existing GITHUB_TOKEN.

on: milestone
on: issue_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: issue_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
actions-workflow.svg
actions-linux-and-containers.svg

Linux, macOS, Windows, ARM, and containers

Hosted runners for every major OS make it easy to build and test all your projects. Run directly on a VM or inside a container. Use your own VMs, in the cloud or on-prem, with self-hosted runners.

actions-matrix.svg

Matrix builds

Save time with matrix workflows that simultaneously test across multiple operating systems and versions of your runtime.

actions-any-lang.svg

Any language

GitHub Actions supports Node.js, Python, Java, Ruby, PHP, Go, Rust, .NET, and more. Build, test, and deploy applications in your language of choice.

  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

> [email protected] 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
actions-live-logs.svg

Live logs

See your workflow run in realtime with color and emoji. It’s one click to copy a link that highlights a specific line number to share a CI/CD failure.

actions-secret-store.svg

Built in secret store

Automate your software development practices with workflow files embracing the Git flow by codifying it in your repository.

actions-multi-container-testing.svg

Multi-container testing

Test your web service and its DB in your workflow by simply adding some docker-compose to your workflow file.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK