Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View mmarcon's full-sized avatar
👋

Massimiliano Marcon mmarcon

👋
View GitHub Profile
@mmarcon
mmarcon / fetch.php
Created April 30, 2012 11:57
Download and unarchive a whole Github repository
<?php
function unzip($file) {
$zip = zip_open($file);
if (is_resource($zip)) {
$tree = "";
while (($zip_entry = zip_read($zip)) !== false) {
echo "Unpacking " . zip_entry_name($zip_entry) . "\n";
if (strpos(zip_entry_name($zip_entry), DIRECTORY_SEPARATOR) !== false) {
$last = strrpos(zip_entry_name($zip_entry), DIRECTORY_SEPARATOR);
$dir = substr(zip_entry_name($zip_entry), 0, $last);
@mmarcon
mmarcon / sUpload.js
Created December 21, 2011 07:16
Draft of a simple jQuery plugin to upload files asynchronously via AJAX
(function($) {
var settings = {
hoverClass: 'sUpload-hover',
dropAreaClass: 'sUpload-drop',
dropMessage: 'Drop file here!',
dropAreaHeight: 200, uploadURL: null,
fileReaderCallback: null,
fileUploadCallback: null,
errorCallback: null
},
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.network "forwarded_port", guest: 80, host: 8080
# No need to sync the vagrant folder, everything gets deployed
# with the ansible playbook
- name: link to Keymetrics
command: pm2 link {{ keymetrics_secret_key }} {{ keymetrics_public_key }}
when: keymetrics
become: yes
become_user: apps
ignore_errors: yes
tasks:
- name: install nginx
apt: name=nginx state=present update_cache=yes
notify:
- start nginx
- name: configure nginx
copy: src={{ item }} dest=/etc/nginx/sites-available/
with_fileglob:
- ./nginx/*
notify:
location /app {
proxy_pass http://localhost:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.html index.htm;
# Make site accessible from http://localhost/
server_name localhost;
location /app {
proxy_pass http://localhost:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
---
- hosts: all
sudo: yes
vars:
# list of apps to be managed by pm2
pm2_apps:
- /var/apps/services/app.js
- /var/apps/services/otherapp.js
# franklinkim.nodejs
---
- hosts: all
sudo: yes
vars:
# list of apps to be managed by pm2
pm2_apps:
- /var/apps/services/app.js
- /var/apps/services/otherapp.js
# franklinkim.nodejs