Skip to content
This repository has been archived by the owner on Nov 21, 2019. It is now read-only.
This repository is currently being migrated. It's locked while the migration is in progress.

Added support for Python 3 (Only 3.6+ tested) while maintaining 2.7+ #57

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

c1rdan
Copy link

@c1rdan c1rdan commented Oct 25, 2018

I required support for Python 3, so I modified the code for it. I don't really have the possibility to properly test everything, but I have confirmed all unit tests are passing on 2.7, 3.6 and 3.7 and I'm already using this code against a proper Tanium instance successfully.

@punkrokk
Copy link

punkrokk commented Dec 4, 2018

I'd like to learn how to get this merged, or how to move the puck forward.

@c1rdan
Copy link
Author

c1rdan commented Dec 4, 2018

Hi punkrokk, Tanium team need to do the merge and apparently they don't pay a lot of attention to github... You can try to use my repository directly on the meanwhile.

@lifehackjim
Copy link
Contributor

Hi people. This fork, while interesting and useful, isn't something I have time to validate. I'm very hard at work on a complete rewrite of pytan which will provide many things. Not only python 2 and 3 support, but also platform support for 7.2 / 7.3, and support of both REST (available in 7.3) and SOAP API's. amongst many many other things. For me to step back and fully test and validate this fork before merging it into master would take me away from the work on pytan 3.

@c1rdan
Copy link
Author

c1rdan commented Dec 4, 2018

Thanks for the response Jim, and it's good knowing PyTan is alive :) Is there any ETA for the new version?

@lifehackjim
Copy link
Contributor

I plan on releasing it in multiple steps as follows:

  • 3.0: just the object encapsulation, serialization, and deserialization (no workflows nor command lines) - was planned for release on 11/1/18, but I've pushed it back in order to add full support for the REST API.
  • 3.1: add workflows - original ETA was 1/1/19, but looking more and more like 2/1/19 now
  • 3.2: add command line wrappers around workflows - easiest part of the whole thing, but also pushed back from 2/1/19 to .. ?

@punkrokk
Copy link

punkrokk commented Dec 4, 2018 via email

@deathbywedgie
Copy link

@lifehackjim I hate to bug ya, but could you spare a few minutes to give us an update? I've been having a nightmare of a time trying to figure out how to interact w/ Tanium via Python3 and just found this branch/PR, which led to your news about the upcoming version w/ Python3 and REST API support.

That's exciting news, but I'm guessing the timeline got bumped again since 2/1 is just a few days away and pytan 3.0 isn't up yet.

Thanks!

@lifehackjim
Copy link
Contributor

Things have been difficult for a number of reasons:

  • I had to incorporate SSL validation into the fundamentals of pytan 3, which required re-working a number of core concepts of the newly re-written pytan model. (which led to me creating yet another package: https://github.com/lifehackjim/cert_human )
  • I initially was going to release pytan 3 in stages, but the main problem with that is more than 70% of the pytan user base relies on the command line for all of their workflows. Making the portioned out releases virtually useless.
  • Supporting both REST and SOAP API calls in one unified interface has proven to be quite a bit more difficult than I'd initially estimated. This is perhaps the biggest time vacuum out of all of the above.

All that being said, on 2/6/19 I am going to be handing what I have of pytan 3 over to the internal security review team, and after that has passed inspection I will be publishing it. The workflow encapsulation is going to be nowhere near what pytan 2.x has, but that will come in many updates after the initial base release.

@deathbywedgie
Copy link

Thanks for the quick response! Have you considered creating a whole other package/repo for the new version, though? I wonder if it might make life easier for you to create a "pytan3" package so users aren't messed up if they update all packages or reinstall or something without knowing better. Just a thought.

Either way, thanks for the hard work, and I look forward to its release!

@lifehackjim
Copy link
Contributor

That is exactly what I am doing. I have an entirely different repo named pytan3, but it is only internally available until the security review is done. Checks and balances ya know :)

I'll be publishing the package as pytan3 on pypi as well, once it's out and about.

@c1rdan
Copy link
Author

c1rdan commented Feb 18, 2019

Ey @lifehackjim, Is there any update on the new release?

@lifehackjim
Copy link
Contributor

Yeah. I'm going to push out a release at some point this week, it will be at a different repo: https://github.com/tanium/pytan3, with a different package name "pytan3". It's still got a lot of work to go but i'm going to get what I have out the door.

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

Successfully merging this pull request may close these issues.

5 participants