A script for deployment of multi-instance JSS (Linux)

kitzy
Contributor III

UPDATE: I've moved the script to GitHub: https://github.com/jkitzmiller/jssdeploy

Version 9 here: https://github.com/jssmanager/jssmanager/

26 REPLIES 26

daworley
Contributor II

Well done. Very well done.

kitzy
Contributor III

Thank you!

daworley
Contributor II

Next lab machine I have, I will play with this.

kitzy
Contributor III

I used it successfully in production for the first time tonight. It went off without a hitch. Of course it IS tailored to my environment...

kitzy
Contributor III

I just made some changes to make it a little more user friendly, specifically adding variables at the beginning to let you define where you keep your logs and your ROOT.war file. The formatting is also a little nicer when asking for user input.

kitzy
Contributor III

Made a couple of tweaks, mostly improving documentation and adding support for Tomcat being installed as a service.

kitzy
Contributor III

Updated to incude error checking and slightly improved documentation.

Has anyone played with it yet? I'd love to hear your thoughts.

tobiaslinder
Contributor II

I just wanted to report back that the script worked perfectly fine after tweaking a few settings but this is probably due to the fact that I used the jssinstaller.run and not the manual installation.

Thank you so much for this brilliant script. I will have to setup many instances in the near future and so this is going to make my life way easier. Looking forward to invite you for a drink of your choice next time I'm in Chicago (probably summer 2014).

jarednichols
Honored Contributor

Git hub this. Now.

kitzy
Contributor III

Tobias - I'm glad you found it helpful! I'll definitely take you up on that drink!

Jared- I've been meaning to... time is not on my side. One of these days!

kitzy
Contributor III

EDIT: All is well.

tobiaslinder
Contributor II

What a shame but I understand. My last employer would also not have been happy for me sharing knowledge. 20th century thinking is still very strong is today's management culture.

jarednichols
Honored Contributor

Employers are stupid. I grabbed the Google cached version for later keeping.

rtrouton
Release Candidate Programs Tester

John,

Let me know if there'd be a problem with my hosting the script on my GitHub repo.

Thanks,
Rich

mm2270
Legendary Contributor III

Wow, really? That's pretty dumb. The next time management asks you to research something out there that you don't already have the answer to I would respond by saying. 'well, found some information, but I can't use it due to the employers owner not allowing them to share it' Employers need to wake up and understand that information sharing is what makes so much of what we do possible in the first place.

kitzy
Contributor III

So I've moved the script to GitHub, and I've added some more error checking. I'm pretty sure it's solid, but I'd love to get some feedback if anyone would like to try it out.

Next on the roadmap is the ability to set an instance as limited access from the script rather than having to log in to the JSS instance.

kitzy
Contributor III

Added some error checking for the database connection.

Still working on limited access, and possibly the option to create the database and user from the script.

talkingmoose
Moderator
Moderator
echo Configuration complete. Enjoy your burrito.

Heh heh heh...

kitzy
Contributor III

I was wondering how long it would take someone to comment on that.

kitzy
Contributor III

I tested it with version 8.63, and it worked great in my environment! I also fixed a couple bugs. Check github for the details.

kitzy
Contributor III

I'm looking for a couple people to test out setting limited access from the script. Would anyone like to help?

kitzy
Contributor III

This script has been updated for version 9 and has a ton of new features.

https://github.com/jssmanager/jssmanager

Please use at your own risk, as this is provided "as is" and is not JAMF supported. Please test before using in your production environment.

-Kitzy

rickgmac
Contributor

Any tips on changing ports.

Seams to create instances with port 8080. If I change the server.xml tomcat won't start.

kitzy
Contributor III

@rickgmac - The ports are all handled by Tomcat, so it's not that the script is creating the contexts on port 8080, that's just Tomcat's default configuration.

In my server.xml, I have a section for 8443 that looks something like this:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/var/lib/tomcat7/cert.p12" keystorePass="password" keystoreType="PKCS12" />

I believe this section is commented out by default on a standard Tomcat install.

If you post your server.xml here, I'm sure someone could help you figure out why Tomcat won't start.

-Kitzy

rickgmac
Contributor

Cheers kitzy

Made a rookie mistake, by not fully un-commenting the connector. So Tomcat would fail to start.

Love this script by the way.

kitzy
Contributor III

@rickgmac - Glad to hear you got it sorted, and I'm glad you're loving the script!