awesome-actions
A curated list of awesome actions to use on GitHub
https://github.com/sdras/awesome-actions
Last synced: 13 days ago
JSON representation
Community Resources
Build
- run-cmake - Multi platform action to build C/C++ software with CMake and Ninja.
- run-vcpkg - Multi platform action to build and install C/C++ dependencies with vcpkg.
- Build Go applications for multiplatform
- Generate ~/.m2/settings.xml for Maven builds
- Run Pascal Script
- Setup Brainfuck - Setup brainfuck interpreter.
- Publish Go Binaries to GitHub Release Assets
- Setup COBOL
- Check Gradle version - Keep your Gradle version up to date.
Cheat Sheet
Collection of Actions
- GitHub Actions for Rust
- GitHub Actions for Logtalk and Prolog
- Actions Hub
- GitHub Actions for R and accompanying #rstats package
- Use HashiCorp's Terraform
- GitHub Actions for Yarn 1
- GitHub Actions for Yarn 2
- GitHub Actions for Golang
- GitHub Actions for Composer
- GitHub Actions for Flutter
- GitHub Actions for PHP
- GitHub Actions for Android
- GitHub Actions for Deno
- Octions - GitHub Actions for GitHub REST API
- GitHub Actions for AWS
- GitHub Actions for WordPress
- GitHub Actions for Unity
- GitHub Actions for Docker
Database
- Setup Cassandra Schema - Running scripts from the provided folder on top of Cassandra cluster.
Deployment
- Deploy a Probot App using Actions
- Update a repository's "Full description" on Docker Hub
- Update a Container Repository Description From README.md - Supported Registries: Docker Hub, Quay, Harbor.
- An example of using Terraform to validate and apply GitHub administration
- Deploy to Netlify
- Deploy a playlist to Spotify
- Deploy VS Code extensions with vsce
- Purge Cloudflare cache after updating a website
- Deploy your DNS configuration using DNS Control
- Deploy a Theme to Shopify
- Trigger multiple GitLab CI Pipeline
- Trigger multiple Jenkins Jobs
- GitHub Action for Homebrew Tap
- Copy files and artifacts via SSH
- Executing remote ssh commands
- Publish a Python distribution package to PyPI
- Deploy Static Website to Azure Storage
- Cross platform Chocolatey CLI to build and publish packages
- Deploy iOS Pod Library to Cocoapods
- GitHub Action for TencentCloud Serverless
- Deploy a static site to Surge.sh
- GitHub Action for GoReleaser, a release automation tool for Go projects
- FTP Deploy Action, Deploys a GitHub project to a FTP server using GitHub actions
- Publish Article to Dev.to
- Action For Semantic Release
- Deploy a Collection to Ansible Galaxy
- Publish module to Puppet Forge
- Build and publish Electron apps
- Publish a Maven package
- Build and deploy a theme to Ghost CMS
- Deploy an Ansible role to Ansible Galaxy
- Publish one or more JS modules to a registry
- Publish a package with 2FA using Slack
- Serialize Workflow Runs in Continuous Deployment Pipelines
- Netlify Deploy GitHub Action for each commit
- Run Ansible Playbooks
- Publish a Python Distribution Package to Anaconda Cloud
- Deploy VS Code Extension to Visual Studio Marketplace or the Open VSX Registry
- Deploy with AWS CodeDeploy
- Update a Docker Hub repository description from README.md
- Publish Docker Images to the GitHub Package Registry (GPR)
- Monitor and limit your docker image size
- Publish Docker Images to the Amazon Elastic Container Registry (ECR)
- Build And Push Your Docker Images Caching Each Stage To Reduce Build Time
- Set up Docker Buildx
- Deploy to any Cloud or Kubernetes Using Pulumi
- Deploy to Kubernetes with kubectl
- Get Kubeconfig File From Google Kubernetes Engine (GKE)
- Kustomize Kubernetes Config YAMLs
- Create a Kubernetes Cluster for Testing Using Krucible
- Sync/upload a directory to an AWS S3 bucket
- Deploy Lambda code to an existing function
- Generate terraform documentation - Uses terraform-docs to generate docs for terraform modules.
- Publish npm (pre)releases
- Deploy a YouTube Video to Anchor.fm Podcast
- Build and publish docker images to any registry using Kaniko
- Convert Branch or Tag Name Into Docker-Compatible Image Tag
Dynamic Analysis
External Services
- GitHub Action for Firebase
- GitHub Actions for Pixela (a-know/pi)
- Upload files to any OpenStack Swift service provider
- Generate Custom Response using JSONbin
- Use a Jenkinsfile
- GitHub Action for Contentful Migration CLI
- GitHub Action for Google Cloud Platform (GCP)
- GitHub Action for sending Stack Overflow posts to Slack
- Assume AWS role
Frontend Tools
- JS Build Actions - Run Grunt or Gulp build tasks and commit file changes.
- GitHub Action for Gatsby CLI
- Runs a WebPageTest audit and prints the results as commit comment
- GitHub Actions for Hugo extended
- GitHub Actions for mdBook
- Setup Mint - Setup Mint (programming language for writing single page applications).
- Gatsby AWS S3 Deployment - Deploy Gatsby to S3 (supports CloudFront).
- Execute Gradle task
- Generate OG Image - Generate customisable open graph images from Markdown files.
Fun
- Add equivalent of a like button in your README - Visualize community approval on some part of your readme (can be used as a poll).
GitHub Pages
- Deploy a Zola site to GitHub Pages
- Build Hugo static content site and publish it to gh-pages branch
- Build a Jekyll site—with Custom Jekyll Plugins & Build Scripts—and deploy it back to the Gh-Pages Branch
- GitHub Actions for deploying to GitHub Pages with Static Site Generators
- GitHub Action for Hexo
- Deploy Google Analytics stats to GitHub Pages
- A Jupyter Notebook Blogging Platform Powered by GitHub Actions, Pages and Jekyll
- Deploy A Static Site to GitHub Pages - Deploy to custom directory and ignore folder/file.
- Deploy to GitHub Pages with Advanced Settings
- Google Dataset Search Metadata - And other schema.org extractors to make datasets discoverable from GitHub pages.
GitHub Tools and Management
- Declaratively setup GitHub Labels
- Action to sync GitHub labels in the declarative way
- Add releases to GitHub
- Publish a docker image to Dockerhub
- Create an issue using content from a file
- Publish GitHub Releases with Assets
- GitHub Project Automation+ - Automate GitHub Project cards with any webhook event.
- Run GitHub Actions Locally with a web interface
- Run GitHub Actions Locally in Terminal
- Build and Publish Android debug APK
- Generate sequential build numbers for GitHub Actions
- Push Git changes to GitHub repository without authentication difficulties
- Generate release notes based on your events
- Create a GitHub wiki page based on the provided markdown file
- Label your Pull Requests auto-magically (using committed files)
- Add Label to your Pull Requests based on the author team name
- Get a list of file changes with PR/Push
- Label Your Issues Using the Issue's Contents
- Rollback a GitHub Release
- Lock Closed Issues and Pull Requests after a Period of Inactivity
- Get Commit Difference Count Between Two Branches
- Generate Release Notes Based on Git References
- Auto Label Issue Based on Issue Description
- Update Configured GitHub Actions to the Latest Versions
- Create Issue Branch
- Remove Old Artifacts
- Expose Git Commit Data As Environment Variables
- Sync Defined Files/Binaries to Wiki or External Repositories
- Create/Update/Delete a GitHub Wiki Page Based on Any File
- Prow GitHub Actions - Automation of policy enforcement, chat-ops, and automatic PR merging.
- Check GitHub Status in your Workflow
- Manage Labels on GitHub (create/rename/update/delete) as Code
- Herald Rules for GitHub: Add Subscribers, Assignees, Labels, and More to Your PR
- GitHub Codeowners Validator - Ensures the correctness of your GitHub CODEOWNERS file. It supports public and private GitHub repositories and also GitHub Enterprise installations.
- Copybara Action - Move and transform code between repositories (ideal to maintain several repos from one monorepo).
- Continuous Distribution of Funding to your Project Contributors and Dependencies
- Enforce Policies on GitHub Repositories and Commits
- Use private actions in any workflow
Localization
- Find and automatically fix typos and grammar issues in your code
- Translation - Translate text from any language to any language.
Machine Learning Ops
- Submitting Argo Workflows (Cloud Agnostic)
- Submitting Argo Workflows to GKE
- Query Experiment Tracking Results From Weights & Biases
- Run Parameterized Jupyter Notebooks
- Compile, Deploy and Run Kubeflow Pipeline
- Automatically Dockerize A Data-Science Repo As A Jupyter Server
- Azure Machine Learning With GitHub Actions
Monitoring
- Audit a webpage with Google Chrome's Lighthouse tests
- Runs Lighthouse and posts results to PRs and Slack
- Run Lighthouse in CI using GitHub Actions
- Continuous Benchmarking and Benchmark Visualization for Go
- Size Limit Action - Comments cost comparison of your JS in PRs and rejects them if limit is exceeded.
- Check bundlephobia - Comments new and modified package size according to bundlephobia.io website and rejects PR on threshold surpassed.
Networking
- Setup ZeroTier - Connect your runner to a ZeroTier network.
Notifications and Messages
- Send a Discord notification
- Send an SMS from GitHub Actions using Nexmo
- Send a Telegram Message
- Send a File or Text Message to Discord (custom define color, username or avatar)
- Collaborate on tweets using pull requests
- Send a Push Notification via Push by Techulus
- Send email with SendGrid
- Send a Push Notification via Join
- New package version checker for npm
- New package version checker for NuGet
- New package version checker for Gradle
- Send a Push Notification via Pushbullet
- Create an Outlook Calendar Event using Microsoft Graph
- Watch for GitHub Wiki page changes and post to Slack
- Send an SMS using MessageBird
- Reply to Stale Bots
- Send an Embed Message to Discord
- Keep Your PRs in Sync With Teamwork Tasks
- Send Microsoft Teams Notification
- Post a Slack message as a bot
- Send an SMS from GitHub Actions using Clockworksms
Pull Requests
- Pull Request Description Enforcer - Enforces description on pull requests.
- Open or Update PR on Branch Push (with Branch Selection)
- Automatically Rebase a PR
- Add Labels to a PR based on Matched File Patterns
- Auto-Approve PRs
- Automatically add Reviewers to PR based on the Configuration File
- Add Labels to a PR based on Branch Name Patterns
- Add Labels to a PR based on Total Size of the Diff