{"action":"created","comment":{"url":"https://api.github.com/repos/18F/nsf/pulls/comments/182879667","pull_request_review_id":113770893,"id":182879667,"diff_hunk":"@@ -13,6 +13,8 @@ RUN apt-get update &&\\\n     rm -rf /var/lib/apt/lists/* &&\\\n     rm -rf /var/cache/apt/*\n \n+RUN a2enmod rewrite proxy proxy_http","path":".docker/Dockerfile","position":4,"original_position":4,"commit_id":"eac9f55f2f6c6db4a41415ff0aa9d0c4dc393147","original_commit_id":"7eef7289853819682c2c133692fa5e3af098e3da","user":{"login":"cmc333333","id":326918,"avatar_url":"https://avatars2.githubusercontent.com/u/326918?v=4","gravatar_id":"","url":"https://api.github.com/users/cmc333333","html_url":"https://github.com/cmc333333","followers_url":"https://api.github.com/users/cmc333333/followers","following_url":"https://api.github.com/users/cmc333333/following{/other_user}","gists_url":"https://api.github.com/users/cmc333333/gists{/gist_id}","starred_url":"https://api.github.com/users/cmc333333/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmc333333/subscriptions","organizations_url":"https://api.github.com/users/cmc333333/orgs","repos_url":"https://api.github.com/users/cmc333333/repos","events_url":"https://api.github.com/users/cmc333333/events{/privacy}","received_events_url":"https://api.github.com/users/cmc333333/received_events","type":"User","site_admin":false},"body":"Mention needing docker-compose build.","created_at":"2018-04-19T20:47:10Z","updated_at":"2018-04-19T20:47:10Z","html_url":"https://github.com/18F/nsf/pull/223#discussion_r182879667","pull_request_url":"https://api.github.com/repos/18F/nsf/pulls/223","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/18F/nsf/pulls/comments/182879667"},"html":{"href":"https://github.com/18F/nsf/pull/223#discussion_r182879667"},"pull_request":{"href":"https://api.github.com/repos/18F/nsf/pulls/223"}}},"pull_request":{"url":"https://api.github.com/repos/18F/nsf/pulls/223","id":181979298,"html_url":"https://github.com/18F/nsf/pull/223","diff_url":"https://github.com/18F/nsf/pull/223.diff","patch_url":"https://github.com/18F/nsf/pull/223.patch","issue_url":"https://api.github.com/repos/18F/nsf/issues/223","number":223,"state":"open","locked":false,"title":"Switch to s3fs so we can have multiple instances","user":{"login":"cmc333333","id":326918,"avatar_url":"https://avatars2.githubusercontent.com/u/326918?v=4","gravatar_id":"","url":"https://api.github.com/users/cmc333333","html_url":"https://github.com/cmc333333","followers_url":"https://api.github.com/users/cmc333333/followers","following_url":"https://api.github.com/users/cmc333333/following{/other_user}","gists_url":"https://api.github.com/users/cmc333333/gists{/gist_id}","starred_url":"https://api.github.com/users/cmc333333/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmc333333/subscriptions","organizations_url":"https://api.github.com/users/cmc333333/orgs","repos_url":"https://api.github.com/users/cmc333333/repos","events_url":"https://api.github.com/users/cmc333333/events{/privacy}","received_events_url":"https://api.github.com/users/cmc333333/received_events","type":"User","site_admin":false},"body":"Drupal writes \"optimized\" css/js to the \"public\" file system, which defaults to the local disk. This is problematic when we have multiple instances, as the files will only be written to the disk of one. It'd also be an issue between deployments/restages, except that we clear caches on the first instance.\r\n\r\nUnfortunately, flysystem doesn't override the \"public\" filesystem, so it couldn't be used to store those files in s3. `s3fs` _can_, however, with enough configuration. Notably, it requires apache be configured to proxy s3 files, which requires some extra lifting in our system config.\r\n\r\nThis PR switches to the `s3fs` module, handles the apache configs, turns on optimized css/js and bumps up our instance count. It's working in cloud.gov, but I'd really appreciate another test of the Docker version (remember to `docker-compose build`).\r\n\r\nThis PR's probably easiest to review changeset by changeset, but let me know if a walkthrough'd be better.","created_at":"2018-04-16T20:29:37Z","updated_at":"2018-04-19T20:47:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"b1e2e05236d835c8f2e24f9d94318805d2b8ee7f","assignee":{"login":"fureigh","id":1244599,"avatar_url":"https://avatars2.githubusercontent.com/u/1244599?v=4","gravatar_id":"","url":"https://api.github.com/users/fureigh","html_url":"https://github.com/fureigh","followers_url":"https://api.github.com/users/fureigh/followers","following_url":"https://api.github.com/users/fureigh/following{/other_user}","gists_url":"https://api.github.com/users/fureigh/gists{/gist_id}","starred_url":"https://api.github.com/users/fureigh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fureigh/subscriptions","organizations_url":"https://api.github.com/users/fureigh/orgs","repos_url":"https://api.github.com/users/fureigh/repos","events_url":"https://api.github.com/users/fureigh/events{/privacy}","received_events_url":"https://api.github.com/users/fureigh/received_events","type":"User","site_admin":false},"assignees":[{"login":"fureigh","id":1244599,"avatar_url":"https://avatars2.githubusercontent.com/u/1244599?v=4","gravatar_id":"","url":"https://api.github.com/users/fureigh","html_url":"https://github.com/fureigh","followers_url":"https://api.github.com/users/fureigh/followers","following_url":"https://api.github.com/users/fureigh/following{/other_user}","gists_url":"https://api.github.com/users/fureigh/gists{/gist_id}","starred_url":"https://api.github.com/users/fureigh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fureigh/subscriptions","organizations_url":"https://api.github.com/users/fureigh/orgs","repos_url":"https://api.github.com/users/fureigh/repos","events_url":"https://api.github.com/users/fureigh/events{/privacy}","received_events_url":"https://api.github.com/users/fureigh/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/18F/nsf/pulls/223/commits","review_comments_url":"https://api.github.com/repos/18F/nsf/pulls/223/comments","review_comment_url":"https://api.github.com/repos/18F/nsf/pulls/comments{/number}","comments_url":"https://api.github.com/repos/18F/nsf/issues/223/comments","statuses_url":"https://api.github.com/repos/18F/nsf/statuses/eac9f55f2f6c6db4a41415ff0aa9d0c4dc393147","head":{"label":"18F:s3fs","ref":"s3fs","sha":"eac9f55f2f6c6db4a41415ff0aa9d0c4dc393147","user":{"login":"18F","id":6233994,"avatar_url":"https://avatars0.githubusercontent.com/u/6233994?v=4","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"repo":{"id":98213529,"name":"nsf","full_name":"18F/nsf","owner":{"login":"18F","id":6233994,"avatar_url":"https://avatars0.githubusercontent.com/u/6233994?v=4","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/18F/nsf","description":"Repo for the NSF Site Redesign & Content Discovery project","fork":false,"url":"https://api.github.com/repos/18F/nsf","forks_url":"https://api.github.com/repos/18F/nsf/forks","keys_url":"https://api.github.com/repos/18F/nsf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/18F/nsf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/18F/nsf/teams","hooks_url":"https://api.github.com/repos/18F/nsf/hooks","issue_events_url":"https://api.github.com/repos/18F/nsf/issues/events{/number}","events_url":"https://api.github.com/repos/18F/nsf/events","assignees_url":"https://api.github.com/repos/18F/nsf/assignees{/user}","branches_url":"https://api.github.com/repos/18F/nsf/branches{/branch}","tags_url":"https://api.github.com/repos/18F/nsf/tags","blobs_url":"https://api.github.com/repos/18F/nsf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/18F/nsf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/18F/nsf/git/refs{/sha}","trees_url":"https://api.github.com/repos/18F/nsf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/18F/nsf/statuses/{sha}","languages_url":"https://api.github.com/repos/18F/nsf/languages","stargazers_url":"https://api.github.com/repos/18F/nsf/stargazers","contributors_url":"https://api.github.com/repos/18F/nsf/contributors","subscribers_url":"https://api.github.com/repos/18F/nsf/subscribers","subscription_url":"https://api.github.com/repos/18F/nsf/subscription","commits_url":"https://api.github.com/repos/18F/nsf/commits{/sha}","git_commits_url":"https://api.github.com/repos/18F/nsf/git/commits{/sha}","comments_url":"https://api.github.com/repos/18F/nsf/comments{/number}","issue_comment_url":"https://api.github.com/repos/18F/nsf/issues/comments{/number}","contents_url":"https://api.github.com/repos/18F/nsf/contents/{+path}","compare_url":"https://api.github.com/repos/18F/nsf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/18F/nsf/merges","archive_url":"https://api.github.com/repos/18F/nsf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/18F/nsf/downloads","issues_url":"https://api.github.com/repos/18F/nsf/issues{/number}","pulls_url":"https://api.github.com/repos/18F/nsf/pulls{/number}","milestones_url":"https://api.github.com/repos/18F/nsf/milestones{/number}","notifications_url":"https://api.github.com/repos/18F/nsf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/18F/nsf/labels{/name}","releases_url":"https://api.github.com/repos/18F/nsf/releases{/id}","deployments_url":"https://api.github.com/repos/18F/nsf/deployments","created_at":"2017-07-24T16:52:21Z","updated_at":"2018-04-19T18:54:46Z","pushed_at":"2018-04-19T20:26:20Z","git_url":"git://github.com/18F/nsf.git","ssh_url":"git@github.com:18F/nsf.git","clone_url":"https://github.com/18F/nsf.git","svn_url":"https://github.com/18F/nsf","homepage":null,"size":21109,"stargazers_count":5,"watchers_count":5,"language":"CSS","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":44,"license":{"key":"gpl-2.0","name":"GNU General Public License v2.0","spdx_id":"GPL-2.0","url":"https://api.github.com/licenses/gpl-2.0"},"forks":0,"open_issues":44,"watchers":5,"default_branch":"master"}},"base":{"label":"18F:master","ref":"master","sha":"f3cff63c37f30074749a6b4089d5854bc27687ea","user":{"login":"18F","id":6233994,"avatar_url":"https://avatars0.githubusercontent.com/u/6233994?v=4","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"repo":{"id":98213529,"name":"nsf","full_name":"18F/nsf","owner":{"login":"18F","id":6233994,"avatar_url":"https://avatars0.githubusercontent.com/u/6233994?v=4","gravatar_id":"","url":"https://api.github.com/users/18F","html_url":"https://github.com/18F","followers_url":"https://api.github.com/users/18F/followers","following_url":"https://api.github.com/users/18F/following{/other_user}","gists_url":"https://api.github.com/users/18F/gists{/gist_id}","starred_url":"https://api.github.com/users/18F/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/18F/subscriptions","organizations_url":"https://api.github.com/users/18F/orgs","repos_url":"https://api.github.com/users/18F/repos","events_url":"https://api.github.com/users/18F/events{/privacy}","received_events_url":"https://api.github.com/users/18F/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/18F/nsf","description":"Repo for the NSF Site Redesign & Content Discovery project","fork":false,"url":"https://api.github.com/repos/18F/nsf","forks_url":"https://api.github.com/repos/18F/nsf/forks","keys_url":"https://api.github.com/repos/18F/nsf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/18F/nsf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/18F/nsf/teams","hooks_url":"https://api.github.com/repos/18F/nsf/hooks","issue_events_url":"https://api.github.com/repos/18F/nsf/issues/events{/number}","events_url":"https://api.github.com/repos/18F/nsf/events","assignees_url":"https://api.github.com/repos/18F/nsf/assignees{/user}","branches_url":"https://api.github.com/repos/18F/nsf/branches{/branch}","tags_url":"https://api.github.com/repos/18F/nsf/tags","blobs_url":"https://api.github.com/repos/18F/nsf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/18F/nsf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/18F/nsf/git/refs{/sha}","trees_url":"https://api.github.com/repos/18F/nsf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/18F/nsf/statuses/{sha}","languages_url":"https://api.github.com/repos/18F/nsf/languages","stargazers_url":"https://api.github.com/repos/18F/nsf/stargazers","contributors_url":"https://api.github.com/repos/18F/nsf/contributors","subscribers_url":"https://api.github.com/repos/18F/nsf/subscribers","subscription_url":"https://api.github.com/repos/18F/nsf/subscription","commits_url":"https://api.github.com/repos/18F/nsf/commits{/sha}","git_commits_url":"https://api.github.com/repos/18F/nsf/git/commits{/sha}","comments_url":"https://api.github.com/repos/18F/nsf/comments{/number}","issue_comment_url":"https://api.github.com/repos/18F/nsf/issues/comments{/number}","contents_url":"https://api.github.com/repos/18F/nsf/contents/{+path}","compare_url":"https://api.github.com/repos/18F/nsf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/18F/nsf/merges","archive_url":"https://api.github.com/repos/18F/nsf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/18F/nsf/downloads","issues_url":"https://api.github.com/repos/18F/nsf/issues{/number}","pulls_url":"https://api.github.com/repos/18F/nsf/pulls{/number}","milestones_url":"https://api.github.com/repos/18F/nsf/milestones{/number}","notifications_url":"https://api.github.com/repos/18F/nsf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/18F/nsf/labels{/name}","releases_url":"https://api.github.com/repos/18F/nsf/releases{/id}","deployments_url":"https://api.github.com/repos/18F/nsf/deployments","created_at":"2017-07-24T16:52:21Z","updated_at":"2018-04-19T18:54:46Z","pushed_at":"2018-04-19T20:26:20Z","git_url":"git://github.com/18F/nsf.git","ssh_url":"git@github.com:18F/nsf.git","clone_url":"https://github.com/18F/nsf.git","svn_url":"https://github.com/18F/nsf","homepage":null,"size":21109,"stargazers_count":5,"watchers_count":5,"language":"CSS","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":44,"license":{"key":"gpl-2.0","name":"GNU General Public License v2.0","spdx_id":"GPL-2.0","url":"https://api.github.com/licenses/gpl-2.0"},"forks":0,"open_issues":44,"watchers":5,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/18F/nsf/pulls/223"},"html":{"href":"https://github.com/18F/nsf/pull/223"},"issue":{"href":"https://api.github.com/repos/18F/nsf/issues/223"},"comments":{"href":"https://api.github.com/repos/18F/nsf/issues/223/comments"},"review_comments":{"href":"https://api.github.com/repos/18F/nsf/pulls/223/comments"},"review_comment":{"href":"https://api.github.com/repos/18F/nsf/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/18F/nsf/pulls/223/commits"},"statuses":{"href":"https://api.github.com/repos/18F/nsf/statuses/eac9f55f2f6c6db4a41415ff0aa9d0c4dc393147"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"cmc333333"}}