Skip to content

Instantly share code, notes, and snippets.

@anildigital
Last active October 15, 2019 15:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anildigital/705c00d07ac4e88e00e35e6a79b3b1ba to your computer and use it in GitHub Desktop.
Save anildigital/705c00d07ac4e88e00e35e6a79b3b1ba to your computer and use it in GitHub Desktop.
{
"variables": {
"aws_access_key": "",
"aws_secret_key": "",
"region": "us-east-1"
},
"builders": [
{
"access_key": "{{user `aws_access_key`}}",
"ami_name": "packer-linux-janus-{{timestamp}}",
"instance_type": "t2.micro",
"region": "us-east-1",
"secret_key": "{{user `aws_secret_key`}}",
"source_ami_filter": {
"filters": {
"virtualization-type": "hvm",
"name": "ubuntu/images/*ubuntu-xenial-16.04-amd64-server-*",
"root-device-type": "ebs"
},
"owners": ["099720109477"],
"most_recent": true
},
"ssh_username": "ubuntu",
"type": "amazon-ebs",
"vpc_id": "vpc-0207642402114437b",
"subnet_id": "subnet-00496cf2a00a6c0fb"
}
],
"provisioners": [
{
"type": "file",
"source": "./janus.service",
"destination": "/home/ubuntu/janus.service"
},
{
"type": "file",
"source": "./papertrail.service",
"destination": "/home/ubuntu/papertrail.service"
},
{
"type": "file",
"source": "./log_files.yml",
"destination": "/home/ubuntu/log_files.yml"
},
{
"type": "file",
"source": "./janus.jcfg.sample",
"destination": "/home/ubuntu/janus.jcfg.sample"
},
{
"type": "shell",
"inline":[
"sudo apt-get update",
"sudo apt-get install libconfig-dev libmicrohttpd-dev libjansson-dev libnice-dev libssl-dev libsofia-sip-ua-dev libglib2.0-dev libopus-dev libogg-dev libcurl4-openssl-dev pkg-config gengetopt libtool automake libavutil-dev libavcodec-dev libavformat-dev ffmpeg lua5.3 liblua5.3-dev -y",
"wget https://github.com/cisco/libsrtp/archive/v2.2.0.tar.gz",
"tar xfv v2.2.0.tar.gz",
"cd libsrtp-2.2.0",
"./configure --prefix=/usr --enable-openssl",
"make shared_library && sudo make install",
"cd ..",
"rm -rf v2.2.0.tar.gz",
"rm -rf libsrtp-2.2.0",
"sudo apt-get install git -y",
"wget https://github.com/papertrail/remote_syslog2/releases/download/v0.20/remote-syslog2_0.20_amd64.deb",
"sudo dpkg -i remote-syslog2_0.20_amd64.deb",
"git clone https://github.com/meetecho/janus-gateway.git",
"cd janus-gateway",
"sh autogen.sh",
"./configure --prefix=/opt/janus --enable-post-processing",
"make",
"sudo make install",
"sudo make configs",
"cd ..",
"rm -rf janus-gateway",
"cd /opt/janus/etc/janus",
"sudo mv /home/ubuntu/janus.jcfg.sample /opt/janus/etc/janus/janus.jcfg",
"sudo mv /home/ubuntu/janus.service /etc/systemd/system/",
"sudo mv /home/ubuntu/papertrail.service /etc/systemd/system/",
"sudo systemctl enable janus.service",
"sudo mv /home/ubuntu/log_files.yml /etc/",
"echo 'done'"
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment