Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bensheldon/sheldoncalderon-wedding
Ben ♡ Angelina ♡ Middleman ♡ S3 ♡ Travis
https://github.com/bensheldon/sheldoncalderon-wedding
Last synced: 17 days ago
JSON representation
Ben ♡ Angelina ♡ Middleman ♡ S3 ♡ Travis
- Host: GitHub
- URL: https://github.com/bensheldon/sheldoncalderon-wedding
- Owner: bensheldon
- Created: 2013-11-08T04:55:38.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2024-02-05T01:16:25.000Z (9 months ago)
- Last Synced: 2024-10-16T07:05:45.810Z (28 days ago)
- Language: CSS
- Homepage: http://sheldoncalderon.com
- Size: 4.32 MB
- Stars: 1
- Watchers: 4
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Sheldon Calderon Wedding
========================[![Build Status](https://travis-ci.org/bensheldon/sheldoncalderon-wedding.png?branch=master)](https://travis-ci.org/bensheldon/sheldoncalderon-wedding)
A middle-man based single page static website that automatically deploys to an s3 bucket via Travis-CI.
Installation & usage
--------------------Install:
```
bundle install
```Run:
```
bundle exec middleman
```...and open the browser to [http://0.0.0.0:4567](http://0.0.0.0:4567)
Deployment
----------Any commits pushed to the `master` branch are automatically built and deployed to an s3 bucket using travis-ci.
Duplicating joyful deployments
-----------------------------This was accomplished with a combination of:
1. Creating an AWS S3 bucket
2. Creating a new Amazon User through the IAM panel with a custom group policy locked to the bucket (note to include both the `/` and `/*` permisisons) because you probably shouldn't put your main AWS users credentials in Travis (even if encrypted):{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"s3:*"
],
"Sid": "Stmt1383882348000",
"Resource": [
"arn:aws:s3:::sheldoncalderon.com"
],
"Effect": "Allow"
},
{
"Action": [
"s3:*"
],
"Sid": "Stmt1383882349000",
"Resource": [
"arn:aws:s3:::sheldoncalderon.com/*"
],
"Effect": "Allow"
}
]
}3. Telling Travis-CI to watch this Github repository
4. Using the [travis CLI gem](https://rubygems.org/gems/travis) to encrypt the AWS user credentials as environment variables (check out the [`.env.sample`](.env.sample) file):$ travis encrypt AWS_ACCESS_KEY_ID=The0Key1Master --add
$ travis encrypt AWS_SECRET_ACCESS_KEY=Your2Precious3Secrets --add
5. Configuring the `s3_sync` configuration in `config.rb` to point to your s3 bucket.
6. Commit, push, pray.