# GitHub Actions

> GitHub Actions with Kanvas automates the synchronization of Git repositories and visually validates pull requests for efficient development.

Kanvas GitHub Actions enhance your operational workflow by integrating git version control and the management of your infrastructure. Kanvas GitHub Actions are design to integrate into your existing pipelines.

## Kanvas Github Actions

1. [Kanvas Snapshot](#kanvas-snapshot-github-action)
2. [Performance Testing with Kanvas](https://docs.meshery.io/guides/infrastructure-management/gitops-with-meshery)

This methodology automates the synchronization of your actual infrastructure state with the desired state defined in your Git repository. Kanvas enables GitOps by offering a comprehensive view of your infrastructure, allowing you to verify workload designs and Kubernetes cluster configurations before merging pull requests.

## Kanvas Snapshot GitHub Action

Kanvas introduces the Kanvas Snapshot GitHub Actions, a tool that allows you to visualize changes in your infrastructure directly in your pull requests. With Kanvas Snapshot, you can:

- See your deployment changes pull request-to-pull request.
- Get snapshots of your infrastructure directly in your pull requests.

[See action in GitHub Marketplace](https://github.com/marketplace/actions/kanvas-snapshot)

### Configuring Kanvas Snapshots

For setup steps, see the [Kanvas Snapshots tutorial](/cloud/guides/tutorials/gitops-snapshots/).



<div class="pageinfo">
<p>The Kanvas GitHub App requires authorization to interact with your repositories. If you would like to use your GitHub user&rsquo;s personal access token, instead, <a href="https://cloud.layer5.io/support">please let us know</a>.</p>

</div>


## Customizing Snapshot Workflow Triggers in Kanvas Snapshot

You can configure your workflows to run when specific activity on GitHub happens, at a scheduled time, or when an event outside of GitHub occurs.

### About events that trigger workflows

GitHub Actions provides a variety of events that can trigger workflows, allowing you to automate your software development process. Each event corresponds to a specific activity, such as creating a pull request, pushing code to a repository, or releasing a new version.

## Using Kanvas's Performance Testing GitHub Action

You can create your own performance profiles to run repeatable tests with Kanvas. You can configure this action to trigger with each of your releases, on every pull request. or any GitHub workflow trigger event. A sample configuration of the action is shown below.

Read more about the Service Mesh Performance GitHub Action in the [Kanvas documentation](https://docs.meshery.io/guides/infrastructure-management/gitops-with-meshery). [See action in GitHub Marketplace](https://github.com/marketplace/actions/performance-testing-with-meshery)

