Skip to content

Commit

Permalink
Merge branch 'main' into patch-3
Browse files Browse the repository at this point in the history
  • Loading branch information
davidmfinol authored Jul 14, 2023
2 parents 7701f96 + 7ba05b1 commit dc7721c
Show file tree
Hide file tree
Showing 28 changed files with 450 additions and 374 deletions.
98 changes: 68 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,50 +1,88 @@
# GameCI
<p align="center">
<img height=200px src="static/assets/images/logo-cropped.png">
<p>

Documentation for open source GameCI projects. You can find the `.md` files inside the
[docs](./docs) folder. The live version is available on [game.ci](https://game.ci). This website is
built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator.
<p align="center">
<a href="https://discord.com/invite/WyPN5r9">
<img src="https://img.shields.io/badge/Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white"></a>
<a href="https://opencollective.com/game-ci">
<img src="https://img.shields.io/badge/OpenCollective-1F87FF?style=for-the-badge&logo=OpenCollective&logoColor=white"></a> <br>
<img src="https://img.shields.io/github/license/game-ci/documentation.svg">
<img src="https://img.shields.io/github/stars/game-ci/documentation.svg">
<img src="https://img.shields.io/github/last-commit/game-ci/documentation.svg">
<p>

### Installation
<br>

```bash
yarn
```
## Welcome

### Local Development
Welcome to the GameCI documentation repo! Here you will find the documentation assests for GameCI
and it's related open-source projects. The live documentation site availble at
<a href="https://game.ci">game.ci</a>.

```bash
yarn start
```
You may also view the markdown files directly at the following links:

This command starts a local development server and opens up a browser window. Most changes are
reflected live without having to restart the server.
- [Getting Started with GameCI](docs/02-getting-started)
- [Github Actions](docs/03-github)
- [Gitlab Pipelines](docs/05-gitlab)
- [CircleCi<](docs/11-circleci)
- [Docker](docs/08-docker)
- [Github Cloud Runner](docs/03-github-cloud-runner)
- [Troubleshooting](docs/09-troubleshooting)
- [FAQ](docs/10-faq)

### Build
## Building the Docs Site

```bash
yarn build
```
Built with [Docusaurus 2.](https://docusaurus.io/)

This command generates static content into the `build` directory and can be served using any static
contents hosting service.
This project has a hard dependancy on Node16. You will need to make sure that you have the proper
version of node installed to avoid errors.

## Community
- [Install Node16 on Ubuntu](https://joshtronic.com/2021/05/09/how-to-install-nodejs-16-on-ubuntu-2004-lts/)
- [Install Node16 using brew](https://apple.stackexchange.com/a/207883)

Feel free to join us on [![Discord](static/assets/readme/Discord.svg)](https://game.ci/discord) and
engage with the community.
This project relies on yarn for package management. You will need to install yarn in order to build
and test the documentation site.

## Support us
- [Official yarn installation docs.](https://classic.yarnpkg.com/lang/en/docs/install)

GameCI is free for everyone forever.
1. Install project dependancies

You can support us at [OpenCollective](https://opencollective.com/game-ci).
```bash
yarn install
```

## Licence
2. Start a local develpment server

This command starts a local development server and opens up a browser window. Most changes are
reflected live without having to restart the server.

```bash
yarn start
```

3. Create a build This command generates static content into the `build` directory and can be
served using any static contents hosting service.

```bash
yarn build
```

This repository is [MIT](./LICENSE) licensed.
## Meet the Community

Join us on [Discord](https://game.ci/discord) and engage with the growing community of engineers,
artists, hobbyists, and professionals using GameCI to build, test, and publish their projects
everyday.

## Support the Team

GameCI is free for everyone forever. You can support the peolpe who make GameCI pssible on
[OpenCollective](https://opencollective.com/game-ci)

## Licence

This includes all contributions from the community.
This repository is [MIT](./LICENSE) licensed. This includes all contributions from the community.

## Sponsors

[![CircleCI](static/assets/readme/CircleCI.svg)](https://circleci.com?utm_source=game-ci)
<img src="https://img.shields.io/badge/Vercel-000000?style=for-the-badge&logo=vercel&logoColor=white" href="https://vercel.com?utm_source=game-ci">
3 changes: 3 additions & 0 deletions docs/03-github-cloud-runner/02-getting-started.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Getting Started

To get quickly started checkout one of our examples:
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Command Line (Preview)
# Command Line

_Preview Support Only_

You can install Game CI locally and start cloud runner jobs from the command line or by integrating
your own tools. All parameters in [API Reference](../api-reference) can be specified as command line
Expand Down Expand Up @@ -43,5 +45,5 @@ This enables you to provide a command to pull input, e.g you can pull from a fil
manager.

```bash
yarn run cli --populateOverride true --readInputFromOverrideList UNITY_EMAIL,UNITY_SERIAL,UNITY_PASSWORD --readInputOverrideCommand="gcloud secrets versions access 1 --secret=\"{0}\""
yarn run cli --populateOverride true --pullInputList UNITY_EMAIL,UNITY_SERIAL,UNITY_PASSWORD --inputPullCommand="gcloud secrets versions access 1 --secret=\"{0}\""
```
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# GitHub Actions - AWS
# AWS

## Requirements

Expand Down Expand Up @@ -28,7 +28,7 @@ _Note:_ _This enables Cloud Runner access AWS._
## Configuration For AWS Cloud Runner Jobs
Refer to [Configuration page](../api-reference) or the [example below](#example).
Refer to [Configuration page](../../api-reference) or the [example below](#example).
### Allowed CPU/Memory Combinations
Expand All @@ -54,37 +54,18 @@ combinations:
```yaml
- uses: game-ci/unity-builder@cloud-runner-develop
id: aws-fargate-unity-build
timeout-minutes: 25
with:
cloudRunnerCluster: aws
providerStrategy: aws
versioning: None
projectPath: ${{ matrix.projectPath }}
unityVersion: ${{ matrix.unityVersion }}
projectPath: `your path here`
unityVersion: `unity version here`
targetPlatform: ${{ matrix.targetPlatform }}
gitPrivateToken: ${{ secrets.GITHUB_TOKEN }}
# You may want to export your builds somewhere external so you can access them outside of Cloud Runner jobs via the postBuildSteps:
postBuildSteps: |
- name: upload
image: amazon/aws-cli
commands: |
aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID --profile default
aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY --profile default
aws configure set region $AWS_DEFAULT_REGION --profile default
aws s3 ls
aws s3 ls game-ci-test-storage
ls /data/cache/$CACHE_KEY
ls /data/cache/$CACHE_KEY/build
aws s3 cp /data/cache/$CACHE_KEY/build/build-$BUILD_GUID.zip s3://game-ci-test-storage/$CACHE_KEY/build-$BUILD_GUID.zip
secrets:
- name: awsAccessKeyId
value: ${{ secrets.AWS_ACCESS_KEY_ID }}
- name: awsSecretAccessKey
value: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- name: awsDefaultRegion
value: eu-west-2
# You may want to export your builds somewhere external so you can access it:
containerHookFiles: aws-s3-upload-build
```
_[Custom Steps](../advanced-topics/custom-jobs/custom-steps)_
_[Custom Steps](../../advanced-topics/custom-hooks/container-hooks)_
A full workflow example can be seen in builder's
[Cloud Runner GitHub sourcecode for AWS Pipeline](https://github.com/game-ci/unity-builder/blob/main/.github/workflows/cloud-runner-aws-pipeline.yml).
[Cloud Runner GitHub sourcecode for GitHub Pipeline](https://github.com/game-ci/unity-builder/blob/309d668d637ae3e7ffe90d61612968db92e1e376/.github/workflows/cloud-runner-pipeline.yml#L109).
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Kubernetes

## Requirements

- You must have a Kuberentes cluster setup and ready that supports persistent volumes.
- Create a kubeconfig and encode it as base64.

## K8s Credentials

Setup the following as `env` variables for the GitHub build step:

- `kubeConfig` (should be encoded as base64)

## Configuration For Kubernetes Cloud Runner Jobs

Refer to [Configuration page](../../api-reference) or the [example below](#example).

### Allowed CPU/Memory Combinations

- `0.25 vCPU` - 0.5 GB, 1 GB, 2 GB
- `0.5 vCPU` - 1 GB, 2 GB, 3 GB, 4 GB
- `1 vCPU` - 2 GB, 3 GB, 4 GB, 5 GB, 6 GB, 7 GB, 8 GB
- `2 vCPU` - Between 4 GB and 16 GB in 1-GB increments
- `4 vCPU` - Between 8 GB and 30 GB in 1-GB increments

#### Summary Of Format

- Values are represented as 1024:1 GB or CPU.

Do not include the vCPU or GB suffix.

### Example

```yaml
- uses: game-ci/unity-builder@cloud-runner-develop
id: k8s-unity-build
with:
providerStrategy: k8s
versioning: None
projectPath: `your path here`
unityVersion: `unity version here`
targetPlatform: ${{ matrix.targetPlatform }}
gitPrivateToken: ${{ secrets.GITHUB_TOKEN }}
# You may want to export your builds somewhere external so you can access it:
containerHookFiles: aws-s3-upload-build
```
_[Custom Steps](../../advanced-topics/custom-hooks/container-hooks)_
A full workflow example can be seen in builder's
[Cloud Runner GitHub sourcecode for AWS Pipeline](https://github.com/game-ci/unity-builder/blob/main/.github/workflows/cloud-runner-k8s-pipeline.yml).
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
position: 2.0
label: Getting started
label: GitHub
collapsible: true
collapsed: true
5 changes: 5 additions & 0 deletions docs/03-github-cloud-runner/03-examples/_category_.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
position: 2.0
label: Examples
collapsible: true
collapsed: true
76 changes: 0 additions & 76 deletions docs/03-github-cloud-runner/03-getting-started/03-kubernetes.mdx

This file was deleted.

Loading

0 comments on commit dc7721c

Please sign in to comment.