/gstraccini-bot

πŸ€– :octocat: GStraccini-bot automates repository management, ensuring organization and health by handling pull requests, issues, comments, and commits.

Primary LanguagePHPMIT LicenseMIT

GStraccini-bot

πŸ€– :octocat: GStraccini-bot is a GitHub bot designed to keep your repository organized and healthy by automating tasks like managing pull requests, issues, comments, and commits, allowing you to focus on solving real problems.

Deploy via ftp PHP Linting JSON/YAML validation Shell checker


About the Bot

GStraccini-bot automates key repository tasks, managing pull requests, issues, comments, and commits to help maintain a clean, organized, and healthy project environment. This lets you focus on development and problem-solving.


About This Repository

This repository serves as the core for GStraccini-bot. It processes commands and actions, enabling the bot to perform automations on your repository.


Installation

To install the bot:

  1. Visit the GitHub Apps page.
  2. Install it for your account, organization, or selected repositories.

You can see an updated list of available commands by commenting @gstraccini help on a pull request.


Available Commands

GStraccini-bot can handle various tasks. Here’s a list of commands:

  • @gstraccini help: Shows available commands.
  • @gstraccini hello: Greets the invoker.
  • @gstraccini thank you: Replies with a "You're welcome" message.
  • @gstraccini add project <projectPath>: Adds a project to the solution file (for .NET projects).
  • @gstraccini appveyor build <type>: Runs an AppVeyor build for a target commit/pull request.
  • @gstraccini appveyor bump version <component>: Bumps the version in AppVeyor.
  • @gstraccini appveyor register: Registers the repository in AppVeyor.
  • @gstraccini appveyor reset: Resets the AppVeyor build number for a repository.
  • @gstraccini bump version <version> <project>: Bumps the .NET version in .csproj files.
  • @gstraccini change runner <runner> <workflow> <jobs>: Changes the GitHub Actions runner in a workflow file.
  • @gstraccini csharpier: Formats C# code using CSharpier.
  • @gstraccini fix csproj: Updates the .csproj file with NuGet package versions (for .NET Framework projects).
  • @gstraccini prettier: Formats code using Prettier.
  • @gstraccini rerun failed checks: Reruns failed checks in the target pull request.
  • @gstraccini rerun failed workflows: Reruns failed GitHub Actions workflows in the target pull request.
  • @gstraccini review: Enables review for the target pull request.
  • @gstraccini track: Tracks a pull request, queues a build, and synchronizes merge branches.
  • @gstraccini update snapshot: Updates test snapshots (npm test -- -u) for Node.js projects.

Note

If you are not allowed to use the bot, a thumbs-down reaction will be added to your comment.

Tip

You can trigger commands with a βœ… tick (beta feature).


How It Works

GStraccini-bot uses several components to manage repositories:


Cronjobs

GStraccini-bot runs automated tasks at regular intervals on its infrastructure:

  • Branches – πŸ•› every 1 minute
  • Comments – πŸ•› every 1 minute
  • Issues – πŸ•› every 1 minute
  • Pull Requests – πŸ•› every 1 minute
  • Pushes – πŸ•› every 1 minute
  • Repositories – πŸ•› every 1 minute
  • Signature – πŸ•› every 5 minutes

Useful Links