Skip to content

Instantly share code, notes, and snippets.

@danieljimenez
Last active February 7, 2017 01:16
Show Gist options
  • Save danieljimenez/167d4e43fb41856c5671364d1e542d17 to your computer and use it in GitHub Desktop.
Save danieljimenez/167d4e43fb41856c5671364d1e542d17 to your computer and use it in GitHub Desktop.
TeamCity Agent Cloud Config
#cloud-config
# vim: syntax=yaml
# src: https://gist.github.com/danieljimenez/167d4e43fb41856c5671364d1e542d17
---
repo_update: true
repo_upgrade: all
manage_etc_hosts: true
output: { all : '| tee -a /var/log/cloud-init-output.log' }
final_message: "The system is finally up, after $UPTIME seconds"
bootcmd:
- [ cloud-init-per, once, fix_ephemeral_mounting, mkfs.ext4, /dev/xvdb ]
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA3pcYVyW/IYl51GZl7fZl0caViUo0KGMGl9m9GBwyv/I3PiOje5Wf0cndC0mCfcBlWl7V+S3uO97eXO3TLfOib03G7A5+eXAq7v3irtZI/IuzEQ57RjS9Yc+XQxbIfl3xcyKHeXpB4nmDmK+rOvQ91QaIPh0MavpEUK8mMTuuzmJTD+QVpVYNfs01PMNAsY7r0Hl2EGLYei0yX6WotEUhrytsC9VFeBdnH33jUtkkr+Tkyq5eg25gMD+cM0GxipecEYwPuOmvvCmyl/gC2hQ5k1djhkCfhowTp8ocKjCt0pCa9rFKinarpWjjVxrtY8gOipF1Rlk4Tjche91djFUa4w== djimenez
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDJ+15kyVW9J/HMplLmsb9bydbgsTdVmE49HNMlz3/wOQvR/Ejs2D4W9csPhMSeHu+IRb1VIWFw8oBLuuY+jAiQ0ReKfe9A1T2wotz2BSzVz/b9RP5H2SIJVFdjyn3m2VmUIf1GHgonTtuYCXhHpOAmtSRJSNbj3Vou3uDQhRHRfGUU9Xbn/bwpRpK5p032ztTjyPZyBHajrr9C+L4+B2fI0PGAqOrTyY/jJ1pnu4n09m0gl5S9yJtqNyvtvRxnu02EbVYblyS5oJNMupJF6bC/lti16tVh06/H9rLNqTq8hNq2OPYyQYgJ2xmiqEwr7UYH8azl0uEX9QIxT81hZ5D3 alex
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCoOcEZcuPhBHAszPWJPxQNmlxpQ1YZtTkTWsCLD/QKYUP3WKUQ7kfTYu/E9YziDzZZTLdAVzsrIAb3MNIrVF6ByytF50KaB2w9VlXuj3jaIAWc+AKIUEaVfKNGF5BrP8sX1WPxfEOusIXSNM/v1rDErGMIaopiGpbmaZ/kvku5kiHV6FrYpNTDtO3y/wYuMbb0glaz5YChOO0eS05ponUBaBCtRp174fDerb0WqbAwt8qAvW/0+umAzdfBKo+NllKc2bpFbLphS5nj+Syxzbwu5aKYIrtERnnKSpxRZV4K2BoQRrjcLl3cqesiuwuH/Ny8o2di1ZUVcTWK3arkiHhz mspell
yum_repos:
nodesource:
name: Node.js Packages for Enterprise Linux 7 - $basearch
baseurl: https://rpm.nodesource.com/pub_6.x/el/7/$basearch
enabled: true
gpgcheck: false
packages:
- java-1.7.0-openjdk-devel
- java-1.8.0-openjdk-devel
- automake
- clang-devel
- cmake
- gcc
- git
- htop
- ImageMagick
- llvm-devel
- nodejs
- openssl-devel
- patch
- postgresql94-devel
- ruby-devel
- rubygems
- sqlite-devel
runcmd:
# set default java
- alternatives --set java $(alternatives --display java | grep 1.8. | grep priority | head -n1 | awk '{print $1}')
- alternatives --set javac $(alternatives --display javac | grep 1.8. | grep priority | head -n1 | awk '{print $1}')
# install some tools
- [gem, install, rmate]
- [gem, install, bundler]
# create dirs needed for some builds
- [mkdir, -p, '/media/ephemeral0/foreflight/']
- [ln, -s, '/media/ephemeral0/foreflight/', '/foreflight']
- [mkdir, -p, '/foreflight/data/db']
- [mkdir, -p, '/foreflight/data/db/account']
- [mkdir, -p, '/foreflight/data/db/store']
- [mkdir, -p, '/foreflight/data/downloads/weather']
- [mkdir, -p, '/foreflight/packages/metool/0.31.5/Amazon/x86_64_v2013.09']
- [mkdir, -p, '/foreflight/data/import/appareo']
- [mkdir, -p, '/foreflight/data/import/mos']
- [mkdir, -p, '/foreflight/data/metool/tmp']
- [mkdir, -p, '/foreflight/data/log']
- [mkdir, -p, '/foreflight/server']
- [mkdir, -p, '/foreflight/server/bin']
- [mkdir, -p, '/foreflight/server/conf']
- [mkdir, -p, '/foreflight/server/ext-lib']
- [mkdir, -p, '/foreflight/server/hosts']
- [mkdir, -p, '/foreflight/server/log']
- [mkdir, -p, '/foreflight/server/resin-data']
- [mkdir, -p, '/foreflight/server/ssl']
# open up permissions on the ephemeral disk
- [chown, 'ec2-user', '/media/ephemeral0/']
- [chmod, -R, ugo+rw, '/media/ephemeral0/']
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment