Make a snapshot first! Upgrading from 2013Q1 to 2013Q3 because I needed newer nginx.
edit the files at:
/opt/local/etc/pkg_install.conf
/opt/local/etc/pkgin/repositories.conf
require 'sshkit' | |
require 'sshkit/dsl' | |
on 'example.com', user: 'matt' do | |
within('current') do | |
puts "this works as expected:" | |
puts capture :ls | |
puts "this does not get executed in the 'current' directory:" | |
puts capture 'ls -l' | |
end |
MattbookPro:~ matt$ telnet localhost 5555 | |
Trying ::1... | |
telnet: connect to address ::1: Connection refused | |
Trying 127.0.0.1... | |
Connected to localhost. | |
Escape character is '^]'. | |
asdfasdfasdf | |
asdfasd | |
fasdfasdfasdfasd | |
fasdfawdawdfawe |
# zonecfg -z <uuid> | |
# add attr | |
# set name=qemu-extra-opts | |
# set type=string | |
# set value="LXNtcCBjcHVzPTEsY29yZXM9NCx0aHJlYWRzPTI=" | |
# end | |
# commit | |
# exit | |
Then reboot the machine. The value is the base64 encoded string that will be added to the qemu-kvm options. The above is "-smp cpus=1,cores=4,threads=2", which plays nice with Windows which for some stupid reason only supports 2 cpus. |
# -*- mode: ruby -*- | |
# vi: set ft=ruby : | |
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing! | |
VAGRANTFILE_API_VERSION = "2" | |
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| | |
# All Vagrant configuration is done here. The most common configuration | |
# options are documented and commented below. For a complete reference, | |
# please see the online documentation at vagrantup.com. |
// | |
// main.c | |
// zmq-test1 | |
// | |
// Created by Matt Connolly on 8/08/2013. | |
// | |
//#include <ZeroMQ/zmq.h> | |
#include <czmq.h> |
#!/bin/pseudo-bash | |
# Read through this and modify to taste. | |
# Tested on: | |
# image_uuid: bad2face-8738-11e2-ac72-0378d02f84de | |
# smartos base64 1.9.0 | |
# | |
# jenkins is run as the "admin" user, with its home directory set to /home/admin/jenkins | |
mkdir ~/jenkins |
# zonecfg -z <uuid> | |
zonecfg:uuid> add attr | |
zonecfg:uuid:attr> set name=resolvers | |
zonecfg:uuid:attr> set type=string | |
zonecfg:uuid:attr> set value=8.8.8.8,8.8.4.4 | |
zonecfg:uuid:attr> end | |
zonecfg:uuid> verify | |
zonecfg:uuid> commit | |
zonecfg:uuid> exit | |
# vmadm reboot <uuid> |
# vmadm halt <uuid> | |
# zonecfg -z <uuid> | |
zonecfg:uuid> add dataset | |
zonecfg:uuid:dataset> set name=<zfs/path> | |
zonecfg:uuid:dataset> end | |
zonecfg:uuid> commit | |
zonecfg:uuid> exit | |
# zfs set mountpoint=legacy <zfs/path> | |
# vmadm boot <uuid> |
CZMQ appears quite explicit about ownership of objects. For example:
zmsg_send
will destroy the message when sent. This includes destroying any frames that are owned by the zmsg_t
.zmsg_add
means that the zmsg_t
takes ownership of the zframe_t
.I was thinking about making this "ownership" concept an explicit state in the ruby wrappers. So:
zmq_message_wrapper
would have a flag for "owning the message", which would be cleared when we send the message.