All Projects â†’ tschoffelen â†’ gha

tschoffelen / gha

Licence: other
🔧 Test your GitHub Actions workflow locally.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to gha

ssh2actions
Connect to GitHub Actions VM via SSH for interactive debugging
Stars: ✭ 62 (+16.98%)
Mutual labels:  debugging, actions, github-actions
link-snitch
GitHub Action to scan your site for broken links so you can fix them 🔗
Stars: ✭ 50 (-5.66%)
Mutual labels:  actions, github-actions
action-label-syncer
GitHub Action to sync GitHub labels in the declarative way
Stars: ✭ 138 (+160.38%)
Mutual labels:  actions, github-actions
actions-sms
Send an SMS through GitHub Actions
Stars: ✭ 108 (+103.77%)
Mutual labels:  actions, github-actions
zola-deploy-action
Github action for building a Zola site and deploying to Github Pages
Stars: ✭ 131 (+147.17%)
Mutual labels:  actions, github-actions
actions-pixela
GitHub Actions for Pixela (a-know/pi) - a-know/pi Setup Action. Linux (Ubuntu), macOS, and Windows are supported.
Stars: ✭ 12 (-77.36%)
Mutual labels:  actions, github-actions
xray-action
... a GitHub action to import test results into "Xray" - A complete Test Management tool for Jira.
Stars: ✭ 16 (-69.81%)
Mutual labels:  actions, github-actions
gh-actions
A Github action for generating Terraform module documentation using terraform-docs and gomplate
Stars: ✭ 56 (+5.66%)
Mutual labels:  actions, github-actions
action-junit-report
Reports junit test results as GitHub Pull Request Check
Stars: ✭ 103 (+94.34%)
Mutual labels:  actions, github-actions
jacoco-report
Github action that publishes the JaCoCo report as a comment in the Pull Request
Stars: ✭ 31 (-41.51%)
Mutual labels:  actions, github-actions
branch-protection-bot
A bot tool to disable and re-enable "Include administrators" option in branch protection
Stars: ✭ 57 (+7.55%)
Mutual labels:  actions, github-actions
action-python-poetry
Template repo to quickly make a tested and documented GitHub action in Python with Poetry
Stars: ✭ 85 (+60.38%)
Mutual labels:  actions, github-actions
chart-testing-action
A GitHub Action to lint and test Helm charts
Stars: ✭ 139 (+162.26%)
Mutual labels:  actions, github-actions
gradle-actions
Github Actions for Gradle
Stars: ✭ 29 (-45.28%)
Mutual labels:  actions, github-actions
code-owner-self-merge
A GitHub Action for letting CODEOWNERS merge PRs via green PR reviews
Stars: ✭ 43 (-18.87%)
Mutual labels:  actions, github-actions
action-cats
A quick Github action which posts a cat gif on your PRs to reward you for pushing code!
Stars: ✭ 64 (+20.75%)
Mutual labels:  actions, github-actions
jest-github-action
Jest action adding checks with annotations to your pull requests and coverage table as comments
Stars: ✭ 134 (+152.83%)
Mutual labels:  actions, github-actions
algoliasearch-crawler-github-actions
Algolia Crawler Github action
Stars: ✭ 24 (-54.72%)
Mutual labels:  actions, github-actions
assign-one-project-github-action
Automatically add an issue or pull request to specific GitHub Project(s) when you create and/or label them.
Stars: ✭ 140 (+164.15%)
Mutual labels:  actions, github-actions
release-helper
🤖 A GitHub Action that help you publish release.
Stars: ✭ 27 (-49.06%)
Mutual labels:  actions, github-actions

GitHub Actions Tester

npm

This Node application exposes an executable that allows you to test your GitHub workflow locally using Docker.

Installation

Install using NPM:

npm i -g gha

Other prerequisites:

  • A local installation of Docker
  • A repo with a .github/main.workflow file

Usage

Usage: gha [options]

Options:
  -V, --version      output the version number
  -f <workflowfile>  Set workflow file path, defaults to .github/main.workflow
  -e <event>         Set event, defaults to push
  -h, --help         output usage information

Supplying values for secrets

You can set the value of secrets defined in your workflow by passing them as environment variables, e.g.:

MY_SECRET_TOKEN=yo-mamma gha

Differences with GitHub Actions

Although this way of locally running GitHub Actions is very close to how they will work when actually running them on GitHub, there are a few small differences:

  • In the GitHub environment, the GITHUB_TOKEN is passed to all actions by default. This is not the case in the local environment, but can be achieved by creating a personal token and supplying it as a secret (see above).
  • The /github/home volume in the container is tied to your local directory /tmp/gh-home. In GitHub, this directory is container-specific, whereas this script shares it between all containers.

Development

There are still some things to do to achieve full functional parity.

This app currently only supports GitHub-hosted Dockerfiles (i.e. with the {user}/{repo}@{ref} or {user}/{repo}/{path}@{ref} syntax), so we still need to add:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].