Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TS3 Rock-On Deprecated #166

Closed
Noggin01 opened this issue Oct 8, 2018 · 12 comments
Closed

TS3 Rock-On Deprecated #166

Noggin01 opened this issue Oct 8, 2018 · 12 comments

Comments

@Noggin01
Copy link

Noggin01 commented Oct 8, 2018

Additional information can be seen on the forums:

https://forum.rockstor.com/t/teamspeak-rock-on-dead/5282

@FroggyFlox
Copy link
Member

Hi @Noggin01,

I finally could get back to this and quickly wrote an updated rockon file for TeamSpeak based on the official Docker image. You can find the file below:
https://github.com/FroggyFlox/rockon-registry/blob/issue166_Ts3_official/teamspeak3.json

It installs fine on my Rockstor 3.9.1-16 machine but as I'm not a TeamSpeak user, I'm not sure how to properly test its functions. Would you be able to test this Rockon? As a reminder, you can look at this "How-to" on the forum's wiki:
https://forum.rockstor.com/t/how-to-test-a-rock-on-pull-request/5224?u=flox

In advance, thanks for your help!

@Noggin01
Copy link
Author

Noggin01 commented Oct 13, 2018

Well, I was able to get it to install using the Rock-On services, but it installed on different ports than what I expected. I did just skim over the installation stuff with the desire to select the defaults, but for some reason the ports were all incremented by 1 by default. I DID have another TS3 running EARLIER but I disabled it before installing the Rock-On. I uninstalled the Rock-On, adjusted the ports to the defaults (which are correct in the .json file) and then everything began working.

The only problem here is getting the privilege key. If I remember correctly, after manually installing the server, when I started it for the first time it printed the key to the console.

To get the key, I had to do the following:

  1. docker exec -it Teamspeak3_official ls logs
  2. docker exec -it Teamspeak3_official cat logs/each_file | grep token

I had to cat each of the log files individually until one of them gave me the key I needed.

@FroggyFlox
Copy link
Member

Thanks for testing it!
Regarding the ports, the behavior you described is the expected behavior. Indeed, as you had a prior installation of the Rock-on, Rockstor automatically detected these ports as already used so it automatically defaulted to one port higher. Using these ports on your TS client should have been working.

Regarding the admin token and login credentials, an easier way to look to find them is to look at the more info icon (the little "i") icon next to the on/off toggle and wrench icons:
image

This would show a help text with the following instructions:

You need to get the privileged key using system console to get serveradmin access

  1. Open system console (don't forget to start the service) or use SSH
  2. docker logs Teamspeak3_official | grep loginname

Could you confirm all functions of TeamSpeak are working correctly with this JSON? If yes, I'll submit a proper PR.

@Noggin01
Copy link
Author

Noggin01 commented Oct 14, 2018

I did see the command "docker logs Teamspeak3_official" and that command did not print the token.

2018-10-13 19:37:43.173684|INFO |ServerLibPriv | |TeamSpeak 3 Server 3.4.0 (2018-09-10 07:29:44)
2018-10-13 19:37:43.173792|INFO |ServerLibPriv | |SystemInformation: Linux 4.12.4-1.el7.elrepo.x86_64 #1 SMP Thu Jul 27 20:03:28 EDT 2017 x86_64 Binary: 64bit
2018-10-13 19:37:43.173829|INFO |ServerLibPriv | |Using hardware aes
2018-10-13 19:37:43.181322|INFO |DatabaseQuery | |dbPlugin name: SQLite3 plugin, Version 3, (c)TeamSpeak Systems GmbH
2018-10-13 19:37:43.181382|INFO |DatabaseQuery | |dbPlugin version: 3.11.1
2018-10-13 19:37:43.181497|INFO |DatabaseQuery | |checking database integrity (may take a while)
2018-10-13 19:37:43.213676|WARNING |Accounting | |Unable to open licensekey.dat, falling back to limited functionality
2018-10-13 19:37:43.224714|INFO |Accounting | |Licensing Information
2018-10-13 19:37:43.224760|INFO |Accounting | |licensed to : Anonymous
2018-10-13 19:37:43.224802|INFO |Accounting | |type : No License
2018-10-13 19:37:43.224835|INFO |Accounting | |starting date : Sun Jul 1 00:00:00 2018
2018-10-13 19:37:43.224869|INFO |Accounting | |ending date : Wed Jul 31 00:00:00 2019
2018-10-13 19:37:43.224900|INFO |Accounting | |max virtualservers: 1
2018-10-13 19:37:43.224930|INFO |Accounting | |max slots : 32
2018-10-13 19:37:43.294992|INFO | | |myTeamSpeak identifier revocation list was downloaded successfully - all related features are activated
2018-10-13 19:37:43.884045|INFO | | |Puzzle precompute time: 641
2018-10-13 19:37:43.884347|INFO |FileManager | |listening on 0.0.0.0:30033, [::]:30033
2018-10-13 19:37:43.899715|INFO |VirtualServer |1 |listening on 0.0.0.0:9987, [::]:9987
2018-10-13 19:37:43.899871|INFO |Query | |listening for query on 0.0.0.0:10011, [::]:10011
2018-10-13 19:37:43.899939|INFO |CIDRManager | |updated query_ip_whitelist ips: 127.0.0.1/32, ::1/128,
2018-10-13 19:51:32.623228|INFO |VirtualServer |1 |client (id:4) was added to servergroup 'Server Admin'(id:6) by client 'server'(id:0)

ALL functionality, I did not test as I'm not much of a power user myself either. I can try to spend some time on it in the morning though but I suspect that it is working fine.

Here's what did work:

[root@holocron log]# docker exec -it Teamspeak3_official cat logs/ts3server_2018-10-13__19_24_38.955622_1.log | grep token
2018-10-13 19:24:39.834161|WARNING |VirtualServer |1 |token=ljasuyfoiuysiouysfdiguysdfigynotmyactualtoken

@FroggyFlox
Copy link
Member

docker logs Teamspeak3_official | grep loginname works after first install of the Rock-on, but I haven't tested it after later uses... I like that it provides all credentials needed in addition to the token in just a simple one-liner, but we may need to add alternatives based on what you wrote (digging in the TS logs) as well.
I'll see what I can come up with.
Thanks a lot for testing this!

@Noggin01
Copy link
Author

Kids keep me from spending much time testing, but I did have 8 people logged in and using it a few nights ago. I'm pretty certain that it is good to go once the token issue is sorted out.

@FroggyFlox
Copy link
Member

Thanks a lot for the feedback, @Noggin01, I'm glad to read it seems to work as intended!
That also reminded me I needed to test the token grep after subsequent start of the Rock-on. It indeed only prints it out to the docker logs during the first install. After subsequent start of the Rock-on, we need to grab it from the logs as you did.
I'll add it to the help information, but could you confirm the token is all that is needed? At first install, it spits out some admin login and password information, but as I'm not a TS user, I don't know whether these are actually needed or not.

@phillxnet
Copy link
Member

@Noggin01 and @FroggyFlox Am I reading this issue correctly as a new 'work in progress' Teamspeak Rockon / update? It would be great to see this resolved, especially if ours is now defunct. Again as per @FroggyFlox I'm not a Teamspeak users.

Happy to merge a pr on this when it's ready.

@FroggyFlox
Copy link
Member

Thanks @phillxnet for reminding me of this one, I should have made a note of it and taken care of it earlier.
I now have updated the "more_info" object to add instructions as detailed in the comments above.
image

Confirmed to work on Rockstor-3.9.1-16 as detailed above as well.

@phillxnet, how do you want to proceed with regards to the existing one?
Indeed, the existing Rock-on uses an image that does not exist anymore, but Rockstor users with a current Teamspeak3 Rock-on install (prior to when the image got deprecated) have a local copy that works. Should we thus still offer this as a separate Rock-on or replace the old one (by using the same json file name)?

@phillxnet
Copy link
Member

@FroggyFlox Thanks for picking this one up and your work done. Would be great to get this sorted.
As per your question.
I say we update the existing json. If the current one doesn't work anyway (upon re-install) then best we update it. No point having a broken Rock-on as will only let people down when they come to re-install. And if we edit it then my understanding is that existing install will be unaffected.

I think it's best if this is your call actually given your more recent knowledge of the Rock-on system. I.e. happy to go with your suggestion. So if you would prefere to make a new differently named one and we delete the old one then OK. Just not keen on having out right broken ones in play, and multiple options is confusing.

@FroggyFlox
Copy link
Member

I agree with you on all counts, so I'll prepare a PR to update the existing one when I get the chance.
The only disadvantage might occur when an existing user uninstall the old and tries to update by reinstalling the Rock-on. It would receive the new image, but I wonder if that would lead to conflict with the data structure as the mapped path changed between the two images. Of course this applies only if the same share is reused, but that also may mean that existing config will be lost and will have to be redone.
I'm not a user of Teamspeak so I have no idea how involved this process can be (if at all), but it does seem worth it in my opinion (especially given the points you made).

@FroggyFlox
Copy link
Member

The corresponding PR has now been submitted: #175.

@phillxnet , as discussed above, this PR uses the same names (both Rock-on and container) as the current one to completely replace it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants