Database migration, Self Service icons broken

jarednichols
Honored Contributor

Hi-

Minor annoyance, but thought I'd ask the community in the event someone has run into this or could stand to be warned from it.

So I had a proof-of-concept JSS setup in Ubuntu 10.04 as prescribed by the JAMF documentation. I stood up a JSS on Windows 2008 R2 (also as prescribed by the JAMF documentation) yesterday and after wrangling IIS into compliance, migrated my database from Ubuntu over to Windows as prescribed in the documentation for backup and restore of the database.

Everything looks like it came over perfect (including repointing clients to the new box and the computer's info picking right up where it left and file attachments to computer records) with the exception of icons in Self Service. They're all broken now.

I can certainly re-upload and re-set them, but has anyone seen this? I assume they're in the DB somewhere.

Update: It should be noted that in the policies in the JSS web interface, they're displayed properly. It's only in Self Service where they're missing.

2 ACCEPTED SOLUTIONS

rockpapergoat
Contributor III

install sequel pro on your machine, log into the mysql db on the windows box, and check the attachments table.

if you really needed to, i suppose you could dump just that table from your old test db, and plop it into the new one, replacing everything.

i've picked up db dumps from casper hosted on os x server and imported under a new version of the jss app running on centos without this issue (and without the jss database utility), so you should be able to do it.

View solution in original post

cbrewer
Valued Contributor II

Just read the release notes for 8.5. There's several fixes in there related to Self Service not displaying icons correctly on Windows and Linux servers.

View solution in original post

7 REPLIES 7

jarednichols
Honored Contributor

Ah ha! (Anyone who knows me knows I usually sorta self-resolve within about 30 minutes of a "hmm")

So I opened Self Service in a web browser (https://MyWindowsJSS.fqdn:8443/selfservice2/) and saw that the images were broken. Right-clicking on a broken image allowed me to copy the image's address.

Pasting this into another browser tab revealed https://MyUbuntuJSS.fqdn:8443//attachment/iLife%2011.jpg?id=3&filetype=image/jpg as the image's address!

Had the Ubuntu test VM actually been fired up on my machine, the images would have worked and I'd been none-the-wiser.

Manually changing MyUbuntuJSS.fqdn to MyWindowsJSS.fqdn popped up the correct image. (iLife's box art in this case.)

Problem is, outside of re-uploading all of my icons or blazing through MySQL with a find-and-replace (not outside the realm of possibility) I don't see a way to fix it. I understand this is likely because JAMF never designed the database utility as a migration tool but rather a backup-restore tool. I'm also curious if there's a way to not hard-code the image URL there in the database but rather call some sort of variable for the JSS's address instead. I don't know enough about databases to know if that's feasible.

I smell a feature request for making the database utility more migration friendly!

rockpapergoat
Contributor III

install sequel pro on your machine, log into the mysql db on the windows box, and check the attachments table.

if you really needed to, i suppose you could dump just that table from your old test db, and plop it into the new one, replacing everything.

i've picked up db dumps from casper hosted on os x server and imported under a new version of the jss app running on centos without this issue (and without the jss database utility), so you should be able to do it.

cbrewer
Valued Contributor II

Just read the release notes for 8.5. There's several fixes in there related to Self Service not displaying icons correctly on Windows and Linux servers.

jarednichols
Honored Contributor

Oh look at that... I have 8.5 available. Guess I'll try that first :)

John_Wetter
Release Candidate Programs Tester

What's the verdict Jared? Curious to see this. I'd lean toward calling it a bug vs. a feature request if it isn't resolved in 8.51. I imagine we'll all be having this conversation sooner or later as our XServes age...

jarednichols
Honored Contributor

8.51 didn't resolve it. I ended up re-uploading icons. In short, if your infrastructure changes but the DNS names do not, you shouldn't see a problem. I had migrated my database to a JSS on a different platform (doesn't matter) with a different DNS name.

I think typically folks keep their JSS DNS name when migrating backends.

jarednichols
Honored Contributor

I'm not ready to call this a bug.

I did a bit more research and it may have been some shenanigans I was doing on my test box. Things seem to be less shady now that I uninstalled all the Casper components from the client and re-recon'd it.