[Box-Admins] squeaksource.com move to Rackspace

David T. Lewis lewis at mail.msen.com
Tue Oct 11 00:50:38 UTC 2016

On Tue, Oct 11, 2016 at 01:30:39AM +0200, Tobias Pape wrote:
> Hi David.
> On 07.10.2016, at 04:08, David T. Lewis <lewis at mail.msen.com> wrote:
> > Levente, Tobias:
> > 
> > The squeaksource.com service seems to be working reliably on the new
> > Rackspace server dan. It has run for a number of days now, and I have
> > confirmed that when I kill the VM process, the service is reliably
> > restarted by supervise.
> Great.
> > 
> > When we do the final switchover to Rackspace, I would like to be
> > responsible for synchronizing the data files and image to ensure
> > that no updates are lost during the transition. Currently the image
> > and files on Rackspace are updated as of today, but I will want to
> > do an additional update right before the actual DNS record change,
> > and I will also check afterwards to make sure nothing is lost during
> > the time it may take for the DNS updates to propagate.
> The TTL is short, propagation should take ~5min.
> Please start the "final" sync, report back, and I'll change the DNS.
> (but not before 2016-10-11 9:00 CEST, I'm going to bed now)

I just finished another sync, updated as of Tue Oct 11 00:27:55 UTC 2016.

We should probably put out an official notice on the squeak/pharo lists,
but to be honest I don't think anyone will even notice the change.

I will be away, returning in about 24 hours. If you are able to do the
DNS switch during this time frame, I will check back afterwards and do
any final refresh that may be needed if people have been updating
squeaksource.com during that time.

Note that there usually are not too many updates to squeaksource.com
during any 24 hour period, and I can find and fix any missed updates
after the switch.

Just in case there are problems, I am attaching my notes on how I did
the refresh from box3 to dan.box today.


--- Refresh dan.box from box3 ---

Check time stamp of last update on the dan.box copy. Look at last entry
in ss/ss.log, and the file mod time of the squeaksource.4.image that was
previously copied from box3.

davidlewis at dan:~$ sudo su - squeaksourcecom
[sudo] password for davidlewis: 
squeaksourcecom at dan:~$ ls -l SqueakSource/squeaksource.4.*
-rw-r--r-- 1 squeaksourcecom www-data  16105802 Oct  7 01:16 SqueakSource/squeaksource.4.changes
-rw-r--r-- 1 squeaksourcecom www-data 166831012 Oct  7 01:17 SqueakSource/squeaksource.4.image
squeaksourcecom at dan:~$ date
Tue Oct 11 00:00:58 UTC 2016
squeaksourcecom at dan:~$ 

Thus - we want to update with anything that has changed in the last 5 days
(to be safe and avoid figuring out exact time zones and so forth).

Next, go to box3 and get the latest.

ssdotcom at box3-squeak:~$ pwd
ssdotcom at box3-squeak:~$ cd SqueakSource
ssdotcom at box3-squeak:~/SqueakSource$ 

Save all the recently changed files. Find all regular files changed within
the last 5 days, and save them in an archive file /tmp/ss.tgz:

ssdotcom at box3-squeak:~/SqueakSource$ tar czvf /tmp/ss.tgz `find . -type f -mtime -5`

Now go back to dan.box.squeak.org. Copy the /tmp/ss.tgz file into a convenient
place. Working as user ID sourcesqueakorg, unpack the ss.tgz archive, adding
new files and updating any that have changed. Among the files that will be
updated are the ss/ss.log file and the squeaksource.4.image and
squeaksource.4.changes files.

squeaksourcecom at dan:~/SqueakSource$ cd /tmp
squeaksourcecom at dan:/tmp$ scp ssdotcom at squeaksource.com:/tmp/ss.tgz .
The authenticity of host 'squeaksource.com (' can't be established.
RSA key fingerprint is 6d:c3:8f:4c:53:53:ad:90:21:ba:27:e0:b5:c5:aa:31.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'squeaksource.com' (RSA) to the list of known hosts.
ssdotcom at squeaksource.com's password: 
ss.tgz                                                                                                                100%   80MB   2.3MB/s   00:34    
squeaksourcecom at dan:/tmp$ cd
squeaksourcecom at dan:~$ pwd
squeaksourcecom at dan:~$ cd SqueakSource
squeaksourcecom at dan:~/SqueakSource$ id
uid=100001(squeaksourcecom) gid=33(www-data) groups=33(www-data)
squeaksourcecom at dan:~/SqueakSource$ 

Note: The squeaksource.4.image is the image copied directly from box3. I leave
that alone, but copy it to a new working version called squeaksource.5.image.
Therefore, we are about to replace the old squeaksource.4.image that I copied
in a few days ago, and we will then copy the new one to squeaksource.5.image,
which will become the newly updated image that will be run by supervise.

squeaksourcecom at dan:~/SqueakSource$ ls -l squeaksource.*.image
-rw-r--r-- 1 squeaksourcecom www-data 166831012 Oct  7 01:17 squeaksource.4.image
-rw-r--r-- 1 squeaksourcecom www-data 166830960 Oct 10 23:29 squeaksource.5.image
squeaksourcecom at dan:~/SqueakSource$

Now unpack the new files over the old:

squeaksourcecom at dan:~/SqueakSource$ pwd
squeaksourcecom at dan:~/SqueakSource$ tar xzvf /tmp/ss.tgz

And copy the updated image to squeaksource.5.image:

squeaksourcecom at dan:~/SqueakSource$ cp squeaksource.4.image squeaksource.5.image
squeaksourcecom at dan:~/SqueakSource$ cp squeaksource.4.changes squeaksource.5.changes
squeaksourcecom at dan:~/SqueakSource$

Kill the running image and allow supervise to restart with the newly updated

squeaksourcecom at dan:~/SqueakSource$ ps -aef | grep squeakvm
squeaks+ 12179  9064  0 00:25 pts/0    00:00:00 grep squeakvm
squeaks+ 21595  9625  8 Oct08 ?        05:52:14 /usr/local/lib/squeak/4.15.8-3749/squeakvm -vm-display-null /srv/squeaksourcecom/SqueakSource/squeaksource.5.image
squeaksourcecom at dan:~/SqueakSource$ kill -9 21595
squeaksourcecom at dan:~/SqueakSource$ date
Tue Oct 11 00:27:55 UTC 2016
squeaksourcecom at dan:~/SqueakSource$ 

Wait a couple of minutes and make sure squeaksource.com is back on line :-)

More information about the Box-Admins mailing list