# How to Get Full GitHub Benefits On-Premises

**![image](https://cloudian.com/wp-content/uploads/2022/10/Henry-Chu-150x150.jpg)**

**Henry Chu, Director of Solution Management, Cloudian**

**[View LinkedIn Profile](https://www.linkedin.com/in/chao-ho-henry-chu-2028693/)**

![space](https://cloudian.com/wp-content/uploads/2017/07/clear-spacer.png)

## **How to Get Full GitHub Benefits On-Premises**

GitHub has traditionally been known as a commonly used cloud service to store, manage and share code using tools like Git. It is this service that’s most familiar to many developers. However, GitHub also has an offering that provides the ability to use GitHub on-premises with[GitHub Enterprise Server (GHES)](https://docs.github.com/en/enterprise-server@3.5/admin/overview/about-github-enterprise-server)for enterprises that require a solution behind their firewall due to network restrictions or generally want tighter control over their data and access to it. GHES includes GitHub Actions and GitHub Packages, both of which can use not only public cloud storage but also on-prem S3-compatible object storage, which is what’s needed for a complete on-prem deployment of GHES. Cloudian HyperStore provides a[validated on-prem object storage](https://github.com/github-technology-partners/ghes-storage-partners)for GHES with the highest levels of S3 compatibility. In addition, HyperStore can also be deployed across multiple public clouds, providing a distributed S3 service for GHES with a single namespace across multi-cloud infrastructure.

This blog focuses on how to deploy HyperStore with GitHub Actions and GitHub Packages on-prem.

![image](https://cloudian.com/wp-content/uploads/2022/10/GitHub-2-1024x630.png)

### **GitHub Actions**

GitHub Actions automates CI/CD workflows and are created from building, testing, pull, and deploying requests. Cloudian HyperStore provides the on-prem S3-compataible object storage for GitHub Actions to store data such as artifacts and logs.

Cloudian has validated the necessary S3 operations used by GitHub Actions with HyperStore (see Cloudian’s validation at[GHES Storage Partners](https://github.com/github-technology-partners/ghes-storage-partners)). Using GitHub’s*ghe-storage-test.sh*, all storage operations have passed.

![image](https://cloudian.com/wp-content/uploads/2022/10/GitHub-Actions-1.png)

To configure GitHub Actions with Cloudian HyperStore, go to GHES***Site admin***interface.

![image](https://cloudian.com/wp-content/uploads/2022/10/GitHub-Actions-2.png)

On***Site admin***, go to***Management console.***

![image](https://cloudian.com/wp-content/uploads/2022/10/GitHub-Actions-3.png)

At the Management console, go to***Applications***and***Enable GitHub Actions***. Under***Artifact & Log Storage***, choose***Amazon S3***.

![image](https://cloudian.com/wp-content/uploads/2022/10/GitHub-Actions-4.png)

Enter the following fields:

- AWS Service URL: Enter the S3 endpoint configured for your HyperStore Cluster.
- AWS S3 Bucket: Enter the name of the bucket to be used for GitHub Actions
- AWS S3 Access Key: Enter the access key for the HyperStore user for the given bucket
- AWS S3 Secret Key: Enter the secret key for the HyperStore user for the given bucket

Click on***Test storage settings***to validate the configuration. Then save the settings.

![image](https://cloudian.com/wp-content/uploads/2022/10/GitHub-Actions-5-300x117.png)

### **GitHub Packages**

GitHub Packages gives you a safe way to publish and share application packages within your organization. With Cloudian HyperStore, you can achieve a complete on-prem deployment.

To configure GitHub Packages with HyperStore, go to***Management console***and then to***Packages***.***Enable GitHub Packages***.

![image](https://cloudian.com/wp-content/uploads/2022/10/GitHub-Packages-1.png)

Choose***Amazon S3***for your storage. Enter the following fields:

- AWS Service URL: Enter the S3 endpoint configured for your HyperStore Cluster.
- AWS S3 Bucket: Enter the name of the bucket to be used for GitHub Packages.
- AWS S3 Access Key: Enter the access key for the HyperStore user for the given bucket
- AWS S3 Secret Key: Enter the secret key for the HyperStore user for the given bucket

Click on***Test storage settings***to validate the configuration and then save the settings.

### **Summary**

With GitHub Enterprise Server and Cloudian HyperStore, enterprises now have a solution to store, manage, and share code with full control behind the security of their firewall. HyperStore provides the S3-compatible object storage on-prem (or distributed over multi-cloud) for GitHub Actions, a solution for CI/CD workflows. Similarly, HyperStore can also be used as a storage target for GitHub Packages, a repository for application packages.

To learn more about HyperStore’s features and benefits, go to[Scalable Enterprise Object Storage | Cloudian HyperStore](https://cloudian.com/products/hyperstore/).
