From 2c1966078dc3b83df4e959dd734c0aaa41740ba9 Mon Sep 17 00:00:00 2001 From: Christine Dodrill Date: Sun, 9 Aug 2015 12:48:49 -0700 Subject: [PATCH] Initial commit --- .dockerignore | 2 + .gitignore | 61 +++++++++++++++++++++++++++ Dockerfile | 14 +++++++ LICENSE | 19 +++++++++ Procfile | 1 + README.md | 5 +++ fim.list | 107 +++++++++++++++++++++++++++++++++++++++++++++++ ponyapi.py | 12 ++++++ requirements.txt | 8 ++++ 9 files changed, 229 insertions(+) create mode 100644 .dockerignore create mode 100644 .gitignore create mode 100644 Dockerfile create mode 100644 LICENSE create mode 100644 Procfile create mode 100644 README.md create mode 100644 fim.list create mode 100644 ponyapi.py create mode 100644 requirements.txt diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..e35672b --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +*.pyc +env diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..37744de --- /dev/null +++ b/.gitignore @@ -0,0 +1,61 @@ +# Created by https://www.gitignore.io + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] + +# C extensions +*.so + +# Distribution / packaging +.Python +env/ +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +*.egg-info/ +.installed.cfg +*.egg + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*,cover + +# Translations +*.mo +*.pot + +# Django stuff: +*.log + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..f5904c2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM python:2.7.10 + +RUN adduser --disabled-password --gecos '' r +ADD ./requirements.txt /app/requirements.txt +WORKDIR /app + +RUN pip install -r ./requirements.txt + +ADD . /app + +EXPOSE 5000 + +USER r +CMD gunicorn ponyapi:app --log-file=- -b 0.0.0.0:5000 -w 4 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8fff6cd --- /dev/null +++ b/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2015 Christine Dodrill + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/Procfile b/Procfile new file mode 100644 index 0000000..17353e0 --- /dev/null +++ b/Procfile @@ -0,0 +1 @@ +web: gunicorn ponyapi:app --log-file=- diff --git a/README.md b/README.md new file mode 100644 index 0000000..bac684b --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +PonyAPI +======= + +A simple API for episodes of My Little Pony: Friendship is Magic to be run +inside a container. diff --git a/fim.list b/fim.list new file mode 100644 index 0000000..96c7cc9 --- /dev/null +++ b/fim.list @@ -0,0 +1,107 @@ +FIM 1286735400 1 1 Friendship is Magic Part 1 +FIM 1287772200 1 2 Friendship is Magic Part 2 +FIM 1288377000 1 3 The Ticket Master +FIM 1288981800 1 4 Applebuck Season +FIM 1289586600 1 5 Griffon the Brush Off +FIM 1290191400 1 6 Boast Busters +FIM 1290796200 1 7 Dragonshy +FIM 1291401000 1 8 Look Before You Sleep +FIM 1292005800 1 9 Bridle Gossip +FIM 1292610600 1 10 Swarm of the Century +FIM 1293215400 1 11 Winter Wrap Up +FIM 1294425000 1 12 Call of the Cutie +FIM 1296239400 1 13 Fall Weather Friends +FIM 1296844200 1 14 Suited For Success +FIM 1297449000 1 15 Feeling Pinkie Keen +FIM 1298053800 1 16 Sonic Rainboom +FIM 1298658600 1 17 Stare Master +FIM 1299263400 1 18 The Show Stoppers +FIM 1299868200 1 19 A Dog and Pony Show +FIM 1300473000 1 20 Green Isn't Your Color +FIM 1301077800 1 21 Over a Barrel +FIM 1302287400 1 22 A Bird in the Hoof +FIM 1302892200 1 23 The Cutie Mark Chronicles +FIM 1303497000 1 24 Owl's Well That Ends Well +FIM 1304101800 1 25 Party of One +FIM 1304706600 1 26 The Best Night Ever +FIM 1316264400 2 1 The Return of Harmony Part 1 +FIM 1316869200 2 2 The Return of Harmony Part 2 +FIM 1318683600 2 3 Lesson Zero +FIM 1319292000 2 4 Luna Eclipsed +FIM 1320501600 2 5 Sisterhooves Special +FIM 1321110000 2 6 The Cutie Pox +FIM 1321714800 2 7 May the Best Pet Win! +FIM 1322319600 2 8 The Mysterious Mare Do Well +FIM 1322924400 2 9 Sweet and Elite +FIM 1323529200 2 10 Secret of my Excess +FIM 1324134000 2 11 Hearth's Warming Eve +FIM 1325948400 2 12 Family Appreciation Day +FIM 1326553200 2 13 Baby Cakes +FIM 1327158000 2 14 The Last Roundup +FIM 1327762800 2 15 The Super Speedy Cider Squeezy 6000 +FIM 1328367600 2 16 Read It and Weep +FIM 1328974200 2 17 Hearts and Hooves Day +FIM 1329577200 2 18 A Friend in Deed +FIM 1330797600 2 19 Putting Your Hoof Down +FIM 1331402400 2 20 It's About Time +FIM 1332003600 2 21 Dragon Quest +FIM 1332608400 2 22 Hurricane Fluttershy +FIM 1333213200 2 23 Ponyville Confidential +FIM 1333818000 2 24 MMMystery on the Friendship Express +FIM 1335027600 2 25 A Canterlot Wedding, Part 1 +FIM 1335029400 2 26 A Canterlot Wedding, Part 2 +FIM 1352559600 3 1 The Crystal Empire - Part 1 +FIM 1352561400 3 2 The Crystal Empire - Part 2 +FIM 1353166200 3 3 Too Many Pinkie Pies +FIM 1353771000 3 4 One Bad Apple +FIM 1354375800 3 5 Magic Duel +FIM 1354980600 3 6 Sleepless in Ponyville +FIM 1355585400 3 7 Wonderbolt Academy +FIM 1356190200 3 9 Apple Family Reunion +FIM 1356795000 3 10 Spike at Your Service +FIM 1358609400 3 11 Keep Calm and Flutter On +FIM 1359214200 3 8 Just for Sidekicks +FIM 1360423800 3 12 Games Ponies Play +FIM 1361028600 3 13 Magical Mystery Cure +FIM 1385218800 4 1 Princess Twilight Sparkle - Part 1 +FIM 1385220600 4 2 Princess Twilight Sparkle - Part 2 +FIM 1385825400 4 3 Castle-Mania +FIM 1386430200 4 4 Daring Don't +FIM 1387035000 4 5 Flight to the Finish +FIM 1387639800 4 6 Power Ponies +FIM 1388244600 4 7 Bats! +FIM 1388849400 4 8 Rarity Takes Manehattan +FIM 1390059000 4 10 Rainbow Falls +FIM 1389454200 4 9 Pinkie Apple Pie +FIM 1390663800 4 11 Three's a Crowd +FIM 1391268600 4 12 Pinkie Pride +FIM 1391873400 4 13 Simple Ways +FIM 1392478200 4 14 Filli Vanilli +FIM 1393083000 4 15 Twilight Time +FIM 1393687800 4 16 It Ain't Easy Being Breezies +FIM 1394292600 4 17 Somepony to Watch Over Me +FIM 1394897400 4 18 Maud Pie +FIM 1395502200 4 19 For Whom the Sweetie Belle Toils +FIM 1396107000 4 20 Leap of Faith +FIM 1396711800 4 21 Testing, Testing, 1, 2, 3 +FIM 1397917800 4 22 Trade Ya +FIM 1398522600 4 23 Inspiration Manifestation +FIM 1399127400 4 24 Equestria Games +FIM 1399730400 4 25 Twilight's Kingdom - Part 1 +FIM 1399732200 4 26 Twilight's Kingdom - Part 2 +FIM 1428768000 5 3 Castle Sweet Castle +FIM 1428159600 5 1 The Cutie Map Part 1 +FIM 1428161400 5 2 The Cutie Map Part 2 +FIM 1429371000 5 4 Bloom and Gloom +FIM 1429975800 5 5 Tanks for the Memories +FIM 1430580600 5 6 Appleoosa's Most Wanted +FIM 1431790200 5 7 Make New Friends But Keep Discord +FIM 1432395000 5 8 The Lost Treasure of Griffonstone +FIM 1434209400 5 9 Slice of Life (Episode 100) +FIM 1434814200 5 10 Princess Spike +FIM 1435419000 5 11 Party Pooped +FIM 1436023800 5 12 Amending Fences +FIM 1436628600 5 13 Do Princesses Dream of Magic Sheep? +FIM 1443277800 99 3 Equestria Girls - Friendship Games +FIM 1371340800 99 1 Equestria Girls +FIM 1411862400 99 2 Equestria Girls - Rainbow Rocks diff --git a/ponyapi.py b/ponyapi.py new file mode 100644 index 0000000..d5f3fdb --- /dev/null +++ b/ponyapi.py @@ -0,0 +1,12 @@ +import os +from flask import Flask + +app = Flask(__name__) + +@app.route("/") +def hello(): + return "Welcome to the Pony API!" + +@app.route("/search") +def search(): + return 500, "Not implemented yet" diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..92b5d12 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,8 @@ +Flask==0.10.1 +Jinja2==2.8 +MarkupSafe==0.23 +Werkzeug==0.10.4 +argparse==1.2.1 +gunicorn==19.3.0 +itsdangerous==0.24 +wsgiref==0.1.2