diff --git a/README.md b/README.md index ebac323..b8fcfc6 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ # Awesome Actions [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) [![GitHub Actions status | sdras/awesome-actions](https://github.com/sdras/awesome-actions/workflows/Lint%20Awesome%20List/badge.svg)](https://github.com/sdras/awesome-actions/actions?workflow=Lint+Awesome+List) -> A curated list of awesome things related to [GitHub Actions](https://github.com/actions). +> A curated list of awesome things related to GitHub Actions. Actions are triggered by GitHub platform events directly in a repo and run on-demand workflows either on Linux, Windows or macOS virtual machines or inside a container in response. With GitHub Actions you can automate your workflow from idea to production. @@ -21,6 +21,7 @@ Actions are triggered by GitHub platform events directly in a repo and run on-de - [Collection of Actions](#collection-of-actions) - [Utility](#utility) - [Static Analysis](#static-analysis) + - [Dynamic Analysis](#dynamic-analysis) - [Monitoring](#monitoring) - [Pull Requests](#pull-requests) - [GitHub Pages](#github-pages) @@ -38,7 +39,6 @@ Actions are triggered by GitHub platform events directly in a repo and run on-de ## Official Resources - [Official Site](https://github.com/features/actions) -- [Official Community Forum Board](https://github.community/t5/GitHub-Actions/bd-p/actions) - [Official Documentation](https://help.github.com/en/actions) - [Official Actions organization](https://github.com/actions) - [actions/virtual-environments](https://github.com/actions/virtual-environments) - GitHub Actions virtual environments. @@ -125,7 +125,6 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Create a GitHub wiki page based on the provided markdown file](https://github.com/Decathlon/wiki-page-creator-action) - [Label your Pull Requests auto-magically (using committed files)](https://github.com/Decathlon/pull-request-labeler-action) - [Add Label to your Pull Requests based on the author team name](https://github.com/JulienKode/team-labeler-action) -- [Manually trigger your GitHub Actions from a UI](https://www.actionspanel.app) - [Get a list of file changes with PR/Push](https://github.com/trilom/file-changes-action) - [Use private actions in any workflow](https://github.com/InVisionApp/private-action-loader) - [Label Your Issues Using the Issue's Contents](https://github.com/damccorm/tag-ur-it) @@ -134,10 +133,20 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Get Commit Difference Count Between Two Branches](https://github.com/jessicalostinspace/commit-difference-action) - [Generate Release Notes Based on Git References](https://github.com/metcalfc/changelog-generator) - [Enforce Policies on GitHub Repositories and Commits](https://github.com/talos-systems/conform) +- [Auto Label Issue Based on Issue Description](https://github.com/Renato66/auto-label) +- [Update Configured GitHub Actions to the Latest Versions](https://github.com/fabasoad/ghacu) +- [Create Issue Branch](https://github.com/robvanderleek/create-issue-branch) +- [Remove Old Artifacts](https://github.com/c-hive/gha-remove-artifacts) +- [Expose Git Commit Data As Environment Variables](https://github.com/rlespinasse/git-commit-data-action) +- [Sync Defined Files/Binaries to Wiki or External Repositories](https://github.com/kai-tub/external-repo-sync-action) +- [Create/Update/Delete a GitHub Wiki Page Based on Any File](https://github.com/Andrew-Chen-Wang/github-wiki-action) +- [Prow GitHub Actions](https://github.com/jpmcb/prow-github-actions) - Automation of policy enforcement, chat-ops, and automatic PR merging. +- [Check GitHub Status in your Workflow](https://github.com/crazy-max/ghaction-github-status) +- [Manage Labels on GitHub (create/rename/update/delete) as Code](https://github.com/crazy-max/ghaction-github-labeler) ### Collection of Actions -- [Use HashiCorp's Terraform](https://github.com/hashicorp/terraform-github-actions) +- [Use HashiCorp's Terraform](https://github.com/hashicorp/setup-terraform) - [GitHub Actions for Yarn 1](https://github.com/Borales/actions-yarn) - [GitHub Actions for Yarn 2](https://github.com/sergioramos/yarn-actions) - [GitHub Actions for Golang](https://github.com/cedrickring/golang-action) @@ -154,12 +163,14 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Octions - GitHub Actions for GitHub REST API](https://github.com/maxkomarychev/octions) - [GitHub Actions for Docker](https://github.com/docker/github-actions) - [GitHub Actions for AWS](https://github.com/clowdhaus/aws-github-actions) +- [Actions Hub](https://github.com/actionshub) ### Utility - [Setup `ssh-agent`](https://github.com/webfactory/ssh-agent) - Run `ssh-agent` with additional SSH keys to access private repositories. - [GitHub Actions Badges for your README](https://github.com/atrox/github-actions-badge) - [GitHub Actions for Python project with poetry](https://github.com/abatilo/actions-poetry) +- [GitHub Actions for Python project with pyenv](https://github.com/gabrielfalcao/pyenv-action) - [GitHub Actions to compile LaTeX documents](https://github.com/xu-cheng/latex-action) - [Update Maxmind Databases](https://github.com/meetup/maxmind-updater) - [Debug with SSH over tmate](https://github.com/mxschmitt/action-tmate) - Debug the Action directly by providing a SSH connection. @@ -193,10 +204,20 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Has Changed Path](https://github.com/MarceloPrado/has-changed-path) - Conditionally run actions based on changed paths. - [Linguist](https://github.com/fabasoad/linguist-action) - Checks a repository and produces information about used languages in output. - [Twilio Voice Call](https://github.com/fabasoad/twilio-voice-call-action/) - Make Twilio voice call with defined text. +- [Setup Xcode](https://github.com/maxim-lobanov/setup-xcode) - Switch between pre-installed versions of Xcode for macOS images. - [Setup Xamarin](https://github.com/maxim-lobanov/setup-xamarin) - Switch between pre-installed versions of Xamarin and Mono for macOS images. - [Memer Action](https://github.com/Bhupesh-V/memer-action) - A GitHub Action for Programmer Memes xD. - [Setup Cocoapods](https://github.com/maxim-lobanov/setup-cocoapods) - Setup specific version of Cocoapods. - [Public IP](https://github.com/haythem/public-ip) - Queries GitHub actions runner's public IP address. +- [GitHub Actions for Lazarus/FPC](https://github.com/gcarreno/setup-lazarus) +- [Twilio Fax](https://github.com/fabasoad/twilio-fax-action/) - Sends a document by fax using your Twilio account. +- [Setup Kubernetes tools](https://github.com/yokawasa/action-setup-kube-tools) - Install Kubernetes tools (kubectl, kustomize, helm, kubeval, conftest, and yq) on the runner. +- [Setup Elastic Cloud Control Tool](https://github.com/yokawasa/action-setup-ecctl) - Install a specific version of ecctl on the runner. +- [PowerShell Script](https://github.com/Amadevus/pwsh-script) - Run PowerShell scripts with workflow contexts (e.g. `$github.token`) and cmdlets, return value => action output. +- [Upload and Scan Files with VirusTotal](https://github.com/crazy-max/ghaction-virustotal) +- [Import a GPG Key](https://github.com/crazy-max/ghaction-import-gpg) +- [Compress with UPX](https://github.com/crazy-max/ghaction-upx) - The Ultimate Packer for eXecutables. +- [Pull the New Go Module Version Into the Proxy Cache](https://github.com/andrewslotin/go-proxy-pull-action) - Ensures the latest version of your Go module is in the proxy cache. Also updates the pkg.go.dev documentation upon release. #### Environments @@ -209,7 +230,10 @@ Set up your GitHub Actions workflow with a specific version of your programming #### Dependencies -- [Install NPM dependencies with caching](https://github.com/bahmutov/npm-install) +- [Install NPM Dependencies with Caching](https://github.com/bahmutov/npm-install) +- [Highlight New NPM Dependencies](https://github.com/hiwelo/new-dependencies-action) - Comments on pull requests newly added NPM dependencies information. +- [Cache NPM Dependencies](https://github.com/c-hive/gha-npm-cache) +- [Cache Yarn Dependencies](https://github.com/c-hive/gha-yarn-cache) #### Semantic Versioning @@ -236,16 +260,17 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Test Ansible roles with Molecule](https://github.com/robertdebock/molecule-action) - [Run performance testing with artillery.io](https://github.com/kenju/github-actions-artillery) - [Detect Flaky Tests with BuildPulse](https://github.com/Workshop64/buildpulse-action) +- [Display Inline Code Annotations for Jest Tests](https://github.com/IgnusG/jest-report-action) #### Linting -- [PHP Code fixer Action](https://github.com/OskarStark/php-cs-fixer-ga) +- [PHP Coding Standards Fixer Action](https://github.com/OskarStark/php-cs-fixer-ga) - [Runs Hadolint against a Dockerfile within a repository](https://github.com/burdzwastaken/hadolint-action) - [Run ESLint, with reviewdog output on the PR](https://github.com/reviewdog/action-eslint) - [JavaScript-based linter for \*.workflow files](https://github.com/OmarTawfik/github-actions-js) - [Lint terraform files using tflint, with reviewdog output on the PR](https://github.com/reviewdog/action-tflint) - [autopep8: Automatically formats Python code to conform to the PEP 8 style guide](https://github.com/peter-evans/autopep8) -- [Run `localheinz/composer-normalize` to ensure your PHP project has a normalized `composer.json`](https://github.com/localheinz/composer-normalize-action) +- [Run `ergebnis/composer-normalize` to ensure your PHP project has a normalized `composer.json`](https://github.com/ergebnis/composer-normalize-action) - [Run Go lint checks on PR event](https://github.com/ArangoGutierrez/GoLinty-Action) - [Node.js - Automatically run the `format` and/or `lint` script used by the package](https://github.com/MarvinJWendt/run-node-formatter) - [Stylelinter - GitHub Action that runs stylelint](https://github.com/exelban/stylelint) @@ -266,6 +291,8 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Linter for markdown (with presets)](https://github.com/avto-dev/markdown-lint) - [Stylelint problem matcher to create annotations](https://github.com/xt0rted/stylelint-problem-matcher) - [Run sqlcheck on the PR to identifies anti-patterns in SQL queries](https://github.com/yokawasa/action-sqlcheck) +- [Validate Fastlane Supply Metadata Against the Play Store Guidelines](https://github.com/ashutoshgngwr/validate-fastlane-supply-metadata) +- [Run Golint to lint your Golang code](https://github.com/Jerome1337/golint-action) #### Security @@ -277,6 +304,8 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Secret Spreader](https://github.com/webfactory/secret-spreader) - Not an action per se, but a tool to manage Actions Secrets across a list of repositories. - [Secrets Sync Action](https://github.com/google/secrets-sync-action) - Action syncs secrets across multiple repositories. - [Snyk Test Action](https://github.com/snyk/actions) +- [Manage Your GitHub Actions Secrets With A Simple CLI](https://github.com/unfor19/githubsecrets) +- [SecretHub](https://github.com/secrethub/actions) - Have a single source of truth for your secrets and load them into GitHub Actions on demand. #### Code Coverage @@ -285,6 +314,10 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Publishing code coverage to CodeClimate](https://github.com/paambaati/codeclimate-action) - [Update repository go report card](https://github.com/creekorful/goreportcard-action) +### Dynamic Analysis + +- [Run Goimports to check Golang imports order](https://github.com/Jerome1337/goimports-action) + ### Monitoring - [Audit a webpage with Google Chrome's Lighthouse tests](https://github.com/jakejarvis/lighthouse-action) @@ -292,6 +325,7 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Run Lighthouse in CI using GitHub Actions](https://github.com/treosh/lighthouse-ci-action) - [Continuous Benchmarking and Benchmark Visualization for Go](https://github.com/bobheadxi/gobenchdata) - [Size Limit Action](https://github.com/andresz1/size-limit-action) - Comments cost comparison of your JS in PRs and rejects them if limit is exceeded. +- [Check bundlephobia](https://github.com/carlesnunez/check-my-bundlephobia) - Comments new and modified package size according to bundlephobia.io website and rejects PR on threshold surpassed. ### Pull Requests @@ -318,8 +352,11 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Pull Request Stuck Notifier](https://github.com/loomble/pull-request-stuck-notifier-action) - [Lint pull request name with commitlint (Awesome if you squash merge !)](https://github.com/JulienKode/pull-request-name-linter-action) - [Block PR merges when Checks for target branches are failing](https://github.com/cirrus-actions/branch-guard) -- [Get generated static site screeshots updated by Pull Request](https://github.com/ssowonny/diff-pages-action) +- [Get generated static site screenshots updated by Pull Request](https://github.com/ssowonny/diff-pages-action) - [Add Labels Depending if the Pull Request Still in Progress](https://github.com/AlbertHernandez/working-label-action) +- [Ticket Check Action](https://github.com/neofinancial/ticket-check-action) - Automatically add a ticket or issue number to the start of all Pull Request titles. +- [Pull Request Lint With Regex](https://github.com/MorrisonCole/pr-lint-action) +- [Pull Request Landmines](https://github.com/tylermurry/github-pr-landmine) - [Annotate a Github Pull Request based on a Checkstyle XML-report](https://github.com/staabm/annotate-pull-request-from-checkstyle) ### GitHub Pages @@ -333,12 +370,14 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Deploy Google Analytics stats to GitHub Pages](https://github.com/cristianpb/analytics-google) - [A Jupyter Notebook Blogging Platform Powered by GitHub Actions, Pages and Jekyll](https://github.com/fastai/fastpages) - [Deploy A Static Site to GitHub Pages](https://github.com/appleboy/gh-pages-action) - Deploy to custom directory and ignore folder/file. +- [Deploy to GitHub Pages with Advanced Settings](https://github.com/crazy-max/ghaction-github-pages) ### Notifications and Messages - [Send a Discord notification](https://github.com/Ilshidur/action-discord) - [Post a Slack message as a bot](https://github.com/pullreminders/slack-action) - [Send an SMS from GitHub Actions using Nexmo](https://github.com/nexmo-community/nexmo-sms-action) +- [Send an SMS from GitHub Actions using Clockworksms](https://github.com/bharathvaj1995/clockwork-sms-action) - [Send a Telegram Message](https://github.com/appleboy/telegram-action) - [Send a File or Text Message to Discord (custom define color, username or avatar)](https://github.com/appleboy/discord-action) - [Collaborate on tweets using pull requests](https://github.com/gr2m/twitter-together) @@ -352,6 +391,8 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Create an Outlook Calendar Event using Microsoft Graph](https://github.com/anoopt/ms-graph-create-event) - [Watch for GitHub Wiki page changes and post to Slack](https://github.com/benmatselby/gollum-page-watcher-action) - [Send an SMS using MessageBird](https://github.com/nikitasavinov/messagebird-sms-action) +- [Reply to Stale Bots](https://github.com/c-hive/fresh-bot) +- [Send an Embed Message to Discord](https://github.com/sarisia/actions-status-discord) ### Deployment @@ -390,6 +431,7 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Netlify Deploy GitHub Action for each commit](https://github.com/nwtgck/actions-netlify) - [Run Ansible Playbooks](https://github.com/arillso/action.playbook) - [Publish a Python Distribution Package to Anaconda Cloud](https://github.com/fcakyon/conda-publish-action) +- [Deploy VS Code Extension to Visual Studio Marketplace or the Open VSX Registry](https://github.com/HaaLeo/publish-vscode-extension) #### Docker @@ -400,12 +442,16 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Monitor and limit your docker image size](https://github.com/wemake-services/docker-image-size-limit) - [Publish Docker Images to the Amazon Elastic Container Registry (ECR)](https://github.com/appleboy/docker-ecr-action) - [Build And Push Your Docker Images Caching Each Stage To Reduce Build Time](https://github.com/whoan/docker-build-with-cache-action) +- [Set up Docker Buildx](https://github.com/crazy-max/ghaction-docker-buildx) +- [Convert Branch or Tag Name Into Docker-Compatible Image Tag](https://github.com/ankitvgupta/ref-to-tag-action/) #### Kubernetes - [Deploy to any Cloud or Kubernetes Using Pulumi](https://github.com/pulumi/actions) - [Deploy to Kubernetes with kubectl](https://github.com/steebchen/kubectl) - [Get Kubeconfig File From Google Kubernetes Engine (GKE)](https://github.com/machine-learning-apps/gke-kubeconfig) +- [Kustomize Kubernetes Config YAMLs](https://github.com/karancode/kustomize-github-action) +- [Create a Kubernetes Cluster for Testing Using Krucible](https://github.com/Krucible/krucible-github-action) #### AWS @@ -439,6 +485,7 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Generate OG Image](https://github.com/BoyWithSilverWings/generate-og-image) - Generate customisable open graph images from Markdown files. - [GitHub Actions for mdBook](https://github.com/peaceiris/actions-mdbook) - [Setup Mint](https://github.com/fabasoad/setup-mint-action) - Setup Mint (programming language for writing single page applications). +- [Gatsby AWS S3 Deployment](https://github.com/jonelantha/gatsby-s3-action) - Deploy Gatsby to S3 (supports CloudFront). ### Machine Learning Ops @@ -455,8 +502,9 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Build Go applications for multiplatform](https://github.com/izumin5210/action-go-crossbuild) - [Generate ~/.m2/settings.xml for Maven builds](https://github.com/whelk-io/maven-settings-xml-action) - [Run Pascal Script](https://github.com/fabasoad/pascal-action) -- [Setup Brainfuck](https://github.com/fabasoad/brainfuck-install-action/) - Setup brainfuck interpreter. +- [Setup Brainfuck](https://github.com/fabasoad/setup-brainfuck-action) - Setup brainfuck interpreter. - [Publish Go Binaries to GitHub Release Assets](https://github.com/wangyoucao577/go-release-action) +- [Setup COBOL](https://github.com/fabasoad/setup-cobol-action) ### Database @@ -482,8 +530,10 @@ Set up your GitHub Actions workflow with a specific version of your programming - [Zero Downtime Laravel Deployments with GitHub Actions](https://atymic.dev/blog/github-actions-laravel-ci-cd/) - [Building Custom GitHub Actions Pluralsight Course](https://www.pluralsight.com/courses/building-custom-github-actions/) - [Continuously Deploying Django to DigitalOcean with Docker and GitHub Actions](https://testdriven.io/blog/deploying-django-to-digitalocean-with-docker-and-github-actions/) +- [Deploying Self-Hosted GitHub Actions Runners with Docker](https://testdriven.io/blog/github-actions-docker/) - Deploy self-hosted GitHub Actions runners with Docker and Docker Swarm to DigitalOcean. +- [Setup Auto-scaled self-hosted GitHub Actions Runners on AWS Spot-instances](https://040code.github.io/2020/05/25/scaling-selfhosted-action-runners) -> Please don't hesitate to make a PR if you have more resources to share. Check out [contributing.md](contributing.md) for more information +> Please don't hesitate to make a PR if you have more resources to share. Check out [contributing.md](contributing.md) for more information. ## License