An open API service indexing awesome lists of open source software.

https://github.com/devenes/aws-ci-runner

GitHub Actions template for using pods on the AWS instances as runner
https://github.com/devenes/aws-ci-runner

aws aws-cli ci ec2 github-actions iam pod runner

Last synced: 2 months ago
JSON representation

GitHub Actions template for using pods on the AWS instances as runner

Awesome Lists containing this project

README

          


Aws Ci Runner

 


AWS CI Runner


Github top language
Github language count
Repository size
License




About   |  
Features   |  
Technologies   |  
Requirements   |  
Starting   |  
License   |  
Author


## :dart: About

You can use GitHub Actions pipeline for deploying your application to the AWS EC2 instances. And you can test or deploy the automated process on the AWS EC2 instances as runners.

Used docker images to register the AWS EC2 instances as runners.

## :sparkles: Features

:heavy_check_mark: Start runner\
:heavy_check_mark: Deploy your code\
:heavy_check_mark: Run your code\
:heavy_check_mark: Stop runner

## :rocket: Technologies

The following tools were used in this project:

- [AWS](https://aws.amazon.com/)
- [AWS CLI](https://aws.amazon.com/cli/)
- [GitHub Actions](https://github.com)
- [Docker](https://www.docker.com/)

## :white_check_mark: Requirements

- Before starting :checkered_flag:, you need to have [Git](https://git-scm.com) and [Docker](https://www.docker.com) installed on your EC2 instance. And any other software you need to run or test the project.

- After finished setting up your EC2 instance take an image (AMI) of it and use it for the runner. You will add its AMI ID in the GitHub Actions workflow.

- For your safety, you need to have a separate EC2 instance for the runner.

- For your safety, you need to use GitHub Actions Secrets to store your AWS credentials that you will use to connect to the AWS EC2 instances.

## :checkered_flag: Starting

| Key | Value | Description |
| :---------------------- | :------- | :--------------------------------------- |
| `aws-access-key-id` | `string` | The AWS access key |
| `aws-secret-access-key` | `string` | The AWS secret key |
| `ec2-image-id` | `string` | The ID of the EC2 instance AMI |
| `github-token` | `string` | The GitHub token |
| `aws-region` | `string` | The region of the EC2 instance |
| `ec2-instance-type` | `string` | The type of the EC2 instance |
| `subnet-id` | `string` | The ID of the subnet |
| `security-group-id` | `string` | The ID of the security group |
| `iam-role-name` | `string` | The name of the IAM role for EC2 service |
| `aws-resource-tags` | `string` | The AWS resource tags |

- Note that, as `ec2-image-id` you need to use your Amazon Image (AMI) ID. You can find it in the AWS EC2 console.

- As `iam-role-name` you need to use the name of the IAM role for EC2 service. You can find it in the AWS IAM console. It is not in the Amazon Resource Name (ARN) format.

## :memo: License

This project is under license from MIT. For more details, see the [LICENSE](LICENSE) file.

Made with :heart: by devenes

 

Back to top