| payload/init.d | ||
| scripts | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| aws_ubuntu20_jamulus.json | ||
| build.sh | ||
| dns.tf | ||
| install-packer.sh | ||
| main.tf | ||
| README.md | ||
Setup Ephemeral jamulus Server
This project will help you create a game server with jamulus on it. You can create an IAM image with packer with arma and deps installed. You can create a jamulus server with that image using terraform
Getting Started
Create a .pem file
Create a .pem file either locally or on AWS and import it here. it could be called jamulus.pem
Building the IAM Image
Use packer to create the IAM image. aws_ubuntu20_jamulus.json is the main packer file with scripts/deps.sh being what runs when packer is building
Building on linux:
# Validate your changes
$ packer validate
$ build.sh <your aws key> <your aws secret>
Building on windows:
# Validate your changes
> packer build -var "aws_access_key=<your aws key>" -var "aws_secret_key=<your aws secret>" -var .\aws_ubuntu20_jamulus.sjon
Building with CI/CD
Simply commit and push to gitlab. Go to the pipeline and accept the manual action.
Create the server
Set up AWS profile vereto in the ~/.aws/credentials file
# Do a dry run (WILL NOT CREATE SERVER)
$ terraform plan
# Make the server (WILL CREATE BILLABLE SERVERS)
$ terraform apply
Changing the region of deployed server can be done under the provider standza
Changing the instance class can be done under the aws_instance.jamulus stanza