> For the complete documentation index, see [llms.txt](https://docs.valist.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.valist.io/publishing/publishing-using-ci-cd.md).

# Publishing using CI/CD

**Go to your project page and select the deployments tab by clicking the 🚀 button.**&#x20;

### Step 1: Connect your repository

To get started, link your GitHub repository to the project you created. You can choose which branch you prefer (either `main` or `master`). This will provide Github with a developer keypair, granting it access to your Valist project.

Here's the flow that will happen:

1. The browser will securely generate a fresh, unique `Ethereum key` for your project.
2. The `public key` address will be added to the Valist Project, and the `private key` will be stored in the chosen GitHub repository as a confidential secret labeled **VALIST\_SIGNER**.

This gives the GitHub Action access to your Valist project without compromising on security!

<figure><img src="/files/XUwAm2glix7VhydKACXc" alt=""><figcaption></figcaption></figure>

### Step 2: Configuring your builds

> **Important**: The next step is a crucial one.&#x20;

It is essential to ensure that you have configured your builds accurately. Double-check that the environment and framework you are using match your localhost environment. This will help ensure everything runs smoothly and is properly set up.&#x20;

Additionally, you should take the time to test your build configurations before deploying them. This will help ensure that the end product meets the requirements.

<figure><img src="/files/Crr86GabsR8hsTbjo65n" alt=""><figcaption></figcaption></figure>

### Step 3: Choose where to publish

After you've successfully configured your build, choose a platform where you want your project to be deployed.

*Valist will soon give you the option to select from various platforms to publish your application.*

<figure><img src="/files/KzAoopw9yHImWuklAy98" alt=""><figcaption></figcaption></figure>

### Step 4: Add Integrations

Valist offers additional integrations, such as Twitter and Discord, to enhance your experience.

<figure><img src="/files/8Nc4lfmfwm1p8GYlk84f" alt=""><figcaption></figcaption></figure>

### Step 5: Deploy now! 🚀

Once you have completed the steps above, hit the `Deploy` button. A transaction will pop up that you need to sign, *but don't worry - you won't be spending any gas fees.*

<figure><img src="/files/FxdoUQ95UbBlFmRfEfWV" alt=""><figcaption></figcaption></figure>

### Step 6: Merge the PR!

Once the transaction is processed, a Pull Request will be generated for your connected GitHub repository. A prompt will appear on your screen, which will direct you to the Pull Requests page.&#x20;

Merge the Pull Request and wait for Valist's Github Action to build your code.

<figure><img src="/files/ewno0h7lOGkpcVGPmNQi" alt=""><figcaption></figcaption></figure>

*That's it! 🚀* &#x20;

That's how easily you can create a full CI/CD pipeline to publish your applications on Valist. You can now access your releases from anywhere in the Valist ecosystem, and from IPFS directly!


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.valist.io/publishing/publishing-using-ci-cd.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
