buttonmen-dev / buttonmen

Buttonmen - an online dice game
Other
16 stars 24 forks source link

push new features out to dev.buttonweavers.com #217

Closed cgolubi1 closed 8 years ago

cgolubi1 commented 10 years ago

As features are merged into the main codebase, redeploy dev.buttonweavers.com with those changes.

Generic procedures for use in deployments:

Use a checked-out copy of buttonmen-master to find a sort order for database updates:

cd deploy/database/updates/
UPDATES="<space-separated list of DB updates>"
git log --reverse --first-parent --oneline $UPDATES
UPDATES="<space-separated list of DB updates, now in the order reported by that output>"

Database update plan:

# in the correct git working directory
git pull origin dev
cd deploy/vagrant
vagrant provision

# on the sandbox or dev VM
UPDATES="<space-separated ordered list of DB updates, as determined above>"

mysqldump -u root buttonmen | sed -e 's/),(/),\n(/g' > ~/buttonmen_db.$(timefmt).sql
cd /buttonmen/deploy/database/updates
for update in $UPDATES; do
  echo "APPLYING: $update"
  cat $update | mysql -u root buttonmen
done

mysqldump -u root buttonmen | sed -e 's/),(/),\n(/g' > ~/buttonmen_db.$(timefmt).sql

How to diff database dumps:

diff --side-by-side --width=234 --left-column buttonmen_db.* | less

Within less, search for lines that don't end with ( to skip past common lines: /!\($

cgolubi1 commented 10 years ago

I redeployed the alpha site just now, with the fixes for:

cgolubi1 commented 10 years ago

I redeployed the site with fixes for:

cgolubi1 commented 10 years ago

I redeployed the site with fixes for:

cgolubi1 commented 10 years ago

I redeployed the site with fixes for:

cgolubi1 commented 10 years ago

I redeployed the site with fixes for:

cgolubi1 commented 10 years ago

Okay, so, fie on me for not looking at the diff stats, and on James for not mentioning what was in his pull request --- this is a major change to existing DB tables. I had no idea this was involved in this commit, so if i rebuild the site and it doesn't work, there's going to be trouble that i can't debug for 8 hours until James is around again. So i'm going to roll alpha back to before this change:

cd ~/src/git/buttonmen-dev/buttonmen-master
git reset --hard c1b3683009afb190f1370624e3e564af5aabc225

then do the usual AWS reload. Did that, and now the site is back online and the overview page is usable again.

Later today, when James is online, i'll reapply this commit, and the other one which needs a DB refresh while i'm at it, and do a full site clobber. There's just no point doing it now, because if any problems arise, i can't fix them.

cgolubi1 commented 10 years ago

In case anyone is following along from home and is confused by the play-by-play, here's the current state:

cgolubi1 commented 10 years ago

Okay, i rebuilt the site, bringing in fixes for:

That's rebuilt, meaning the database got clobbered. Please recreate your username and play some more.

cgolubi1 commented 10 years ago

I redeployed this morning, to fix:

cgolubi1 commented 10 years ago

I redeployed this morning, doing a database reload in the process, so please recreate your accounts. There are three fixes, all of (some) interest to testers:

On that last one in particular, if any of the button recipes don't match what we had on the old site in important ways, that'd be good to know, and other kibbitzing is welcome as well --- please comment on ticket #280.

cgolubi1 commented 10 years ago

I updated the site this morning (not a rebuild, so you still have your accounts) with a million tiny fixes:

Quick reminder: focus and chance dice still show as playable in the UI, but still aren't yet. I'm working on it.

Anyway, have at it. Many of those bugs were filed by alpha testers, so take a look and see if you're happier now. If not, comment on the existing tickets, and we'll figure out whether to reopen them or start new tickets.

cgolubi1 commented 10 years ago

I rebuilt the site this morning with a small number of relatively large fixes. Please recreate your accounts.

cgolubi1 commented 10 years ago

I updated again just now (no DB reload) to bring in pull #331, which may be a fix for the chance logic. Please do bang on the chance behavior (as well as the focus behavior) and complain about anything that seems wrong.

cgolubi1 commented 10 years ago

I updated today to bring in:

cgolubi1 commented 10 years ago

I rebuilt the site (including a new database, so recreate your accounts) this morning to bring in these fixes:

cgolubi1 commented 10 years ago

I pushed out new code to the site (no database rebuild), including:

cgolubi1 commented 10 years ago

I'm pushing out new code to the site now (no database rebuild), including:

cgolubi1 commented 10 years ago

Hmm, so, when puppet ran on boot, i got:

err: /Stage[main]/Buttonmen::Server/Exec[buttonmen_create_databases]/returns: change from notrun to 0 failed: /usr/local/bin/create_buttonmen_databases returned 1 instead of one of [0] at /tmp/vagrant-puppet/modules-0/buttonmen/manifests/init.pp:54

Frankly, i'm filing this under "i'm not sure why this ever worked", because of the bug in #410. If it persists after the next site rebuild, i'll investigate then. (Sigh, okay, let me be a little less terse --- the issue with #410 is that using "root" as the user for the test database, changes the overall password which "root" uses to access mysql at all. Since under Ubuntu "root" is the mysql admin user which creates/drops/grants to databases during create_buttonmen_databases, this means that create_buttonmen_databases will work either before or after the first time buttonmen_test is initialized, but not both. Ah hah! And i'm rewarded for spelling it out because now it's obvious what happened --- puppet only bothers to run create_buttonmen_databases if triggered to do so by a change in that script itself (or maybe some other conditions). So normally it doesn't fail on boot, but only because normally it doesn't run on boot. Okay, good.)

cgolubi1 commented 10 years ago

I rolled out new code to the site, including:

cgolubi1 commented 10 years ago

I'm rolling out new code to the site now, including:

cgolubi1 commented 10 years ago

I'm pushing code out to alpha with these fixes:

cgolubi1 commented 10 years ago

I tried pushing out code nondisruptively to the site using "vagrant provision". Changes pushed:

Give that a try.

cgolubi1 commented 10 years ago

Pushed code out nondisruptively, including:

cgolubi1 commented 10 years ago

Updated the site with these fixes:

cgolubi1 commented 10 years ago

Updated the site with this fix:

cgolubi1 commented 10 years ago

Updated the site with this fix:

cgolubi1 commented 10 years ago

Updated the site with these fixes (n.b. some of these fixes were pushed out yesterday, but i lost my tiny mind and failed to actually submit my ticket update about it, sigh):

cgolubi1 commented 10 years ago

While i'm at it, also went ahead and updated:

cgolubi1 commented 10 years ago

Updated the site with these fixes:

cgolubi1 commented 10 years ago

BTW, just so others don't have to do the math too: now that we have stealth dice, i believe these buttons are newly-playable:

Howling Wolf    d(4) (8) (12) (20) d(20)
White Tiger     (6) d(6) (10) (12) d(12)
eon             t(4) n(6) d(8) B(16) B(X)
Grym            (4) t(6) d(10) z(12) (X,X)
Kaeriol         (4) (6) d(6) s(10) B(X)
llippen5        d(4) d(6) d(8) d(10) d(12) d(20)
schwa           f(V) t(W) d(X) v(Y) B(Z)
cgolubi1 commented 10 years ago

Updated the site with these fixes:

cgolubi1 commented 10 years ago

Updated the site with these fixes:

cgolubi1 commented 10 years ago

Updated the site with a couple of small fixes:

cgolubi1 commented 10 years ago

Updated the site, still deferring the database reload:

cgolubi1 commented 10 years ago

I reloaded the site, including a full database rebuild (so, for those who have forgotten the drill, you need to recreate your accounts). This includes:

cgolubi1 commented 10 years ago

I updated the site yesterday (no database reload) with these fixes, then forgot to actually submit this comment:

cgolubi1 commented 10 years ago

Reloading the site now with:

cgolubi1 commented 10 years ago

Reloading the site now with:

blackshadowshade commented 10 years ago

FYI, you'll probably need to hit reload to get the site using the new auxiliary and reserve pages.

cgolubi1 commented 10 years ago

Reloading the site now with:

cgolubi1 commented 10 years ago

Reloading the site now with:

cgolubi1 commented 10 years ago

Reloading the site now with:

Once i push the code out, i'll apply the database update that goes with pull #608

cgolubi1 commented 10 years ago

I updated the site quickly just now with:

cgolubi1 commented 10 years ago

Reloading the site now with:

One database modification: 00605_dizzy_disabled_01.sql

cgolubi1 commented 10 years ago

Updating the site now with:

00621_edg_recipe_01.sql
00600_config_table_01.sql
cgolubi1 commented 10 years ago

Updating the site with:

cgolubi1 commented 10 years ago

Updating the site with:

Database update:

cgolubi1 commented 10 years ago

Updating the site with:

cgolubi1 commented 10 years ago

Updating the site with:

cgolubi1 commented 10 years ago

Updating the site with: