Create additional documentation for testing GitHub Actions using nektos/act
- Dominant language
- JavaScript
- Stars
- 363
- Forks
- 872
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 18
Description
### Overview
We need to create additional documentation to supplement the existing 'How to Test GitHub Actions' series that is available in the Google Drive, to provide a testing track for developers who need to test or modify complex, event-driven GitHub Actions workflows locally before pushing changes or reviewing pull requests.
### Action Items
The documentation should provide a step-by-step walkthrough for configuring act locally, specifically addressing the unique hurdles of our repository and should be broken down into universal testing steps and OS-specific setup:
**Universal Emulation Steps (Mac, Windows, Linux):**
* **Mocking GitHub Context:** Explain why event-driven workflows crash locally without payload data, and provide the exact `curl`/`jq` commands to fetch live issue data and format it into an `event.json` payload.
* **Secure Authentication & Context Spoofing:**
* Setting up a `.secrets` file with a Personal Access Token (PAT) for GraphQL API queries.
* Overriding the `GITHUB_REPOSITORY` environment variable during execution so `act` queries the main `hackforla/website` repository instead of a personal fork.
* **Git Remote Configuration:** (Optional but recommended) Ensuring developers have their Git remotes configured for SSH to streamline the testing and pushing pipeline.
**Linux/WSL Specific Setup:**
* **Installation & Compilation Hurdles:** How to bypass outdated `apt` packages to install modern Go (1.21+) and compile `act` from source (this serves as a crucial troubleshooting fallback for developers when standard package managers fail).
### Resources/Instructions
**Hack for LA Google Drive:**
'\HackforLA.org website\HackforLA.org website folder\3 - Developers\GitHub Actions (GHA)\1. How to test GitHub Actions.gdoc'
[1. How to Test GitHub Actions - using nektos/act](https://docs.google.com/document/d/1A2sj5KROv_AD3qTUrPO-YI730hKj2-o1FnE8GE1PUVY/edit?tab=t.0)
'\HackforLA.org website\HackforLA.org website folder\3 - Developers\GitHub Actions (GHA)\2. Additional Notes for GitHub Actions.docx'
[2. Additional Notes for GitHub Actions](https://docs.google.com/document/d/1frtvr5twBa_3yRGCG0divhlOMW8dPJxT/edit)
**External Resources:**
[nektos/act Official Repository](https://github.com/nektos/act)
[GitHub API: Fetching an Issue](https://docs.github.com/en/rest/issues/issues)
[jq Manual (for JSON parsing)](https://jqlang.github.io/jq/manual/)
Contributor guide
Assessment
This issue has not been assessed yet.