Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dhth/act3
Glance at the last 3 runs of your Github Actions
https://github.com/dhth/act3
github-actions
Last synced: 4 days ago
JSON representation
Glance at the last 3 runs of your Github Actions
- Host: GitHub
- URL: https://github.com/dhth/act3
- Owner: dhth
- License: mit
- Created: 2024-03-22T13:12:57.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-10-28T15:15:04.000Z (about 2 months ago)
- Last Synced: 2024-12-14T05:32:24.866Z (8 days ago)
- Topics: github-actions
- Language: Go
- Homepage: https://dhth.github.io/act3/
- Size: 1.12 MB
- Stars: 17
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-tuis - act3
README
# act3
✨ Overview
---Glance at the results of the last 3 runs of your Github Actions.
💾 Installation
---**homebrew**:
```sh
brew install dhth/tap/act3
```**go**:
```sh
go install github.com/dhth/act3@latest
```Or get the binaries directly from a [release][2]. Read more about verifying the
authenticity of released artifacts [here](#-verifying-release-artifacts).🔑 Authentication
---You can have `act3` make authenticated calls to GitHub on your behalf in either
of two ways:- Have an authenticated instance of [gh](https://github.com/cli/cli) available
(recommended).
- Provide a valid Github token via `$GH_TOKEN`, which has the following
permissions for the repos you want to query data for.
- `actions:read`
- `checks:read`⚡️ Usage
---### Basic Usage
By default, `act3` will show results for the repository associated with the
current directory. Simply run `act3` from the project root.You can also specify a repository to fetch results for using the `-r` flag.
```bash
act3 -r neovim/neovim
```### Specific Workflows
You can also fetch results for specific workflows using a config file, that
looks like the following.```yaml
workflows:- id: W_kwDOLkC0eM4FaKV_
repo: dhth/act3
name: build
url: https://asampleurl.com/{{runNumber}}
- id: W_kwDOLkC0eM4FaKWA
repo: dhth/act3
name: release
url: https://asampleurl.com/{{runNumber}}- id: W_kwDOLb3Pms4FRxjX
repo: dhth/cueitup
name: build
url: https://dhth.github.io/cueitup
- id: W_kwDOLb3Pms4FRxjY
repo: dhth/cueitup
name: release
url: https://dhth.github.io/cueitup- id: W_kwDOLghtl84FWTlZ
repo: dhth/ecsv
name: build
- id: W_kwDOLghtl84FWTla
repo: dhth/ecsv
name: release
````{{runNumber}}` gets replaced with the actual run number of the workflow.
You can find the ID of a workflow as follows:
```bash
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer " \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos///actions/workflows# or
gh api repos///actions/workflows
# use node_id from the response
```### Tabular output
`act3` can also output results in a tabular format.
```bash
act3 -f table
```
### HTML output
`act3` can also output results in HTML format. You can also specify a template
using the `-t` flag (refer to
[./internal/ui/assets/template.html](./internal/ui/assets/template.html) for the
default template.)```bash
act3 -f html
```The resultant HTML page looks like this.
> A sample page generated via `act3` is running at
> [https://dhth.github.io/act3](https://dhth.github.io/act3).🔐 Verifying release artifacts
---In case you get the `act3` binary directly from a [release][2], you may want to
verify its authenticity. Checksums are applied to all released artifacts, and
the resulting checksum file is signed using
[cosign](https://docs.sigstore.dev/cosign/installation/).Steps to verify (replace `x.y.z` in the commands listed below with the version
you want):1. Download the following files from the release:
- act3_x.y.z_checksums.txt
- act3_x.y.z_checksums.txt.pem
- act3_x.y.z_checksums.txt.sig2. Verify the signature:
```shell
cosign verify-blob act3_x.y.z_checksums.txt \
--certificate act3_x.y.z_checksums.txt.pem \
--signature act3_x.y.z_checksums.txt.sig \
--certificate-identity-regexp 'https://github\.com/dhth/act3/\.github/workflows/.+' \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com"
```3. Download the compressed archive you want, and validate its checksum:
```shell
curl -sSLO https://github.com/dhth/act3/releases/download/vx.y.z/act3_x.y.z_linux_amd64.tar.gz
sha256sum --ignore-missing -c act3_x.y.z_checksums.txt
```3. If checksum validation goes through, uncompress the archive:
```shell
tar -xzf act3_x.y.z_linux_amd64.tar.gz
./act3
# profit!
```[2]: https://github.com/dhth/act3/releases