summary refs log tree commit diff
path: root/playgrounds/aurora
diff options
context:
space:
mode:
Diffstat (limited to 'playgrounds/aurora')
-rw-r--r--playgrounds/aurora/fio.aurora45
-rw-r--r--playgrounds/aurora/hello-job.aurora22
-rw-r--r--playgrounds/aurora/iperf.aurora37
-rw-r--r--playgrounds/aurora/smf1-test-cron-job.aurora17
4 files changed, 121 insertions, 0 deletions
diff --git a/playgrounds/aurora/fio.aurora b/playgrounds/aurora/fio.aurora
new file mode 100644
index 0000000..b26debf
--- /dev/null
+++ b/playgrounds/aurora/fio.aurora
@@ -0,0 +1,45 @@
+downloadFIO = Process(
+  name='download-fio',
+  cmdline='curl -o fio.rpm https://svn.twitter.biz/rpms/fio.x86_64/RPMS/x86_64/fio-1.50-2.twitter.x86_64.rpm'
+)
+
+installBenchs = Packer.install(
+  'fio-bench',
+  role = 'fcuny',
+  version = 'latest'
+)
+
+mvFIO = Process(
+  name='move-fio',
+  cmdline='mv fio/* . && rm -rf fio',
+)
+
+extractFIO = Process(
+  name='extract-fio',
+  cmdline='rpm2cpio fio.rpm | cpio -idmv'
+)
+
+runFIO = Process(
+  name='run-fio',
+  cmdline='./runner.sh',
+)
+
+jobs = [
+  Job(
+    cluster='smf1',
+    role='fcuny',
+    environment='devel',
+    name='fio',
+    task=Task(
+      processes=[downloadFIO, extractFIO, runFIO, installBenchs, mvFIO],
+      resources=Resources(cpu=4, ram=4096 * MB, disk=10 * GB),
+      constraints=order(installBenchs, mvFIO, downloadFIO, extractFIO, runFIO)
+    ),
+    instances=3,
+    constraints={
+      'base_platform': 'f4ww',
+      'dedicated': '*/manhattan',
+      'host': 'limit:1',
+    }
+  )
+]
diff --git a/playgrounds/aurora/hello-job.aurora b/playgrounds/aurora/hello-job.aurora
new file mode 100644
index 0000000..a825fdb
--- /dev/null
+++ b/playgrounds/aurora/hello-job.aurora
@@ -0,0 +1,22 @@
+hello_date = Process(
+  name='hello-date',
+  cmdline='while true; do date; sleep 10; done'
+)
+
+jobs = [
+  Service(
+    cluster='smf1',
+    environment='devel',
+    role='fcuny',
+    name='hello-date',
+    task=Task(
+      processes=[hello_date],
+      resources=Resources(cpu=10, ram=1024 * MB, disk=512 * MB)
+    ),
+    instances=1,
+    constraints={
+      'host': 'smf1-fki-16-sr1',
+      'dedicated': '*/manhattan',
+    }
+  )
+]
diff --git a/playgrounds/aurora/iperf.aurora b/playgrounds/aurora/iperf.aurora
new file mode 100644
index 0000000..e071bd2
--- /dev/null
+++ b/playgrounds/aurora/iperf.aurora
@@ -0,0 +1,37 @@
+class StandardProfile(Struct):
+  environment=Default(String, 'prod')
+  tier=Default(String, 'preferred')
+
+DevelProfile = StandardProfile(
+  environment = 'devel',
+  tier = 'preemptible',
+)
+
+api = Process(
+  name = 'iperf',
+  cmdline = '/usr/bin/iperf3 -s -p {{thermos.ports[http]}}'
+)
+
+task = Task(
+  name = api.name(),
+  resources = Resources(cpu = 1.0, ram = 4 * GB, disk = 1 * GB),
+  processes = [api]
+)
+
+service_template = Service(
+  role='fcuny',
+  name = 'iperf',
+  environment='{{profile.environment}}',
+  task = task,
+  instances = 3,
+  contact = 'fcuny@twitter.com',
+  announce=Announcer(),
+  tier ='{{profile.tier}}',
+  constraints={
+    'host': 'smf1-bgr-27-sr1',
+  }
+)
+
+jobs = [
+  service_template(cluster='smf1-test').bind(profile=DevelProfile()),
+]
diff --git a/playgrounds/aurora/smf1-test-cron-job.aurora b/playgrounds/aurora/smf1-test-cron-job.aurora
new file mode 100644
index 0000000..3ade1b4
--- /dev/null
+++ b/playgrounds/aurora/smf1-test-cron-job.aurora
@@ -0,0 +1,17 @@
+# A cron job that runs every 5 minutes.
+jobs = [
+  Job(
+    cluster = 'smf1-test',
+    role = 'fcuny',
+    environment = 'test',
+    name = 'cron_hello_world-trashing',
+    cron_schedule = '*/5 * * * *',
+    constraints = {
+        'host': 'smf1-fki-17-sr1',
+    },
+    instances=10,
+    task = SimpleTask(
+      'cron_hello_world',
+      'echo "Hello world from cron, the time is now $(date --rfc-822)"'),
+  ),
+]